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 a = 100000000
4+let a = base58'Brp6cacBXyKUcZr5Uc6VDKsnFcaEeQ8nQzrZQyobDsuf'
55
6-let b = 1
6+let b = Address(base58'3N3y7nQfqDc7rBUExjKQi5ZbspWRh9q8PYH')
77
8-let c = (40000 * a)
8+let c = base58'9ggtmbyecVRfUY2zeZhNaoLBp2iymhnQhffXQhemTJaG'
99
10-func d (e,f) = {
11- let g = getInteger(e, f)
12- if ($isInstanceOf(g, "Int"))
13- then {
14- let h = g
15- h
16- }
17- else 0
18- }
10+let d = Address(base58'3N8ueTAufEUYDKWJDbfK7aZ4HHxBkX4DXA6')
11+
12+let e = base58'2kpmuzw1ZbrtgAN3BrR7vbEW1XrJoJKCstL7mf7XNf2P'
13+
14+let f = Address(base58'3PLjwHcz9NEuaTo63NZR9B9okQiKQxZSbmf')
15+
16+let g = base58'4z8CKSYQBKkzx7PBb5uBP1YPa6YAHRNTApW1sQVHT5eU'
17+
18+let h = [this, b, d]
19+
20+let i = [a, c, e]
21+
22+@Callable(j)
23+func activate () = [IntegerEntry(if ((j.caller == this))
24+ then "Activated blockheight"
25+ else "Activated by anybody blockheight", height)]
1926
2027
21-func i (e,f) = {
22- let g = getString(e, f)
23- if ($isInstanceOf(g, "String"))
28+@Verifier(k)
29+func l () = {
30+ let m = k
31+ if ($isInstanceOf(m, "TransferTransaction"))
2432 then {
25- let h = g
26- h
33+ let n = m
34+ if ((containsElement(h, n.sender) == true))
35+ then sigVerify(n.bodyBytes, n.proofs[0], n.senderPublicKey)
36+ else false
2737 }
28- else ""
38+ else false
2939 }
30-
31-
32-let j = base58'3SjxA2YLdfF9fTRbzLm9xFn27C6MW34W1YsdJ6Axefns'
33-
34-let k = base58'73tY3E6Gd5AWYmsuq8m8Kek7KnJNAYyS3GoveTbc6jCi'
35-
36-let l = base58'3PE7NtJdmVq4yo47LKDqurQ8RLDCouvJCPB'
37-
38-let m = base58'3PQHndCUVrv3wBuQjbvVP9SnGmfbfitGxfx'
39-
40-let n = base58'3PBiMQLnX8wd4bssXCgF8KuUqHv1H4zWHGi'
41-
42-let o = base58'3PDJPGn6vBEBqWN4E3fNcxoKBoDXbsmoaM7'
43-
44-let p = base58'3PCS1xhGQi2eM5mYcCBhUSHvB31Kk5gZoCm'
45-
46-let q = base58'3P8Quvmgt3VEWAjBR3bsfgCqzUh7zTmTC4q'
47-
48-let r = base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'
49-
50-let s = base58'3P5vwLbXddLWpsRspftMxLuzfsjk3dLT3n5'
51-
52-let t = "GyiHdcN59sZ46baFvj68ruLngrTPEvWDtsd6jHm4o46n"
53-
54-let u = base58'3PKXseWa31VUSWUvm2YiRKxW2VM9RsVk3ry'
55-
56-let v = "3MPHMJVwYGyeBLRsH1RsYhrTmemv752AEBwuFFV7g49Z"
57-
58-func w (x,e) = {
59- let y = d(Address(x), (("global_" + toBase58String(j)) + "_balance"))
60- let z = d(Address(x), (toString(e) + "_indexStaked"))
61- let A = d(Address(x), "global_poolToken_amount")
62- fraction(y, z, A)
63- }
64-
65-
66-func B (x,e,C) = {
67- let D = assetBalance(Address(x), j)
68- let E = d(Address(r), ((("%s%s%s__staked__" + toString(e)) + "__") + C))
69- let F = d(Address(r), ("%s%s%s__staked__total__" + C))
70- fraction(D, E, F)
71- }
72-
73-
74-func G (e) = {
75- let H = assetBalance(e, j)
76- let I = w(l, e)
77- let J = w(m, e)
78- let K = w(n, e)
79- let L = w(o, e)
80- let M = w(p, e)
81- let N = w(q, e)
82- let O = B(s, e, t)
83- let P = B(u, e, v)
84- let Q = ((((((((H + I) + J) + K) + L) + M) + N) + O) + P)
85-[IntegerEntry("burnxtnBalance", H), IntegerEntry("PZ1balance", I), IntegerEntry("PZ2balance", J), IntegerEntry("PZ3balance", K), IntegerEntry("PZ4balance", L), IntegerEntry("PZ5balance", M), IntegerEntry("PZ6balance", N), IntegerEntry("WX1balance", O), IntegerEntry("WX2balance", P), IntegerEntry("total", Q)]
86- }
87-
88-
89-func R (e) = {
90- let H = assetBalance(e, j)
91- let I = w(l, e)
92- let J = w(m, e)
93- let K = w(n, e)
94- let L = w(o, e)
95- let M = w(p, e)
96- let N = w(q, e)
97- let O = B(s, e, t)
98- let P = B(u, e, v)
99- ((((((((H + I) + J) + K) + L) + M) + N) + O) + P)
100- }
101-
102-
103-@Callable(S)
104-func register () = if (contains(i(this, "Address registered"), toString(S.caller)))
105- then throw("already registered")
106- else if ((height > b))
107- then throw("registration closed")
108- else if ((c > R(S.caller)))
109- then throw("have atleast 40k BURN-XTN in wallet and liquidity pools")
110- else if ((d(this, "Amount Registered") == 99))
111- then throw("registration closed")
112- else ([IntegerEntry("Amount Registered", (d(this, "Amount Registered") + 1)), StringEntry(("Register address: " + toString((d(this, "Amount Registered") + 1))), toString(S.caller)), StringEntry("Address registered", ((i(this, "Address registered") + toString(S.caller)) + ","))] ++ G(S.caller))
113-
114-
115-
116-@Callable(S)
117-func start () = if ((S.caller != this))
118- then throw("access only by project owner")
119- else {
120- let T = dropRight(i(this, "Address registered"), 1)
121- let U = split(T, ",")
122- func V (W,e) = (W ++ [IntegerEntry(e, wavesBalance(addressFromStringValue(e)).available)])
123-
124- let X = {
125- let Y = U
126- let Z = size(Y)
127- let aa = nil
128- func ab (ac,ad) = if ((ad >= Z))
129- then ac
130- else V(ac, Y[ad])
131-
132- func ae (ac,ad) = if ((ad >= Z))
133- then ac
134- else throw("List size exceeds 100")
135-
136- ae(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(aa, 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)
137- }
138- (nil ++ X)
139- }
140-
141-
142-
143-@Callable(S)
144-func currentPosition () = {
145- let T = dropRight(i(this, "Address registered"), 1)
146- let U = split(T, ",")
147- func af (W,e) = (W ++ [IntegerEntry(("increase " + e), (wavesBalance(addressFromStringValue(e)).available - d(this, e)))])
148-
149- let ag = {
150- let Y = U
151- let Z = size(Y)
152- let aa = nil
153- func ab (ac,ad) = if ((ad >= Z))
154- then ac
155- else af(ac, Y[ad])
156-
157- func ae (ac,ad) = if ((ad >= Z))
158- then ac
159- else throw("List size exceeds 98")
160-
161- ae(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(aa, 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)
162- }
163- (nil ++ ag)
164- }
165-
166-
167-
168-@Callable(S)
169-func stop () = if ((S.caller != this))
170- then throw("access only by project owner")
171- else {
172- let T = dropRight(i(this, "Address registered"), 1)
173- let U = split(T, ",")
174- func af (W,e) = (W ++ [IntegerEntry(("stop " + e), (wavesBalance(addressFromStringValue(e)).available - d(this, e)))])
175-
176- let ag = {
177- let Y = U
178- let Z = size(Y)
179- let aa = nil
180- func ab (ac,ad) = if ((ad >= Z))
181- then ac
182- else af(ac, Y[ad])
183-
184- func ae (ac,ad) = if ((ad >= Z))
185- then ac
186- else throw("List size exceeds 98")
187-
188- ae(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(aa, 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)
189- }
190- (nil ++ ag)
191- }
192-
193-
194-
195-@Callable(S)
196-func winners () = if ((S.caller != this))
197- then throw("access only by project owner")
198- else {
199- let ah = invoke(this, "filter", nil, nil)
200- if ((ah == ah))
201- then nil
202- else throw("Strict value is not equal to itself.")
203- }
204-
205-
206-
207-@Callable(S)
208-func filter () = if ((S.caller != this))
209- then throw("access only by project owner")
210- else {
211- let T = dropRight(i(this, "Address registered"), 1)
212- let U = split(T, ",")
213- let ai = size(U)
214- let aj = 1
215- func ak (W,e) = if ((aj > d(this, ("stop " + e))))
216- then nil
217- else (W :+ e)
218-
219- let al = {
220- let Y = U
221- let Z = size(Y)
222- let aa = nil
223- func ab (ac,ad) = if ((ad >= Z))
224- then ac
225- else ak(ac, Y[ad])
226-
227- func ae (ac,ad) = if ((ad >= Z))
228- then ac
229- else throw("List size exceeds 98")
230-
231- ae(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(aa, 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)
232- }
233- let am = makeString(al, ",")
234- let an = size(al)
235- let ao = fraction(an, 80, 100, DOWN)
236-[StringEntry("filter", am), IntegerEntry("list size filterList", an), IntegerEntry("cullSize", ao)]
237- }
238-
239-
240-
241-@Callable(S)
242-func remove () = if ((S.caller != this))
243- then throw("access only by project owner")
244- else if ((getIntegerValue("cullSize") >= getIntegerValue("list size filterList")))
245- then nil
246- else {
247- let U = split(getStringValue("filter"), ",")
248- func V (W,e) = (W :+ d(this, ("stop " + e)))
249-
250- let ap = {
251- let Y = U
252- let Z = size(Y)
253- let aa = nil
254- func ab (ac,ad) = if ((ad >= Z))
255- then ac
256- else V(ac, Y[ad])
257-
258- func ae (ac,ad) = if ((ad >= Z))
259- then ac
260- else throw("List size exceeds 98")
261-
262- ae(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(aa, 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)
263- }
264- let aq = value(min(ap))
265- let ar = value(indexOf(ap, aq))
266- let as = removeByIndex(U, ar)
267- let at = size(as)
268- let au = makeString(as, ",")
269-[IntegerEntry("list size filterList", at), StringEntry("filter", au)]
270- }
271-
272-
273-
274-@Callable(S)
275-func transfer () = if ((S.caller != this))
276- then throw("access only by project owner")
277- else {
278- let av = k
279- let aw = (2 * a)
280- let T = dropRight(i(this, "winners"), 1)
281- let U = split(T, ",")
282- let ax = (aw / size(U))
283- func ay (W,e) = (W ++ [ScriptTransfer(addressFromStringValue(e), ax, av)])
284-
285- let Y = U
286- let Z = size(Y)
287- let aa = nil
288- func ab (ac,ad) = if ((ad >= Z))
289- then ac
290- else ay(ac, Y[ad])
291-
292- func ae (ac,ad) = if ((ad >= Z))
293- then ac
294- else throw("List size exceeds 100")
295-
296- ae(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(ab(aa, 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)
297- }
298-
299-
300-
301-@Callable(S)
302-func check () = [IntegerEntry("list size filterList", getIntegerValue("list size filterList")), StringEntry("filter", getStringValue("filter"))]
303-
30440

github/deemru/w8io/169f3d6 
84.87 ms