tx · HyPgGuaHk9PTk6ied7hqhdF7SNc6Zi6LtKQurMdKxaVy
3PGPjoT3EGzgNyRa5Dq9pQL83vYA1SRpQXx: -0.01000000 Waves
2023.11.24 16:19 [3923421] smart account 3PGPjoT3EGzgNyRa5Dq9pQL83vYA1SRpQXx > SELF 0.00000000 Waves
{
"type": 13,
"id": "HyPgGuaHk9PTk6ied7hqhdF7SNc6Zi6LtKQurMdKxaVy",
"fee": 1000000,
"feeAssetId": null,
"timestamp": 1700831966432,
"version": 2,
"chainId": 87,
"sender": "3PGPjoT3EGzgNyRa5Dq9pQL83vYA1SRpQXx",
"senderPublicKey": "FRdKC2AWUSU3AmWnpiSUDHqm5JiPkvt1PJ7KAr5qqT9c",
"proofs": [
"3n76MBZm1zGuazFVjiCLsKyGBdou569Z89odpzk44T1s7gvUJXZfNiPU7FNkaQPQAW74AfET151MqqJTFPiYN3Za"
],
"script": "base64:BgIJCAISABIDCgEBCgAHdmVyc2lvbgIFMS4wLjEADmRBcHBTaW5jZVN0YXJ0AMCohIfAMQAGVFJEX0lEASDK1BsYfzeMUSpZQXikM/eLzUX5ssqPS3T2DxNbt8dT4QAFcHJpY2UA+FUAEm1pbmltdW1fb3JkZXJfc2l6ZQCAwtcvABBkYWlseV9idXJuX0xpbWl0CQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAhFEYWlseV9CdXJuX0xpbWl0cwAFYWRtaW4JAKcIAQEgON+PCdjVr2lARV1VFXv4tLT1TNztXiQqwyT5riBDaQIAAmQ2AMCEPQASY2hlY2tfZGFwcF9iYWxhbmNlCAkA7wcBBQR0aGlzB3JlZ3VsYXIBCWNvdW50ZGF5cwAEB1RTX0RpZmYJAGUCCAUJbGFzdEJsb2NrCXRpbWVzdGFtcAUOZEFwcFNpbmNlU3RhcnQECWRheW51bWJlcgkAawMAAQUHVFNfRGlmZgCAuJkpBQlkYXludW1iZXICAWkBB0J1cm5UUkQABANwbXQJAQV2YWx1ZQEJAJEDAggFAWkIcGF5bWVudHMAAAQNY2FsbGVyYWRkcmVzcwkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzBBBjbGFpbWFibGVfYW1vdW50CQBrAwUFcHJpY2UIBQNwbXQGYW1vdW50BQJkNgQKQ3VycmVudGRheQkBCWNvdW50ZGF5cwAEDlByZXZpb3VzQnVybmVkBAckbWF0Y2gwCQCaCAIFBHRoaXMCE1RvdGFsX1N1cHBseV9CdXJuZWQDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEC1RvdGFsQnVybmVkCQBkAgUOUHJldmlvdXNCdXJuZWQIBQNwbXQGYW1vdW50BBRQcmV2aW91c0J1cm5lZGJ5VXNlcgQHJG1hdGNoMAkAmggCBQR0aGlzCQCsAgIFDWNhbGxlcmFkZHJlc3MCB19CdXJuZWQDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEEVRvdGFsQnVybmVkYnlVc2VyCQBkAgUUUHJldmlvdXNCdXJuZWRieVVzZXIIBQNwbXQGYW1vdW50BBZQcmV2aW91c1Jld2FyZHNDbGFpbWVkBAckbWF0Y2gwCQCaCAIFBHRoaXMCFVRvdGFsX1Jld2FyZHNfQ2xhaW1lZAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQTVG90YWxSZXdhcmRzQ2xhaW1lZAkAZAIFFlByZXZpb3VzUmV3YXJkc0NsYWltZWQFEGNsYWltYWJsZV9hbW91bnQEHFByZXZpb3VzUmV3YXJkc0NsYWltZWRieVVzZXIEByRtYXRjaDAJAJoIAgUEdGhpcwkArAICBQ1jYWxsZXJhZGRyZXNzAhBfUmV3YXJkc19DbGFpbWVkAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBlUb3RhbFJld2FyZHNDbGFpbWVkYnlVc2VyCQBkAgUcUHJldmlvdXNSZXdhcmRzQ2xhaW1lZGJ5VXNlcgUQY2xhaW1hYmxlX2Ftb3VudAMJAQIhPQIIBQNwbXQHYXNzZXRJZAUGVFJEX0lECQACAQkArAICCQCsAgIJAKwCAgIORW5nbGlzaDogT25seSAJANgEAQUGVFJEX0lEAjMgVHJhZGVvaW4gVG9rZW5zIGFyZSBBY2NlcHRlZCB0byBBdHRhY2ggYXMgcGF5bWVudC4Ca9Cg0YPRgdGB0LrQuNC5OiDQkiDQutCw0YfQtdGB0YLQstC1INC+0L/Qu9Cw0YLRiyDQv9GA0LjQvdC40LzQsNGO0YLRgdGPINGC0L7Qu9GM0LrQviDRgtC+0LrQtdC90YsgVHJhZGVvaW4uAwkAZgIFEm1pbmltdW1fb3JkZXJfc2l6ZQgFA3BtdAZhbW91bnQJAAIBCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIfRW5nbGlzaDogUGxlYXNlIEF0dGFjaCBBdGxlYXN0IAkApAMBCQBpAgUSbWluaW11bV9vcmRlcl9zaXplBQJkNgIFIFRSRC4CSdCg0YPRgdGB0LrQuNC5OiDQn9C+0LbQsNC70YPQudGB0YLQsCwg0L/RgNC40LvQvtC20LjRgtC1INC90LUg0LzQtdC90LXQtSAJAKQDAQkAaQIFEm1pbmltdW1fb3JkZXJfc2l6ZQUCZDYCBSBUUkQuAwkAZgIIBQNwbXQGYW1vdW50BRBkYWlseV9idXJuX0xpbWl0CQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgICMUVuZ2xpc2g6IFRoZSBtYXhpbXVtIGRhaWx5IGJ1cm5pbmcgbGltaXQgaXMgb25seSAJAKQDAQkAaQIFEGRhaWx5X2J1cm5fTGltaXQFAmQ2AhEgVFJEIHBlciBBZGRyZXNzLgJ00KDRg9GB0YHQutC40Lk6INCc0LDQutGB0LjQvNCw0LvRjNC90YvQuSDQtNC90LXQstC90L7QuSDQu9C40LzQuNGCINGB0LbQuNCz0LDQvdC40Y8g0YHQvtGB0YLQsNCy0LvRj9C10YIg0LLRgdC10LPQviAJAKQDAQkAaQIFEGRhaWx5X2J1cm5fTGltaXQFAmQ2AgUgVFJELgMJAGYCBRBjbGFpbWFibGVfYW1vdW50BRJjaGVja19kYXBwX2JhbGFuY2UJAAIBCQCsAgICMk5vdCBFbm91Z2ggV2F2ZXMgQXZhaWxhYmxlIG9uIERhcHAgdG8gQnVybiBUb2tlbnMuApwB0JIgRGFwcCDQvdC10LTQvtGB0YLQsNGC0L7Rh9C90L4g0LLQvtC70L0g0LTQu9GPINGB0LbQuNCz0LDQvdC40Y8g0YLQvtC60LXQvdC+0LIuINCf0L7Qv9GA0L7RgdC40YLQtSDQsNC00LzQuNC90LjRgdGC0YDQsNGC0L7RgNCwINC/0L7Qv9C+0LvQvdC40YLRjCDQtdCz0L4uCQDMCAIJAQxJbnRlZ2VyRW50cnkCAhNUb3RhbF9TdXBwbHlfQnVybmVkBQtUb3RhbEJ1cm5lZAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQ1jYWxsZXJhZGRyZXNzAgdfQnVybmVkBRFUb3RhbEJ1cm5lZGJ5VXNlcgkAzAgCCQEMSW50ZWdlckVudHJ5AgIVVG90YWxfUmV3YXJkc19DbGFpbWVkBRNUb3RhbFJld2FyZHNDbGFpbWVkCQDMCAIJAQxJbnRlZ2VyRW50cnkCAgtDdXJyZW50X0RheQUKQ3VycmVudGRheQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQ1jYWxsZXJhZGRyZXNzAhBfUmV3YXJkc19DbGFpbWVkBRlUb3RhbFJld2FyZHNDbGFpbWVkYnlVc2VyCQDMCAIJAQRCdXJuAgUGVFJEX0lECAUDcG10BmFtb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFEGNsYWltYWJsZV9hbW91bnQFBHVuaXQFA25pbAFpARJ1cGRhdGVfYnVybl9saW1pdHMBBkFtb3VudAQQbmV3X2RhaWx5X2xpbWl0cwkAaAIFBkFtb3VudAUCZDYDCQECIT0CCAUBaQZjYWxsZXIFBWFkbWluCQACAQkArAICCQCsAgICJVRoaXMgQWRkcmVzcyBpcyBub3QgQXV0aG9yaXplZC4gT25seSAJAKUIAQUFYWRtaW4CIiBpcyBBdXRob3JpemVkIEFkZHJlc3MgdG8gU2lnbiBpdC4JAMwIAgkBDEludGVnZXJFbnRyeQICEURhaWx5X0J1cm5fTGltaXRzBRBuZXdfZGFpbHlfbGltaXRzBQNuaWwBAnR4AQZ2ZXJpZnkACQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V5uXeIZg==",
"height": 3923421,
"applicationStatus": "succeeded",
"spentComplexity": 0
}
View: original | compacted
Prev: GfGtCkgjhyrSzja583ZwV3TpcNZeuFvXJqdMTCkxASFp
Next: none
Diff:
Old | New | | Differences |
---|
11 | 11 | | |
---|
12 | 12 | | let e = 100000000 |
---|
13 | 13 | | |
---|
14 | | - | let f = 1000000000 |
---|
| 14 | + | let f = getIntegerValue(this, "Daily_Burn_Limits") |
---|
15 | 15 | | |
---|
16 | | - | let g = 1000000 |
---|
| 16 | + | let g = addressFromPublicKey(base58'4q1YkzkM4pYzHp4jBtugQowp6LREYGvhceFaBBAVt3bo') |
---|
17 | 17 | | |
---|
18 | | - | let h = wavesBalance(this).regular |
---|
| 18 | + | let h = 1000000 |
---|
19 | 19 | | |
---|
20 | | - | func i () = { |
---|
21 | | - | let j = (lastBlock.timestamp - b) |
---|
22 | | - | let k = fraction(1, j, 86400000) |
---|
23 | | - | k |
---|
| 20 | + | let i = wavesBalance(this).regular |
---|
| 21 | + | |
---|
| 22 | + | func j () = { |
---|
| 23 | + | let k = (lastBlock.timestamp - b) |
---|
| 24 | + | let l = fraction(1, k, 86400000) |
---|
| 25 | + | l |
---|
24 | 26 | | } |
---|
25 | 27 | | |
---|
26 | 28 | | |
---|
27 | | - | @Callable(l) |
---|
| 29 | + | @Callable(m) |
---|
28 | 30 | | func BurnTRD () = { |
---|
29 | | - | let m = value(l.payments[0]) |
---|
30 | | - | let n = toBase58String(l.caller.bytes) |
---|
31 | | - | let o = fraction(d, m.amount, g) |
---|
32 | | - | let p = i() |
---|
33 | | - | let q = { |
---|
34 | | - | let r = getInteger(this, "Total_Supply_Burned") |
---|
35 | | - | if ($isInstanceOf(r, "Int")) |
---|
| 31 | + | let n = value(m.payments[0]) |
---|
| 32 | + | let o = toBase58String(m.caller.bytes) |
---|
| 33 | + | let p = fraction(d, n.amount, h) |
---|
| 34 | + | let q = j() |
---|
| 35 | + | let r = { |
---|
| 36 | + | let s = getInteger(this, "Total_Supply_Burned") |
---|
| 37 | + | if ($isInstanceOf(s, "Int")) |
---|
36 | 38 | | then { |
---|
37 | | - | let s = r |
---|
38 | | - | s |
---|
| 39 | + | let t = s |
---|
| 40 | + | t |
---|
39 | 41 | | } |
---|
40 | 42 | | else 0 |
---|
41 | 43 | | } |
---|
42 | | - | let t = (q + m.amount) |
---|
43 | | - | let u = { |
---|
44 | | - | let r = getInteger(this, (n + "_Burned")) |
---|
45 | | - | if ($isInstanceOf(r, "Int")) |
---|
| 44 | + | let u = (r + n.amount) |
---|
| 45 | + | let v = { |
---|
| 46 | + | let s = getInteger(this, (o + "_Burned")) |
---|
| 47 | + | if ($isInstanceOf(s, "Int")) |
---|
46 | 48 | | then { |
---|
47 | | - | let s = r |
---|
48 | | - | s |
---|
| 49 | + | let t = s |
---|
| 50 | + | t |
---|
49 | 51 | | } |
---|
50 | 52 | | else 0 |
---|
51 | 53 | | } |
---|
52 | | - | let v = (u + m.amount) |
---|
53 | | - | let w = { |
---|
54 | | - | let r = getInteger(this, "Total_Rewards_Claimed") |
---|
55 | | - | if ($isInstanceOf(r, "Int")) |
---|
| 54 | + | let w = (v + n.amount) |
---|
| 55 | + | let x = { |
---|
| 56 | + | let s = getInteger(this, "Total_Rewards_Claimed") |
---|
| 57 | + | if ($isInstanceOf(s, "Int")) |
---|
56 | 58 | | then { |
---|
57 | | - | let s = r |
---|
58 | | - | s |
---|
| 59 | + | let t = s |
---|
| 60 | + | t |
---|
59 | 61 | | } |
---|
60 | 62 | | else 0 |
---|
61 | 63 | | } |
---|
62 | | - | let x = (w + o) |
---|
63 | | - | let y = { |
---|
64 | | - | let r = getInteger(this, (n + "_Rewards_Claimed")) |
---|
65 | | - | if ($isInstanceOf(r, "Int")) |
---|
| 64 | + | let y = (x + p) |
---|
| 65 | + | let z = { |
---|
| 66 | + | let s = getInteger(this, (o + "_Rewards_Claimed")) |
---|
| 67 | + | if ($isInstanceOf(s, "Int")) |
---|
66 | 68 | | then { |
---|
67 | | - | let s = r |
---|
68 | | - | s |
---|
| 69 | + | let t = s |
---|
| 70 | + | t |
---|
69 | 71 | | } |
---|
70 | 72 | | else 0 |
---|
71 | 73 | | } |
---|
72 | | - | let z = (y + o) |
---|
73 | | - | if ((m.assetId != c)) |
---|
| 74 | + | let A = (z + p) |
---|
| 75 | + | if ((n.assetId != c)) |
---|
74 | 76 | | then throw(((("English: Only " + toBase58String(c)) + " Tradeoin Tokens are Accepted to Attach as payment.") + "Русский: В качестве оплаты принимаются только токены Tradeoin.")) |
---|
75 | | - | else if ((e > m.amount)) |
---|
76 | | - | then throw(((((("English: Please Attach Atleast " + toString((e / g))) + " TRD.") + "Русский: Пожалуйста, приложите не менее ") + toString((e / g))) + " TRD.")) |
---|
77 | | - | else if ((m.amount > f)) |
---|
78 | | - | then throw(((((("English: The maximum daily burning limit is only " + toString((f / g))) + " TRD per Address.") + "Русский: Максимальный дневной лимит сжигания составляет всего ") + toString((f / g))) + " TRD.")) |
---|
79 | | - | else if ((o > h)) |
---|
| 77 | + | else if ((e > n.amount)) |
---|
| 78 | + | then throw(((((("English: Please Attach Atleast " + toString((e / h))) + " TRD.") + "Русский: Пожалуйста, приложите не менее ") + toString((e / h))) + " TRD.")) |
---|
| 79 | + | else if ((n.amount > f)) |
---|
| 80 | + | then throw(((((("English: The maximum daily burning limit is only " + toString((f / h))) + " TRD per Address.") + "Русский: Максимальный дневной лимит сжигания составляет всего ") + toString((f / h))) + " TRD.")) |
---|
| 81 | + | else if ((p > i)) |
---|
80 | 82 | | then throw(("Not Enough Waves Available on Dapp to Burn Tokens." + "В Dapp недостаточно волн для сжигания токенов. Попросите администратора пополнить его.")) |
---|
81 | | - | else [IntegerEntry("Total_Supply_Burned", t), IntegerEntry((n + "_Burned"), v), IntegerEntry("Total_Rewards_Claimed", x), IntegerEntry("Current_Day", p), IntegerEntry((n + "_Rewards_Claimed"), z), Burn(c, m.amount), ScriptTransfer(l.caller, o, unit)] |
---|
| 83 | + | else [IntegerEntry("Total_Supply_Burned", u), IntegerEntry((o + "_Burned"), w), IntegerEntry("Total_Rewards_Claimed", y), IntegerEntry("Current_Day", q), IntegerEntry((o + "_Rewards_Claimed"), A), Burn(c, n.amount), ScriptTransfer(m.caller, p, unit)] |
---|
82 | 84 | | } |
---|
83 | 85 | | |
---|
84 | 86 | | |
---|
85 | | - | @Verifier(A) |
---|
86 | | - | func B () = sigVerify(A.bodyBytes, A.proofs[0], A.senderPublicKey) |
---|
| 87 | + | |
---|
| 88 | + | @Callable(m) |
---|
| 89 | + | func update_burn_limits (B) = { |
---|
| 90 | + | let C = (B * h) |
---|
| 91 | + | if ((m.caller != g)) |
---|
| 92 | + | then throw((("This Address is not Authorized. Only " + toString(g)) + " is Authorized Address to Sign it.")) |
---|
| 93 | + | else [IntegerEntry("Daily_Burn_Limits", C)] |
---|
| 94 | + | } |
---|
| 95 | + | |
---|
| 96 | + | |
---|
| 97 | + | @Verifier(D) |
---|
| 98 | + | func E () = sigVerify(D.bodyBytes, D.proofs[0], D.senderPublicKey) |
---|
87 | 99 | | |
---|
Full:
Old | New | | Differences |
---|
1 | 1 | | {-# STDLIB_VERSION 6 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
4 | 4 | | let a = "1.0.1" |
---|
5 | 5 | | |
---|
6 | 6 | | let b = 1700821800000 |
---|
7 | 7 | | |
---|
8 | 8 | | let c = base58'EekwfLSAkbREneBHrXdZSRAEPvmijq71Nf2GDNqBStz4' |
---|
9 | 9 | | |
---|
10 | 10 | | let d = 11000 |
---|
11 | 11 | | |
---|
12 | 12 | | let e = 100000000 |
---|
13 | 13 | | |
---|
14 | | - | let f = 1000000000 |
---|
| 14 | + | let f = getIntegerValue(this, "Daily_Burn_Limits") |
---|
15 | 15 | | |
---|
16 | | - | let g = 1000000 |
---|
| 16 | + | let g = addressFromPublicKey(base58'4q1YkzkM4pYzHp4jBtugQowp6LREYGvhceFaBBAVt3bo') |
---|
17 | 17 | | |
---|
18 | | - | let h = wavesBalance(this).regular |
---|
| 18 | + | let h = 1000000 |
---|
19 | 19 | | |
---|
20 | | - | func i () = { |
---|
21 | | - | let j = (lastBlock.timestamp - b) |
---|
22 | | - | let k = fraction(1, j, 86400000) |
---|
23 | | - | k |
---|
| 20 | + | let i = wavesBalance(this).regular |
---|
| 21 | + | |
---|
| 22 | + | func j () = { |
---|
| 23 | + | let k = (lastBlock.timestamp - b) |
---|
| 24 | + | let l = fraction(1, k, 86400000) |
---|
| 25 | + | l |
---|
24 | 26 | | } |
---|
25 | 27 | | |
---|
26 | 28 | | |
---|
27 | | - | @Callable(l) |
---|
| 29 | + | @Callable(m) |
---|
28 | 30 | | func BurnTRD () = { |
---|
29 | | - | let m = value(l.payments[0]) |
---|
30 | | - | let n = toBase58String(l.caller.bytes) |
---|
31 | | - | let o = fraction(d, m.amount, g) |
---|
32 | | - | let p = i() |
---|
33 | | - | let q = { |
---|
34 | | - | let r = getInteger(this, "Total_Supply_Burned") |
---|
35 | | - | if ($isInstanceOf(r, "Int")) |
---|
| 31 | + | let n = value(m.payments[0]) |
---|
| 32 | + | let o = toBase58String(m.caller.bytes) |
---|
| 33 | + | let p = fraction(d, n.amount, h) |
---|
| 34 | + | let q = j() |
---|
| 35 | + | let r = { |
---|
| 36 | + | let s = getInteger(this, "Total_Supply_Burned") |
---|
| 37 | + | if ($isInstanceOf(s, "Int")) |
---|
36 | 38 | | then { |
---|
37 | | - | let s = r |
---|
38 | | - | s |
---|
| 39 | + | let t = s |
---|
| 40 | + | t |
---|
39 | 41 | | } |
---|
40 | 42 | | else 0 |
---|
41 | 43 | | } |
---|
42 | | - | let t = (q + m.amount) |
---|
43 | | - | let u = { |
---|
44 | | - | let r = getInteger(this, (n + "_Burned")) |
---|
45 | | - | if ($isInstanceOf(r, "Int")) |
---|
| 44 | + | let u = (r + n.amount) |
---|
| 45 | + | let v = { |
---|
| 46 | + | let s = getInteger(this, (o + "_Burned")) |
---|
| 47 | + | if ($isInstanceOf(s, "Int")) |
---|
46 | 48 | | then { |
---|
47 | | - | let s = r |
---|
48 | | - | s |
---|
| 49 | + | let t = s |
---|
| 50 | + | t |
---|
49 | 51 | | } |
---|
50 | 52 | | else 0 |
---|
51 | 53 | | } |
---|
52 | | - | let v = (u + m.amount) |
---|
53 | | - | let w = { |
---|
54 | | - | let r = getInteger(this, "Total_Rewards_Claimed") |
---|
55 | | - | if ($isInstanceOf(r, "Int")) |
---|
| 54 | + | let w = (v + n.amount) |
---|
| 55 | + | let x = { |
---|
| 56 | + | let s = getInteger(this, "Total_Rewards_Claimed") |
---|
| 57 | + | if ($isInstanceOf(s, "Int")) |
---|
56 | 58 | | then { |
---|
57 | | - | let s = r |
---|
58 | | - | s |
---|
| 59 | + | let t = s |
---|
| 60 | + | t |
---|
59 | 61 | | } |
---|
60 | 62 | | else 0 |
---|
61 | 63 | | } |
---|
62 | | - | let x = (w + o) |
---|
63 | | - | let y = { |
---|
64 | | - | let r = getInteger(this, (n + "_Rewards_Claimed")) |
---|
65 | | - | if ($isInstanceOf(r, "Int")) |
---|
| 64 | + | let y = (x + p) |
---|
| 65 | + | let z = { |
---|
| 66 | + | let s = getInteger(this, (o + "_Rewards_Claimed")) |
---|
| 67 | + | if ($isInstanceOf(s, "Int")) |
---|
66 | 68 | | then { |
---|
67 | | - | let s = r |
---|
68 | | - | s |
---|
| 69 | + | let t = s |
---|
| 70 | + | t |
---|
69 | 71 | | } |
---|
70 | 72 | | else 0 |
---|
71 | 73 | | } |
---|
72 | | - | let z = (y + o) |
---|
73 | | - | if ((m.assetId != c)) |
---|
| 74 | + | let A = (z + p) |
---|
| 75 | + | if ((n.assetId != c)) |
---|
74 | 76 | | then throw(((("English: Only " + toBase58String(c)) + " Tradeoin Tokens are Accepted to Attach as payment.") + "Русский: В качестве оплаты принимаются только токены Tradeoin.")) |
---|
75 | | - | else if ((e > m.amount)) |
---|
76 | | - | then throw(((((("English: Please Attach Atleast " + toString((e / g))) + " TRD.") + "Русский: Пожалуйста, приложите не менее ") + toString((e / g))) + " TRD.")) |
---|
77 | | - | else if ((m.amount > f)) |
---|
78 | | - | then throw(((((("English: The maximum daily burning limit is only " + toString((f / g))) + " TRD per Address.") + "Русский: Максимальный дневной лимит сжигания составляет всего ") + toString((f / g))) + " TRD.")) |
---|
79 | | - | else if ((o > h)) |
---|
| 77 | + | else if ((e > n.amount)) |
---|
| 78 | + | then throw(((((("English: Please Attach Atleast " + toString((e / h))) + " TRD.") + "Русский: Пожалуйста, приложите не менее ") + toString((e / h))) + " TRD.")) |
---|
| 79 | + | else if ((n.amount > f)) |
---|
| 80 | + | then throw(((((("English: The maximum daily burning limit is only " + toString((f / h))) + " TRD per Address.") + "Русский: Максимальный дневной лимит сжигания составляет всего ") + toString((f / h))) + " TRD.")) |
---|
| 81 | + | else if ((p > i)) |
---|
80 | 82 | | then throw(("Not Enough Waves Available on Dapp to Burn Tokens." + "В Dapp недостаточно волн для сжигания токенов. Попросите администратора пополнить его.")) |
---|
81 | | - | else [IntegerEntry("Total_Supply_Burned", t), IntegerEntry((n + "_Burned"), v), IntegerEntry("Total_Rewards_Claimed", x), IntegerEntry("Current_Day", p), IntegerEntry((n + "_Rewards_Claimed"), z), Burn(c, m.amount), ScriptTransfer(l.caller, o, unit)] |
---|
| 83 | + | else [IntegerEntry("Total_Supply_Burned", u), IntegerEntry((o + "_Burned"), w), IntegerEntry("Total_Rewards_Claimed", y), IntegerEntry("Current_Day", q), IntegerEntry((o + "_Rewards_Claimed"), A), Burn(c, n.amount), ScriptTransfer(m.caller, p, unit)] |
---|
82 | 84 | | } |
---|
83 | 85 | | |
---|
84 | 86 | | |
---|
85 | | - | @Verifier(A) |
---|
86 | | - | func B () = sigVerify(A.bodyBytes, A.proofs[0], A.senderPublicKey) |
---|
| 87 | + | |
---|
| 88 | + | @Callable(m) |
---|
| 89 | + | func update_burn_limits (B) = { |
---|
| 90 | + | let C = (B * h) |
---|
| 91 | + | if ((m.caller != g)) |
---|
| 92 | + | then throw((("This Address is not Authorized. Only " + toString(g)) + " is Authorized Address to Sign it.")) |
---|
| 93 | + | else [IntegerEntry("Daily_Burn_Limits", C)] |
---|
| 94 | + | } |
---|
| 95 | + | |
---|
| 96 | + | |
---|
| 97 | + | @Verifier(D) |
---|
| 98 | + | func E () = sigVerify(D.bodyBytes, D.proofs[0], D.senderPublicKey) |
---|
87 | 99 | | |
---|