tx · 63m3mxgyRFntEVRzGMTAqwtd4imWn2byKev2KhuneFWH

3P5pXRgr8Lo8VM4rF7yQKd7Gcs9dgZvtBK6:  -0.01400000 Waves

2022.06.02 14:24 [3144171] smart account 3P5pXRgr8Lo8VM4rF7yQKd7Gcs9dgZvtBK6 > SELF 0.00000000 Waves

{ "type": 13, "id": "63m3mxgyRFntEVRzGMTAqwtd4imWn2byKev2KhuneFWH", "fee": 1400000, "feeAssetId": null, "timestamp": 1654163064892, "version": 1, "sender": "3P5pXRgr8Lo8VM4rF7yQKd7Gcs9dgZvtBK6", "senderPublicKey": "HvJS3GqvjsSQQGvGK1tPGTrzv53bHB9GPgJofSJmLBKu", "proofs": [ "3GNoTVAdsJt1MThtkerivqW6JSUWe2E1GMTzyUn2w6KiqtAG73Bgd7vYh1XCtJ2M7rehXGtHVNnVVPUHS7hDn778" ], "script": "base64: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bnRyYWN0CQEAAAALa2V5RmFjdENudHIAAAAAAQAAAA1nZXRQb29sQ29uZmlnAAAAAAQAAAAFYW10QXMJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACBQAAAAxwb29sQ29udHJhY3QJAQAAAAtrZXlBbXRBc3NldAAAAAAEAAAAB3ByaWNlQXMJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACBQAAAAxwb29sQ29udHJhY3QJAQAAAA1rZXlQcmljZUFzc2V0AAAAAAQAAAAIaVByaWNlQXMJAQAAAAxnZXRJbnRPckZhaWwAAAACBQAAAA9mYWN0b3J5Q29udHJhY3QJAQAAAB9rZXlNYXBwaW5nc0Jhc2VBc3NldDJpbnRlcm5hbElkAAAAAQUAAAAHcHJpY2VBcwQAAAAGaUFtdEFzCQEAAAAMZ2V0SW50T3JGYWlsAAAAAgUAAAAPZmFjdG9yeUNvbnRyYWN0CQEAAAAfa2V5TWFwcGluZ3NCYXNlQXNzZXQyaW50ZXJuYWxJZAAAAAEFAAAABWFtdEFzCQAEtQAAAAIJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACBQAAAA9mYWN0b3J5Q29udHJhY3QJAQAAAA1rZXlQb29sQ29uZmlnAAAAAgkAAaQAAAABBQAAAAZpQW10QXMJAAGkAAAAAQUAAAAIaVByaWNlQXMFAAAAA1NFUAEAAAAQZ2V0RmFjdG9yeUNvbmZpZwAAAAAJAAS1AAAAAgkBAAAAD2dldFN0cmluZ09yRmFpbAAAAAIFAAAAD2ZhY3RvcnlDb250cmFjdAkBAAAAEGtleUZhY3RvcnlDb25maWcAAAAABQAAAANTRVABAAAAFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQAAAAABAAAAAckbWF0Y2gwCQAEIgAAAAEJAQAAABNrZXlNYW5hZ2VyUHVibGljS2V5AAAAAAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFzBQAAAAckbWF0Y2gwCQACWQAAAAEFAAAAAXMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQFAAAABHVuaXQJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IBAAAAHXBlbmRpbmdNYW5hZ2VyUHVibGljS2V5T3JVbml0AAAAAAQAAAAHJG1hdGNoMAkABCIAAAABCQEAAAAaa2V5UGVuZGluZ01hbmFnZXJQdWJsaWNLZXkAAAAAAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAXMFAAAAByRtYXRjaDAJAAJZAAAAAQUAAAABcwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAEVW5pdAUAAAAEdW5pdAkAAAIAAAABAgAAAAtNYXRjaCBlcnJvcgEAAAALbXVzdE1hbmFnZXIAAAABAAAAAWkEAAAAAnBkCQAAAgAAAAECAAAAEVBlcm1pc3Npb24gZGVuaWVkBAAAAAckbWF0Y2gwCQEAAAAWbWFuYWdlclB1YmxpY0tleU9yVW5pdAAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAACkJ5dGVWZWN0b3IEAAAAAnBrBQAAAAckbWF0Y2gwAwkAAAAAAAACCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkFAAAAAnBrBgUAAAACcGQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQDCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAEdGhpcwYFAAAAAnBkCQAAAgAAAAECAAAAC01hdGNoIGVycm9yAQAAAAlnZXRBZG1pbnMAAAAABAAAAAckbWF0Y2gwCQAEIgAAAAEJAQAAAA9rZXlBZG1pblB1YktleXMAAAAAAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAXMFAAAAByRtYXRjaDADCQAAAAAAAAIJAAExAAAAAQUAAAABcwAAAAAAAAAAAAUAAAADbmlsCQAEtQAAAAIFAAAAAXMFAAAAA1NFUAUAAAADbmlsAQAAAAltdXN0QWRtaW4AAAABAAAAAWkDCQEAAAAPY29udGFpbnNFbGVtZW50AAAAAgkBAAAACWdldEFkbWlucwAAAAAJAAJYAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BgkBAAAAC211c3RNYW5hZ2VyAAAAAQUAAAABaQEAAAAIbXVzdFBvb2wAAAABAAAAAWkDCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAMcG9vbENvbnRyYWN0BgkAAAIAAAABAgAAABdjYWxsZXIgbXVzdCBiZSB0aGUgcG9vbAAAAAgAAAABaQEAAAALY29uc3RydWN0b3IAAAABAAAAC3Bvb2xBZGRyZXNzBAAAAAtjaGVja0NhbGxlcgkBAAAAC211c3RNYW5hZ2VyAAAAAQUAAAABaQMJAAAAAAAAAgUAAAALY2hlY2tDYWxsZXIFAAAAC2NoZWNrQ2FsbGVyCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAAtrZXlQb29sQWRkcgAAAAAFAAAAC3Bvb2xBZGRyZXNzBQAAAANuaWwJAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAAAAAWkBAAAACnNldE1hbmFnZXIAAAABAAAAF3BlbmRpbmdNYW5hZ2VyUHVibGljS2V5BAAAAAtjaGVja0NhbGxlcgkBAAAAC211c3RNYW5hZ2VyAAAAAQUAAAABaQMJAAAAAAAAAgUAAAALY2hlY2tDYWxsZXIFAAAAC2NoZWNrQ2FsbGVyBAAAABVjaGVja01hbmFnZXJQdWJsaWNLZXkJAAJZAAAAAQUAAAAXcGVuZGluZ01hbmFnZXJQdWJsaWNLZXkDCQAAAAAAAAIFAAAAFWNoZWNrTWFuYWdlclB1YmxpY0tleQUAAAAVY2hlY2tNYW5hZ2VyUHVibGljS2V5CQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABprZXlQZW5kaW5nTWFuYWdlclB1YmxpY0tleQAAAAAFAAAAF3BlbmRpbmdNYW5hZ2VyUHVibGljS2V5BQAAAANuaWwJAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAAFpAQAAAA5jb25maXJtTWFuYWdlcgAAAAAEAAAAAnBtCQEAAAAdcGVuZGluZ01hbmFnZXJQdWJsaWNLZXlPclVuaXQAAAAABAAAAAVoYXNQTQMJAQAAAAlpc0RlZmluZWQAAAABBQAAAAJwbQYJAAACAAAAAQIAAAASTm8gcGVuZGluZyBtYW5hZ2VyAwkAAAAAAAACBQAAAAVoYXNQTQUAAAAFaGFzUE0EAAAAB2NoZWNrUE0DCQAAAAAAAAII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", "chainId": 87, "height": 3144171, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 36PEf2oEJ96kB4t5G6QwZHn9TW3Y3uxvqAgdnomBAARQ Next: 4AbfG9kyofXkwAneBLZ4xYJQRSXGZGwzqwnTomjRcfHo Diff:
OldNewDifferences
1515
1616 let g = 1
1717
18-func h () = "%s__factoryContract"
18+let h = "%s__delay"
19+
20+func i () = "%s__factoryContract"
1921
2022
21-func i () = "%s__managerPublicKey"
23+func j () = "%s__managerPublicKey"
2224
2325
24-func j () = "%s__pendingManagerPublicKey"
26+func k () = "%s__pendingManagerPublicKey"
2527
2628
27-func k () = "%s__poolAddress"
29+func l () = "%s__poolAddress"
2830
2931
30-func l () = "%s__amountAsset"
32+func m () = "%s__amountAsset"
3133
3234
33-func m () = "%s__priceAsset"
35+func n () = "%s__priceAsset"
3436
3537
36-func n () = "%s__factoryConfig"
38+func o () = "%s__adminPubKeys"
3739
3840
39-func o (p,q) = (((("%d%d%s__" + p) + "__") + q) + "__config")
41+func p () = "%s__amp"
4042
4143
42-func r (s) = ("%s%s%s__mappings__baseAsset2internalId__" + s)
44+func q (r) = ("%s%d__amp__" + toString(r))
4345
4446
45-func t (u,v) = valueOrErrorMessage(getString(u, v), makeString(["mandatory ", toString(u), ".", v, " not defined"], ""))
47+func s (t) = makeString(["%s%s__lastGetOneTknCall", t], a)
4648
4749
48-func w (u,v) = valueOrErrorMessage(getInteger(u, v), makeString(["mandatory ", toString(u), ".", v, " not defined"], ""))
50+func u (t) = makeString(["%s%s__lastPutOneTknCall", t], a)
4951
5052
51-let x = addressFromStringValue(t(this, k()))
53+func v () = "%s__factoryConfig"
5254
53-let y = addressFromStringValue(t(x, h()))
5455
55-func z () = {
56- let A = t(x, l())
57- let B = t(x, m())
58- let C = w(y, r(B))
59- let p = w(y, r(A))
60- split(t(y, o(toString(p), toString(C))), a)
56+func w (x,y) = (((("%d%d%s__" + x) + "__") + y) + "__config")
57+
58+
59+func z (A) = ("%s%s%s__mappings__baseAsset2internalId__" + A)
60+
61+
62+func B (C,D) = valueOrErrorMessage(getString(C, D), makeString(["mandatory ", toString(C), ".", D, " not defined"], ""))
63+
64+
65+func E (C,D) = valueOrErrorMessage(getInteger(C, D), makeString(["mandatory ", toString(C), ".", D, " not defined"], ""))
66+
67+
68+let F = addressFromStringValue(B(this, l()))
69+
70+let G = addressFromStringValue(B(F, i()))
71+
72+func H () = {
73+ let I = B(F, m())
74+ let J = B(F, n())
75+ let K = E(G, z(J))
76+ let x = E(G, z(I))
77+ split(B(G, w(toString(x), toString(K))), a)
6178 }
6279
6380
64-func D () = split(t(y, n()), a)
81+func L () = split(B(G, v()), a)
6582
6683
67-func E () = {
68- let F = getString(i())
69- if ($isInstanceOf(F, "String"))
84+func M () = {
85+ let N = getString(j())
86+ if ($isInstanceOf(N, "String"))
7087 then {
71- let G = F
72- fromBase58String(G)
88+ let O = N
89+ fromBase58String(O)
7390 }
74- else if ($isInstanceOf(F, "Unit"))
91+ else if ($isInstanceOf(N, "Unit"))
7592 then unit
7693 else throw("Match error")
7794 }
7895
7996
80-func H () = {
81- let F = getString(j())
82- if ($isInstanceOf(F, "String"))
97+func P () = {
98+ let N = getString(k())
99+ if ($isInstanceOf(N, "String"))
83100 then {
84- let G = F
85- fromBase58String(G)
101+ let O = N
102+ fromBase58String(O)
86103 }
87- else if ($isInstanceOf(F, "Unit"))
104+ else if ($isInstanceOf(N, "Unit"))
88105 then unit
89106 else throw("Match error")
90107 }
91108
92109
93-func I (J) = {
94- let K = throw("Permission denied")
95- let F = E()
96- if ($isInstanceOf(F, "ByteVector"))
110+func Q (R) = {
111+ let S = throw("Permission denied")
112+ let N = M()
113+ if ($isInstanceOf(N, "ByteVector"))
97114 then {
98- let L = F
99- if ((J.callerPublicKey == L))
115+ let T = N
116+ if ((R.callerPublicKey == T))
100117 then true
101- else K
118+ else S
102119 }
103- else if ($isInstanceOf(F, "Unit"))
104- then if ((J.caller == this))
120+ else if ($isInstanceOf(N, "Unit"))
121+ then if ((R.caller == this))
105122 then true
106- else K
123+ else S
107124 else throw("Match error")
108125 }
109126
110127
111-@Callable(J)
112-func constructor (M) = {
113- let N = I(J)
114- if ((N == N))
115- then [StringEntry(k(), M)]
128+func U () = {
129+ let N = getString(o())
130+ if ($isInstanceOf(N, "String"))
131+ then {
132+ let O = N
133+ if ((size(O) == 0))
134+ then nil
135+ else split(O, a)
136+ }
137+ else nil
138+ }
139+
140+
141+func V (R) = if (containsElement(U(), toBase58String(R.callerPublicKey)))
142+ then true
143+ else Q(R)
144+
145+
146+func W (R) = if ((R.caller == F))
147+ then true
148+ else throw("caller must be the pool")
149+
150+
151+@Callable(R)
152+func constructor (X) = {
153+ let Y = Q(R)
154+ if ((Y == Y))
155+ then [StringEntry(l(), X)]
116156 else throw("Strict value is not equal to itself.")
117157 }
118158
119159
120160
121-@Callable(J)
122-func setManager (O) = {
123- let N = I(J)
124- if ((N == N))
161+@Callable(R)
162+func setManager (Z) = {
163+ let Y = Q(R)
164+ if ((Y == Y))
125165 then {
126- let P = fromBase58String(O)
127- if ((P == P))
128- then [StringEntry(j(), O)]
166+ let aa = fromBase58String(Z)
167+ if ((aa == aa))
168+ then [StringEntry(k(), Z)]
129169 else throw("Strict value is not equal to itself.")
130170 }
131171 else throw("Strict value is not equal to itself.")
133173
134174
135175
136-@Callable(J)
176+@Callable(R)
137177 func confirmManager () = {
138- let Q = H()
139- let R = if (isDefined(Q))
178+ let ab = P()
179+ let ac = if (isDefined(ab))
140180 then true
141181 else throw("No pending manager")
142- if ((R == R))
182+ if ((ac == ac))
143183 then {
144- let S = if ((J.callerPublicKey == value(Q)))
184+ let ad = if ((R.callerPublicKey == value(ab)))
145185 then true
146186 else throw("You are not pending manager")
147- if ((S == S))
148- then [StringEntry(i(), toBase58String(value(Q))), DeleteEntry(j())]
187+ if ((ad == ad))
188+ then [StringEntry(j(), toBase58String(value(ab))), DeleteEntry(k())]
149189 else throw("Strict value is not equal to itself.")
150190 }
151191 else throw("Strict value is not equal to itself.")
153193
154194
155195
156-@Callable(J)
157-func unstakeAndGetOneTkn (T,U,V,W,X,Y) = {
158- let Z = if ((size(J.payments) != 0))
196+@Callable(R)
197+func setAdmins (ae) = {
198+ let Y = Q(R)
199+ if ((Y == Y))
200+ then [StringEntry(o(), makeString(ae, a))]
201+ else throw("Strict value is not equal to itself.")
202+ }
203+
204+
205+
206+@Callable(R)
207+func unstakeAndGetOneTkn (af,ag,ah,ai,aj,ak) = {
208+ let al = if ((size(R.payments) != 0))
159209 then throw("No pmnts expd")
160210 else true
161- if ((Z == Z))
211+ if ((al == al))
162212 then {
163- let aa = z()
164- let ab = D()
165- let ac = fromBase58String(aa[d])
166- let ad = valueOrErrorMessage(addressFromString(ab[g]), "Wr st addr")
167- let ae = invoke(ad, "unstake", [toBase58String(ac), T], nil)
168- if ((ae == ae))
213+ let am = H()
214+ let an = L()
215+ let ao = fromBase58String(am[d])
216+ let ap = valueOrErrorMessage(addressFromString(an[g]), "Wr st addr")
217+ let aq = invoke(ap, "unstake", [toBase58String(ao), af], nil)
218+ if ((aq == aq))
169219 then {
170- let af = invoke(x, "getOneTkn", [U, V, W, X, Y], [AttachedPayment(ac, T)])
171- if ((af == af))
220+ let ar = invoke(F, "getOneTkn", [ag, ah, ai, aj, ak], [AttachedPayment(ao, af)])
221+ if ((ar == ar))
172222 then nil
173223 else throw("Strict value is not equal to itself.")
174224 }
178228 }
179229
180230
181-@Verifier(ag)
182-func ah () = {
183- let ai = {
184- let F = E()
185- if ($isInstanceOf(F, "ByteVector"))
231+
232+@Callable(R)
233+func setAmp (as) = {
234+ let Y = V(R)
235+ if ((Y == Y))
236+ then {
237+ let at = invoke(F, "setS", [p(), as], nil)
238+ let au = invoke(F, "setS", [q(height), as], nil)
239+ $Tuple2(nil, $Tuple2(at, au))
240+ }
241+ else throw("Strict value is not equal to itself.")
242+ }
243+
244+
245+
246+@Callable(R)
247+func ensureCanGetOneTkn (t) = {
248+ let Y = W(R)
249+ if ((Y == Y))
250+ then {
251+ let av = {
252+ let N = getInteger(F, u(t))
253+ if ($isInstanceOf(N, "Int"))
254+ then {
255+ let aw = N
256+ let ax = (aw + value(getInteger(F, h)))
257+ let ay = (height >= ax)
258+ let az = (ax - height)
259+ if (ay)
260+ then true
261+ else throw(makeString(["you should wait", toString(az), "blocks more to perform the action"], " "))
262+ }
263+ else true
264+ }
265+ if ((av == av))
266+ then {
267+ let aA = {
268+ let N = getInteger(F, s(t))
269+ if ($isInstanceOf(N, "Int"))
270+ then {
271+ let aw = N
272+ let ax = (aw + value(getInteger(F, h)))
273+ let aB = (height >= ax)
274+ let az = (ax - height)
275+ if (aB)
276+ then true
277+ else throw(makeString(["you should wait", toString(az), "blocks more to perform the action"], " "))
278+ }
279+ else true
280+ }
281+ if ((aA == aA))
282+ then {
283+ let aC = invoke(F, "setI", [u(t), height], nil)
284+ if ((aC == aC))
285+ then nil
286+ else throw("Strict value is not equal to itself.")
287+ }
288+ else throw("Strict value is not equal to itself.")
289+ }
290+ else throw("Strict value is not equal to itself.")
291+ }
292+ else throw("Strict value is not equal to itself.")
293+ }
294+
295+
296+
297+@Callable(R)
298+func ensureCanPutOneTkn (t) = {
299+ let Y = W(R)
300+ if ((Y == Y))
301+ then {
302+ let av = {
303+ let N = getInteger(F, u(t))
304+ if ($isInstanceOf(N, "Int"))
305+ then {
306+ let aw = N
307+ let ax = (aw + value(getInteger(F, h)))
308+ let ay = (height >= ax)
309+ let az = (ax - height)
310+ if (ay)
311+ then true
312+ else throw(makeString(["you should wait", toString(az), "blocks more to perform the action"], " "))
313+ }
314+ else true
315+ }
316+ if ((av == av))
317+ then {
318+ let aA = {
319+ let N = getInteger(F, s(t))
320+ if ($isInstanceOf(N, "Int"))
321+ then {
322+ let aw = N
323+ let ax = (aw + value(getInteger(F, h)))
324+ let aB = (height >= ax)
325+ let az = (ax - height)
326+ if (aB)
327+ then true
328+ else throw(makeString(["you should wait", toString(az), "blocks more to perform the action"], " "))
329+ }
330+ else true
331+ }
332+ if ((aA == aA))
333+ then {
334+ let aC = invoke(F, "setI", [u(t), height], nil)
335+ if ((aC == aC))
336+ then nil
337+ else throw("Strict value is not equal to itself.")
338+ }
339+ else throw("Strict value is not equal to itself.")
340+ }
341+ else throw("Strict value is not equal to itself.")
342+ }
343+ else throw("Strict value is not equal to itself.")
344+ }
345+
346+
347+@Verifier(aD)
348+func aE () = {
349+ let aF = {
350+ let N = M()
351+ if ($isInstanceOf(N, "ByteVector"))
186352 then {
187- let L = F
188- L
353+ let T = N
354+ T
189355 }
190- else if ($isInstanceOf(F, "Unit"))
191- then ag.senderPublicKey
356+ else if ($isInstanceOf(N, "Unit"))
357+ then aD.senderPublicKey
192358 else throw("Match error")
193359 }
194- sigVerify(ag.bodyBytes, ag.proofs[0], ai)
360+ sigVerify(aD.bodyBytes, aD.proofs[0], aF)
195361 }
196362
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 let b = ""
77
88 let c = 1
99
1010 let d = 3
1111
1212 let e = 4
1313
1414 let f = 5
1515
1616 let g = 1
1717
18-func h () = "%s__factoryContract"
18+let h = "%s__delay"
19+
20+func i () = "%s__factoryContract"
1921
2022
21-func i () = "%s__managerPublicKey"
23+func j () = "%s__managerPublicKey"
2224
2325
24-func j () = "%s__pendingManagerPublicKey"
26+func k () = "%s__pendingManagerPublicKey"
2527
2628
27-func k () = "%s__poolAddress"
29+func l () = "%s__poolAddress"
2830
2931
30-func l () = "%s__amountAsset"
32+func m () = "%s__amountAsset"
3133
3234
33-func m () = "%s__priceAsset"
35+func n () = "%s__priceAsset"
3436
3537
36-func n () = "%s__factoryConfig"
38+func o () = "%s__adminPubKeys"
3739
3840
39-func o (p,q) = (((("%d%d%s__" + p) + "__") + q) + "__config")
41+func p () = "%s__amp"
4042
4143
42-func r (s) = ("%s%s%s__mappings__baseAsset2internalId__" + s)
44+func q (r) = ("%s%d__amp__" + toString(r))
4345
4446
45-func t (u,v) = valueOrErrorMessage(getString(u, v), makeString(["mandatory ", toString(u), ".", v, " not defined"], ""))
47+func s (t) = makeString(["%s%s__lastGetOneTknCall", t], a)
4648
4749
48-func w (u,v) = valueOrErrorMessage(getInteger(u, v), makeString(["mandatory ", toString(u), ".", v, " not defined"], ""))
50+func u (t) = makeString(["%s%s__lastPutOneTknCall", t], a)
4951
5052
51-let x = addressFromStringValue(t(this, k()))
53+func v () = "%s__factoryConfig"
5254
53-let y = addressFromStringValue(t(x, h()))
5455
55-func z () = {
56- let A = t(x, l())
57- let B = t(x, m())
58- let C = w(y, r(B))
59- let p = w(y, r(A))
60- split(t(y, o(toString(p), toString(C))), a)
56+func w (x,y) = (((("%d%d%s__" + x) + "__") + y) + "__config")
57+
58+
59+func z (A) = ("%s%s%s__mappings__baseAsset2internalId__" + A)
60+
61+
62+func B (C,D) = valueOrErrorMessage(getString(C, D), makeString(["mandatory ", toString(C), ".", D, " not defined"], ""))
63+
64+
65+func E (C,D) = valueOrErrorMessage(getInteger(C, D), makeString(["mandatory ", toString(C), ".", D, " not defined"], ""))
66+
67+
68+let F = addressFromStringValue(B(this, l()))
69+
70+let G = addressFromStringValue(B(F, i()))
71+
72+func H () = {
73+ let I = B(F, m())
74+ let J = B(F, n())
75+ let K = E(G, z(J))
76+ let x = E(G, z(I))
77+ split(B(G, w(toString(x), toString(K))), a)
6178 }
6279
6380
64-func D () = split(t(y, n()), a)
81+func L () = split(B(G, v()), a)
6582
6683
67-func E () = {
68- let F = getString(i())
69- if ($isInstanceOf(F, "String"))
84+func M () = {
85+ let N = getString(j())
86+ if ($isInstanceOf(N, "String"))
7087 then {
71- let G = F
72- fromBase58String(G)
88+ let O = N
89+ fromBase58String(O)
7390 }
74- else if ($isInstanceOf(F, "Unit"))
91+ else if ($isInstanceOf(N, "Unit"))
7592 then unit
7693 else throw("Match error")
7794 }
7895
7996
80-func H () = {
81- let F = getString(j())
82- if ($isInstanceOf(F, "String"))
97+func P () = {
98+ let N = getString(k())
99+ if ($isInstanceOf(N, "String"))
83100 then {
84- let G = F
85- fromBase58String(G)
101+ let O = N
102+ fromBase58String(O)
86103 }
87- else if ($isInstanceOf(F, "Unit"))
104+ else if ($isInstanceOf(N, "Unit"))
88105 then unit
89106 else throw("Match error")
90107 }
91108
92109
93-func I (J) = {
94- let K = throw("Permission denied")
95- let F = E()
96- if ($isInstanceOf(F, "ByteVector"))
110+func Q (R) = {
111+ let S = throw("Permission denied")
112+ let N = M()
113+ if ($isInstanceOf(N, "ByteVector"))
97114 then {
98- let L = F
99- if ((J.callerPublicKey == L))
115+ let T = N
116+ if ((R.callerPublicKey == T))
100117 then true
101- else K
118+ else S
102119 }
103- else if ($isInstanceOf(F, "Unit"))
104- then if ((J.caller == this))
120+ else if ($isInstanceOf(N, "Unit"))
121+ then if ((R.caller == this))
105122 then true
106- else K
123+ else S
107124 else throw("Match error")
108125 }
109126
110127
111-@Callable(J)
112-func constructor (M) = {
113- let N = I(J)
114- if ((N == N))
115- then [StringEntry(k(), M)]
128+func U () = {
129+ let N = getString(o())
130+ if ($isInstanceOf(N, "String"))
131+ then {
132+ let O = N
133+ if ((size(O) == 0))
134+ then nil
135+ else split(O, a)
136+ }
137+ else nil
138+ }
139+
140+
141+func V (R) = if (containsElement(U(), toBase58String(R.callerPublicKey)))
142+ then true
143+ else Q(R)
144+
145+
146+func W (R) = if ((R.caller == F))
147+ then true
148+ else throw("caller must be the pool")
149+
150+
151+@Callable(R)
152+func constructor (X) = {
153+ let Y = Q(R)
154+ if ((Y == Y))
155+ then [StringEntry(l(), X)]
116156 else throw("Strict value is not equal to itself.")
117157 }
118158
119159
120160
121-@Callable(J)
122-func setManager (O) = {
123- let N = I(J)
124- if ((N == N))
161+@Callable(R)
162+func setManager (Z) = {
163+ let Y = Q(R)
164+ if ((Y == Y))
125165 then {
126- let P = fromBase58String(O)
127- if ((P == P))
128- then [StringEntry(j(), O)]
166+ let aa = fromBase58String(Z)
167+ if ((aa == aa))
168+ then [StringEntry(k(), Z)]
129169 else throw("Strict value is not equal to itself.")
130170 }
131171 else throw("Strict value is not equal to itself.")
132172 }
133173
134174
135175
136-@Callable(J)
176+@Callable(R)
137177 func confirmManager () = {
138- let Q = H()
139- let R = if (isDefined(Q))
178+ let ab = P()
179+ let ac = if (isDefined(ab))
140180 then true
141181 else throw("No pending manager")
142- if ((R == R))
182+ if ((ac == ac))
143183 then {
144- let S = if ((J.callerPublicKey == value(Q)))
184+ let ad = if ((R.callerPublicKey == value(ab)))
145185 then true
146186 else throw("You are not pending manager")
147- if ((S == S))
148- then [StringEntry(i(), toBase58String(value(Q))), DeleteEntry(j())]
187+ if ((ad == ad))
188+ then [StringEntry(j(), toBase58String(value(ab))), DeleteEntry(k())]
149189 else throw("Strict value is not equal to itself.")
150190 }
151191 else throw("Strict value is not equal to itself.")
152192 }
153193
154194
155195
156-@Callable(J)
157-func unstakeAndGetOneTkn (T,U,V,W,X,Y) = {
158- let Z = if ((size(J.payments) != 0))
196+@Callable(R)
197+func setAdmins (ae) = {
198+ let Y = Q(R)
199+ if ((Y == Y))
200+ then [StringEntry(o(), makeString(ae, a))]
201+ else throw("Strict value is not equal to itself.")
202+ }
203+
204+
205+
206+@Callable(R)
207+func unstakeAndGetOneTkn (af,ag,ah,ai,aj,ak) = {
208+ let al = if ((size(R.payments) != 0))
159209 then throw("No pmnts expd")
160210 else true
161- if ((Z == Z))
211+ if ((al == al))
162212 then {
163- let aa = z()
164- let ab = D()
165- let ac = fromBase58String(aa[d])
166- let ad = valueOrErrorMessage(addressFromString(ab[g]), "Wr st addr")
167- let ae = invoke(ad, "unstake", [toBase58String(ac), T], nil)
168- if ((ae == ae))
213+ let am = H()
214+ let an = L()
215+ let ao = fromBase58String(am[d])
216+ let ap = valueOrErrorMessage(addressFromString(an[g]), "Wr st addr")
217+ let aq = invoke(ap, "unstake", [toBase58String(ao), af], nil)
218+ if ((aq == aq))
169219 then {
170- let af = invoke(x, "getOneTkn", [U, V, W, X, Y], [AttachedPayment(ac, T)])
171- if ((af == af))
220+ let ar = invoke(F, "getOneTkn", [ag, ah, ai, aj, ak], [AttachedPayment(ao, af)])
221+ if ((ar == ar))
172222 then nil
173223 else throw("Strict value is not equal to itself.")
174224 }
175225 else throw("Strict value is not equal to itself.")
176226 }
177227 else throw("Strict value is not equal to itself.")
178228 }
179229
180230
181-@Verifier(ag)
182-func ah () = {
183- let ai = {
184- let F = E()
185- if ($isInstanceOf(F, "ByteVector"))
231+
232+@Callable(R)
233+func setAmp (as) = {
234+ let Y = V(R)
235+ if ((Y == Y))
236+ then {
237+ let at = invoke(F, "setS", [p(), as], nil)
238+ let au = invoke(F, "setS", [q(height), as], nil)
239+ $Tuple2(nil, $Tuple2(at, au))
240+ }
241+ else throw("Strict value is not equal to itself.")
242+ }
243+
244+
245+
246+@Callable(R)
247+func ensureCanGetOneTkn (t) = {
248+ let Y = W(R)
249+ if ((Y == Y))
250+ then {
251+ let av = {
252+ let N = getInteger(F, u(t))
253+ if ($isInstanceOf(N, "Int"))
254+ then {
255+ let aw = N
256+ let ax = (aw + value(getInteger(F, h)))
257+ let ay = (height >= ax)
258+ let az = (ax - height)
259+ if (ay)
260+ then true
261+ else throw(makeString(["you should wait", toString(az), "blocks more to perform the action"], " "))
262+ }
263+ else true
264+ }
265+ if ((av == av))
266+ then {
267+ let aA = {
268+ let N = getInteger(F, s(t))
269+ if ($isInstanceOf(N, "Int"))
270+ then {
271+ let aw = N
272+ let ax = (aw + value(getInteger(F, h)))
273+ let aB = (height >= ax)
274+ let az = (ax - height)
275+ if (aB)
276+ then true
277+ else throw(makeString(["you should wait", toString(az), "blocks more to perform the action"], " "))
278+ }
279+ else true
280+ }
281+ if ((aA == aA))
282+ then {
283+ let aC = invoke(F, "setI", [u(t), height], nil)
284+ if ((aC == aC))
285+ then nil
286+ else throw("Strict value is not equal to itself.")
287+ }
288+ else throw("Strict value is not equal to itself.")
289+ }
290+ else throw("Strict value is not equal to itself.")
291+ }
292+ else throw("Strict value is not equal to itself.")
293+ }
294+
295+
296+
297+@Callable(R)
298+func ensureCanPutOneTkn (t) = {
299+ let Y = W(R)
300+ if ((Y == Y))
301+ then {
302+ let av = {
303+ let N = getInteger(F, u(t))
304+ if ($isInstanceOf(N, "Int"))
305+ then {
306+ let aw = N
307+ let ax = (aw + value(getInteger(F, h)))
308+ let ay = (height >= ax)
309+ let az = (ax - height)
310+ if (ay)
311+ then true
312+ else throw(makeString(["you should wait", toString(az), "blocks more to perform the action"], " "))
313+ }
314+ else true
315+ }
316+ if ((av == av))
317+ then {
318+ let aA = {
319+ let N = getInteger(F, s(t))
320+ if ($isInstanceOf(N, "Int"))
321+ then {
322+ let aw = N
323+ let ax = (aw + value(getInteger(F, h)))
324+ let aB = (height >= ax)
325+ let az = (ax - height)
326+ if (aB)
327+ then true
328+ else throw(makeString(["you should wait", toString(az), "blocks more to perform the action"], " "))
329+ }
330+ else true
331+ }
332+ if ((aA == aA))
333+ then {
334+ let aC = invoke(F, "setI", [u(t), height], nil)
335+ if ((aC == aC))
336+ then nil
337+ else throw("Strict value is not equal to itself.")
338+ }
339+ else throw("Strict value is not equal to itself.")
340+ }
341+ else throw("Strict value is not equal to itself.")
342+ }
343+ else throw("Strict value is not equal to itself.")
344+ }
345+
346+
347+@Verifier(aD)
348+func aE () = {
349+ let aF = {
350+ let N = M()
351+ if ($isInstanceOf(N, "ByteVector"))
186352 then {
187- let L = F
188- L
353+ let T = N
354+ T
189355 }
190- else if ($isInstanceOf(F, "Unit"))
191- then ag.senderPublicKey
356+ else if ($isInstanceOf(N, "Unit"))
357+ then aD.senderPublicKey
192358 else throw("Match error")
193359 }
194- sigVerify(ag.bodyBytes, ag.proofs[0], ai)
360+ sigVerify(aD.bodyBytes, aD.proofs[0], aF)
195361 }
196362

github/deemru/w8io/3ef1775 
72.86 ms