tx · DY7kFPgenPBm6NTja7yP47kAZhog3jqW9kaFkLStVhid

3MqEAEVk1NcbRAuEPAX7nyzUqMHbhvRofez:  -0.00100000 Waves

2023.11.17 11:33 [2847124] smart account 3MqEAEVk1NcbRAuEPAX7nyzUqMHbhvRofez > SELF 0.00000000 Waves

{ "type": 13, "id": "DY7kFPgenPBm6NTja7yP47kAZhog3jqW9kaFkLStVhid", "fee": 100000, "feeAssetId": null, "timestamp": 1700210078475, "version": 2, "chainId": 84, "sender": "3MqEAEVk1NcbRAuEPAX7nyzUqMHbhvRofez", "senderPublicKey": "Brp6cacBXyKUcZr5Uc6VDKsnFcaEeQ8nQzrZQyobDsuf", "proofs": [ "3965PJyjPHvtVFEPucsLzLMBpgCM9WSoxnHYovhCZ4oftfj51C7LVYYtt8Qi7vk1yD5ANE7cEHyZg6BZozVrnorT" ], "script": "base64:BgIECAISAAkADFRlc3RTQ1B1YktleQEgoVeU11muwc+hUBHN7HeslecfLlzb1kPRfhzSdE7YqzYACFRlc3RVc2VyCQEHQWRkcmVzcwEBGgFUmiSvdpHfcyUoO/Y3lJR5RVM/EC7LIlBGAA5UZXN0VXNlclB1YktleQEggQhA7lSDBAV96QCBw6VWWREBAkOfczsVMMZRMcDjO10ACVRlc3RVc2VyMgkBB0FkZHJlc3MBARoBVNBVQEgvriq5Wd7cAHuvw7N/9YPdF0K61wAPVGVzdFVzZXIyUHViS2V5ASAaFa4tDyIv1uhzDfwRR/IHtg7qNN7P3pYq2N1IFBp+EAATUHV6emxlTWFzdGVyQWRkcmVzcwkBB0FkZHJlc3MBARoBV85X8yTRB6SzTv7SuuIorMWQltaK0W0F7gASUHV6emxlTWFzdGVyUHViS2V5ASA7NU1uP5+++FSclkQHgFarL+ITYEXEe/I/F0P0QgUmXQANYWNjZXNzQWRkcmVzcwkAzAgCBQR0aGlzCQDMCAIFCFRlc3RVc2VyCQDMCAIFCVRlc3RVc2VyMgUDbmlsAAZhY2Nlc3MJAMwIAgUMVGVzdFNDUHViS2V5CQDMCAIFDlRlc3RVc2VyUHViS2V5CQDMCAIFD1Rlc3RVc2VyMlB1YktleQUDbmlsAQFpAQhhY3RpdmF0ZQAJAMwIAgkBDEludGVnZXJFbnRyeQIDCQAAAggFAWkGY2FsbGVyBQR0aGlzAhVBY3RpdmF0ZWQgYmxvY2toZWlnaHQCIEFjdGl2YXRlZCBieSBhbnlib2R5IGJsb2NraGVpZ2h0BQZoZWlnaHQFA25pbAECdHgBBnZlcmlmeQAEByRtYXRjaDAFAnR4AwkAAQIFByRtYXRjaDACE1RyYW5zZmVyVHJhbnNhY3Rpb24EA3R0eAUHJG1hdGNoMAMJAAACCQEPY29udGFpbnNFbGVtZW50AgUNYWNjZXNzQWRkcmVzcwgFA3R0eAZzZW5kZXIGCQD0AwMIBQN0dHgJYm9keUJ5dGVzCQCRAwIIBQN0dHgGcHJvb2ZzAAAIBQN0dHgPc2VuZGVyUHVibGljS2V5Bwflv5Cj", "height": 2847124, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 7FBtqWFZjvUVV3hkGPKc3bF6y9EMwxpjKjrumSqbv3X7 Next: none Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let d8 = 100000000
4+let TestSCPubKey = base58'Brp6cacBXyKUcZr5Uc6VDKsnFcaEeQ8nQzrZQyobDsuf'
55
6-let registrationClosed = 1
6+let TestUser = Address(base58'3N3y7nQfqDc7rBUExjKQi5ZbspWRh9q8PYH')
77
8-let registrationRequirement = (40000 * d8)
8+let TestUserPubKey = base58'9ggtmbyecVRfUY2zeZhNaoLBp2iymhnQhffXQhemTJaG'
99
10-func tryGetInteger (address,key) = match getInteger(address, key) {
11- case b: Int =>
12- b
13- case _ =>
14- 0
15-}
10+let TestUser2 = Address(base58'3N8ueTAufEUYDKWJDbfK7aZ4HHxBkX4DXA6')
11+
12+let TestUser2PubKey = base58'2kpmuzw1ZbrtgAN3BrR7vbEW1XrJoJKCstL7mf7XNf2P'
13+
14+let PuzzleMasterAddress = Address(base58'3PLjwHcz9NEuaTo63NZR9B9okQiKQxZSbmf')
15+
16+let PuzzleMasterPubKey = base58'4z8CKSYQBKkzx7PBb5uBP1YPa6YAHRNTApW1sQVHT5eU'
17+
18+let accessAddress = [this, TestUser, TestUser2]
19+
20+let access = [TestSCPubKey, TestUserPubKey, TestUser2PubKey]
21+
22+@Callable(i)
23+func activate () = [IntegerEntry(if ((i.caller == this))
24+ then "Activated blockheight"
25+ else "Activated by anybody blockheight", height)]
1626
1727
18-func tryGetString (address,key) = match getString(address, key) {
19- case b: String =>
20- b
28+@Verifier(tx)
29+func verify () = match tx {
30+ case ttx: TransferTransaction =>
31+ if ((containsElement(accessAddress, ttx.sender) == true))
32+ then sigVerify(ttx.bodyBytes, ttx.proofs[0], ttx.senderPublicKey)
33+ else false
2134 case _ =>
22- ""
35+ false
2336 }
24-
25-
26-let burnxtn = base58'3SjxA2YLdfF9fTRbzLm9xFn27C6MW34W1YsdJ6Axefns'
27-
28-let whirlpool = base58'73tY3E6Gd5AWYmsuq8m8Kek7KnJNAYyS3GoveTbc6jCi'
29-
30-let PZ1 = base58'3PE7NtJdmVq4yo47LKDqurQ8RLDCouvJCPB'
31-
32-let PZ2 = base58'3PQHndCUVrv3wBuQjbvVP9SnGmfbfitGxfx'
33-
34-let PZ3 = base58'3PBiMQLnX8wd4bssXCgF8KuUqHv1H4zWHGi'
35-
36-let PZ4 = base58'3PDJPGn6vBEBqWN4E3fNcxoKBoDXbsmoaM7'
37-
38-let PZ5 = base58'3PCS1xhGQi2eM5mYcCBhUSHvB31Kk5gZoCm'
39-
40-let PZ6 = base58'3P8Quvmgt3VEWAjBR3bsfgCqzUh7zTmTC4q'
41-
42-let WXstake = base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'
43-
44-let WX1 = base58'3P5vwLbXddLWpsRspftMxLuzfsjk3dLT3n5'
45-
46-let LP1 = "GyiHdcN59sZ46baFvj68ruLngrTPEvWDtsd6jHm4o46n"
47-
48-let WX2 = base58'3PKXseWa31VUSWUvm2YiRKxW2VM9RsVk3ry'
49-
50-let LP2 = "3MPHMJVwYGyeBLRsH1RsYhrTmemv752AEBwuFFV7g49Z"
51-
52-func PZbal (Pooladdress,address) = {
53- let burnxtnInPZ = tryGetInteger(Address(Pooladdress), (("global_" + toBase58String(burnxtn)) + "_balance"))
54- let addressStakePZ = tryGetInteger(Address(Pooladdress), (toString(address) + "_indexStaked"))
55- let totalStakePZ = tryGetInteger(Address(Pooladdress), "global_poolToken_amount")
56- fraction(burnxtnInPZ, addressStakePZ, totalStakePZ)
57- }
58-
59-
60-func WXbal (Pooladdress,address,LPstr) = {
61- let burnxtnInWX = assetBalance(Address(Pooladdress), burnxtn)
62- let addressStakeWX = tryGetInteger(Address(WXstake), ((("%s%s%s__staked__" + toString(address)) + "__") + LPstr))
63- let totalStakeWX = tryGetInteger(Address(WXstake), ("%s%s%s__staked__total__" + LPstr))
64- fraction(burnxtnInWX, addressStakeWX, totalStakeWX)
65- }
66-
67-
68-func totalBalance (address) = {
69- let burnxtnBalance = assetBalance(address, burnxtn)
70- let PZ1balance = PZbal(PZ1, address)
71- let PZ2balance = PZbal(PZ2, address)
72- let PZ3balance = PZbal(PZ3, address)
73- let PZ4balance = PZbal(PZ4, address)
74- let PZ5balance = PZbal(PZ5, address)
75- let PZ6balance = PZbal(PZ6, address)
76- let WX1balance = WXbal(WX1, address, LP1)
77- let WX2balance = WXbal(WX2, address, LP2)
78- let total = ((((((((burnxtnBalance + PZ1balance) + PZ2balance) + PZ3balance) + PZ4balance) + PZ5balance) + PZ6balance) + WX1balance) + WX2balance)
79-[IntegerEntry("burnxtnBalance", burnxtnBalance), IntegerEntry("PZ1balance", PZ1balance), IntegerEntry("PZ2balance", PZ2balance), IntegerEntry("PZ3balance", PZ3balance), IntegerEntry("PZ4balance", PZ4balance), IntegerEntry("PZ5balance", PZ5balance), IntegerEntry("PZ6balance", PZ6balance), IntegerEntry("WX1balance", WX1balance), IntegerEntry("WX2balance", WX2balance), IntegerEntry("total", total)]
80- }
81-
82-
83-func totalBalance2 (address) = {
84- let burnxtnBalance = assetBalance(address, burnxtn)
85- let PZ1balance = PZbal(PZ1, address)
86- let PZ2balance = PZbal(PZ2, address)
87- let PZ3balance = PZbal(PZ3, address)
88- let PZ4balance = PZbal(PZ4, address)
89- let PZ5balance = PZbal(PZ5, address)
90- let PZ6balance = PZbal(PZ6, address)
91- let WX1balance = WXbal(WX1, address, LP1)
92- let WX2balance = WXbal(WX2, address, LP2)
93- ((((((((burnxtnBalance + PZ1balance) + PZ2balance) + PZ3balance) + PZ4balance) + PZ5balance) + PZ6balance) + WX1balance) + WX2balance)
94- }
95-
96-
97-@Callable(i)
98-func register () = if (contains(tryGetString(this, "Address registered"), toString(i.caller)))
99- then throw("already registered")
100- else if ((height > registrationClosed))
101- then throw("registration closed")
102- else if ((registrationRequirement > totalBalance2(i.caller)))
103- then throw("have atleast 40k BURN-XTN in wallet and liquidity pools")
104- else if ((tryGetInteger(this, "Amount Registered") == 99))
105- then throw("registration closed")
106- else ([IntegerEntry("Amount Registered", (tryGetInteger(this, "Amount Registered") + 1)), StringEntry(("Register address: " + toString((tryGetInteger(this, "Amount Registered") + 1))), toString(i.caller)), StringEntry("Address registered", ((tryGetString(this, "Address registered") + toString(i.caller)) + ","))] ++ totalBalance(i.caller))
107-
108-
109-
110-@Callable(i)
111-func start () = if ((i.caller != this))
112- then throw("access only by project owner")
113- else {
114- let addresses = dropRight(tryGetString(this, "Address registered"), 1)
115- let list = split(addresses, ",")
116- func bal (accum,address) = (accum ++ [IntegerEntry(address, wavesBalance(addressFromStringValue(address)).available)])
117-
118- let enterIntegers = {
119- let $l = list
120- let $s = size($l)
121- let $acc0 = nil
122- func $f0_1 ($a,$i) = if (($i >= $s))
123- then $a
124- else bal($a, $l[$i])
125-
126- func $f0_2 ($a,$i) = if (($i >= $s))
127- then $a
128- else throw("List size exceeds 100")
129-
130- $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($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($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($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($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), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
131- }
132- (nil ++ enterIntegers)
133- }
134-
135-
136-
137-@Callable(i)
138-func currentPosition () = {
139- let addresses = dropRight(tryGetString(this, "Address registered"), 1)
140- let list = split(addresses, ",")
141- func dif (accum,address) = (accum ++ [IntegerEntry(("increase " + address), (wavesBalance(addressFromStringValue(address)).available - tryGetInteger(this, address)))])
142-
143- let enterDif = {
144- let $l = list
145- let $s = size($l)
146- let $acc0 = nil
147- func $f0_1 ($a,$i) = if (($i >= $s))
148- then $a
149- else dif($a, $l[$i])
150-
151- func $f0_2 ($a,$i) = if (($i >= $s))
152- then $a
153- else throw("List size exceeds 98")
154-
155- $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($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($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($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($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), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98)
156- }
157- (nil ++ enterDif)
158- }
159-
160-
161-
162-@Callable(i)
163-func stop () = if ((i.caller != this))
164- then throw("access only by project owner")
165- else {
166- let addresses = dropRight(tryGetString(this, "Address registered"), 1)
167- let list = split(addresses, ",")
168- func dif (accum,address) = (accum ++ [IntegerEntry(("stop " + address), (wavesBalance(addressFromStringValue(address)).available - tryGetInteger(this, address)))])
169-
170- let enterDif = {
171- let $l = list
172- let $s = size($l)
173- let $acc0 = nil
174- func $f0_1 ($a,$i) = if (($i >= $s))
175- then $a
176- else dif($a, $l[$i])
177-
178- func $f0_2 ($a,$i) = if (($i >= $s))
179- then $a
180- else throw("List size exceeds 98")
181-
182- $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($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($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($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($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), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98)
183- }
184- (nil ++ enterDif)
185- }
186-
187-
188-
189-@Callable(i)
190-func winners () = if ((i.caller != this))
191- then throw("access only by project owner")
192- else {
193- let filter = invoke(this, "filter", nil, nil)
194- if ((filter == filter))
195- then nil
196- else throw("Strict value is not equal to itself.")
197- }
198-
199-
200-
201-@Callable(i)
202-func filter () = if ((i.caller != this))
203- then throw("access only by project owner")
204- else {
205- let addresses = dropRight(tryGetString(this, "Address registered"), 1)
206- let list = split(addresses, ",")
207- let listSize = size(list)
208- let requirement = 1
209- func fList (accum,address) = if ((requirement > tryGetInteger(this, ("stop " + address))))
210- then nil
211- else (accum :+ address)
212-
213- let filterList = {
214- let $l = list
215- let $s = size($l)
216- let $acc0 = nil
217- func $f0_1 ($a,$i) = if (($i >= $s))
218- then $a
219- else fList($a, $l[$i])
220-
221- func $f0_2 ($a,$i) = if (($i >= $s))
222- then $a
223- else throw("List size exceeds 98")
224-
225- $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($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($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($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($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), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98)
226- }
227- let filterListString = makeString(filterList, ",")
228- let filterListSize = size(filterList)
229- let cullSize = fraction(filterListSize, 80, 100, DOWN)
230-[StringEntry("filter", filterListString), IntegerEntry("list size filterList", filterListSize), IntegerEntry("cullSize", cullSize)]
231- }
232-
233-
234-
235-@Callable(i)
236-func remove () = if ((i.caller != this))
237- then throw("access only by project owner")
238- else if ((getIntegerValue("cullSize") >= getIntegerValue("list size filterList")))
239- then nil
240- else {
241- let list = split(getStringValue("filter"), ",")
242- func bal (accum,address) = (accum :+ tryGetInteger(this, ("stop " + address)))
243-
244- let balList = {
245- let $l = list
246- let $s = size($l)
247- let $acc0 = nil
248- func $f0_1 ($a,$i) = if (($i >= $s))
249- then $a
250- else bal($a, $l[$i])
251-
252- func $f0_2 ($a,$i) = if (($i >= $s))
253- then $a
254- else throw("List size exceeds 98")
255-
256- $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($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($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($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($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), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98)
257- }
258- let lowest = value(min(balList))
259- let indexLowest = value(indexOf(balList, lowest))
260- let minusLowestList = removeByIndex(list, indexLowest)
261- let minusLowestListSize = size(minusLowestList)
262- let minusLowestString = makeString(minusLowestList, ",")
263-[IntegerEntry("list size filterList", minusLowestListSize), StringEntry("filter", minusLowestString)]
264- }
265-
266-
267-
268-@Callable(i)
269-func transfer () = if ((i.caller != this))
270- then throw("access only by project owner")
271- else {
272- let assetId = whirlpool
273- let amount = (2 * d8)
274- let addresses = dropRight(tryGetString(this, "winners"), 1)
275- let list = split(addresses, ",")
276- let amountPerAddress = (amount / size(list))
277- func f (accum,address) = (accum ++ [ScriptTransfer(addressFromStringValue(address), amountPerAddress, assetId)])
278-
279- let $l = list
280- let $s = size($l)
281- let $acc0 = nil
282- func $f0_1 ($a,$i) = if (($i >= $s))
283- then $a
284- else f($a, $l[$i])
285-
286- func $f0_2 ($a,$i) = if (($i >= $s))
287- then $a
288- else throw("List size exceeds 100")
289-
290- $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($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($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($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($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), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
291- }
292-
293-
294-
295-@Callable(i)
296-func check () = [IntegerEntry("list size filterList", getIntegerValue("list size filterList")), StringEntry("filter", getStringValue("filter"))]
297-
29837

github/deemru/w8io/169f3d6 
50.41 ms