tx · G6XefpmYPKbpKLfwWgTSqYMYKmDgxS5nyMApY96DAAa

3PKL9tfUmNciXvbSA3zpXr6PnDNnhn936ba:  -0.02100000 Waves

2023.05.12 19:37 [3640441] smart account 3PKL9tfUmNciXvbSA3zpXr6PnDNnhn936ba > SELF 0.00000000 Waves

{ "type": 13, "id": "G6XefpmYPKbpKLfwWgTSqYMYKmDgxS5nyMApY96DAAa", "fee": 2100000, "feeAssetId": null, "timestamp": 1683909462243, "version": 2, "chainId": 87, "sender": "3PKL9tfUmNciXvbSA3zpXr6PnDNnhn936ba", "senderPublicKey": "8yG34okaNeKtYZriaoqUQTinJjpk3pYKFTeGptmiWvTV", "proofs": [ "3ai2LXnD3ab23bwnzzEQ2FwLUHVMwgQ3wWH3P18oTajPMyQQiJCwLxoMHspSp7ZbCu6n5z9PC9D36PiFhDJgFm5j" ], "script": "base64:AAIFAAAAAAAAABEIAhIDCgEIEgMKAQgSAwoBCAAAADABAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgAAAAdhZGRyZXNzAAAAA2tleQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAdhZGRyZXNzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQIAAAAAAQAAABF0cnlHZXRJbnRFeHRlcm5hbAAAAAIAAAAHYWRkcmVzcwAAAANrZXkEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAHYWRkcmVzcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAbUlRHSUU6IFNvbWV0aGluZyB3ZW50IHdyb25nAQAAAAx0cnlHZXRTdHJpbmcAAAABAAAAA2tleQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgUAAAAEdGhpcwUAAAADa2V5AAAAABBkZWxheUZvckhhdGNoaW5nAAAAAAAAAAACAQAAABdzdGF0aWNLZXlfb3JhY2xlQWRkcmVzcwAAAAACAAAAFHN0YXRpY19vcmFjbGVBZGRyZXNzAQAAABRzdGF0aWNLZXlfZWdnQXNzZXRJZAAAAAACAAAAEXN0YXRpY19lZ2dBc3NldElkAQAAABpzdGF0aWNLZXlfaW5jdWJhdG9yQWRkcmVzcwAAAAACAAAAF3N0YXRpY19pbmN1YmF0b3JBZGRyZXNzAQAAABhzdGF0aWNLZXlfYnJlZWRlckFkZHJlc3MAAAAAAgAAABVzdGF0aWNfYnJlZWRlckFkZHJlc3MBAAAAGHN0YXRpY0tleV9mYXJtaW5nQWRkcmVzcwAAAAACAAAAFXN0YXRpY19mYXJtaW5nQWRkcmVzcwEAAAAZc3RhdGljS2V5X2JhYnlEdWNrQWRkcmVzcwAAAAACAAAAFnN0YXRpY19iYWJ5RHVja0FkZHJlc3MBAAAAGXN0YXRpY0tleV9nYW1lRGFwcEFkZHJlc3MAAAAAAgAAABZzdGF0aWNfZ2FtZURhcHBBZGRyZXNzAQAAABZzdGF0aWNLZXlfaXRlbXNBZGRyZXNzAAAAAAIAAAATc3RhdGljX2l0ZW1zQWRkcmVzcwEAAAAYc3RhdGljS2V5X2NvdXBvbnNBZGRyZXNzAAAAAAIAAAAVc3RhdGljX2NvdXBvbnNBZGRyZXNzAQAAABlzdGF0aWNLZXlfbWV0YVJhY2VBZGRyZXNzAAAAAAIAAAAWc3RhdGljX21ldGFSYWNlQWRkcmVzcwEAAAAVc3RhdGljS2V5X2h1bnRBZGRyZXNzAAAAAAIAAAASc3RhdGljX2h1bnRBZGRyZXNzAQAAABVzdGF0aWNLZXlfYnVybkFkZHJlc3MAAAAAAgAAABJzdGF0aWNfYnVybkFkZHJlc3MBAAAAHHN0YXRpY0tleV9yZWZDb250cmFjdEFkZHJlc3MAAAAAAgAAABlzdGF0aWNfcmVmQ29udHJhY3RBZGRyZXNzAQAAABJzdGF0aWNLZXlfZXh0cmFGZWUAAAAAAgAAAA9zdGF0aWNfZXh0cmFGZWUBAAAAF3N0YXRpY0tleV9mZWVBZ2dyZWdhdG9yAAAAAAIAAAAUc3RhdGljX2ZlZUFnZ3JlZ2F0b3IBAAAACWdldE9yYWNsZQAAAAAJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABCQEAAAAMdHJ5R2V0U3RyaW5nAAAAAQkBAAAAF3N0YXRpY0tleV9vcmFjbGVBZGRyZXNzAAAAAAEAAAANZ2V0RWdnQXNzZXRJZAAAAAAJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAAJAQAAABRzdGF0aWNLZXlfZWdnQXNzZXRJZAAAAAABAAAAE2dldEluY3ViYXRvckFkZHJlc3MAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAAJAQAAABpzdGF0aWNLZXlfaW5jdWJhdG9yQWRkcmVzcwAAAAABAAAAEWdldEJyZWVkZXJBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAYc3RhdGljS2V5X2JyZWVkZXJBZGRyZXNzAAAAAAEAAAARZ2V0RmFybWluZ0FkZHJlc3MAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAAJAQAAABhzdGF0aWNLZXlfZmFybWluZ0FkZHJlc3MAAAAAAQAAABJnZXRCYWJ5RHVja0FkZHJlc3MAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAAJAQAAABlzdGF0aWNLZXlfYmFieUR1Y2tBZGRyZXNzAAAAAAEAAAASZ2V0R2FtZURhcHBBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAZc3RhdGljS2V5X2dhbWVEYXBwQWRkcmVzcwAAAAABAAAAD2dldEl0ZW1zQWRkcmVzcwAAAAAJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABCQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACCQEAAAAJZ2V0T3JhY2xlAAAAAAkBAAAAFnN0YXRpY0tleV9pdGVtc0FkZHJlc3MAAAAAAQAAABFnZXRDb3Vwb25zQWRkcmVzcwAAAAAJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABCQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACCQEAAAAJZ2V0T3JhY2xlAAAAAAkBAAAAGHN0YXRpY0tleV9jb3Vwb25zQWRkcmVzcwAAAAABAAAAEmdldE1ldGFyYWNlQWRkcmVzcwAAAAAJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABCQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACCQEAAAAJZ2V0T3JhY2xlAAAAAAkBAAAAGXN0YXRpY0tleV9tZXRhUmFjZUFkZHJlc3MAAAAAAQAAAA5nZXRIdW50QWRkcmVzcwAAAAAJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABCQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACCQEAAAAJZ2V0T3JhY2xlAAAAAAkBAAAAFXN0YXRpY0tleV9odW50QWRkcmVzcwAAAAABAAAADmdldEJ1cm5BZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAVc3RhdGljS2V5X2J1cm5BZGRyZXNzAAAAAAEAAAAVZ2V0UmVmQ29udHJhY3RBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAcc3RhdGljS2V5X3JlZkNvbnRyYWN0QWRkcmVzcwAAAAABAAAAEGdldEZlZUFnZ3JlZ2F0b3IAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAAJAQAAABdzdGF0aWNLZXlfZmVlQWdncmVnYXRvcgAAAAABAAAAFmNoZWNrQWRkaXRpb25hbFBheW1lbnQAAAABAAAAB3BheW1lbnQDCQEAAAAJaXNEZWZpbmVkAAAAAQgFAAAAB3BheW1lbnQAAAAHYXNzZXRJZAkAAAIAAAABAgAAABlSQ0FQOiBQbGVhc2UgYXR0YWNoIHdhdmVzBAAAAAlmZWVBbW91bnQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAASc3RhdGljS2V5X2V4dHJhRmVlAAAAAAMJAQAAAAIhPQAAAAIIBQAAAAdwYXltZW50AAAABmFtb3VudAUAAAAJZmVlQW1vdW50CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAABxSQ0FQOiBQbGVhc2UgYXR0YWNoIGV4YWN0bHkgCQABpAAAAAEFAAAACWZlZUFtb3VudAIAAAATIGFtb3VudCBvZiB3YXZlbGV0cwkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAQZ2V0RmVlQWdncmVnYXRvcgAAAAAFAAAACWZlZUFtb3VudAUAAAAEdW5pdAUAAAADbmlsAAAAABJQ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", "height": 3640441, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 23pduavFTkFgquXRadcdB6X8wvHmNvHaWnvExyBiJvBP Next: 4taFPuLFCw4VAa3GUMbYWiUD3WdkGW7iN4cipFGRH2yt Diff:
OldNewDifferences
2828
2929 let h = 2
3030
31-func i () = Address(fromBase58String(g("static_oracleAddress")))
31+func i () = "static_oracleAddress"
3232
3333
34-func j () = fromBase58String(a(i(), "static_eggAssetId"))
34+func j () = "static_eggAssetId"
3535
3636
37-func k () = Address(fromBase58String(a(i(), "static_incubatorAddress")))
37+func k () = "static_incubatorAddress"
3838
3939
40-func l () = Address(fromBase58String(a(i(), "static_breederAddress")))
40+func l () = "static_breederAddress"
4141
4242
43-func m () = Address(fromBase58String(a(i(), "static_farmingAddress")))
43+func m () = "static_farmingAddress"
4444
4545
46-func n () = Address(fromBase58String(a(i(), "static_babyDuckAddress")))
46+func n () = "static_babyDuckAddress"
4747
4848
49-func o () = Address(fromBase58String(a(i(), "static_gameDappAddress")))
49+func o () = "static_gameDappAddress"
5050
5151
52-func p () = Address(fromBase58String(a(i(), "static_itemsAddress")))
52+func p () = "static_itemsAddress"
5353
5454
55-func q () = Address(fromBase58String(a(i(), "static_couponsAddress")))
55+func q () = "static_couponsAddress"
5656
5757
58-func r () = Address(fromBase58String(a(i(), "static_metaRaceAddress")))
58+func r () = "static_metaRaceAddress"
5959
6060
61-func s () = Address(fromBase58String(a(i(), "static_huntAddress")))
61+func s () = "static_huntAddress"
6262
6363
64-func t () = Address(fromBase58String(a(i(), "static_burnAddress")))
64+func t () = "static_burnAddress"
6565
6666
67-func u () = Address(fromBase58String(a(i(), "static_refContractAddress")))
67+func u () = "static_refContractAddress"
6868
6969
70-let v = 1000
70+func v () = "static_extraFee"
7171
72-func w (c) = {
72+
73+func w () = "static_feeAggregator"
74+
75+
76+func x () = Address(fromBase58String(g(i())))
77+
78+
79+func y () = fromBase58String(a(x(), j()))
80+
81+
82+func z () = Address(fromBase58String(a(x(), k())))
83+
84+
85+func A () = Address(fromBase58String(a(x(), l())))
86+
87+
88+func B () = Address(fromBase58String(a(x(), m())))
89+
90+
91+func C () = Address(fromBase58String(a(x(), n())))
92+
93+
94+func D () = Address(fromBase58String(a(x(), o())))
95+
96+
97+func E () = Address(fromBase58String(a(x(), p())))
98+
99+
100+func F () = Address(fromBase58String(a(x(), q())))
101+
102+
103+func G () = Address(fromBase58String(a(x(), r())))
104+
105+
106+func H () = Address(fromBase58String(a(x(), s())))
107+
108+
109+func I () = Address(fromBase58String(a(x(), t())))
110+
111+
112+func J () = Address(fromBase58String(a(x(), u())))
113+
114+
115+func K () = Address(fromBase58String(a(x(), w())))
116+
117+
118+func L (M) = if (isDefined(M.assetId))
119+ then throw("RCAP: Please attach waves")
120+ else {
121+ let N = getIntegerValue(x(), v())
122+ if ((M.amount != N))
123+ then throw((("RCAP: Please attach exactly " + toString(N)) + " amount of wavelets"))
124+ else [ScriptTransfer(K(), N, unit)]
125+ }
126+
127+
128+let O = 1000
129+
130+func P (c) = {
73131 let d = getInteger(this, c)
74132 if ($isInstanceOf(d, "Int"))
75133 then {
76- let x = d
77- x
134+ let Q = d
135+ Q
78136 }
79137 else 0
80138 }
81139
82140
83-func y (z) = {
84- let d = z
141+func R (S) = {
142+ let d = S
85143 if ($isInstanceOf(d, "String"))
86144 then {
87- let A = d
88- A
145+ let T = d
146+ T
89147 }
90148 else if ($isInstanceOf(d, "Int"))
91149 then {
92- let A = d
150+ let T = d
93151 throw("wrong type, expected: String, got: Int")
94152 }
95153 else if ($isInstanceOf(d, "Unit"))
96154 then {
97- let A = d
155+ let T = d
98156 throw("wrong type, expected: String, got: Unit")
99157 }
100158 else throw("wrong type, expected: String")
101159 }
102160
103161
104-let B = w("currentPrice")
162+let N = P("currentPrice")
105163
106-func C (D) = if (contains(D, "0"))
164+func U (V) = if (contains(V, "0"))
107165 then ""
108- else D
166+ else V
109167
110168
111-func E (F) = if ((F == "G"))
112- then k()
113- else l()
169+func W (X) = if ((X == "G"))
170+ then z()
171+ else A()
114172
115173
116-func G (H,F) = {
117- let I = getIntegerValue(E(F), (("stats_" + H) + "_quantity"))
118- let J = pow((10000 / I), 4, 5, 1, 2, FLOOR)
119- if ((J > 0))
120- then J
174+func Y (Z,X) = {
175+ let aa = getIntegerValue(W(X), (("stats_" + Z) + "_quantity"))
176+ let ab = pow((10000 / aa), 4, 5, 1, 2, FLOOR)
177+ if ((ab > 0))
178+ then ab
121179 else 2
122180 }
123181
124182
125-func K (L) = if (if ((value(assetInfo(L)).issuer == l()))
183+func ac (ad) = if (if ((value(assetInfo(ad)).issuer == A()))
126184 then true
127- else (value(assetInfo(L)).issuer == k()))
185+ else (value(assetInfo(ad)).issuer == z()))
128186 then {
129- let M = value(assetInfo(L)).name
130- let F = take(takeRight(M, 2), 1)
131- let N = y(invoke(l(), "getGenFromName", [M], nil))
132- if ((N == N))
133- then $Tuple2(N, G(N, F))
187+ let ae = value(assetInfo(ad)).name
188+ let X = take(takeRight(ae, 2), 1)
189+ let af = R(invoke(A(), "getGenFromName", [ae], nil))
190+ if ((af == af))
191+ then $Tuple2(af, Y(af, X))
134192 else throw("Strict value is not equal to itself.")
135193 }
136194 else throw("not valid NFT")
137195
138196
139-func O (P,Q,R,S) = {
140- let T = value(blockInfoByHeight((R - 1)))
141- let U = sha256((Q + value(T.vrf)))
142- (toInt(U, (S * 8)) % P)
197+func ag (ah,ai,aj,ak) = {
198+ let al = value(blockInfoByHeight((aj - 1)))
199+ let am = sha256((ai + value(al.vrf)))
200+ (toInt(am, (ak * 8)) % ah)
143201 }
144202
145203
146-func V (W,X,Y) = {
147- let Z = (v - fraction((v / 2), Y, 100))
148- let aa = O(Z, W, X, 1)
149- let ab = O(Z, W, X, 2)
150- if ((aa == 1))
204+func an (ao,ap,aq) = {
205+ let ar = (O - fraction((O / 2), aq, 100))
206+ let as = ag(ar, ao, ap, 1)
207+ let at = ag(ar, ao, ap, 2)
208+ if ((as == 1))
151209 then "phoenix"
152- else if ((ab == 1))
210+ else if ((at == 1))
153211 then "item_ART-FREEGENE"
154212 else {
155- let ac = O(1000, W, X, 0)
156- if ((150 > ac))
213+ let au = ag(1000, ao, ap, 0)
214+ if ((150 > au))
157215 then "duckling_2"
158- else if ((200 > ac))
216+ else if ((200 > au))
159217 then "duckling_10"
160- else if ((210 > ac))
218+ else if ((210 > au))
161219 then "duckling_20"
162- else if ((250 > ac))
220+ else if ((250 > au))
163221 then "incubator"
164- else if ((375 > ac))
165- then "perch_Y"
166- else if ((500 > ac))
167- then "perch_G"
168- else if ((625 > ac))
169- then "perch_B"
170- else if ((750 > ac))
171- then "perch_R"
172- else if ((875 > ac))
173- then "ar"
174- else "meta"
222+ else if ((280 > au))
223+ then "item_ART-SNAKE"
224+ else if ((410 > au))
225+ then "item_ART-KATANA"
226+ else if ((460 > au))
227+ then "item_ART-ROBODUCK"
228+ else if ((480 > au))
229+ then "item_ART-CROWN"
230+ else if ((610 > au))
231+ then "item_ART-SCEPTER"
232+ else if ((740 > au))
233+ then "item_ART-BUILTBODY"
234+ else if ((750 > au))
235+ then "item_ART-FEED10"
236+ else if ((875 > au))
237+ then "ar"
238+ else "meta"
175239 }
176240 }
177241
178242
179-func ad (L) = {
180- let M = value(assetInfo(L)).name
181- let F = take(takeRight(M, 2), 1)
182- if (if ((F == "G"))
243+func av (ad) = {
244+ let ae = value(assetInfo(ad)).name
245+ let X = take(takeRight(ae, 2), 1)
246+ if (if ((X == "G"))
183247 then true
184- else (F == "J"))
185- then k()
186- else l()
248+ else (X == "J"))
249+ then z()
250+ else A()
187251 }
188252
189253
190-func ae (z) = {
191- let d = z
254+func aw (S) = {
255+ let d = S
192256 if ($isInstanceOf(d, "Int"))
193257 then {
194- let af = d
195- af
258+ let ax = d
259+ ax
196260 }
197261 else if ($isInstanceOf(d, "String"))
198262 then {
199- let ag = d
200- throw(("RAI: wrong type, expected: Int, but got: " + ag))
263+ let ay = d
264+ throw(("RAI: wrong type, expected: Int, but got: " + ay))
201265 }
202266 else throw("RAI: wrong type, expected: Int")
203267 }
204268
205269
206-func ah (c) = {
270+func az (c) = {
207271 let d = getBoolean(this, c)
208272 if ($isInstanceOf(d, "Boolean"))
209273 then {
210- let x = d
211- x
274+ let Q = d
275+ Q
212276 }
213277 else false
214278 }
215279
216280
217-func ai () = ah("TESTENV")
281+func aA () = az("TESTENV")
218282
219283
220-@Callable(aj)
221-func configureOracle (ak) = if ((aj.caller != this))
284+@Callable(aB)
285+func configureOracle (aC) = if ((aB.caller != this))
222286 then throw("RCU: admin only")
223- else [StringEntry("static_oracleAddress", ak)]
287+ else [StringEntry("static_oracleAddress", aC)]
224288
225289
226290
227-@Callable(aj)
228-func initRebirth (al) = {
229- let am = aj.payments[0]
230- let L = value(am.assetId)
231- let an = toBase58String(aj.transactionId)
232- let b = toString(aj.caller)
233- if ((am.amount != 1))
291+@Callable(aB)
292+func initRebirth (aD) = {
293+ let aE = aB.payments[0]
294+ let ad = value(aE.assetId)
295+ let aF = toBase58String(aB.transactionId)
296+ let b = toString(aB.caller)
297+ if ((aE.amount != 1))
234298 then throw("NFT is not attached")
235299 else {
236- let ao = ae(invoke(q(), "useCoupons", [B], nil))
237- if ((ao == ao))
300+ let aG = aw(invoke(F(), "useCoupons", [N], nil))
301+ if ((aG == aG))
238302 then {
239- let ap = (B - ao)
240- let aq = if ((ap != 0))
303+ let aH = (N - aG)
304+ let aI = L(aB.payments[1])
305+ if ((aI == aI))
241306 then {
242- let ar = value(aj.payments[1])
243- if ((ar.assetId != j()))
244- then throw("You need to attach EGG tokens as fee")
245- else if ((ap > ar.amount))
246- then throw(("You need to attach the following amount of EGG tokens as fee: 0." + toString(ap)))
247- else {
248- let as = fraction(ap, 5, 100)
249- let at = invoke(u(), "refPayment", [al], [AttachedPayment(j(), as)])
250- if ((at == at))
251- then {
252- let au = invoke(t(), "burnAttachedPayments", nil, [AttachedPayment(j(), (ap - as))])
253- if ((au == au))
254- then ap
307+ let M = if ((aH != 0))
308+ then {
309+ let aJ = value(aB.payments[2])
310+ if ((aJ.assetId != y()))
311+ then throw("You need to attach EGG tokens as fee")
312+ else if ((aH > aJ.amount))
313+ then throw(("You need to attach the following amount of EGG tokens as fee: 0." + toString(aH)))
314+ else {
315+ let aK = fraction(aH, 5, 100)
316+ let aL = invoke(J(), "refPayment", [aD], [AttachedPayment(y(), aK)])
317+ if ((aL == aL))
318+ then {
319+ let aM = invoke(I(), "burnAttachedPayments", nil, [AttachedPayment(y(), (aH - aK))])
320+ if ((aM == aM))
321+ then aH
322+ else throw("Strict value is not equal to itself.")
323+ }
255324 else throw("Strict value is not equal to itself.")
256325 }
257- else throw("Strict value is not equal to itself.")
258- }
259- }
260- else 0
261- if ((aq == aq))
262- then {
263- let av = K(L)
264- let aw = av._1
265- let ax = av._2
266- let ay = invoke(ad(L), "reduceRarity", [toBase58String(L), aw], nil)
267- if ((ay == ay))
268- then [IntegerEntry((((("address_" + b) + "_initTx_") + an) + "_finishBlock"), (height + h)), StringEntry((((("address_" + b) + "_initTx_") + an) + "_status"), "open"), IntegerEntry((((("address_" + b) + "_initTx_") + an) + "_assetRarity"), ax), StringEntry((((("address_" + b) + "_initTx_") + an) + "_assetId"), toBase58String(L))]
326+ }
327+ else 0
328+ if ((M == M))
329+ then {
330+ let aN = ac(ad)
331+ let aO = aN._1
332+ let aP = aN._2
333+ let aQ = invoke(av(ad), "reduceRarity", [toBase58String(ad), aO], nil)
334+ if ((aQ == aQ))
335+ then ([IntegerEntry((((("address_" + b) + "_initTx_") + aF) + "_finishBlock"), (height + h)), StringEntry((((("address_" + b) + "_initTx_") + aF) + "_status"), "open"), IntegerEntry((((("address_" + b) + "_initTx_") + aF) + "_assetRarity"), aP), StringEntry((((("address_" + b) + "_initTx_") + aF) + "_assetId"), toBase58String(ad))] ++ aI)
336+ else throw("Strict value is not equal to itself.")
337+ }
269338 else throw("Strict value is not equal to itself.")
270339 }
271340 else throw("Strict value is not equal to itself.")
276345
277346
278347
279-@Callable(aj)
280-func finishRebirth (an) = {
281- let b = toString(aj.caller)
282- let az = w((((("address_" + b) + "_initTx_") + an) + "_finishBlock"))
283- let Y = w((((("address_" + b) + "_initTx_") + an) + "_assetRarity"))
284- let aA = g((((("address_" + b) + "_initTx_") + an) + "_status"))
285- func aB (b) = fromBase58String(a(b, "static_accessItemAssetId"))
348+@Callable(aB)
349+func finishRebirth (aF) = {
350+ let b = toString(aB.caller)
351+ let aR = P((((("address_" + b) + "_initTx_") + aF) + "_finishBlock"))
352+ let aq = P((((("address_" + b) + "_initTx_") + aF) + "_assetRarity"))
353+ let aS = g((((("address_" + b) + "_initTx_") + aF) + "_status"))
354+ let aI = L(aB.payments[0])
355+ if ((aI == aI))
356+ then {
357+ func aT (b) = fromBase58String(a(b, "static_accessItemAssetId"))
286358
287- func aC (b) = f(b, "static_accessItemPrice")
359+ func aU (b) = f(b, "static_accessItemPrice")
288360
289- if ((aA != "open"))
290- then throw("rebirth is finished or not open")
291- else if ((az > height))
292- then throw("you cannot finish rebirth, yet")
293- else {
294- let aD = V(fromBase58String(an), az, Y)
295- let Q = an
296- let aE = if ((indexOf(aD, "perch") != unit))
297- then {
298- let aF = takeRight(aD, 1)
299- let ay = invoke(m(), "addFreePerch", [b, aF], nil)
300- if ((ay == ay))
301- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
302- else throw("Strict value is not equal to itself.")
303- }
304- else if ((aD == "incubator"))
305- then {
306- let ay = invoke(k(), "issueFreeDuck", [b, Q], nil)
307- if ((ay == ay))
308- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
309- else throw("Strict value is not equal to itself.")
310- }
311- else if ((aD == "ar"))
361+ if ((aS != "open"))
362+ then throw("rebirth is finished or not open")
363+ else if ((aR > height))
364+ then throw("you cannot finish rebirth, yet")
365+ else {
366+ let aV = an(fromBase58String(aF), aR, aq)
367+ let ai = aF
368+ let aW = if ((indexOf(aV, "perch") != unit))
312369 then {
313- let L = aB(s())
314- let aG = aC(s())
315- let ay = invoke(s(), "buyAccessItemOther", [b], [AttachedPayment(L, aG)])
316- if ((ay == ay))
317- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
370+ let aX = takeRight(aV, 1)
371+ let aQ = invoke(B(), "addFreePerch", [b, aX], nil)
372+ if ((aQ == aQ))
373+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
318374 else throw("Strict value is not equal to itself.")
319375 }
320- else if ((aD == "meta"))
376+ else if ((aV == "incubator"))
321377 then {
322- let L = aB(r())
323- let aG = aC(r())
324- let ay = invoke(r(), "buyAccessItemOther", [b], [AttachedPayment(L, aG)])
325- if ((ay == ay))
326- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
378+ let aQ = invoke(z(), "issueFreeDuck", [b, ai], nil)
379+ if ((aQ == aQ))
380+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
327381 else throw("Strict value is not equal to itself.")
328382 }
329- else if ((aD == "phoenix"))
383+ else if ((aV == "ar"))
330384 then {
331- let ay = invoke(k(), "issueJackpot", [b, Q, "WWWWWWWP"], nil)
332- if ((ay == ay))
333- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
385+ let ad = aT(H())
386+ let aY = aU(H())
387+ let aQ = invoke(H(), "buyAccessItemOther", [b], [AttachedPayment(ad, aY)])
388+ if ((aQ == aQ))
389+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
334390 else throw("Strict value is not equal to itself.")
335391 }
336- else if ((indexOf(aD, "duckling") != unit))
392+ else if ((aV == "meta"))
337393 then {
338- let aH = parseIntValue(split(aD, "_")[1])
339- let ay = invoke(n(), "issueFreeDuckling", [b, Q, aH], nil)
340- if ((ay == ay))
341- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
394+ let ad = aT(G())
395+ let aY = aU(G())
396+ let aQ = invoke(G(), "buyAccessItemOther", [b], [AttachedPayment(ad, aY)])
397+ if ((aQ == aQ))
398+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
342399 else throw("Strict value is not equal to itself.")
343400 }
344- else if ((indexOf(aD, "item") != unit))
401+ else if ((aV == "phoenix"))
345402 then {
346- let aI = split(aD, "_")[1]
347- let ay = invoke(p(), "issueArtefact", [aI, b], nil)
348- if ((ay == ay))
349- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
403+ let aQ = invoke(z(), "issueJackpot", [b, ai, "WWWWWWWP"], nil)
404+ if ((aQ == aQ))
405+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
350406 else throw("Strict value is not equal to itself.")
351407 }
352- else throw("RFB: Some error occured, please contact the admins!")
353- (aE ++ [StringEntry((((("address_" + b) + "_initTx_") + an) + "_win"), aD), StringEntry((((("address_" + b) + "_initTx_") + an) + "_status"), "finish")])
354- }
408+ else if ((indexOf(aV, "duckling") != unit))
409+ then {
410+ let aZ = parseIntValue(split(aV, "_")[1])
411+ let aQ = invoke(C(), "issueFreeDuckling", [b, ai, aZ], nil)
412+ if ((aQ == aQ))
413+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
414+ else throw("Strict value is not equal to itself.")
415+ }
416+ else if ((indexOf(aV, "item") != unit))
417+ then {
418+ let ba = split(aV, "_")[1]
419+ let aQ = invoke(E(), "issueArtefact", [ba, b], nil)
420+ if ((aQ == aQ))
421+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
422+ else throw("Strict value is not equal to itself.")
423+ }
424+ else throw("RFB: Some error occured, please contact the admins!")
425+ ((aW ++ [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_win"), aV), StringEntry((((("address_" + b) + "_initTx_") + aF) + "_status"), "finish")]) ++ aI)
426+ }
427+ }
428+ else throw("Strict value is not equal to itself.")
355429 }
356430
357431
358-@Verifier(W)
359-func aJ () = if (ai())
360- then sigVerify(W.bodyBytes, W.proofs[0], W.senderPublicKey)
432+@Verifier(ao)
433+func bb () = if (aA())
434+ then sigVerify(ao.bodyBytes, ao.proofs[0], ao.senderPublicKey)
361435 else {
362- let aK = base58'FzsTVRXqD46KW5yj6qGNVrsouvWjpCQvD1446A96iGt4'
363- let aL = base58'E23yUg8eun5nXB1nZRDf7RTyRADKxQhGNXdpTYonEvtU'
364- let aM = base58'Ga8WEBTPXbHuoXRD355mQ6ms8PsM2RFYKeA1mEP32CFe'
365- let aN = if (sigVerify(W.bodyBytes, W.proofs[0], aK))
436+ let bc = base58'FzsTVRXqD46KW5yj6qGNVrsouvWjpCQvD1446A96iGt4'
437+ let bd = base58'E23yUg8eun5nXB1nZRDf7RTyRADKxQhGNXdpTYonEvtU'
438+ let be = base58'Ga8WEBTPXbHuoXRD355mQ6ms8PsM2RFYKeA1mEP32CFe'
439+ let bf = if (sigVerify(ao.bodyBytes, ao.proofs[0], bc))
366440 then 1
367- else if (sigVerify(W.bodyBytes, W.proofs[1], aK))
441+ else if (sigVerify(ao.bodyBytes, ao.proofs[1], bc))
368442 then 1
369- else if (sigVerify(W.bodyBytes, W.proofs[2], aK))
443+ else if (sigVerify(ao.bodyBytes, ao.proofs[2], bc))
370444 then 1
371445 else 0
372- let aO = if (sigVerify(W.bodyBytes, W.proofs[0], aL))
446+ let bg = if (sigVerify(ao.bodyBytes, ao.proofs[0], bd))
373447 then 1
374- else if (sigVerify(W.bodyBytes, W.proofs[1], aL))
448+ else if (sigVerify(ao.bodyBytes, ao.proofs[1], bd))
375449 then 1
376- else if (sigVerify(W.bodyBytes, W.proofs[2], aL))
450+ else if (sigVerify(ao.bodyBytes, ao.proofs[2], bd))
377451 then 1
378452 else 0
379- let aP = if (sigVerify(W.bodyBytes, W.proofs[0], aM))
453+ let bh = if (sigVerify(ao.bodyBytes, ao.proofs[0], be))
380454 then 1
381- else if (sigVerify(W.bodyBytes, W.proofs[1], aM))
455+ else if (sigVerify(ao.bodyBytes, ao.proofs[1], be))
382456 then 1
383- else if (sigVerify(W.bodyBytes, W.proofs[2], aM))
457+ else if (sigVerify(ao.bodyBytes, ao.proofs[2], be))
384458 then 1
385459 else 0
386- let aQ = ((aN + aO) + aP)
387- let d = W
388- (aQ >= 2)
460+ let bi = ((bf + bg) + bh)
461+ let d = ao
462+ (bi >= 2)
389463 }
390464
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func a (b,c) = {
55 let d = getString(b, c)
66 if ($isInstanceOf(d, "String"))
77 then {
88 let e = d
99 e
1010 }
1111 else ""
1212 }
1313
1414
1515 func f (b,c) = {
1616 let d = getInteger(b, c)
1717 if ($isInstanceOf(d, "Int"))
1818 then {
1919 let e = d
2020 e
2121 }
2222 else throw("RTGIE: Something went wrong")
2323 }
2424
2525
2626 func g (c) = a(this, c)
2727
2828
2929 let h = 2
3030
31-func i () = Address(fromBase58String(g("static_oracleAddress")))
31+func i () = "static_oracleAddress"
3232
3333
34-func j () = fromBase58String(a(i(), "static_eggAssetId"))
34+func j () = "static_eggAssetId"
3535
3636
37-func k () = Address(fromBase58String(a(i(), "static_incubatorAddress")))
37+func k () = "static_incubatorAddress"
3838
3939
40-func l () = Address(fromBase58String(a(i(), "static_breederAddress")))
40+func l () = "static_breederAddress"
4141
4242
43-func m () = Address(fromBase58String(a(i(), "static_farmingAddress")))
43+func m () = "static_farmingAddress"
4444
4545
46-func n () = Address(fromBase58String(a(i(), "static_babyDuckAddress")))
46+func n () = "static_babyDuckAddress"
4747
4848
49-func o () = Address(fromBase58String(a(i(), "static_gameDappAddress")))
49+func o () = "static_gameDappAddress"
5050
5151
52-func p () = Address(fromBase58String(a(i(), "static_itemsAddress")))
52+func p () = "static_itemsAddress"
5353
5454
55-func q () = Address(fromBase58String(a(i(), "static_couponsAddress")))
55+func q () = "static_couponsAddress"
5656
5757
58-func r () = Address(fromBase58String(a(i(), "static_metaRaceAddress")))
58+func r () = "static_metaRaceAddress"
5959
6060
61-func s () = Address(fromBase58String(a(i(), "static_huntAddress")))
61+func s () = "static_huntAddress"
6262
6363
64-func t () = Address(fromBase58String(a(i(), "static_burnAddress")))
64+func t () = "static_burnAddress"
6565
6666
67-func u () = Address(fromBase58String(a(i(), "static_refContractAddress")))
67+func u () = "static_refContractAddress"
6868
6969
70-let v = 1000
70+func v () = "static_extraFee"
7171
72-func w (c) = {
72+
73+func w () = "static_feeAggregator"
74+
75+
76+func x () = Address(fromBase58String(g(i())))
77+
78+
79+func y () = fromBase58String(a(x(), j()))
80+
81+
82+func z () = Address(fromBase58String(a(x(), k())))
83+
84+
85+func A () = Address(fromBase58String(a(x(), l())))
86+
87+
88+func B () = Address(fromBase58String(a(x(), m())))
89+
90+
91+func C () = Address(fromBase58String(a(x(), n())))
92+
93+
94+func D () = Address(fromBase58String(a(x(), o())))
95+
96+
97+func E () = Address(fromBase58String(a(x(), p())))
98+
99+
100+func F () = Address(fromBase58String(a(x(), q())))
101+
102+
103+func G () = Address(fromBase58String(a(x(), r())))
104+
105+
106+func H () = Address(fromBase58String(a(x(), s())))
107+
108+
109+func I () = Address(fromBase58String(a(x(), t())))
110+
111+
112+func J () = Address(fromBase58String(a(x(), u())))
113+
114+
115+func K () = Address(fromBase58String(a(x(), w())))
116+
117+
118+func L (M) = if (isDefined(M.assetId))
119+ then throw("RCAP: Please attach waves")
120+ else {
121+ let N = getIntegerValue(x(), v())
122+ if ((M.amount != N))
123+ then throw((("RCAP: Please attach exactly " + toString(N)) + " amount of wavelets"))
124+ else [ScriptTransfer(K(), N, unit)]
125+ }
126+
127+
128+let O = 1000
129+
130+func P (c) = {
73131 let d = getInteger(this, c)
74132 if ($isInstanceOf(d, "Int"))
75133 then {
76- let x = d
77- x
134+ let Q = d
135+ Q
78136 }
79137 else 0
80138 }
81139
82140
83-func y (z) = {
84- let d = z
141+func R (S) = {
142+ let d = S
85143 if ($isInstanceOf(d, "String"))
86144 then {
87- let A = d
88- A
145+ let T = d
146+ T
89147 }
90148 else if ($isInstanceOf(d, "Int"))
91149 then {
92- let A = d
150+ let T = d
93151 throw("wrong type, expected: String, got: Int")
94152 }
95153 else if ($isInstanceOf(d, "Unit"))
96154 then {
97- let A = d
155+ let T = d
98156 throw("wrong type, expected: String, got: Unit")
99157 }
100158 else throw("wrong type, expected: String")
101159 }
102160
103161
104-let B = w("currentPrice")
162+let N = P("currentPrice")
105163
106-func C (D) = if (contains(D, "0"))
164+func U (V) = if (contains(V, "0"))
107165 then ""
108- else D
166+ else V
109167
110168
111-func E (F) = if ((F == "G"))
112- then k()
113- else l()
169+func W (X) = if ((X == "G"))
170+ then z()
171+ else A()
114172
115173
116-func G (H,F) = {
117- let I = getIntegerValue(E(F), (("stats_" + H) + "_quantity"))
118- let J = pow((10000 / I), 4, 5, 1, 2, FLOOR)
119- if ((J > 0))
120- then J
174+func Y (Z,X) = {
175+ let aa = getIntegerValue(W(X), (("stats_" + Z) + "_quantity"))
176+ let ab = pow((10000 / aa), 4, 5, 1, 2, FLOOR)
177+ if ((ab > 0))
178+ then ab
121179 else 2
122180 }
123181
124182
125-func K (L) = if (if ((value(assetInfo(L)).issuer == l()))
183+func ac (ad) = if (if ((value(assetInfo(ad)).issuer == A()))
126184 then true
127- else (value(assetInfo(L)).issuer == k()))
185+ else (value(assetInfo(ad)).issuer == z()))
128186 then {
129- let M = value(assetInfo(L)).name
130- let F = take(takeRight(M, 2), 1)
131- let N = y(invoke(l(), "getGenFromName", [M], nil))
132- if ((N == N))
133- then $Tuple2(N, G(N, F))
187+ let ae = value(assetInfo(ad)).name
188+ let X = take(takeRight(ae, 2), 1)
189+ let af = R(invoke(A(), "getGenFromName", [ae], nil))
190+ if ((af == af))
191+ then $Tuple2(af, Y(af, X))
134192 else throw("Strict value is not equal to itself.")
135193 }
136194 else throw("not valid NFT")
137195
138196
139-func O (P,Q,R,S) = {
140- let T = value(blockInfoByHeight((R - 1)))
141- let U = sha256((Q + value(T.vrf)))
142- (toInt(U, (S * 8)) % P)
197+func ag (ah,ai,aj,ak) = {
198+ let al = value(blockInfoByHeight((aj - 1)))
199+ let am = sha256((ai + value(al.vrf)))
200+ (toInt(am, (ak * 8)) % ah)
143201 }
144202
145203
146-func V (W,X,Y) = {
147- let Z = (v - fraction((v / 2), Y, 100))
148- let aa = O(Z, W, X, 1)
149- let ab = O(Z, W, X, 2)
150- if ((aa == 1))
204+func an (ao,ap,aq) = {
205+ let ar = (O - fraction((O / 2), aq, 100))
206+ let as = ag(ar, ao, ap, 1)
207+ let at = ag(ar, ao, ap, 2)
208+ if ((as == 1))
151209 then "phoenix"
152- else if ((ab == 1))
210+ else if ((at == 1))
153211 then "item_ART-FREEGENE"
154212 else {
155- let ac = O(1000, W, X, 0)
156- if ((150 > ac))
213+ let au = ag(1000, ao, ap, 0)
214+ if ((150 > au))
157215 then "duckling_2"
158- else if ((200 > ac))
216+ else if ((200 > au))
159217 then "duckling_10"
160- else if ((210 > ac))
218+ else if ((210 > au))
161219 then "duckling_20"
162- else if ((250 > ac))
220+ else if ((250 > au))
163221 then "incubator"
164- else if ((375 > ac))
165- then "perch_Y"
166- else if ((500 > ac))
167- then "perch_G"
168- else if ((625 > ac))
169- then "perch_B"
170- else if ((750 > ac))
171- then "perch_R"
172- else if ((875 > ac))
173- then "ar"
174- else "meta"
222+ else if ((280 > au))
223+ then "item_ART-SNAKE"
224+ else if ((410 > au))
225+ then "item_ART-KATANA"
226+ else if ((460 > au))
227+ then "item_ART-ROBODUCK"
228+ else if ((480 > au))
229+ then "item_ART-CROWN"
230+ else if ((610 > au))
231+ then "item_ART-SCEPTER"
232+ else if ((740 > au))
233+ then "item_ART-BUILTBODY"
234+ else if ((750 > au))
235+ then "item_ART-FEED10"
236+ else if ((875 > au))
237+ then "ar"
238+ else "meta"
175239 }
176240 }
177241
178242
179-func ad (L) = {
180- let M = value(assetInfo(L)).name
181- let F = take(takeRight(M, 2), 1)
182- if (if ((F == "G"))
243+func av (ad) = {
244+ let ae = value(assetInfo(ad)).name
245+ let X = take(takeRight(ae, 2), 1)
246+ if (if ((X == "G"))
183247 then true
184- else (F == "J"))
185- then k()
186- else l()
248+ else (X == "J"))
249+ then z()
250+ else A()
187251 }
188252
189253
190-func ae (z) = {
191- let d = z
254+func aw (S) = {
255+ let d = S
192256 if ($isInstanceOf(d, "Int"))
193257 then {
194- let af = d
195- af
258+ let ax = d
259+ ax
196260 }
197261 else if ($isInstanceOf(d, "String"))
198262 then {
199- let ag = d
200- throw(("RAI: wrong type, expected: Int, but got: " + ag))
263+ let ay = d
264+ throw(("RAI: wrong type, expected: Int, but got: " + ay))
201265 }
202266 else throw("RAI: wrong type, expected: Int")
203267 }
204268
205269
206-func ah (c) = {
270+func az (c) = {
207271 let d = getBoolean(this, c)
208272 if ($isInstanceOf(d, "Boolean"))
209273 then {
210- let x = d
211- x
274+ let Q = d
275+ Q
212276 }
213277 else false
214278 }
215279
216280
217-func ai () = ah("TESTENV")
281+func aA () = az("TESTENV")
218282
219283
220-@Callable(aj)
221-func configureOracle (ak) = if ((aj.caller != this))
284+@Callable(aB)
285+func configureOracle (aC) = if ((aB.caller != this))
222286 then throw("RCU: admin only")
223- else [StringEntry("static_oracleAddress", ak)]
287+ else [StringEntry("static_oracleAddress", aC)]
224288
225289
226290
227-@Callable(aj)
228-func initRebirth (al) = {
229- let am = aj.payments[0]
230- let L = value(am.assetId)
231- let an = toBase58String(aj.transactionId)
232- let b = toString(aj.caller)
233- if ((am.amount != 1))
291+@Callable(aB)
292+func initRebirth (aD) = {
293+ let aE = aB.payments[0]
294+ let ad = value(aE.assetId)
295+ let aF = toBase58String(aB.transactionId)
296+ let b = toString(aB.caller)
297+ if ((aE.amount != 1))
234298 then throw("NFT is not attached")
235299 else {
236- let ao = ae(invoke(q(), "useCoupons", [B], nil))
237- if ((ao == ao))
300+ let aG = aw(invoke(F(), "useCoupons", [N], nil))
301+ if ((aG == aG))
238302 then {
239- let ap = (B - ao)
240- let aq = if ((ap != 0))
303+ let aH = (N - aG)
304+ let aI = L(aB.payments[1])
305+ if ((aI == aI))
241306 then {
242- let ar = value(aj.payments[1])
243- if ((ar.assetId != j()))
244- then throw("You need to attach EGG tokens as fee")
245- else if ((ap > ar.amount))
246- then throw(("You need to attach the following amount of EGG tokens as fee: 0." + toString(ap)))
247- else {
248- let as = fraction(ap, 5, 100)
249- let at = invoke(u(), "refPayment", [al], [AttachedPayment(j(), as)])
250- if ((at == at))
251- then {
252- let au = invoke(t(), "burnAttachedPayments", nil, [AttachedPayment(j(), (ap - as))])
253- if ((au == au))
254- then ap
307+ let M = if ((aH != 0))
308+ then {
309+ let aJ = value(aB.payments[2])
310+ if ((aJ.assetId != y()))
311+ then throw("You need to attach EGG tokens as fee")
312+ else if ((aH > aJ.amount))
313+ then throw(("You need to attach the following amount of EGG tokens as fee: 0." + toString(aH)))
314+ else {
315+ let aK = fraction(aH, 5, 100)
316+ let aL = invoke(J(), "refPayment", [aD], [AttachedPayment(y(), aK)])
317+ if ((aL == aL))
318+ then {
319+ let aM = invoke(I(), "burnAttachedPayments", nil, [AttachedPayment(y(), (aH - aK))])
320+ if ((aM == aM))
321+ then aH
322+ else throw("Strict value is not equal to itself.")
323+ }
255324 else throw("Strict value is not equal to itself.")
256325 }
257- else throw("Strict value is not equal to itself.")
258- }
259- }
260- else 0
261- if ((aq == aq))
262- then {
263- let av = K(L)
264- let aw = av._1
265- let ax = av._2
266- let ay = invoke(ad(L), "reduceRarity", [toBase58String(L), aw], nil)
267- if ((ay == ay))
268- then [IntegerEntry((((("address_" + b) + "_initTx_") + an) + "_finishBlock"), (height + h)), StringEntry((((("address_" + b) + "_initTx_") + an) + "_status"), "open"), IntegerEntry((((("address_" + b) + "_initTx_") + an) + "_assetRarity"), ax), StringEntry((((("address_" + b) + "_initTx_") + an) + "_assetId"), toBase58String(L))]
326+ }
327+ else 0
328+ if ((M == M))
329+ then {
330+ let aN = ac(ad)
331+ let aO = aN._1
332+ let aP = aN._2
333+ let aQ = invoke(av(ad), "reduceRarity", [toBase58String(ad), aO], nil)
334+ if ((aQ == aQ))
335+ then ([IntegerEntry((((("address_" + b) + "_initTx_") + aF) + "_finishBlock"), (height + h)), StringEntry((((("address_" + b) + "_initTx_") + aF) + "_status"), "open"), IntegerEntry((((("address_" + b) + "_initTx_") + aF) + "_assetRarity"), aP), StringEntry((((("address_" + b) + "_initTx_") + aF) + "_assetId"), toBase58String(ad))] ++ aI)
336+ else throw("Strict value is not equal to itself.")
337+ }
269338 else throw("Strict value is not equal to itself.")
270339 }
271340 else throw("Strict value is not equal to itself.")
272341 }
273342 else throw("Strict value is not equal to itself.")
274343 }
275344 }
276345
277346
278347
279-@Callable(aj)
280-func finishRebirth (an) = {
281- let b = toString(aj.caller)
282- let az = w((((("address_" + b) + "_initTx_") + an) + "_finishBlock"))
283- let Y = w((((("address_" + b) + "_initTx_") + an) + "_assetRarity"))
284- let aA = g((((("address_" + b) + "_initTx_") + an) + "_status"))
285- func aB (b) = fromBase58String(a(b, "static_accessItemAssetId"))
348+@Callable(aB)
349+func finishRebirth (aF) = {
350+ let b = toString(aB.caller)
351+ let aR = P((((("address_" + b) + "_initTx_") + aF) + "_finishBlock"))
352+ let aq = P((((("address_" + b) + "_initTx_") + aF) + "_assetRarity"))
353+ let aS = g((((("address_" + b) + "_initTx_") + aF) + "_status"))
354+ let aI = L(aB.payments[0])
355+ if ((aI == aI))
356+ then {
357+ func aT (b) = fromBase58String(a(b, "static_accessItemAssetId"))
286358
287- func aC (b) = f(b, "static_accessItemPrice")
359+ func aU (b) = f(b, "static_accessItemPrice")
288360
289- if ((aA != "open"))
290- then throw("rebirth is finished or not open")
291- else if ((az > height))
292- then throw("you cannot finish rebirth, yet")
293- else {
294- let aD = V(fromBase58String(an), az, Y)
295- let Q = an
296- let aE = if ((indexOf(aD, "perch") != unit))
297- then {
298- let aF = takeRight(aD, 1)
299- let ay = invoke(m(), "addFreePerch", [b, aF], nil)
300- if ((ay == ay))
301- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
302- else throw("Strict value is not equal to itself.")
303- }
304- else if ((aD == "incubator"))
305- then {
306- let ay = invoke(k(), "issueFreeDuck", [b, Q], nil)
307- if ((ay == ay))
308- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
309- else throw("Strict value is not equal to itself.")
310- }
311- else if ((aD == "ar"))
361+ if ((aS != "open"))
362+ then throw("rebirth is finished or not open")
363+ else if ((aR > height))
364+ then throw("you cannot finish rebirth, yet")
365+ else {
366+ let aV = an(fromBase58String(aF), aR, aq)
367+ let ai = aF
368+ let aW = if ((indexOf(aV, "perch") != unit))
312369 then {
313- let L = aB(s())
314- let aG = aC(s())
315- let ay = invoke(s(), "buyAccessItemOther", [b], [AttachedPayment(L, aG)])
316- if ((ay == ay))
317- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
370+ let aX = takeRight(aV, 1)
371+ let aQ = invoke(B(), "addFreePerch", [b, aX], nil)
372+ if ((aQ == aQ))
373+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
318374 else throw("Strict value is not equal to itself.")
319375 }
320- else if ((aD == "meta"))
376+ else if ((aV == "incubator"))
321377 then {
322- let L = aB(r())
323- let aG = aC(r())
324- let ay = invoke(r(), "buyAccessItemOther", [b], [AttachedPayment(L, aG)])
325- if ((ay == ay))
326- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
378+ let aQ = invoke(z(), "issueFreeDuck", [b, ai], nil)
379+ if ((aQ == aQ))
380+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
327381 else throw("Strict value is not equal to itself.")
328382 }
329- else if ((aD == "phoenix"))
383+ else if ((aV == "ar"))
330384 then {
331- let ay = invoke(k(), "issueJackpot", [b, Q, "WWWWWWWP"], nil)
332- if ((ay == ay))
333- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
385+ let ad = aT(H())
386+ let aY = aU(H())
387+ let aQ = invoke(H(), "buyAccessItemOther", [b], [AttachedPayment(ad, aY)])
388+ if ((aQ == aQ))
389+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
334390 else throw("Strict value is not equal to itself.")
335391 }
336- else if ((indexOf(aD, "duckling") != unit))
392+ else if ((aV == "meta"))
337393 then {
338- let aH = parseIntValue(split(aD, "_")[1])
339- let ay = invoke(n(), "issueFreeDuckling", [b, Q, aH], nil)
340- if ((ay == ay))
341- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
394+ let ad = aT(G())
395+ let aY = aU(G())
396+ let aQ = invoke(G(), "buyAccessItemOther", [b], [AttachedPayment(ad, aY)])
397+ if ((aQ == aQ))
398+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
342399 else throw("Strict value is not equal to itself.")
343400 }
344- else if ((indexOf(aD, "item") != unit))
401+ else if ((aV == "phoenix"))
345402 then {
346- let aI = split(aD, "_")[1]
347- let ay = invoke(p(), "issueArtefact", [aI, b], nil)
348- if ((ay == ay))
349- then [StringEntry((((("address_" + b) + "_initTx_") + an) + "_result"), y(ay))]
403+ let aQ = invoke(z(), "issueJackpot", [b, ai, "WWWWWWWP"], nil)
404+ if ((aQ == aQ))
405+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
350406 else throw("Strict value is not equal to itself.")
351407 }
352- else throw("RFB: Some error occured, please contact the admins!")
353- (aE ++ [StringEntry((((("address_" + b) + "_initTx_") + an) + "_win"), aD), StringEntry((((("address_" + b) + "_initTx_") + an) + "_status"), "finish")])
354- }
408+ else if ((indexOf(aV, "duckling") != unit))
409+ then {
410+ let aZ = parseIntValue(split(aV, "_")[1])
411+ let aQ = invoke(C(), "issueFreeDuckling", [b, ai, aZ], nil)
412+ if ((aQ == aQ))
413+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
414+ else throw("Strict value is not equal to itself.")
415+ }
416+ else if ((indexOf(aV, "item") != unit))
417+ then {
418+ let ba = split(aV, "_")[1]
419+ let aQ = invoke(E(), "issueArtefact", [ba, b], nil)
420+ if ((aQ == aQ))
421+ then [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_result"), R(aQ))]
422+ else throw("Strict value is not equal to itself.")
423+ }
424+ else throw("RFB: Some error occured, please contact the admins!")
425+ ((aW ++ [StringEntry((((("address_" + b) + "_initTx_") + aF) + "_win"), aV), StringEntry((((("address_" + b) + "_initTx_") + aF) + "_status"), "finish")]) ++ aI)
426+ }
427+ }
428+ else throw("Strict value is not equal to itself.")
355429 }
356430
357431
358-@Verifier(W)
359-func aJ () = if (ai())
360- then sigVerify(W.bodyBytes, W.proofs[0], W.senderPublicKey)
432+@Verifier(ao)
433+func bb () = if (aA())
434+ then sigVerify(ao.bodyBytes, ao.proofs[0], ao.senderPublicKey)
361435 else {
362- let aK = base58'FzsTVRXqD46KW5yj6qGNVrsouvWjpCQvD1446A96iGt4'
363- let aL = base58'E23yUg8eun5nXB1nZRDf7RTyRADKxQhGNXdpTYonEvtU'
364- let aM = base58'Ga8WEBTPXbHuoXRD355mQ6ms8PsM2RFYKeA1mEP32CFe'
365- let aN = if (sigVerify(W.bodyBytes, W.proofs[0], aK))
436+ let bc = base58'FzsTVRXqD46KW5yj6qGNVrsouvWjpCQvD1446A96iGt4'
437+ let bd = base58'E23yUg8eun5nXB1nZRDf7RTyRADKxQhGNXdpTYonEvtU'
438+ let be = base58'Ga8WEBTPXbHuoXRD355mQ6ms8PsM2RFYKeA1mEP32CFe'
439+ let bf = if (sigVerify(ao.bodyBytes, ao.proofs[0], bc))
366440 then 1
367- else if (sigVerify(W.bodyBytes, W.proofs[1], aK))
441+ else if (sigVerify(ao.bodyBytes, ao.proofs[1], bc))
368442 then 1
369- else if (sigVerify(W.bodyBytes, W.proofs[2], aK))
443+ else if (sigVerify(ao.bodyBytes, ao.proofs[2], bc))
370444 then 1
371445 else 0
372- let aO = if (sigVerify(W.bodyBytes, W.proofs[0], aL))
446+ let bg = if (sigVerify(ao.bodyBytes, ao.proofs[0], bd))
373447 then 1
374- else if (sigVerify(W.bodyBytes, W.proofs[1], aL))
448+ else if (sigVerify(ao.bodyBytes, ao.proofs[1], bd))
375449 then 1
376- else if (sigVerify(W.bodyBytes, W.proofs[2], aL))
450+ else if (sigVerify(ao.bodyBytes, ao.proofs[2], bd))
377451 then 1
378452 else 0
379- let aP = if (sigVerify(W.bodyBytes, W.proofs[0], aM))
453+ let bh = if (sigVerify(ao.bodyBytes, ao.proofs[0], be))
380454 then 1
381- else if (sigVerify(W.bodyBytes, W.proofs[1], aM))
455+ else if (sigVerify(ao.bodyBytes, ao.proofs[1], be))
382456 then 1
383- else if (sigVerify(W.bodyBytes, W.proofs[2], aM))
457+ else if (sigVerify(ao.bodyBytes, ao.proofs[2], be))
384458 then 1
385459 else 0
386- let aQ = ((aN + aO) + aP)
387- let d = W
388- (aQ >= 2)
460+ let bi = ((bf + bg) + bh)
461+ let d = ao
462+ (bi >= 2)
389463 }
390464

github/deemru/w8io/3ef1775 
119.79 ms