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:
OldNewDifferences
1111
1212 let minimum_order_size = 100000000
1313
14-let daily_burn_Limit = 1000000000
14+let daily_burn_Limit = getIntegerValue(this, "Daily_Burn_Limits")
15+
16+let admin = addressFromPublicKey(base58'4q1YkzkM4pYzHp4jBtugQowp6LREYGvhceFaBBAVt3bo')
1517
1618 let d6 = 1000000
1719
7072 }
7173
7274
75+
76+@Callable(i)
77+func update_burn_limits (Amount) = {
78+ let new_daily_limits = (Amount * d6)
79+ if ((i.caller != admin))
80+ then throw((("This Address is not Authorized. Only " + toString(admin)) + " is Authorized Address to Sign it."))
81+ else [IntegerEntry("Daily_Burn_Limits", new_daily_limits)]
82+ }
83+
84+
7385 @Verifier(tx)
7486 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
7587
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let version = "1.0.1"
55
66 let dAppSinceStart = 1700821800000
77
88 let TRD_ID = base58'EekwfLSAkbREneBHrXdZSRAEPvmijq71Nf2GDNqBStz4'
99
1010 let price = 11000
1111
1212 let minimum_order_size = 100000000
1313
14-let daily_burn_Limit = 1000000000
14+let daily_burn_Limit = getIntegerValue(this, "Daily_Burn_Limits")
15+
16+let admin = addressFromPublicKey(base58'4q1YkzkM4pYzHp4jBtugQowp6LREYGvhceFaBBAVt3bo')
1517
1618 let d6 = 1000000
1719
1820 let check_dapp_balance = wavesBalance(this).regular
1921
2022 func countdays () = {
2123 let TS_Diff = (lastBlock.timestamp - dAppSinceStart)
2224 let daynumber = fraction(1, TS_Diff, 86400000)
2325 daynumber
2426 }
2527
2628
2729 @Callable(i)
2830 func BurnTRD () = {
2931 let pmt = value(i.payments[0])
3032 let calleraddress = toBase58String(i.caller.bytes)
3133 let claimable_amount = fraction(price, pmt.amount, d6)
3234 let Currentday = countdays()
3335 let PreviousBurned = match getInteger(this, "Total_Supply_Burned") {
3436 case a: Int =>
3537 a
3638 case _ =>
3739 0
3840 }
3941 let TotalBurned = (PreviousBurned + pmt.amount)
4042 let PreviousBurnedbyUser = match getInteger(this, (calleraddress + "_Burned")) {
4143 case a: Int =>
4244 a
4345 case _ =>
4446 0
4547 }
4648 let TotalBurnedbyUser = (PreviousBurnedbyUser + pmt.amount)
4749 let PreviousRewardsClaimed = match getInteger(this, "Total_Rewards_Claimed") {
4850 case a: Int =>
4951 a
5052 case _ =>
5153 0
5254 }
5355 let TotalRewardsClaimed = (PreviousRewardsClaimed + claimable_amount)
5456 let PreviousRewardsClaimedbyUser = match getInteger(this, (calleraddress + "_Rewards_Claimed")) {
5557 case a: Int =>
5658 a
5759 case _ =>
5860 0
5961 }
6062 let TotalRewardsClaimedbyUser = (PreviousRewardsClaimedbyUser + claimable_amount)
6163 if ((pmt.assetId != TRD_ID))
6264 then throw(((("English: Only " + toBase58String(TRD_ID)) + " Tradeoin Tokens are Accepted to Attach as payment.") + "Русский: В качестве оплаты принимаются только токены Tradeoin."))
6365 else if ((minimum_order_size > pmt.amount))
6466 then throw(((((("English: Please Attach Atleast " + toString((minimum_order_size / d6))) + " TRD.") + "Русский: Пожалуйста, приложите не менее ") + toString((minimum_order_size / d6))) + " TRD."))
6567 else if ((pmt.amount > daily_burn_Limit))
6668 then throw(((((("English: The maximum daily burning limit is only " + toString((daily_burn_Limit / d6))) + " TRD per Address.") + "Русский: Максимальный дневной лимит сжигания составляет всего ") + toString((daily_burn_Limit / d6))) + " TRD."))
6769 else if ((claimable_amount > check_dapp_balance))
6870 then throw(("Not Enough Waves Available on Dapp to Burn Tokens." + "В Dapp недостаточно волн для сжигания токенов. Попросите администратора пополнить его."))
6971 else [IntegerEntry("Total_Supply_Burned", TotalBurned), IntegerEntry((calleraddress + "_Burned"), TotalBurnedbyUser), IntegerEntry("Total_Rewards_Claimed", TotalRewardsClaimed), IntegerEntry("Current_Day", Currentday), IntegerEntry((calleraddress + "_Rewards_Claimed"), TotalRewardsClaimedbyUser), Burn(TRD_ID, pmt.amount), ScriptTransfer(i.caller, claimable_amount, unit)]
7072 }
7173
7274
75+
76+@Callable(i)
77+func update_burn_limits (Amount) = {
78+ let new_daily_limits = (Amount * d6)
79+ if ((i.caller != admin))
80+ then throw((("This Address is not Authorized. Only " + toString(admin)) + " is Authorized Address to Sign it."))
81+ else [IntegerEntry("Daily_Burn_Limits", new_daily_limits)]
82+ }
83+
84+
7385 @Verifier(tx)
7486 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
7587

github/deemru/w8io/6500d08 
37.60 ms