tx · 7Gbr33NgbcxXav4ztNamYKZ5zxAUk5G6j33NyDri6G1K

3PPhk52YuwKTFT2U865di1Pepj4bFHxubFY:  -0.03800000 Waves

2022.11.08 18:12 [3373689] smart account 3PPhk52YuwKTFT2U865di1Pepj4bFHxubFY > SELF 0.00000000 Waves

{ "type": 13, "id": "7Gbr33NgbcxXav4ztNamYKZ5zxAUk5G6j33NyDri6G1K", "fee": 3800000, "feeAssetId": null, "timestamp": 1667920444818, "version": 2, "chainId": 87, "sender": "3PPhk52YuwKTFT2U865di1Pepj4bFHxubFY", "senderPublicKey": "5EhD7NvoyShNGdN6g6ps2X6FieUun2o7TTggY1CL9wH9", "proofs": [ "5qWTjUiUpzFQmoqMpfqd2aMXpQjUp5RvFVrnzue3jYBVYf6yLuuDGVEoawxsqFwmC4nKMFxEnKWhpfxUr6zjUo4m" ], "script": "base64:BgIeCAISAwoBCBIDCgEIEgMKAQgSBQoDCAEYEgQKAggBBQAKaW5kaWNlc18yMAkAzAgCAAAJAMwIAgABCQDMCAIAAgkAzAgCAAMJAMwIAgAECQDMCAIABQkAzAgCAAYJAMwIAgAHCQDMCAIACAkAzAgCAAkJAMwIAgAKCQDMCAIACwkAzAgCAAwJAMwIAgANCQDMCAIADgkAzAgCAA8JAMwIAgAQCQDMCAIAEQkAzAgCABIJAMwIAgATBQNuaWwBD2NoZWNrX3doaXRlbGlzdAEGY2FsbGVyAwkAAAIFBHRoaXMFBmNhbGxlcgYEByRtYXRjaDAJAKAIAQkArAICAgJXXwkA2AQBCAUGY2FsbGVyBWJ5dGVzAwkAAQIFByRtYXRjaDACB0Jvb2xlYW4EAXgFByRtYXRjaDAFAXgHAQ9mb2xkX3B1dF9hc3NldHMCBWFjY3VtBWluZGV4BAkkdDA0NjI0OTkFBWFjY3VtBARsaXN0CAUJJHQwNDYyNDk5Al8xBAdhaXJkcm9wCAUJJHQwNDYyNDk5Al8yBAhwYXltZW50cwgFCSR0MDQ2MjQ5OQJfMwMJAGcCBQVpbmRleAkAkAMBBQhwYXltZW50cwUFYWNjdW0DCQECIT0CCAkAkQMCBQhwYXltZW50cwUFaW5kZXgGYW1vdW50AAEJAAIBCQCsAgIJAKwCAgIOV3JvbmcgcGF5bWVudCAJAKQDAQkAZAIFBWluZGV4AAECByBhbW91bnQEA2tleQkArAICBQdhaXJkcm9wAgRfZW5kBANlbmQEByRtYXRjaDAJAJ8IAQUDa2V5AwkAAQIFByRtYXRjaDACA0ludAQBagUHJG1hdGNoMAUBagAABAJpZAkA2AQBCQEFdmFsdWUBCAkAkQMCBQhwYXltZW50cwUFaW5kZXgHYXNzZXRJZAkAlQoDCQDOCAIFBGxpc3QJAMwIAgkBDEludGVnZXJFbnRyeQIFA2tleQkAZAIFA2VuZAABCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICBQdhaXJkcm9wAgNfWF8JANgEAQkAmgMBBQNlbmQFAmlkBQNuaWwFB2FpcmRyb3AFCHBheW1lbnRzAQpmb2xkX2FsbG93AgVhY2N1bQVpbmRleAQLJHQwMTExMjExNTcFBWFjY3VtBARsaXN0CAULJHQwMTExMjExNTcCXzEEB2FpcmRyb3AIBQskdDAxMTEyMTE1NwJfMgQGYW1vdW50CAULJHQwMTExMjExNTcCXzMECGFjY291bnRzCAULJHQwMTExMjExNTcCXzQDCQBnAgUFaW5kZXgJAJADAQUIYWNjb3VudHMFBWFjY3VtBANrZXkJAKwCAgkArAICBQdhaXJkcm9wAgNfQV8JAJEDAgUIYWNjb3VudHMFBWluZGV4BAdhbGxvd2VkBAckbWF0Y2gwCQCfCAEFA2tleQMJAAECBQckbWF0Y2gwAgNJbnQEAWoFByRtYXRjaDAFAWoAAAkAlgoECQDNCAIFBGxpc3QJAQxJbnRlZ2VyRW50cnkCBQNrZXkJAGQCBQdhbGxvd2VkBQZhbW91bnQFB2FpcmRyb3AFBmFtb3VudAUIYWNjb3VudHMBCmZvbGRfY2xhaW0CBWFjY3VtBWluZGV4BAskdDAxNTUzMTU5NwUFYWNjdW0EBGxpc3QIBQskdDAxNTUzMTU5NwJfMQQGYW1vdW50CAULJHQwMTU1MzE1OTcCXzIEB2FpcmRyb3AIBQskdDAxNTUzMTU5NwJfMwQHY2xhaW1lcggFCyR0MDE1NTMxNTk3Al80AwkAZwIAAAUGYW1vdW50BQVhY2N1bQQJYXNzZXRfa2V5CQCsAgIJAKwCAgUHYWlyZHJvcAIDX1hfCQDYBAEJAJoDAQUFaW5kZXgECGFzc2V0X2lkCQDZBAEJARFAZXh0ck5hdGl2ZSgxMDU4KQEFCWFzc2V0X2tleQkAlgoECQDOCAIFBGxpc3QJAMwIAgkBC0RlbGV0ZUVudHJ5AQUJYXNzZXRfa2V5CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFB2NsYWltZXIAAQUIYXNzZXRfaWQFA25pbAkAZQIFBmFtb3VudAABBQdhaXJkcm9wBQdjbGFpbWVyBQFpAQ13aGl0ZWxpc3RfYWRkAQR1c2VyAwkBAiE9AgUEdGhpcwgFAWkGY2FsbGVyCQACAQIYQ2FsbGVyIGlzIG5vdCBkQXBwIG93bmVyCQCUCgIJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAKwCAgICV18FBHVzZXIGBQNuaWwFBHVuaXQBaQEQd2hpdGVsaXN0X3JlbW92ZQEEdXNlcgMJAQIhPQIFBHRoaXMIBQFpBmNhbGxlcgkAAgEC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BQdhaXJkcm9wAgRfZW5kBAViZWdpbgQHJG1hdGNoMAkAnwgBBQdrX2JlZ2luAwkAAQIFByRtYXRjaDACA0ludAQBagUHJG1hdGNoMAUBagAABANlbmQEByRtYXRjaDAJAJ8IAQUFa19lbmQDCQABAgUHJG1hdGNoMAIDSW50BAFqBQckbWF0Y2gwBQFqAAADAwkAZwIAAAUGYW1vdW50BgkAZgIFBmFtb3VudAAUCQACAQIpV3JvbmcgYW1vdW50IChzaG91bGQgYmUgaW4gcmFuZ2UgMSAtLSAyMCkDCQBmAgUGYW1vdW50CQBlAgUDZW5kBQViZWdpbgkAAgECEk5vIGFzc2V0cyBpbiBzdG9jawQHaW5kaWNlcwkAzAgCBQViZWdpbgkAzAgCCQBkAgUFYmVnaW4AAQkAzAgCCQBkAgUFYmVnaW4AAgkAzAgCCQBkAgUFYmVnaW4AAwkAzAgCCQBkAgUFYmVnaW4ABAkAzAgCCQBkAgUFYmVnaW4ABQkAzAgCCQBkAgUFYmVnaW4ABgkAzAgCCQBkAgUFYmVnaW4ABwkAzAgCCQBkAgUFYmVnaW4ACAkAzAgCCQBkAgUFYmVnaW4ACQkAzAgCCQBkAgUFYmVnaW4ACgkAzAgCCQBkAgUFYmVnaW4ACwkAzAgCCQBkAgUFYmVnaW4ADAkAzAgCCQBkAgUFYmVnaW4ADQkAzAgCCQBkAgUFYmVnaW4ADgkAzAgCCQBkAgUFYmVnaW4ADwkAzAgCCQBkAgUFYmVnaW4AEAkAzAgCCQBkAgUFYmVnaW4AEQkAzAgCCQBkAgUFYmVnaW4AEgkAzAgCCQBkAgUFYmVnaW4AEwUDbmlsBAskdDA0Mjk3NDQ1MAoAAiRsBQdpbmRpY2VzCgACJHMJAJADAQUCJGwKAAUkYWNjMAkAlgoEBQNuaWwFBmFtb3VudAUHYWlyZHJvcAkBB0FkZHJlc3MBCAgFAWkGY2FsbGVyBWJ5dGVzCgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQpmb2xkX2NsYWltAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhRMaXN0IHNpemUgZXhjZWVkcyAyMAkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQEBGxpc3QIBQskdDA0Mjk3NDQ1MAJfMQQHYW1vdW50XwgFCyR0MDQyOTc0NDUwAl8yBAhhaXJkcm9wXwgFCyR0MDQyOTc0NDUwAl8zBAhjbGFpbWVyXwgFCyR0MDQyOTc0NDUwAl80CQCUCgIJAM4IAgkAzAgCCQEMSW50ZWdlckVudHJ5AgUJa19hbGxvd2VkCQBlAgUHYWxsb3dlZAUGYW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQdrX2JlZ2luCQBkAgUFYmVnaW4FBmFtb3VudAUDbmlsBQRsaXN0BQR1bml0AM8hHgc=", "height": 3373689, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: C4RVZH5Q2a1myQH3R5UTvwbHQTRZaM4Rg8br246edqC6 Next: F78fV2znNc3CqRVMumkUZaivBwYTCTktsG1hW3ZS4Rvm Diff:
OldNewDifferences
120120 @Callable(i)
121121 func allow (airdrop,amount,accounts) = if (!(check_whitelist(i.caller)))
122122 then throw("Caller not in whitelist")
123- else if ((0 >= amount))
123+ else if ((amount == 0))
124124 then throw("Wrong amount")
125125 else if ((size(accounts) == 0))
126126 then throw("No accounts")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let indices_20 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
55
66 func check_whitelist (caller) = if ((this == caller))
77 then true
88 else match getBoolean(("W_" + toBase58String(caller.bytes))) {
99 case x: Boolean =>
1010 x
1111 case _ =>
1212 false
1313 }
1414
1515
1616 func fold_put_assets (accum,index) = {
1717 let $t0462499 = accum
1818 let list = $t0462499._1
1919 let airdrop = $t0462499._2
2020 let payments = $t0462499._3
2121 if ((index >= size(payments)))
2222 then accum
2323 else if ((payments[index].amount != 1))
2424 then throw((("Wrong payment " + toString((index + 1))) + " amount"))
2525 else {
2626 let key = (airdrop + "_end")
2727 let end = match getInteger(key) {
2828 case j: Int =>
2929 j
3030 case _ =>
3131 0
3232 }
3333 let id = toBase58String(value(payments[index].assetId))
3434 $Tuple3((list ++ [IntegerEntry(key, (end + 1)), StringEntry(((airdrop + "_X_") + toBase58String(toBytes(end))), id)]), airdrop, payments)
3535 }
3636 }
3737
3838
3939 func fold_allow (accum,index) = {
4040 let $t011121157 = accum
4141 let list = $t011121157._1
4242 let airdrop = $t011121157._2
4343 let amount = $t011121157._3
4444 let accounts = $t011121157._4
4545 if ((index >= size(accounts)))
4646 then accum
4747 else {
4848 let key = ((airdrop + "_A_") + accounts[index])
4949 let allowed = match getInteger(key) {
5050 case j: Int =>
5151 j
5252 case _ =>
5353 0
5454 }
5555 $Tuple4((list :+ IntegerEntry(key, (allowed + amount))), airdrop, amount, accounts)
5656 }
5757 }
5858
5959
6060 func fold_claim (accum,index) = {
6161 let $t015531597 = accum
6262 let list = $t015531597._1
6363 let amount = $t015531597._2
6464 let airdrop = $t015531597._3
6565 let claimer = $t015531597._4
6666 if ((0 >= amount))
6767 then accum
6868 else {
6969 let asset_key = ((airdrop + "_X_") + toBase58String(toBytes(index)))
7070 let asset_id = fromBase58String(getStringValue(asset_key))
7171 $Tuple4((list ++ [DeleteEntry(asset_key), ScriptTransfer(claimer, 1, asset_id)]), (amount - 1), airdrop, claimer)
7272 }
7373 }
7474
7575
7676 @Callable(i)
7777 func whitelist_add (user) = if ((this != i.caller))
7878 then throw("Caller is not dApp owner")
7979 else $Tuple2([BooleanEntry(("W_" + user), true)], unit)
8080
8181
8282
8383 @Callable(i)
8484 func whitelist_remove (user) = if ((this != i.caller))
8585 then throw("Caller is not dApp owner")
8686 else $Tuple2([DeleteEntry(("W_" + user))], unit)
8787
8888
8989
9090 @Callable(i)
9191 func put_assets (airdrop) = if (!(check_whitelist(i.caller)))
9292 then throw("Caller not in whitelist")
9393 else if ((size(i.payments) == 0))
9494 then throw("No payment")
9595 else if ((size(i.payments) > 20))
9696 then throw("To many assets")
9797 else {
9898 let $t025622660 = {
9999 let $l = indices_20
100100 let $s = size($l)
101101 let $acc0 = $Tuple3(nil, airdrop, i.payments)
102102 func $f0_1 ($a,$i) = if (($i >= $s))
103103 then $a
104104 else fold_put_assets($a, $l[$i])
105105
106106 func $f0_2 ($a,$i) = if (($i >= $s))
107107 then $a
108108 else throw("List size exceeds 20")
109109
110110 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
111111 }
112112 let list = $t025622660._1
113113 let airdrop_ = $t025622660._2
114114 let payments_ = $t025622660._3
115115 $Tuple2(list, unit)
116116 }
117117
118118
119119
120120 @Callable(i)
121121 func allow (airdrop,amount,accounts) = if (!(check_whitelist(i.caller)))
122122 then throw("Caller not in whitelist")
123- else if ((0 >= amount))
123+ else if ((amount == 0))
124124 then throw("Wrong amount")
125125 else if ((size(accounts) == 0))
126126 then throw("No accounts")
127127 else if ((size(accounts) > 20))
128128 then throw("Too many accounts")
129129 else {
130130 let $t030423150 = {
131131 let $l = indices_20
132132 let $s = size($l)
133133 let $acc0 = $Tuple4(nil, airdrop, amount, accounts)
134134 func $f0_1 ($a,$i) = if (($i >= $s))
135135 then $a
136136 else fold_allow($a, $l[$i])
137137
138138 func $f0_2 ($a,$i) = if (($i >= $s))
139139 then $a
140140 else throw("List size exceeds 20")
141141
142142 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
143143 }
144144 let list = $t030423150._1
145145 let airdrop_ = $t030423150._2
146146 let amount_ = $t030423150._3
147147 let accounts_ = $t030423150._4
148148 $Tuple2(list, unit)
149149 }
150150
151151
152152
153153 @Callable(i)
154154 func claim (airdrop,amount) = {
155155 let k_allowed = ((airdrop + "_A_") + toBase58String(i.caller.bytes))
156156 let allowed = getIntegerValue(k_allowed)
157157 if ((amount > allowed))
158158 then throw("Caller not allowed to claim")
159159 else {
160160 let k_begin = (airdrop + "_begin")
161161 let k_end = (airdrop + "_end")
162162 let begin = match getInteger(k_begin) {
163163 case j: Int =>
164164 j
165165 case _ =>
166166 0
167167 }
168168 let end = match getInteger(k_end) {
169169 case j: Int =>
170170 j
171171 case _ =>
172172 0
173173 }
174174 if (if ((0 >= amount))
175175 then true
176176 else (amount > 20))
177177 then throw("Wrong amount (should be in range 1 -- 20)")
178178 else if ((amount > (end - begin)))
179179 then throw("No assets in stock")
180180 else {
181181 let indices = [begin, (begin + 1), (begin + 2), (begin + 3), (begin + 4), (begin + 5), (begin + 6), (begin + 7), (begin + 8), (begin + 9), (begin + 10), (begin + 11), (begin + 12), (begin + 13), (begin + 14), (begin + 15), (begin + 16), (begin + 17), (begin + 18), (begin + 19)]
182182 let $t042974450 = {
183183 let $l = indices
184184 let $s = size($l)
185185 let $acc0 = $Tuple4(nil, amount, airdrop, Address(i.caller.bytes))
186186 func $f0_1 ($a,$i) = if (($i >= $s))
187187 then $a
188188 else fold_claim($a, $l[$i])
189189
190190 func $f0_2 ($a,$i) = if (($i >= $s))
191191 then $a
192192 else throw("List size exceeds 20")
193193
194194 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
195195 }
196196 let list = $t042974450._1
197197 let amount_ = $t042974450._2
198198 let airdrop_ = $t042974450._3
199199 let claimer_ = $t042974450._4
200200 $Tuple2(([IntegerEntry(k_allowed, (allowed - amount)), IntegerEntry(k_begin, (begin + amount))] ++ list), unit)
201201 }
202202 }
203203 }
204204
205205

github/deemru/w8io/3ef1775 
29.31 ms