tx · 6wnmZdtHVXvMi1vDCProkfDRohx3G73XxvJVWBSeKNu4

3P4AdC9J6MzTEi2LL9xgQN8EimMnbk4d6Nt:  -0.00600000 Waves

2024.05.11 21:25 [4167774] smart account 3P4AdC9J6MzTEi2LL9xgQN8EimMnbk4d6Nt > SELF 0.00000000 Waves

{ "type": 13, "id": "6wnmZdtHVXvMi1vDCProkfDRohx3G73XxvJVWBSeKNu4", "fee": 600000, "feeAssetId": null, "timestamp": 1715451962207, "version": 2, "chainId": 87, "sender": "3P4AdC9J6MzTEi2LL9xgQN8EimMnbk4d6Nt", "senderPublicKey": "33BMe2b9KpjJyCQXAKa3DKHqSBjB7q2mEJoiP17cRLAN", "proofs": [ "65cGch72GEapGNGYVsHSs5ZfkYtBkk4Ja36VvdvCYbvFG6GAxkQeAkGoqmGoewq5qwyzeMnnrt7TZAtCfdkETrgC" ], "script": "base64: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A25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQdCQkIyYW55AAMJAGYCCQBkAgkAZAIJARFAZXh0ck5hdGl2ZSgxMDUwKQIFA2JiYgUNa2V5QWN0aXZhdGVkMgkAaAIABwCgCwACBQZoZWlnaHQJAAIBCQCsAgICFVdhaXQgdGlsbCBibG9ja2hlaWdodAkApAMBCQBkAgkAZAIJARFAZXh0ck5hdGl2ZSgxMDUwKQIFA2JiYgUNa2V5QWN0aXZhdGVkMgkAaAIABwCgCwACAwkAAAIJAQ10cnlHZXRJbnRlZ2VyAgUDYmJiBQ1rZXlJbnZva2VOZXh0AAEJAAIBAhRpbnZva2UgQkJCMWFueSBmaXJzdAQDaW52CQD8BwQFA2JiYgIKZGlzdHJpYnV0ZQUDbmlsBQNuaWwDCQAAAgUDaW52BQNpbnYJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUDYm90BQJkNgUEdW5pdAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBCmJvdEFkZHJlc3MBB2FkZHJlc3MDCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAgJubwkAzAgCCQELU3RyaW5nRW50cnkCBQ1rZXlCb3RBZGRyZXNzBQdhZGRyZXNzBQNuaWwBaQESY2hhbmdlSW50ZWdlckVudHJ5AglrZXlTdHJpbmcHaW50ZWdlcgMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkAAgECHGFjY2VzcyBvbmx5IGJ5IHByb2plY3Qgb3duZXIJAMwIAgkBDEludGVnZXJFbnRyeQIFCWtleVN0cmluZwUHaW50ZWdlcgUDbmlsAWkBB2J1cm5YVE4AAwMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkBAiE9AggFAWkGY2FsbGVyBQRidXJuBwkAAgECHGFjY2VzcyBvbmx5IGJ5IHByb2plY3Qgb3duZXIEDXh0bkJ1cm5BbW91bnQDCQBnAgkA8AcCBQR0aGlzBQV4dG5JZAkBDXRyeUdldEludGVnZXICBQRidXJuBQ1rZXlCdXJuQW1vdW50CQENdHJ5R2V0SW50ZWdlcgIFBGJ1cm4FDWtleUJ1cm5BbW91bnQAAAQHeHRuQnVybgkBBEJ1cm4CBQV4dG5JZAUNeHRuQnVybkFtb3VudAQOc3VyZkJ1cm5BbW91bnQDCQBnAgkA8AcCBQR0aGlzBQZzdXJmSWQJAQ10cnlHZXRJbnRlZ2VyAgUEYnVybgUNa2V5QnVybkFtb3VudAkBDXRyeUdldEludGVnZXICBQRidXJuBQ1rZXlCdXJuQW1vdW50AAAECHN1cmZCdXJuCQEEQnVybgIFBnN1cmZJZAUOc3VyZkJ1cm5BbW91bnQEEWJ1cm54dG5CdXJuQW1vdW50AwkAZwIJAPAHAgUEdGhpcwUJYnVybnh0bklkCQENdHJ5R2V0SW50ZWdlcgIFBGJ1cm4FEGtleUJ1cm54dG5BbW91bnQJAQ10cnlHZXRJbnRlZ2VyAgUEYnVybgUQa2V5QnVybnh0bkFtb3VudAAABAtidXJueHRuQnVybgkBBEJ1cm4CBQlidXJueHRuSWQFEWJ1cm54dG5CdXJuQW1vdW50CQDMCAIFB3h0bkJ1cm4JAMwIAgUIc3VyZkJ1cm4JAMwIAgULYnVybnh0bkJ1cm4JAMwIAgkBDEludGVnZXJFbnRyeQICEFhUTiB0b3RhbCBidXJuZWQJAGQCCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAhBYVE4gdG90YWwgYnVybmVkBQ14dG5CdXJuQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCAhFTVVJGIHRvdGFsIGJ1cm5lZAkAZAIJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwIRU1VSRiB0b3RhbCBidXJuZWQFDnN1cmZCdXJuQW1vdW50BQNuaWwBaQEMaW52b2tlckJ1cm4xAAMJAQIhPQIIBQFpBmNhbGxlcgUBcwkAAgECAm5vAwkAAAIJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwUNa2V5SW52b2tlTmV4dAACCQACAQIZaW52b2tlIGludm9rZXJCdXJuMiBmaXJzdAQEaW52MQkA/QcEBQRidXJuAgdpbnZva2UxBQNuaWwFA25pbAMJAAACBQRpbnYxBQRpbnYxBANpbnYJAPwHBAUDc3dlAgVhbGxpbgUDbmlsBQNuaWwDCQAAAgUDaW52BQNpbnYEBGludjIJAPwHBAUDd2hpAgVhbGxpbgUDbmlsBQNuaWwDCQAAAgUEaW52MgUEaW52MgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQNib3QDCQAAAggFAWkGY2FsbGVyBQNib3QFAmQ2AAAFBHVuaXQJAMwIAgkBDEludGVnZXJFbnRyeQIFDWtleUludm9rZU5leHQAAgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBDGludm9rZXJCdXJuMgADCQECIT0CCAUBaQZjYWxsZXIFAXMJAAIBAgJubwMJAAACCQENdHJ5R2V0SW50ZWdlcgIFBHRoaXMFDWtleUludm9rZU5leHQAAQkAAgECGWludm9rZSBpbnZva2VyQnVybjEgZmlyc3QEBGludjEJAP0HBAUEYnVybgIHaW52b2tlMgUDbmlsBQNuaWwDCQAAAgUEaW52MQUEaW52MQQDaW52CQD8BwQFA3N3ZQIGYWxsb3V0BQNuaWwFA25pbAMJAAACBQNpbnYFA2ludgQEaW52MgkA/AcEBQN3aGkCBmFsbG91dAUDbmlsBQNuaWwDCQAAAgUEaW52MgUEaW52MgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQNib3QDCQAAAggFAWkGY2FsbGVyBQNib3QFAmQ2AAAFBHVuaXQJAMwIAgkBDEludGVnZXJFbnRyeQIFDWtleUludm9rZU5leHQAAQUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuALxMhKU=", "height": 4167774, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: a3rpD3nxMaZGmPtk5GKmbj9NU98TxsXBggd6SXuuqJs Next: AUkYpBmZPq5tj2WbrQ1TUxaPBZSCZxyxRaHahFWju7yU Diff:
OldNewDifferences
180180 @Callable(i)
181181 func invokerBurn1 () = if ((i.caller != s))
182182 then throw("no")
183- else {
184- let inv1 = reentrantInvoke(burn, "invoke1", nil, nil)
185- if ((inv1 == inv1))
186- then {
187- let inv = invoke(swe, "allin", nil, nil)
188- if ((inv == inv))
189- then {
190- let inv2 = invoke(whi, "allin", nil, nil)
191- if ((inv2 == inv2))
192- then [ScriptTransfer(bot, if ((getIntegerValue(this, keyInvokeNext) == 2))
193- then 0
194- else d6, unit), IntegerEntry(keyInvokeNext, 2)]
195- else throw("Strict value is not equal to itself.")
196- }
197- else throw("Strict value is not equal to itself.")
198- }
199- else throw("Strict value is not equal to itself.")
200- }
183+ else if ((tryGetInteger(this, keyInvokeNext) == 2))
184+ then throw("invoke invokerBurn2 first")
185+ else {
186+ let inv1 = reentrantInvoke(burn, "invoke1", nil, nil)
187+ if ((inv1 == inv1))
188+ then {
189+ let inv = invoke(swe, "allin", nil, nil)
190+ if ((inv == inv))
191+ then {
192+ let inv2 = invoke(whi, "allin", nil, nil)
193+ if ((inv2 == inv2))
194+ then [ScriptTransfer(bot, if ((i.caller == bot))
195+ then d6
196+ else 0, unit), IntegerEntry(keyInvokeNext, 2)]
197+ else throw("Strict value is not equal to itself.")
198+ }
199+ else throw("Strict value is not equal to itself.")
200+ }
201+ else throw("Strict value is not equal to itself.")
202+ }
201203
202204
203205
204206 @Callable(i)
205207 func invokerBurn2 () = if ((i.caller != s))
206208 then throw("no")
207- else {
208- let inv1 = reentrantInvoke(burn, "invoke2", nil, nil)
209- if ((inv1 == inv1))
210- then [ScriptTransfer(bot, if ((getIntegerValue(this, keyInvokeNext) == 1))
211- then 0
212- else d6, unit), IntegerEntry(keyInvokeNext, 1)]
213- else throw("Strict value is not equal to itself.")
214- }
209+ else if ((tryGetInteger(this, keyInvokeNext) == 1))
210+ then throw("invoke invokerBurn1 first")
211+ else {
212+ let inv1 = reentrantInvoke(burn, "invoke2", nil, nil)
213+ if ((inv1 == inv1))
214+ then {
215+ let inv = invoke(swe, "allout", nil, nil)
216+ if ((inv == inv))
217+ then {
218+ let inv2 = invoke(whi, "allout", nil, nil)
219+ if ((inv2 == inv2))
220+ then [ScriptTransfer(bot, if ((i.caller == bot))
221+ then d6
222+ else 0, unit), IntegerEntry(keyInvokeNext, 1)]
223+ else throw("Strict value is not equal to itself.")
224+ }
225+ else throw("Strict value is not equal to itself.")
226+ }
227+ else throw("Strict value is not equal to itself.")
228+ }
215229
216230
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func tryGetInteger (address,key) = match getInteger(address, key) {
55 case b: Int =>
66 b
77 case _ =>
88 0
99 }
1010
1111
1212 let keyInvokeNext = "invoke next"
1313
1414 let keyActivated = "Activated blockheight"
1515
1616 let keyActivated2 = "Activated 2 blockheight"
1717
1818 let keyBotAddress = "bot address string"
1919
2020 let keyBurnAmount = "burn amount"
2121
2222 let keyBurnxtnAmount = "burn BURN-XTN amount"
2323
2424 let d6 = 1000000
2525
2626 let vvxtnlp = base58'8KEtor9aSsSj38MknyAE7k1uRThHY9prAXgiE4D7WpyL'
2727
2828 let xtnId = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
2929
3030 let burnxtnId = base58'3SjxA2YLdfF9fTRbzLm9xFn27C6MW34W1YsdJ6Axefns'
3131
3232 let surfId = base58'At8D6NFFpheCbvKVnjVoeLL84Eo8NZn6ovManxfLaFWL'
3333
3434 let burn = Address(base58'3PCBL2vbjAVFbiCwmGsPmT6QdATutQnM8ov')
3535
3636 let bbb = Address(base58'3PEgVPqJ3NYWbRn1CLELUpuY9KCmragc7sY')
3737
3838 let swe = Address(base58'3PCxF4JryswYYp9mpUtE725wjTgvpBmp3M9')
3939
4040 let whi = Address(base58'3PAkmJniMgnnAej5pYf2jFYkCbZow5pt9tr')
4141
4242 let s = Address(base58'3PKjY3hmP1BCWtmhpXw9Ly85sgiQvpgq4wC')
4343
4444 let bot = addressFromStringValue(getStringValue(this, keyBotAddress))
4545
4646 @Callable(i)
4747 func invoker () = {
4848 let inv1 = invoke(Address(base58'3PAucbbumdUXmhzcR421zGiayphEdo2tRoz'), "withdraw", nil, nil)
4949 if ((inv1 == inv1))
5050 then {
5151 let inv2 = if ((50 > assetBalance(Address(base58'3PAucbbumdUXmhzcR421zGiayphEdo2tRoz'), vvxtnlp)))
5252 then invoke(Address(base58'3PAkmJniMgnnAej5pYf2jFYkCbZow5pt9tr'), "withdraw", nil, nil)
5353 else invoke(Address(base58'3PAucbbumdUXmhzcR421zGiayphEdo2tRoz'), "importVVXTNLP", nil, nil)
5454 if ((inv2 == inv2))
5555 then {
5656 let inv3 = invoke(Address(base58'3PPCzX2doZ7agBNuGSKqjrbdXgGEtE7CpQ3'), "withdraw", nil, nil)
5757 if ((inv3 == inv3))
5858 then {
5959 let inv4 = invoke(Address(base58'3PHLhWPrs1mrpM1ZDUv1VmUnZRwchADJELc'), "withdraw", nil, nil)
6060 if ((inv4 == inv4))
6161 then nil
6262 else throw("Strict value is not equal to itself.")
6363 }
6464 else throw("Strict value is not equal to itself.")
6565 }
6666 else throw("Strict value is not equal to itself.")
6767 }
6868 else throw("Strict value is not equal to itself.")
6969 }
7070
7171
7272
7373 @Callable(i)
7474 func invokerBBB () = if ((i.caller != bot))
7575 then throw("no")
7676 else {
7777 let inv = if ((tryGetInteger(bbb, keyInvokeNext) == 2))
7878 then invoke(this, "BBB2", nil, nil)
7979 else invoke(this, "BBB1", nil, nil)
8080 if ((inv == inv))
8181 then nil
8282 else throw("Strict value is not equal to itself.")
8383 }
8484
8585
8686
8787 @Callable(i)
8888 func BBB1 () = if ((i.caller != this))
8989 then throw("no")
9090 else if (((getIntegerValue(bbb, keyActivated) + (7 * 1440)) > height))
9191 then throw(("Wait till blockheight" + toString((getIntegerValue(bbb, keyActivated) + (7 * 1440)))))
9292 else {
9393 let inv = invoke(bbb, "claimInvestPuzzle", nil, nil)
9494 if ((inv == inv))
9595 then [ScriptTransfer(bot, d6, unit)]
9696 else throw("Strict value is not equal to itself.")
9797 }
9898
9999
100100
101101 @Callable(i)
102102 func BBB2 () = if ((i.caller != this))
103103 then throw("no")
104104 else if (((getIntegerValue(bbb, keyActivated2) + (7 * 1440)) > height))
105105 then throw(("Wait till blockheight" + toString((getIntegerValue(bbb, keyActivated2) + (7 * 1440)))))
106106 else {
107107 let inv = invoke(bbb, "distribute", nil, nil)
108108 if ((inv == inv))
109109 then [ScriptTransfer(bot, d6, unit)]
110110 else throw("Strict value is not equal to itself.")
111111 }
112112
113113
114114
115115 @Callable(i)
116116 func BBB1any () = if ((((getIntegerValue(bbb, keyActivated) + (7 * 1440)) + 2) > height))
117117 then throw(("Wait till blockheight" + toString(((getIntegerValue(bbb, keyActivated) + (7 * 1440)) + 2))))
118118 else if ((tryGetInteger(bbb, keyInvokeNext) == 2))
119119 then throw("invoke BBB2any first")
120120 else {
121121 let inv = invoke(bbb, "claimInvestPuzzle", nil, nil)
122122 if ((inv == inv))
123123 then [ScriptTransfer(bot, d6, unit)]
124124 else throw("Strict value is not equal to itself.")
125125 }
126126
127127
128128
129129 @Callable(i)
130130 func BBB2any () = if ((((getIntegerValue(bbb, keyActivated2) + (7 * 1440)) + 2) > height))
131131 then throw(("Wait till blockheight" + toString(((getIntegerValue(bbb, keyActivated2) + (7 * 1440)) + 2))))
132132 else if ((tryGetInteger(bbb, keyInvokeNext) == 1))
133133 then throw("invoke BBB1any first")
134134 else {
135135 let inv = invoke(bbb, "distribute", nil, nil)
136136 if ((inv == inv))
137137 then [ScriptTransfer(bot, d6, unit)]
138138 else throw("Strict value is not equal to itself.")
139139 }
140140
141141
142142
143143 @Callable(i)
144144 func botAddress (address) = if ((i.caller != this))
145145 then throw("no")
146146 else [StringEntry(keyBotAddress, address)]
147147
148148
149149
150150 @Callable(i)
151151 func changeIntegerEntry (keyString,integer) = if ((i.caller != this))
152152 then throw("access only by project owner")
153153 else [IntegerEntry(keyString, integer)]
154154
155155
156156
157157 @Callable(i)
158158 func burnXTN () = if (if ((i.caller != this))
159159 then (i.caller != burn)
160160 else false)
161161 then throw("access only by project owner")
162162 else {
163163 let xtnBurnAmount = if ((assetBalance(this, xtnId) >= tryGetInteger(burn, keyBurnAmount)))
164164 then tryGetInteger(burn, keyBurnAmount)
165165 else 0
166166 let xtnBurn = Burn(xtnId, xtnBurnAmount)
167167 let surfBurnAmount = if ((assetBalance(this, surfId) >= tryGetInteger(burn, keyBurnAmount)))
168168 then tryGetInteger(burn, keyBurnAmount)
169169 else 0
170170 let surfBurn = Burn(surfId, surfBurnAmount)
171171 let burnxtnBurnAmount = if ((assetBalance(this, burnxtnId) >= tryGetInteger(burn, keyBurnxtnAmount)))
172172 then tryGetInteger(burn, keyBurnxtnAmount)
173173 else 0
174174 let burnxtnBurn = Burn(burnxtnId, burnxtnBurnAmount)
175175 [xtnBurn, surfBurn, burnxtnBurn, IntegerEntry("XTN total burned", (getIntegerValue(this, "XTN total burned") + xtnBurnAmount)), IntegerEntry("SURF total burned", (tryGetInteger(this, "SURF total burned") + surfBurnAmount))]
176176 }
177177
178178
179179
180180 @Callable(i)
181181 func invokerBurn1 () = if ((i.caller != s))
182182 then throw("no")
183- else {
184- let inv1 = reentrantInvoke(burn, "invoke1", nil, nil)
185- if ((inv1 == inv1))
186- then {
187- let inv = invoke(swe, "allin", nil, nil)
188- if ((inv == inv))
189- then {
190- let inv2 = invoke(whi, "allin", nil, nil)
191- if ((inv2 == inv2))
192- then [ScriptTransfer(bot, if ((getIntegerValue(this, keyInvokeNext) == 2))
193- then 0
194- else d6, unit), IntegerEntry(keyInvokeNext, 2)]
195- else throw("Strict value is not equal to itself.")
196- }
197- else throw("Strict value is not equal to itself.")
198- }
199- else throw("Strict value is not equal to itself.")
200- }
183+ else if ((tryGetInteger(this, keyInvokeNext) == 2))
184+ then throw("invoke invokerBurn2 first")
185+ else {
186+ let inv1 = reentrantInvoke(burn, "invoke1", nil, nil)
187+ if ((inv1 == inv1))
188+ then {
189+ let inv = invoke(swe, "allin", nil, nil)
190+ if ((inv == inv))
191+ then {
192+ let inv2 = invoke(whi, "allin", nil, nil)
193+ if ((inv2 == inv2))
194+ then [ScriptTransfer(bot, if ((i.caller == bot))
195+ then d6
196+ else 0, unit), IntegerEntry(keyInvokeNext, 2)]
197+ else throw("Strict value is not equal to itself.")
198+ }
199+ else throw("Strict value is not equal to itself.")
200+ }
201+ else throw("Strict value is not equal to itself.")
202+ }
201203
202204
203205
204206 @Callable(i)
205207 func invokerBurn2 () = if ((i.caller != s))
206208 then throw("no")
207- else {
208- let inv1 = reentrantInvoke(burn, "invoke2", nil, nil)
209- if ((inv1 == inv1))
210- then [ScriptTransfer(bot, if ((getIntegerValue(this, keyInvokeNext) == 1))
211- then 0
212- else d6, unit), IntegerEntry(keyInvokeNext, 1)]
213- else throw("Strict value is not equal to itself.")
214- }
209+ else if ((tryGetInteger(this, keyInvokeNext) == 1))
210+ then throw("invoke invokerBurn1 first")
211+ else {
212+ let inv1 = reentrantInvoke(burn, "invoke2", nil, nil)
213+ if ((inv1 == inv1))
214+ then {
215+ let inv = invoke(swe, "allout", nil, nil)
216+ if ((inv == inv))
217+ then {
218+ let inv2 = invoke(whi, "allout", nil, nil)
219+ if ((inv2 == inv2))
220+ then [ScriptTransfer(bot, if ((i.caller == bot))
221+ then d6
222+ else 0, unit), IntegerEntry(keyInvokeNext, 1)]
223+ else throw("Strict value is not equal to itself.")
224+ }
225+ else throw("Strict value is not equal to itself.")
226+ }
227+ else throw("Strict value is not equal to itself.")
228+ }
215229
216230

github/deemru/w8io/873ac7e 
30.78 ms