tx · Ezk8od29vvwUy6MyF34qAzRtSsSLFM6CRVtRcaAYtBzL

3MyLnBsVm9pw43K9eba5UExxb3efeai91KP:  -0.01500000 Waves

2022.12.26 13:40 [2377134] smart account 3MyLnBsVm9pw43K9eba5UExxb3efeai91KP > SELF 0.00000000 Waves

{ "type": 13, "id": "Ezk8od29vvwUy6MyF34qAzRtSsSLFM6CRVtRcaAYtBzL", "fee": 1500000, "feeAssetId": null, "timestamp": 1672051153656, "version": 2, "chainId": 84, "sender": "3MyLnBsVm9pw43K9eba5UExxb3efeai91KP", "senderPublicKey": "E5xdZLn3yHKAn29pTyubhr9R1mkRGg9WKAcpPrCYFYHx", "proofs": [ "eSndkpQgcQaGCMVV2HXaiMtNn29T6DhnDfaTgH6VEtVm4m9qFeR9tAczSH7zfNmPrLnQQsVAANmfmuRjjJchL2M" ], "script": "base64:AAIFAAAAAAAAACYIAhIDCgEEEgkKBwgICAEBCAESAwoBARIDCgEBEgMKAQESAwoBAQAAABgAAAAACGRBcHBOYW1lAgAAABtDUk9XREZVTkRJTkdfT05fV0FWRVNfU0hBUkUAAAAABmFkbVB1YgEAAAAgwm0nmAhWSDqW+K/S1mvC+NNow4ujn8UBfOoCFti2ZnMAAAAABGJhbmsJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVSmfND+3V/r5U39jSnmcibSNaQF0ZS9OSgAAAAADHBheW1lbnRBc3NldAEAAAAgITlE6Sl8X8+K+DOSOPUkvq8L9vq51QOPRS3GqFK/+rkAAAAACGNsYWltS2V5AgAAAAdfY2xhaW1fAAAAAAZuZnRLZXkCAAAABV9uZnRfAAAAAAtzaHV0RG93bktleQIAAAAKX3NodXREb3duXwAAAAAIZXZlbnRLZXkCAAAAB19ldmVudF8AAAAACnBheW1lbnRLZXkCAAAACV9wYXltZW50XwAAAAAQZ2xvYmFsRXZlbnRJZEtleQIAAAAJX2V2ZW50SWRfAAAAAA1zdGFydEJsb2NrS2V5AgAAAAxfc3RhcnRCbG9ja18AAAAAC2VuZEJsb2NrS2V5AgAAAApfZW5kQmxvY2tfAAAAAAhpbWFnZUtleQIAAAAHX2ltYWdlXwAAAAAIb3duZXJLZXkCAAAAB19vd25lcl8AAAAABnVybEtleQIAAAAFX3VybF8AAAAACmhhcmRDYXBLZXkCAAAACV9oYXJkQ2FwXwAAAAAIdGl0bGVLZXkCAAAAB190aXRsZV8AAAAAE3NoYXJlSG9sZGVyQ291bnRLZXkCAAAAEl9zaGFyZUhvbGRlckNvdW50XwAAAAAPdG90YWxQYXltZW50S2V5AgAAAA5fdG90YWxQYXltZW50XwAAAAAQd2FsbGV0UGF5bWVudEtleQIAAAAPX3dhbGxldFBheW1lbnRfAAAAAAlyZWZ1bmRLZXkCAAAACF9yZWZ1bmRfAAAAAA1jb21taXNzaW9uRmVlAAAAAAAdzWUAAAAAAAZzY2FsZTgAAAAAAAX14QABAAAAC2lzUGF5bWVudE9rAAAAAgAAAAFpAAAADXdhbGxldEJhbGFuY2UEAAAAEWFjY2VwdGFibGVBc3NldElkBQAAAAxwYXltZW50QXNzZXQDCQAA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", "height": 2377134, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: ACvwq2zZBDkW9hRrCoiq7rvtbeA8kwzSrQYniuDzXBS Next: F3Uf3SEFWmZqvx5BornDiAW3GK3kaAXYd9TyvKNCfB8j Diff:
OldNewDifferences
102102 else {
103103 let B = y.payments[0]
104104 let S = B.amount
105+ let T = B.assetId
105106 let z = assetBalance(y.caller, d)
106107 if (!(x(y, z)))
107108 then {
108- let T = valueOrElse(getBoolean(this, g), true)
109- if (!(T))
109+ let U = valueOrElse(getBoolean(this, g), true)
110+ if (!(U))
110111 then throw("emergency shutdown")
111112 else {
112- let U = fraction(S, w, v)
113- let V = (S - U)
114-[IntegerEntry(((i + r) + toString(M)), (R + 1)), IntegerEntry(((i + s) + toString(M)), (P + V)), IntegerEntry(((((i + t) + O) + "_") + toString(M)), (Q + V)), ScriptTransfer(c, U, d)]
113+ let V = fraction(S, w, v)
114+ let W = (S - V)
115+[IntegerEntry(((i + r) + toString(M)), (R + 1)), IntegerEntry(((i + s) + toString(M)), (P + W)), IntegerEntry(((((i + t) + O) + "_") + toString(M)), (Q + W)), ScriptTransfer(c, V, d)]
115116 }
116117 }
117118 else throw("attach payment correctly")
128129 let J = valueOrErrorMessage(getInteger(this, ((h + l) + toString(M))), "can not find event 2")
129130 let L = valueOrErrorMessage(getInteger(this, ((h + p) + toString(M))), "can not find event 3")
130131 let P = valueOrElse(getInteger(this, ((i + s) + toString(M))), 0)
131- let T = valueOrElse(getBoolean(this, g), true)
132+ let U = valueOrElse(getBoolean(this, g), true)
132133 if ((toBytes(H) == y.caller.bytes))
133134 then throw("you are not able to claim")
134135 else if (if (if ((height > J))
135136 then (P >= L)
136137 else false)
137- then T
138+ then U
138139 else false)
139140 then [ScriptTransfer(y.caller, P, d), IntegerEntry((((e + O) + "_") + toString(M)), P)]
140141 else throw("not allowed")
150151 let L = valueOrErrorMessage(getInteger(this, ((h + p) + toString(M))), "can not find event 3")
151152 let P = valueOrElse(getInteger(this, ((i + s) + toString(M))), 0)
152153 let Q = valueOrElse(getInteger(this, (((i + t) + O) + toString(M))), 0)
153- let U = fraction(Q, w, P)
154- let W = ((toString(U) + "_") + toString(M))
155- let X = Issue(((a + "_") + toString(M)), W, 1, 0, false)
156- let Y = calculateAssetId(X)
157- let T = valueOrElse(getBoolean(this, g), true)
154+ let V = fraction(Q, w, P)
155+ let X = ((toString(V) + "_") + toString(M))
156+ let Y = Issue(((a + "_") + toString(M)), X, 1, 0, false)
157+ let Z = calculateAssetId(Y)
158+ let U = valueOrElse(getBoolean(this, g), true)
158159 if (if (if (if ((height > J))
159160 then (L >= P)
160161 else false)
161162 then (Q > 0)
162163 else false)
163- then T
164+ then U
164165 else false)
165- then [X, StringEntry((f + toString(M)), toBase58String(Y)), BooleanEntry(toBase58String(Y), true), ScriptTransfer(y.caller, 1, Y)]
166+ then [Y, StringEntry((f + toString(M)), toBase58String(Z)), BooleanEntry(toBase58String(Z), true), ScriptTransfer(y.caller, 1, Z)]
166167 else throw("you are not able to claim NFT")
167168 }
168169
176177 let L = valueOrErrorMessage(getInteger(this, ((h + p) + toString(M))), "can not find event 3")
177178 let P = valueOrElse(getInteger(this, ((i + s) + toString(M))), 0)
178179 let Q = valueOrElse(getInteger(this, (((i + t) + O) + toString(M))), 0)
179- let T = valueOrElse(getBoolean(this, g), true)
180+ let U = valueOrElse(getBoolean(this, g), true)
180181 if (if (if (if ((J > height))
181182 then (P > L)
182183 else false)
183184 then (Q > 0)
184185 else false)
185- then T
186+ then U
186187 else false)
187188 then [IntegerEntry((((u + O) + "_") + toString(M)), Q), ScriptTransfer(y.caller, Q, d)]
188189 else throw("can not refund. campaign success")
189190 }
190191
191192
192-@Verifier(Z)
193-func aa () = sigVerify(Z.bodyBytes, Z.proofs[0], Z.senderPublicKey)
193+@Verifier(aa)
194+func ab () = sigVerify(aa.bodyBytes, aa.proofs[0], aa.senderPublicKey)
194195
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "CROWDFUNDING_ON_WAVES_SHARE"
55
66 let b = base58'E5xdZLn3yHKAn29pTyubhr9R1mkRGg9WKAcpPrCYFYHx'
77
88 let c = Address(base58'3N56PUABa6tqTXc4cv6QvntyMPb1KHnzC79')
99
1010 let d = base58'3Eh6z6z6ouFpWxGKrPaPnZwmDnDjgYHV6tqCmZf2G7tk'
1111
1212 let e = "_claim_"
1313
1414 let f = "_nft_"
1515
1616 let g = "_shutDown_"
1717
1818 let h = "_event_"
1919
2020 let i = "_payment_"
2121
2222 let j = "_eventId_"
2323
2424 let k = "_startBlock_"
2525
2626 let l = "_endBlock_"
2727
2828 let m = "_image_"
2929
3030 let n = "_owner_"
3131
3232 let o = "_url_"
3333
3434 let p = "_hardCap_"
3535
3636 let q = "_title_"
3737
3838 let r = "_shareHolderCount_"
3939
4040 let s = "_totalPayment_"
4141
4242 let t = "_walletPayment_"
4343
4444 let u = "_refund_"
4545
4646 let v = 500000000
4747
4848 let w = 100000000
4949
5050 func x (y,z) = {
5151 let A = d
5252 if ((size(y.payments) == 0))
5353 then throw("Payment not attached")
5454 else {
5555 let B = y.payments[0]
5656 let C = B.assetId
5757 if ($isInstanceOf(C, "ByteVector"))
5858 then {
5959 let D = C
6060 if ((D == A))
6161 then (B.amount > z)
6262 else false
6363 }
6464 else throw("Wrong payment asset")
6565 }
6666 }
6767
6868
6969 @Callable(y)
7070 func shutdown (E) = if ((y.callerPublicKey == b))
7171 then [BooleanEntry(g, E)]
7272 else throw("you are not allow to do this!")
7373
7474
7575
7676 @Callable(y)
7777 func create (F,G,H,I,J,K,L) = {
7878 let M = valueOrElse(getInteger(this, (h + j)), 0)
7979 let N = (M + 1)
8080 if ((y.callerPublicKey == b))
8181 then [StringEntry(((h + m) + toString(N)), G), StringEntry(((h + n) + toString(N)), H), StringEntry(((h + q) + toString(N)), F), IntegerEntry(((h + k) + toString(N)), I), IntegerEntry(((h + l) + toString(N)), J), StringEntry(((h + o) + toString(N)), K), IntegerEntry(((h + p) + toString(N)), L), IntegerEntry((h + j), N)]
8282 else throw("you are not allowed")
8383 }
8484
8585
8686
8787 @Callable(y)
8888 func funding (M) = {
8989 let I = valueOrErrorMessage(getInteger(this, ((h + k) + toString(M))), "can not find event 1")
9090 let J = valueOrErrorMessage(getInteger(this, ((h + l) + toString(M))), "can not find event 2")
9191 let L = valueOrErrorMessage(getInteger(this, ((h + p) + toString(M))), "can not find event 3")
9292 let O = toBase58String(y.caller.bytes)
9393 let P = valueOrElse(getInteger(this, ((i + s) + toString(M))), 0)
9494 let Q = valueOrElse(getInteger(this, (((i + t) + O) + toString(M))), 0)
9595 let R = valueOrElse(getInteger(this, ((i + r) + toString(M))), 0)
9696 if ((I > height))
9797 then throw("crowdfunding not started")
9898 else if ((height >= J))
9999 then throw("crowdfunding is over")
100100 else if ((P >= L))
101101 then throw("crowdfunding is reached to hard cap. thank you for participating!")
102102 else {
103103 let B = y.payments[0]
104104 let S = B.amount
105+ let T = B.assetId
105106 let z = assetBalance(y.caller, d)
106107 if (!(x(y, z)))
107108 then {
108- let T = valueOrElse(getBoolean(this, g), true)
109- if (!(T))
109+ let U = valueOrElse(getBoolean(this, g), true)
110+ if (!(U))
110111 then throw("emergency shutdown")
111112 else {
112- let U = fraction(S, w, v)
113- let V = (S - U)
114-[IntegerEntry(((i + r) + toString(M)), (R + 1)), IntegerEntry(((i + s) + toString(M)), (P + V)), IntegerEntry(((((i + t) + O) + "_") + toString(M)), (Q + V)), ScriptTransfer(c, U, d)]
113+ let V = fraction(S, w, v)
114+ let W = (S - V)
115+[IntegerEntry(((i + r) + toString(M)), (R + 1)), IntegerEntry(((i + s) + toString(M)), (P + W)), IntegerEntry(((((i + t) + O) + "_") + toString(M)), (Q + W)), ScriptTransfer(c, V, d)]
115116 }
116117 }
117118 else throw("attach payment correctly")
118119 }
119120 }
120121
121122
122123
123124 @Callable(y)
124125 func claim (M) = {
125126 let H = valueOrErrorMessage(getString(this, ((h + n) + toString(M))), "can not find the owner")
126127 let O = toBase58String(y.caller.bytes)
127128 let I = valueOrErrorMessage(getInteger(this, ((h + k) + toString(M))), "can not find event 1")
128129 let J = valueOrErrorMessage(getInteger(this, ((h + l) + toString(M))), "can not find event 2")
129130 let L = valueOrErrorMessage(getInteger(this, ((h + p) + toString(M))), "can not find event 3")
130131 let P = valueOrElse(getInteger(this, ((i + s) + toString(M))), 0)
131- let T = valueOrElse(getBoolean(this, g), true)
132+ let U = valueOrElse(getBoolean(this, g), true)
132133 if ((toBytes(H) == y.caller.bytes))
133134 then throw("you are not able to claim")
134135 else if (if (if ((height > J))
135136 then (P >= L)
136137 else false)
137- then T
138+ then U
138139 else false)
139140 then [ScriptTransfer(y.caller, P, d), IntegerEntry((((e + O) + "_") + toString(M)), P)]
140141 else throw("not allowed")
141142 }
142143
143144
144145
145146 @Callable(y)
146147 func claimShare (M) = {
147148 let O = toBase58String(y.caller.bytes)
148149 let I = valueOrErrorMessage(getInteger(this, ((h + k) + toString(M))), "can not find event 1")
149150 let J = valueOrErrorMessage(getInteger(this, ((h + l) + toString(M))), "can not find event 2")
150151 let L = valueOrErrorMessage(getInteger(this, ((h + p) + toString(M))), "can not find event 3")
151152 let P = valueOrElse(getInteger(this, ((i + s) + toString(M))), 0)
152153 let Q = valueOrElse(getInteger(this, (((i + t) + O) + toString(M))), 0)
153- let U = fraction(Q, w, P)
154- let W = ((toString(U) + "_") + toString(M))
155- let X = Issue(((a + "_") + toString(M)), W, 1, 0, false)
156- let Y = calculateAssetId(X)
157- let T = valueOrElse(getBoolean(this, g), true)
154+ let V = fraction(Q, w, P)
155+ let X = ((toString(V) + "_") + toString(M))
156+ let Y = Issue(((a + "_") + toString(M)), X, 1, 0, false)
157+ let Z = calculateAssetId(Y)
158+ let U = valueOrElse(getBoolean(this, g), true)
158159 if (if (if (if ((height > J))
159160 then (L >= P)
160161 else false)
161162 then (Q > 0)
162163 else false)
163- then T
164+ then U
164165 else false)
165- then [X, StringEntry((f + toString(M)), toBase58String(Y)), BooleanEntry(toBase58String(Y), true), ScriptTransfer(y.caller, 1, Y)]
166+ then [Y, StringEntry((f + toString(M)), toBase58String(Z)), BooleanEntry(toBase58String(Z), true), ScriptTransfer(y.caller, 1, Z)]
166167 else throw("you are not able to claim NFT")
167168 }
168169
169170
170171
171172 @Callable(y)
172173 func refund (M) = {
173174 let O = toBase58String(y.caller.bytes)
174175 let I = valueOrErrorMessage(getInteger(this, ((h + k) + toString(M))), "can not find event 1")
175176 let J = valueOrErrorMessage(getInteger(this, ((h + l) + toString(M))), "can not find event 2")
176177 let L = valueOrErrorMessage(getInteger(this, ((h + p) + toString(M))), "can not find event 3")
177178 let P = valueOrElse(getInteger(this, ((i + s) + toString(M))), 0)
178179 let Q = valueOrElse(getInteger(this, (((i + t) + O) + toString(M))), 0)
179- let T = valueOrElse(getBoolean(this, g), true)
180+ let U = valueOrElse(getBoolean(this, g), true)
180181 if (if (if (if ((J > height))
181182 then (P > L)
182183 else false)
183184 then (Q > 0)
184185 else false)
185- then T
186+ then U
186187 else false)
187188 then [IntegerEntry((((u + O) + "_") + toString(M)), Q), ScriptTransfer(y.caller, Q, d)]
188189 else throw("can not refund. campaign success")
189190 }
190191
191192
192-@Verifier(Z)
193-func aa () = sigVerify(Z.bodyBytes, Z.proofs[0], Z.senderPublicKey)
193+@Verifier(aa)
194+func ab () = sigVerify(aa.bodyBytes, aa.proofs[0], aa.senderPublicKey)
194195

github/deemru/w8io/169f3d6 
460.01 ms