tx · 2X9kpZjZoMNMzjCLbvvH4jVSqr4Tps5Ra9SZ91rJnBv1

3NBqs2vfpyT5cMdUJ97mEJ1Ycp2y8GbAZDA:  -0.01400000 Waves

2022.03.11 17:13 [1959391] smart account 3NBqs2vfpyT5cMdUJ97mEJ1Ycp2y8GbAZDA > SELF 0.00000000 Waves

{ "type": 13, "id": "2X9kpZjZoMNMzjCLbvvH4jVSqr4Tps5Ra9SZ91rJnBv1", "fee": 1400000, "feeAssetId": null, "timestamp": 1647008027824, "version": 1, "sender": "3NBqs2vfpyT5cMdUJ97mEJ1Ycp2y8GbAZDA", "senderPublicKey": "H19CeJVbUnfsK8EYs8K6fHxwBH7pLyxw8WCDFu7D4rGQ", "proofs": [ "24rs9NdBeuuqtLQMmHrKTqp51csrt1tLZUuRsQx46JyrYtqeo5RsrdYNYsFZqjJg8JfVEMJqrxRT6o9X3XbbEdRR" ], "script": "base64:AAIFAAAAAAAAABsIAhIJCgcIAQEBAQEIEgMKAQESABIDCgEIEgAAAAAkAAAAAANTRVACAAAAAl9fAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACAAAAB2FkZHJlc3MAAAADa2V5CQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQdAAAAAgUAAAAHYWRkcmVzcwUAAAADa2V5CQABLAAAAAIJAAEsAAAAAgIAAAAPbWFuZGF0b3J5IHRoaXMuBQAAAANrZXkCAAAADyBpcyBub3QgZGVmaW5lZAEAAAARa2V5RmFjdG9yeUFkZHJlc3MAAAAAAgAAABwlcyVzX19jb25maWdfX2ZhY3RvcnlBZGRyZXNzAAAAABhJZHhGYWN0b3J5Q2ZnU3Rha2luZ0RhcHAAAAAAAAAAAAEAAAAAGUlkeEZhY3RvcnlDZmdCb29zdGluZ0RhcHAAAAAAAAAAAAIAAAAAFElkeEZhY3RvcnlDZmdJZG9EYXBwAAAAAAAAAAADAAAAABVJZHhGYWN0b3J5Q2ZnVGVhbURhcHAAAAAAAAAAAAQAAAAAGUlkeEZhY3RvcnlDZmdFbWlzc2lvbkRhcHAAAAAAAAAAAAUAAAAAFUlkeEZhY3RvcnlDZmdSZXN0RGFwcAAAAAAAAAAABgAAAAAZSWR4RmFjdG9yeUNmZ1NsaXBwYWdlRGFwcAAAAAAAAAAABwAAAAAaSWR4RmFjdG9yeUNmZ0d3eFJld2FyZERhcHAAAAAAAAAAAAoBAAAADWtleUZhY3RvcnlDZmcAAAAAAgAAABElc19fZmFjdG9yeUNvbmZpZwEAAAAaa2V5RmFjdG9yeUxwMkFzc2V0c01hcHBpbmcAAAABAAAACmxwQXNzZXRTdHIJAAS5AAAAAgkABEwAAAACAgAAAAYlcyVzJXMJAARMAAAAAgUAAAAKbHBBc3NldFN0cgkABEwAAAACAgAAAB5tYXBwaW5nc19fbHBBc3NldDJQb29sQ29udHJhY3QFAAAAA25pbAUAAAADU0VQAQAAABBrZXlGYWN0b3J5THBMaXN0AAAAAAIAAAAQJXNfX2xwVG9rZW5zTGlzdAEAAAAma2V5RmFjdG9yeUxwQXNzZXRUb1Bvb2xDb250cmFjdEFkZHJlc3MAAAABAAAACmxwQXNzZXRTdHIJAAS5AAAAAgkABEwAAAACAgAAAAYlcyVzJXMJAARMAAAAAgUAAAAKbHBBc3NldFN0cgkABEwAAAACAgAAAB5tYXBwaW5nc19fbHBBc3NldDJQb29sQ29udHJhY3QFAAAAA25pbAUAAAADU0VQAQAAABRrZXlGYWN0b3J5UG9vbFdlaWdodAAAAAEAAAAPY29udHJhY3RBZGRyZXNzCQAEuQAAAAIJAARMAAAAAgIAAAAEJXMlcwkABEwAAAACAgAAAApwb29sV2VpZ2h0CQAETAAAAAIFAAAAD2NvbnRyYWN0QWRkcmVzcwUAAAADbmlsBQAAAANTRVABAAAAGHJlYWRGYWN0b3J5QWRkcmVzc09yRmFpbAAAAAAJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACBQAAAAR0aGlzCQEAAAARa2V5RmFjdG9yeUFkZHJlc3MAAAAAAQAAAApyZWFkTHBMaXN0AAAAAAkABLUAAAACCQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIJAQAAABhyZWFkRmFjdG9yeUFkZHJlc3NPckZhaWwAAAAACQEAAAAQa2V5RmFjdG9yeUxwTGlzdAAAAAACAAAAAAUAAAADU0VQAQAAABRyZWFkRmFjdG9yeUNmZ09yRmFpbAAAAAEAAAAHZmFjdG9yeQkABLUAAAACCQEAAAAPZ2V0U3RyaW5nT3JGYWlsAAAAAgUAAAAHZmFjdG9yeQkBAAAADWtleUZhY3RvcnlDZmcAAAAABQAAAANTRVABAAAAGGdldEJvb3N0aW5nQWRkcmVzc09yRmFpbAAAAAEAAAAKZmFjdG9yeUNmZwkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQkAAZEAAAACBQAAAApmYWN0b3J5Q2ZnBQAAABlJZHhGYWN0b3J5Q2ZnQm9vc3RpbmdEYXBwAQAAABhnZXRFbWlzc2lvbkFkZHJlc3NPckZhaWwAAAABAAAACmZhY3RvcnlDZmcJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEJAAGRAAAAAgUAAAAKZmFjdG9yeUNmZwUAAAAZSWR4RmFjdG9yeUNmZ0VtaXNzaW9uRGFwcAEAAAAXZ2V0U3Rha2luZ0FkZHJlc3NPckZhaWwAAAABAAAACmZhY3RvcnlDZmcJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEJAAGRAAAAAgUAAAAKZmFjdG9yeUNmZwUAAAAYSWR4RmFjdG9yeUNmZ1N0YWtpbmdEYXBwAQAAABlnZXRHd3hSZXdhcmRBZGRyZXNzT3JGYWlsAAAAAQAAAApmYWN0b3J5Q2ZnCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABCQABkQAAAAIFAAAACmZhY3RvcnlDZmcFAAAAGklkeEZhY3RvcnlDZmdHd3hSZXdhcmREYXBwAQAAAAlrZXlDb25maWcAAAAAAgAAAAolc19fY29uZmlnAQAAABlrZXlSYXRlUGVyQmxvY2tNYXhDdXJyZW50AAAAAAIAAAAeJXMlc19fcmF0ZVBlckJsb2NrTWF4X19jdXJyZW50AQAAABtrZXlSYXRlUGVyQmxvY2tNYXhTdGFydEZyb20AAAACAAAACXRpbWVzdGFtcAAAAAVibG9jawkABLkAAAACCQAETAAAAAICAAAAICVzJXMlZCVkX19yYXRlUGVyQmxvY2tNYXhfX3N0YXJ0CQAETAAAAAIJAAGkAAAAAQUAAAAJdGltZXN0YW1wCQAETAAAAAIJAAGkAAAAAQUAAAAFYmxvY2sFAAAAA25pbAUAAAADU0VQAQAAABZrZXlSYXRlUGVyQmxvY2tDdXJyZW50AAAAAAIAAAAbJXMlc19fcmF0ZVBlckJsb2NrX19jdXJyZW50AQAAABhrZXlSYXRlUGVyQmxvY2tTdGFydEZyb20AAAACAAAACXRpbWVzdGFtcAAAAAVibG9jawkABLkAAAACCQAETAAAAAICAAAAHSVzJXMlZCVkX19yYXRlUGVyQmxvY2tfX3N0YXJ0CQAETAAAAAIJAAGkAAAAAQUAAAAJdGltZXN0YW1wCQAETAAAAAIJAAGkAAAAAQUAAAAFYmxvY2sFAAAAA25pbAUAAAADU0VQAQAAABVrZXlFbWlzc2lvblN0YXJ0QmxvY2sAAAAAAgAAABolcyVzX19lbWlzc2lvbl9fc3RhcnRCbG9jawEAAAAba2V5RW1pc3Npb25EdXJhdGlvbkluQmxvY2tzAAAAAAIAAAAYJXMlc19fZW1pc3Npb25fX2R1cmF0aW9uAQAAABNrZXlFbWlzc2lvbkVuZEJsb2NrAAAAAAIAAAAYJXMlc19fZW1pc3Npb25fX2VuZEJsb2NrAQAAABNrZXlNYW5hZ2VyUHVibGljS2V5AAAAAAIAAAAUJXNfX21hbmFnZXJQdWJsaWNLZXkBAAAAGmtleVBlbmRpbmdNYW5hZ2VyUHVibGljS2V5AAAAAAIAAAAbJXNfX3BlbmRpbmdNYW5hZ2VyUHVibGljS2V5AQAAABZtYW5hZ2VyUHVibGljS2V5T3JVbml0AAAAAAQAAAAHJG1hdGNoMAkABCIAAAABCQEAAAATa2V5TWFuYWdlclB1YmxpY0tleQAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABcwUAAAAHJG1hdGNoMAkAAlkAAAABBQAAAAFzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0BQAAAAR1bml0CQAAAgAAAAECAAAAC01hdGNoIGVycm9yAQAAAB1wZW5kaW5nTWFuYWdlclB1YmxpY0tleU9yVW5pdAAAAAAEAAAAByRtYXRjaDAJAAQiAAAAAQkBAAAAGmtleVBlbmRpbmdNYW5hZ2VyUHVibGljS2V5AAAAAAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFzBQAAAAckbWF0Y2gwCQACWQAAAAEFAAAAAXMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQFAAAABHVuaXQJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IBAAAAC211c3RNYW5hZ2VyAAAAAQAAAAFpBAAAAAJwZAkAAAIAAAABAgAAABFQZXJtaXNzaW9uIGRlbmllZAQAAAAHJG1hdGNoMAkBAAAAFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQAAAAAAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAJwawUAAAAHJG1hdGNoMAMJAAAAAAAAAggFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BQAAAAJwawYFAAAAAnBkAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0AwkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIFAAAABHRoaXMGBQAAAAJwZAkAAAIAAAABAgAAAAtNYXRjaCBlcnJvcgAAAAUAAAABaQEAAAALY29uc3RydWN0b3IAAAAHAAAADmZhY3RvcnlBZGRyZXNzAAAAD3JhdGVQZXJCbG9ja01heAAAAAxyYXRlUGVyQmxvY2sAAAASZW1pc3Npb25TdGFydEJsb2NrAAAAEGVtaXNzaW9uRHVyYXRpb24AAAAWZW1pc3Npb25TdGFydFRpbWVzdGFtcAAAAAx3eEFzc2V0SWRTdHIEAAAAC2NoZWNrQ2FsbGVyCQEAAAALbXVzdE1hbmFnZXIAAAABBQAAAAFpAwkAAAAAAAACBQAAAAtjaGVja0NhbGxlcgUAAAALY2hlY2tDYWxsZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABtrZXlSYXRlUGVyQmxvY2tNYXhTdGFydEZyb20AAAACBQAAABZlbWlzc2lvblN0YXJ0VGltZXN0YW1wBQAAABJlbWlzc2lvblN0YXJ0QmxvY2sFAAAAD3JhdGVQZXJCbG9ja01heAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAGWtleVJhdGVQZXJCbG9ja01heEN1cnJlbnQAAAAABQAAAA9yYXRlUGVyQmxvY2tNYXgJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABhrZXlSYXRlUGVyQmxvY2tTdGFydEZyb20AAAACBQAAABZlbWlzc2lvblN0YXJ0VGltZXN0YW1wBQAAABJlbWlzc2lvblN0YXJ0QmxvY2sFAAAADHJhdGVQZXJCbG9jawkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAFmtleVJhdGVQZXJCbG9ja0N1cnJlbnQAAAAABQAAAAxyYXRlUGVyQmxvY2sJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABVrZXlFbWlzc2lvblN0YXJ0QmxvY2sAAAAABQAAABJlbWlzc2lvblN0YXJ0QmxvY2sJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABtrZXlFbWlzc2lvbkR1cmF0aW9uSW5CbG9ja3MAAAAABQAAABBlbWlzc2lvbkR1cmF0aW9uCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAATa2V5RW1pc3Npb25FbmRCbG9jawAAAAAJAABkAAAAAgUAAAASZW1pc3Npb25TdGFydEJsb2NrBQAAABBlbWlzc2lvbkR1cmF0aW9uCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABFrZXlGYWN0b3J5QWRkcmVzcwAAAAAFAAAADmZhY3RvcnlBZGRyZXNzCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAAlrZXlDb25maWcAAAAACQABLAAAAAICAAAABCVzX18FAAAADHd4QXNzZXRJZFN0cgUAAAADbmlsCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAAFpAQAAAARlbWl0AAAAAQAAAAZhbW91bnQDCQAAZwAAAAIAAAAAAAAAAAAFAAAABmFtb3VudAkABRQAAAACBQAAAANuaWwFAAAAA25pbAQAAAAPZmFjdG9yeUNvbnRyYWN0CQEAAAAYcmVhZEZhY3RvcnlBZGRyZXNzT3JGYWlsAAAAAAQAAAAKZmFjdG9yeUNmZwkBAAAAFHJlYWRGYWN0b3J5Q2ZnT3JGYWlsAAAAAQUAAAAPZmFjdG9yeUNvbnRyYWN0BAAAAA9zdGFraW5nQ29udHJhY3QJAQAAABdnZXRTdGFraW5nQWRkcmVzc09yRmFpbAAAAAEFAAAACmZhY3RvcnlDZmcEAAAAEmd3eFJld2FyZHNDb250cmFjdAkBAAAAGWdldEd3eFJld2FyZEFkZHJlc3NPckZhaWwAAAABBQAAAApmYWN0b3J5Q2ZnBAAAAAZjYWxsZXIIBQAAAAFpAAAABmNhbGxlcgMDCQEAAAACIT0AAAACBQAAAAZjYWxsZXIFAAAAD3N0YWtpbmdDb250cmFjdAkBAAAAAiE9AAAAAgUAAAAGY2FsbGVyBQAAABJnd3hSZXdhcmRzQ29udHJhY3QHCQAAAgAAAAECAAAAEnBlcm1pc3Npb25zIGRlbmllZAQAAAAMd3hBc3NldElkU3RyCQABkQAAAAIJAAS1AAAAAgkBAAAAD2dldFN0cmluZ09yRmFpbAAAAAIFAAAABHRoaXMJAQAAAAlrZXlDb25maWcAAAAABQAAAANTRVAAAAAAAAAAAAEEAAAACXd4QXNzZXRJZAkAAlkAAAABBQAAAAx3eEFzc2V0SWRTdHIJAAUUAAAAAgkABEwA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", "chainId": 84, "height": 1959391, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: DwMYXzoHTS8ySHVgiXzVqStdDCzmZ2oSthwBCGEfQ59S Next: 4SjcLom5ejSTWQXTpxcA78r9BQ1xKMjf9HmNYAn4Y76A Diff:
OldNewDifferences
99 func e () = "%s%s__config__factoryAddress"
1010
1111
12-func f () = "%s%s__config__gwxRewardsAddress"
12+let f = 1
13+
14+let g = 2
15+
16+let h = 3
17+
18+let i = 4
19+
20+let j = 5
21+
22+let k = 6
23+
24+let l = 7
25+
26+let m = 10
27+
28+func n () = "%s__factoryConfig"
1329
1430
15-let g = b(this, f())
16-
17-let h = addressFromStringValue(g)
18-
19-let i = 1
20-
21-let j = 2
22-
23-let k = 3
24-
25-let l = 4
26-
27-let m = 5
28-
29-let n = 6
30-
31-let o = 7
32-
33-func p () = "%s__factoryConfig"
31+func o (p) = makeString(["%s%s%s", p, "mappings__lpAsset2PoolContract"], a)
3432
3533
36-func q (r) = makeString(["%s%s%s", r, "mappings__lpAsset2PoolContract"], a)
34+func q () = "%s__lpTokensList"
3735
3836
39-func s () = "%s__lpTokensList"
37+func r (p) = makeString(["%s%s%s", p, "mappings__lpAsset2PoolContract"], a)
4038
4139
42-func t (r) = makeString(["%s%s%s", r, "mappings__lpAsset2PoolContract"], a)
40+func s (t) = makeString(["%s%s", "poolWeight", t], a)
4341
4442
45-func u (v) = makeString(["%s%s", "poolWeight", v], a)
43+func u () = addressFromStringValue(b(this, e()))
4644
4745
48-func w () = addressFromStringValue(b(this, e()))
46+func v () = split(valueOrElse(getString(u(), q()), ""), a)
4947
5048
51-func x () = split(valueOrElse(getString(w(), s()), ""), a)
49+func w (x) = split(b(x, n()), a)
5250
5351
54-func y (z) = split(b(z, p()), a)
52+func y (z) = addressFromStringValue(z[g])
5553
5654
57-func A (B) = addressFromStringValue(B[j])
55+func A (z) = addressFromStringValue(z[j])
5856
5957
60-func C (B) = addressFromStringValue(B[m])
58+func B (z) = addressFromStringValue(z[f])
6159
6260
63-func D (B) = addressFromStringValue(B[i])
61+func C (z) = addressFromStringValue(z[m])
6462
6563
66-func E () = "%s__config"
64+func D () = "%s__config"
6765
6866
69-func F () = "%s%s__ratePerBlockMax__current"
67+func E () = "%s%s__ratePerBlockMax__current"
7068
7169
72-func G (H,I) = makeString(["%s%s%d%d__ratePerBlockMax__start", toString(H), toString(I)], a)
70+func F (G,H) = makeString(["%s%s%d%d__ratePerBlockMax__start", toString(G), toString(H)], a)
7371
7472
75-func J () = "%s%s__ratePerBlock__current"
73+func I () = "%s%s__ratePerBlock__current"
7674
7775
78-func K (H,I) = makeString(["%s%s%d%d__ratePerBlock__start", toString(H), toString(I)], a)
76+func J (G,H) = makeString(["%s%s%d%d__ratePerBlock__start", toString(G), toString(H)], a)
7977
8078
81-func L () = "%s%s__emission__startBlock"
79+func K () = "%s%s__emission__startBlock"
8280
8381
84-func M () = "%s%s__emission__duration"
82+func L () = "%s%s__emission__duration"
8583
8684
87-func N () = "%s%s__emission__endBlock"
85+func M () = "%s%s__emission__endBlock"
8886
8987
90-@Callable(O)
91-func constructor (P,Q,R,S,T,U,V) = if ((O.caller != this))
92- then throw("permissions denied")
93- else [IntegerEntry(G(U, S), Q), IntegerEntry(F(), Q), IntegerEntry(K(U, S), R), IntegerEntry(J(), R), IntegerEntry(L(), S), IntegerEntry(M(), T), IntegerEntry(N(), (S + T)), StringEntry(e(), P), StringEntry(E(), ("%s__" + V))]
88+func N () = "%s__managerPublicKey"
89+
90+
91+func O () = "%s__pendingManagerPublicKey"
92+
93+
94+func P () = {
95+ let Q = getString(N())
96+ if ($isInstanceOf(Q, "String"))
97+ then {
98+ let R = Q
99+ fromBase58String(R)
100+ }
101+ else if ($isInstanceOf(Q, "Unit"))
102+ then unit
103+ else throw("Match error")
104+ }
105+
106+
107+func S () = {
108+ let Q = getString(O())
109+ if ($isInstanceOf(Q, "String"))
110+ then {
111+ let R = Q
112+ fromBase58String(R)
113+ }
114+ else if ($isInstanceOf(Q, "Unit"))
115+ then unit
116+ else throw("Match error")
117+ }
118+
119+
120+func T (U) = {
121+ let V = throw("Permission denied")
122+ let Q = P()
123+ if ($isInstanceOf(Q, "ByteVector"))
124+ then {
125+ let W = Q
126+ if ((U.callerPublicKey == W))
127+ then true
128+ else V
129+ }
130+ else if ($isInstanceOf(Q, "Unit"))
131+ then if ((U.caller == this))
132+ then true
133+ else V
134+ else throw("Match error")
135+ }
136+
137+
138+@Callable(U)
139+func constructor (X,Y,Z,aa,ab,ac,ad) = {
140+ let ae = T(U)
141+ if ((ae == ae))
142+ then [IntegerEntry(F(ac, aa), Y), IntegerEntry(E(), Y), IntegerEntry(J(ac, aa), Z), IntegerEntry(I(), Z), IntegerEntry(K(), aa), IntegerEntry(L(), ab), IntegerEntry(M(), (aa + ab)), StringEntry(e(), X), StringEntry(D(), ("%s__" + ad))]
143+ else throw("Strict value is not equal to itself.")
144+ }
94145
95146
96147
97-@Callable(O)
98-func constructorV2 (W) = if ((this != O.caller))
99- then throw("not authorized")
100- else [StringEntry(f(), W)]
148+@Callable(U)
149+func emit (af) = if ((0 >= af))
150+ then $Tuple2(nil, nil)
151+ else {
152+ let ag = u()
153+ let z = w(ag)
154+ let ah = B(z)
155+ let ai = C(z)
156+ let aj = U.caller
157+ if (if ((aj != ah))
158+ then (aj != ai)
159+ else false)
160+ then throw("permissions denied")
161+ else {
162+ let ad = split(b(this, D()), a)[1]
163+ let ak = fromBase58String(ad)
164+ $Tuple2([ScriptTransfer(aj, af, ak)], [ak])
165+ }
166+ }
101167
102168
103169
104-@Callable(O)
105-func emit (X) = if ((0 >= X))
106- then $Tuple2(nil, nil)
107- else {
108- let Y = w()
109- let B = y(Y)
110- let Z = D(B)
111- let aa = O.caller
112- if (if ((aa != Z))
113- then (aa != h)
114- else false)
115- then throw("permissions denied")
116- else {
117- let V = split(b(this, E()), a)[1]
118- let ab = fromBase58String(V)
119- $Tuple2([ScriptTransfer(aa, X, ab)], [ab])
170+@Callable(U)
171+func burn () = {
172+ let ag = u()
173+ let z = w(ag)
174+ let al = y(z)
175+ if ((size(U.payments) != 1))
176+ then throw("exact one payment is allowed")
177+ else {
178+ let am = U.payments[0]
179+ let an = value(am.assetId)
180+ let ao = am.amount
181+ let ak = fromBase58String(split(b(this, D()), a)[1])
182+ if ((an != ak))
183+ then throw("invalid wxAssetId is passed")
184+ else if ((U.caller != al))
185+ then throw("permissions denied")
186+ else [Burn(an, ao), StringEntry(("%s%s%s__history__burn__" + toBase58String(U.transactionId)), makeString(["%d%d%d", toString(height), toString(lastBlock.timestamp), toString(ao)], a))]
187+ }
188+ }
189+
190+
191+
192+@Callable(U)
193+func setManager (ap) = {
194+ let ae = T(U)
195+ if ((ae == ae))
196+ then {
197+ let aq = fromBase58String(ap)
198+ if ((aq == aq))
199+ then [StringEntry(O(), ap)]
200+ else throw("Strict value is not equal to itself.")
201+ }
202+ else throw("Strict value is not equal to itself.")
203+ }
204+
205+
206+
207+@Callable(U)
208+func confirmManager () = {
209+ let ar = S()
210+ let as = if (isDefined(ar))
211+ then true
212+ else throw("No pending manager")
213+ if ((as == as))
214+ then {
215+ let at = if ((U.callerPublicKey == value(ar)))
216+ then true
217+ else throw("You are not pending manager")
218+ if ((at == at))
219+ then [StringEntry(N(), toBase58String(value(ar))), DeleteEntry(O())]
220+ else throw("Strict value is not equal to itself.")
221+ }
222+ else throw("Strict value is not equal to itself.")
223+ }
224+
225+
226+@Verifier(au)
227+func av () = {
228+ let aw = {
229+ let Q = P()
230+ if ($isInstanceOf(Q, "ByteVector"))
231+ then {
232+ let W = Q
233+ W
120234 }
235+ else if ($isInstanceOf(Q, "Unit"))
236+ then au.senderPublicKey
237+ else throw("Match error")
121238 }
122-
239+ sigVerify(au.bodyBytes, au.proofs[0], aw)
240+ }
123241
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 func b (c,d) = valueOrErrorMessage(getString(c, d), (("mandatory this." + d) + " is not defined"))
77
88
99 func e () = "%s%s__config__factoryAddress"
1010
1111
12-func f () = "%s%s__config__gwxRewardsAddress"
12+let f = 1
13+
14+let g = 2
15+
16+let h = 3
17+
18+let i = 4
19+
20+let j = 5
21+
22+let k = 6
23+
24+let l = 7
25+
26+let m = 10
27+
28+func n () = "%s__factoryConfig"
1329
1430
15-let g = b(this, f())
16-
17-let h = addressFromStringValue(g)
18-
19-let i = 1
20-
21-let j = 2
22-
23-let k = 3
24-
25-let l = 4
26-
27-let m = 5
28-
29-let n = 6
30-
31-let o = 7
32-
33-func p () = "%s__factoryConfig"
31+func o (p) = makeString(["%s%s%s", p, "mappings__lpAsset2PoolContract"], a)
3432
3533
36-func q (r) = makeString(["%s%s%s", r, "mappings__lpAsset2PoolContract"], a)
34+func q () = "%s__lpTokensList"
3735
3836
39-func s () = "%s__lpTokensList"
37+func r (p) = makeString(["%s%s%s", p, "mappings__lpAsset2PoolContract"], a)
4038
4139
42-func t (r) = makeString(["%s%s%s", r, "mappings__lpAsset2PoolContract"], a)
40+func s (t) = makeString(["%s%s", "poolWeight", t], a)
4341
4442
45-func u (v) = makeString(["%s%s", "poolWeight", v], a)
43+func u () = addressFromStringValue(b(this, e()))
4644
4745
48-func w () = addressFromStringValue(b(this, e()))
46+func v () = split(valueOrElse(getString(u(), q()), ""), a)
4947
5048
51-func x () = split(valueOrElse(getString(w(), s()), ""), a)
49+func w (x) = split(b(x, n()), a)
5250
5351
54-func y (z) = split(b(z, p()), a)
52+func y (z) = addressFromStringValue(z[g])
5553
5654
57-func A (B) = addressFromStringValue(B[j])
55+func A (z) = addressFromStringValue(z[j])
5856
5957
60-func C (B) = addressFromStringValue(B[m])
58+func B (z) = addressFromStringValue(z[f])
6159
6260
63-func D (B) = addressFromStringValue(B[i])
61+func C (z) = addressFromStringValue(z[m])
6462
6563
66-func E () = "%s__config"
64+func D () = "%s__config"
6765
6866
69-func F () = "%s%s__ratePerBlockMax__current"
67+func E () = "%s%s__ratePerBlockMax__current"
7068
7169
72-func G (H,I) = makeString(["%s%s%d%d__ratePerBlockMax__start", toString(H), toString(I)], a)
70+func F (G,H) = makeString(["%s%s%d%d__ratePerBlockMax__start", toString(G), toString(H)], a)
7371
7472
75-func J () = "%s%s__ratePerBlock__current"
73+func I () = "%s%s__ratePerBlock__current"
7674
7775
78-func K (H,I) = makeString(["%s%s%d%d__ratePerBlock__start", toString(H), toString(I)], a)
76+func J (G,H) = makeString(["%s%s%d%d__ratePerBlock__start", toString(G), toString(H)], a)
7977
8078
81-func L () = "%s%s__emission__startBlock"
79+func K () = "%s%s__emission__startBlock"
8280
8381
84-func M () = "%s%s__emission__duration"
82+func L () = "%s%s__emission__duration"
8583
8684
87-func N () = "%s%s__emission__endBlock"
85+func M () = "%s%s__emission__endBlock"
8886
8987
90-@Callable(O)
91-func constructor (P,Q,R,S,T,U,V) = if ((O.caller != this))
92- then throw("permissions denied")
93- else [IntegerEntry(G(U, S), Q), IntegerEntry(F(), Q), IntegerEntry(K(U, S), R), IntegerEntry(J(), R), IntegerEntry(L(), S), IntegerEntry(M(), T), IntegerEntry(N(), (S + T)), StringEntry(e(), P), StringEntry(E(), ("%s__" + V))]
88+func N () = "%s__managerPublicKey"
89+
90+
91+func O () = "%s__pendingManagerPublicKey"
92+
93+
94+func P () = {
95+ let Q = getString(N())
96+ if ($isInstanceOf(Q, "String"))
97+ then {
98+ let R = Q
99+ fromBase58String(R)
100+ }
101+ else if ($isInstanceOf(Q, "Unit"))
102+ then unit
103+ else throw("Match error")
104+ }
105+
106+
107+func S () = {
108+ let Q = getString(O())
109+ if ($isInstanceOf(Q, "String"))
110+ then {
111+ let R = Q
112+ fromBase58String(R)
113+ }
114+ else if ($isInstanceOf(Q, "Unit"))
115+ then unit
116+ else throw("Match error")
117+ }
118+
119+
120+func T (U) = {
121+ let V = throw("Permission denied")
122+ let Q = P()
123+ if ($isInstanceOf(Q, "ByteVector"))
124+ then {
125+ let W = Q
126+ if ((U.callerPublicKey == W))
127+ then true
128+ else V
129+ }
130+ else if ($isInstanceOf(Q, "Unit"))
131+ then if ((U.caller == this))
132+ then true
133+ else V
134+ else throw("Match error")
135+ }
136+
137+
138+@Callable(U)
139+func constructor (X,Y,Z,aa,ab,ac,ad) = {
140+ let ae = T(U)
141+ if ((ae == ae))
142+ then [IntegerEntry(F(ac, aa), Y), IntegerEntry(E(), Y), IntegerEntry(J(ac, aa), Z), IntegerEntry(I(), Z), IntegerEntry(K(), aa), IntegerEntry(L(), ab), IntegerEntry(M(), (aa + ab)), StringEntry(e(), X), StringEntry(D(), ("%s__" + ad))]
143+ else throw("Strict value is not equal to itself.")
144+ }
94145
95146
96147
97-@Callable(O)
98-func constructorV2 (W) = if ((this != O.caller))
99- then throw("not authorized")
100- else [StringEntry(f(), W)]
148+@Callable(U)
149+func emit (af) = if ((0 >= af))
150+ then $Tuple2(nil, nil)
151+ else {
152+ let ag = u()
153+ let z = w(ag)
154+ let ah = B(z)
155+ let ai = C(z)
156+ let aj = U.caller
157+ if (if ((aj != ah))
158+ then (aj != ai)
159+ else false)
160+ then throw("permissions denied")
161+ else {
162+ let ad = split(b(this, D()), a)[1]
163+ let ak = fromBase58String(ad)
164+ $Tuple2([ScriptTransfer(aj, af, ak)], [ak])
165+ }
166+ }
101167
102168
103169
104-@Callable(O)
105-func emit (X) = if ((0 >= X))
106- then $Tuple2(nil, nil)
107- else {
108- let Y = w()
109- let B = y(Y)
110- let Z = D(B)
111- let aa = O.caller
112- if (if ((aa != Z))
113- then (aa != h)
114- else false)
115- then throw("permissions denied")
116- else {
117- let V = split(b(this, E()), a)[1]
118- let ab = fromBase58String(V)
119- $Tuple2([ScriptTransfer(aa, X, ab)], [ab])
170+@Callable(U)
171+func burn () = {
172+ let ag = u()
173+ let z = w(ag)
174+ let al = y(z)
175+ if ((size(U.payments) != 1))
176+ then throw("exact one payment is allowed")
177+ else {
178+ let am = U.payments[0]
179+ let an = value(am.assetId)
180+ let ao = am.amount
181+ let ak = fromBase58String(split(b(this, D()), a)[1])
182+ if ((an != ak))
183+ then throw("invalid wxAssetId is passed")
184+ else if ((U.caller != al))
185+ then throw("permissions denied")
186+ else [Burn(an, ao), StringEntry(("%s%s%s__history__burn__" + toBase58String(U.transactionId)), makeString(["%d%d%d", toString(height), toString(lastBlock.timestamp), toString(ao)], a))]
187+ }
188+ }
189+
190+
191+
192+@Callable(U)
193+func setManager (ap) = {
194+ let ae = T(U)
195+ if ((ae == ae))
196+ then {
197+ let aq = fromBase58String(ap)
198+ if ((aq == aq))
199+ then [StringEntry(O(), ap)]
200+ else throw("Strict value is not equal to itself.")
201+ }
202+ else throw("Strict value is not equal to itself.")
203+ }
204+
205+
206+
207+@Callable(U)
208+func confirmManager () = {
209+ let ar = S()
210+ let as = if (isDefined(ar))
211+ then true
212+ else throw("No pending manager")
213+ if ((as == as))
214+ then {
215+ let at = if ((U.callerPublicKey == value(ar)))
216+ then true
217+ else throw("You are not pending manager")
218+ if ((at == at))
219+ then [StringEntry(N(), toBase58String(value(ar))), DeleteEntry(O())]
220+ else throw("Strict value is not equal to itself.")
221+ }
222+ else throw("Strict value is not equal to itself.")
223+ }
224+
225+
226+@Verifier(au)
227+func av () = {
228+ let aw = {
229+ let Q = P()
230+ if ($isInstanceOf(Q, "ByteVector"))
231+ then {
232+ let W = Q
233+ W
120234 }
235+ else if ($isInstanceOf(Q, "Unit"))
236+ then au.senderPublicKey
237+ else throw("Match error")
121238 }
122-
239+ sigVerify(au.bodyBytes, au.proofs[0], aw)
240+ }
123241

github/deemru/w8io/873ac7e 
58.79 ms