tx · 4cKoVWcMsDZDPCmD7MwkfxAhihTAMXLdNCoow1p7JCvP

3MyLnBsVm9pw43K9eba5UExxb3efeai91KP:  -0.01000000 Waves

2022.12.22 16:26 [2371559] smart account 3MyLnBsVm9pw43K9eba5UExxb3efeai91KP > SELF 0.00000000 Waves

{ "type": 13, "id": "4cKoVWcMsDZDPCmD7MwkfxAhihTAMXLdNCoow1p7JCvP", "fee": 1000000, "feeAssetId": null, "timestamp": 1671715597056, "version": 2, "chainId": 84, "sender": "3MyLnBsVm9pw43K9eba5UExxb3efeai91KP", "senderPublicKey": "E5xdZLn3yHKAn29pTyubhr9R1mkRGg9WKAcpPrCYFYHx", "proofs": [ "5y6kT1ZU2p15yANVM8wCuJV7fdNMiHBApebKjBKih7qJvxmFEzj4RRXdGeKu3Po2vZ9L5g6RP4F4sGxchySDVamj" ], "script": "base64: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", "height": 2371559, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HkYqV7giqQR33vrsPFC7f8DJGCSZAF6K8e2JAcGgYSt6 Next: 7srB7U6HqSQxfWUntRRfSByRCBj2YzuH5o989GiTq4ib Diff:
OldNewDifferences
55
66 let b = base58'3Eh6z6z6ouFpWxGKrPaPnZwmDnDjgYHV6tqCmZf2G7tk'
77
8-let c = "_shutDown_"
8+let c = "_nft_"
99
10-let d = "_event_"
10+let d = "_shutDown_"
1111
12-let e = "_payment_"
12+let e = "_event_"
1313
14-let f = "_eventId_"
14+let f = "_payment_"
1515
16-let g = "_startBlock_"
16+let g = "_eventId_"
1717
18-let h = "_endBlock_"
18+let h = "_startBlock_"
1919
20-let i = "_image_"
20+let i = "_endBlock_"
2121
22-let j = "_owner_"
22+let j = "_image_"
2323
24-let k = "_url_"
24+let k = "_owner_"
2525
26-let l = "_hardCap_"
26+let l = "_url_"
2727
28-let m = "_title_"
28+let m = "_hardCap_"
2929
30-let n = "_shareHolderCount_"
30+let n = "_title_"
3131
32-let o = "_totalPayment_"
32+let o = "_shareHolderCount_"
3333
34-let p = "_walletPayment_"
34+let p = "_totalPayment_"
3535
36-func q (r) = {
37- let s = b
38- if ((size(r.payments) == 0))
36+let q = "_walletPayment_"
37+
38+func r (s) = {
39+ let t = b
40+ if ((size(s.payments) == 0))
3941 then throw("Payment not attached")
4042 else {
41- let t = r.payments[0]
42- let u = t.assetId
43- if ($isInstanceOf(u, "ByteVector"))
43+ let u = s.payments[0]
44+ let v = u.assetId
45+ if ($isInstanceOf(v, "ByteVector"))
4446 then {
45- let v = u
46- if ((v == s))
47- then (t.amount > 0)
47+ let w = v
48+ if ((w == t))
49+ then (u.amount > 0)
4850 else false
4951 }
5052 else throw("Wrong payment asset")
5254 }
5355
5456
55-@Callable(r)
56-func shutdown (w) = if ((r.callerPublicKey == a))
57- then [BooleanEntry(c, w)]
57+@Callable(s)
58+func shutdown (x) = if ((s.callerPublicKey == a))
59+ then [BooleanEntry(d, x)]
5860 else throw("you are not allow to do this!")
5961
6062
6163
62-@Callable(r)
64+@Callable(s)
6365 func settings () = throw("settings")
6466
6567
6668
67-@Callable(r)
68-func create (x,y,z,A,B,C,D) = {
69- let E = valueOrElse(getInteger(this, (d + f)), 0)
70- let F = (E + 1)
71- if ((r.callerPublicKey == a))
72- then [StringEntry(((d + i) + toString(F)), y), StringEntry(((d + j) + toString(F)), z), StringEntry(((d + m) + toString(F)), x), IntegerEntry(((d + g) + toString(F)), A), IntegerEntry(((d + h) + toString(F)), B), StringEntry(((d + k) + toString(F)), C), IntegerEntry(((d + l) + toString(F)), D), IntegerEntry((d + f), F)]
69+@Callable(s)
70+func create (y,z,A,B,C,D,E) = {
71+ let F = valueOrElse(getInteger(this, (e + g)), 0)
72+ let G = (F + 1)
73+ if ((s.callerPublicKey == a))
74+ then [StringEntry(((e + j) + toString(G)), z), StringEntry(((e + k) + toString(G)), A), StringEntry(((e + n) + toString(G)), y), IntegerEntry(((e + h) + toString(G)), B), IntegerEntry(((e + i) + toString(G)), C), StringEntry(((e + l) + toString(G)), D), IntegerEntry(((e + m) + toString(G)), E), IntegerEntry((e + g), G)]
7375 else throw("you are not allowed")
7476 }
7577
7678
7779
78-@Callable(r)
79-func funding (E) = {
80- let A = valueOrErrorMessage(getInteger(this, ((d + g) + toString(E))), "can not find event 1")
81- let B = valueOrErrorMessage(getInteger(this, ((d + h) + toString(E))), "can not find event 2")
82- let D = valueOrErrorMessage(getInteger(this, ((d + l) + toString(E))), "can not find event 3")
83- let G = toBase58String(r.caller.bytes)
84- let H = valueOrElse(getInteger(this, ((e + o) + toString(E))), 0)
85- let I = valueOrElse(getInteger(this, (((e + p) + G) + toString(E))), 0)
86- let J = valueOrElse(getInteger(this, ((e + n) + toString(E))), 0)
87- if ((A > height))
80+@Callable(s)
81+func funding (F) = {
82+ let B = valueOrErrorMessage(getInteger(this, ((e + h) + toString(F))), "can not find event 1")
83+ let C = valueOrErrorMessage(getInteger(this, ((e + i) + toString(F))), "can not find event 2")
84+ let E = valueOrErrorMessage(getInteger(this, ((e + m) + toString(F))), "can not find event 3")
85+ let H = toBase58String(s.caller.bytes)
86+ let I = valueOrElse(getInteger(this, ((f + p) + toString(F))), 0)
87+ let J = valueOrElse(getInteger(this, (((f + q) + H) + toString(F))), 0)
88+ let K = valueOrElse(getInteger(this, ((f + o) + toString(F))), 0)
89+ if ((height > B))
8890 then throw("crowdfunding not started")
89- else if ((height >= B))
91+ else if ((C >= height))
9092 then throw("crowdfunding is over")
91- else if ((H >= D))
93+ else if ((I >= E))
9294 then throw("crowdfunding is reached to hard cap. thank you for participating!")
93- else if (!(q(r)))
95+ else if (!(r(s)))
9496 then throw("you have to attach payment greater than zero")
9597 else {
96- let K = valueOrElse(getBoolean(this, c), true)
97- if (!(K))
98+ let L = valueOrElse(getBoolean(this, d), true)
99+ if (!(L))
98100 then throw("emergency shutdown")
99101 else {
100- let t = r.payments[0]
101- let L = t.amount
102-[IntegerEntry(((e + n) + toString(E)), (J + 1)), IntegerEntry(((e + o) + toString(E)), (H + L)), IntegerEntry(((((e + p) + G) + "_") + toString(E)), (I + L))]
102+ let u = s.payments[0]
103+ let M = u.amount
104+[IntegerEntry(((f + o) + toString(F)), (K + 1)), IntegerEntry(((f + p) + toString(F)), (I + M)), IntegerEntry(((((f + q) + H) + "_") + toString(F)), (J + M))]
103105 }
104106 }
105107 }
106108
107109
108110
109-@Callable(r)
111+@Callable(s)
110112 func claim () = throw("event owner will claim the money")
111113
112114
113115
114-@Callable(r)
116+@Callable(s)
117+func claimShare () = throw("event owner will claim the money")
118+
119+
120+
121+@Callable(s)
115122 func refund () = throw("if not success payers gonna refund")
116123
117124
118125
119-@Callable(r)
120-func delete (M) = if ((r.callerPublicKey == a))
121- then [DeleteEntry(M)]
126+@Callable(s)
127+func delete (N) = if ((s.callerPublicKey == a))
128+ then [DeleteEntry(N)]
122129 else throw("you are not allowed to do this!")
123130
124131
125-@Verifier(N)
126-func O () = sigVerify(N.bodyBytes, N.proofs[0], N.senderPublicKey)
132+@Verifier(O)
133+func P () = sigVerify(O.bodyBytes, O.proofs[0], O.senderPublicKey)
127134
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = base58'E5xdZLn3yHKAn29pTyubhr9R1mkRGg9WKAcpPrCYFYHx'
55
66 let b = base58'3Eh6z6z6ouFpWxGKrPaPnZwmDnDjgYHV6tqCmZf2G7tk'
77
8-let c = "_shutDown_"
8+let c = "_nft_"
99
10-let d = "_event_"
10+let d = "_shutDown_"
1111
12-let e = "_payment_"
12+let e = "_event_"
1313
14-let f = "_eventId_"
14+let f = "_payment_"
1515
16-let g = "_startBlock_"
16+let g = "_eventId_"
1717
18-let h = "_endBlock_"
18+let h = "_startBlock_"
1919
20-let i = "_image_"
20+let i = "_endBlock_"
2121
22-let j = "_owner_"
22+let j = "_image_"
2323
24-let k = "_url_"
24+let k = "_owner_"
2525
26-let l = "_hardCap_"
26+let l = "_url_"
2727
28-let m = "_title_"
28+let m = "_hardCap_"
2929
30-let n = "_shareHolderCount_"
30+let n = "_title_"
3131
32-let o = "_totalPayment_"
32+let o = "_shareHolderCount_"
3333
34-let p = "_walletPayment_"
34+let p = "_totalPayment_"
3535
36-func q (r) = {
37- let s = b
38- if ((size(r.payments) == 0))
36+let q = "_walletPayment_"
37+
38+func r (s) = {
39+ let t = b
40+ if ((size(s.payments) == 0))
3941 then throw("Payment not attached")
4042 else {
41- let t = r.payments[0]
42- let u = t.assetId
43- if ($isInstanceOf(u, "ByteVector"))
43+ let u = s.payments[0]
44+ let v = u.assetId
45+ if ($isInstanceOf(v, "ByteVector"))
4446 then {
45- let v = u
46- if ((v == s))
47- then (t.amount > 0)
47+ let w = v
48+ if ((w == t))
49+ then (u.amount > 0)
4850 else false
4951 }
5052 else throw("Wrong payment asset")
5153 }
5254 }
5355
5456
55-@Callable(r)
56-func shutdown (w) = if ((r.callerPublicKey == a))
57- then [BooleanEntry(c, w)]
57+@Callable(s)
58+func shutdown (x) = if ((s.callerPublicKey == a))
59+ then [BooleanEntry(d, x)]
5860 else throw("you are not allow to do this!")
5961
6062
6163
62-@Callable(r)
64+@Callable(s)
6365 func settings () = throw("settings")
6466
6567
6668
67-@Callable(r)
68-func create (x,y,z,A,B,C,D) = {
69- let E = valueOrElse(getInteger(this, (d + f)), 0)
70- let F = (E + 1)
71- if ((r.callerPublicKey == a))
72- then [StringEntry(((d + i) + toString(F)), y), StringEntry(((d + j) + toString(F)), z), StringEntry(((d + m) + toString(F)), x), IntegerEntry(((d + g) + toString(F)), A), IntegerEntry(((d + h) + toString(F)), B), StringEntry(((d + k) + toString(F)), C), IntegerEntry(((d + l) + toString(F)), D), IntegerEntry((d + f), F)]
69+@Callable(s)
70+func create (y,z,A,B,C,D,E) = {
71+ let F = valueOrElse(getInteger(this, (e + g)), 0)
72+ let G = (F + 1)
73+ if ((s.callerPublicKey == a))
74+ then [StringEntry(((e + j) + toString(G)), z), StringEntry(((e + k) + toString(G)), A), StringEntry(((e + n) + toString(G)), y), IntegerEntry(((e + h) + toString(G)), B), IntegerEntry(((e + i) + toString(G)), C), StringEntry(((e + l) + toString(G)), D), IntegerEntry(((e + m) + toString(G)), E), IntegerEntry((e + g), G)]
7375 else throw("you are not allowed")
7476 }
7577
7678
7779
78-@Callable(r)
79-func funding (E) = {
80- let A = valueOrErrorMessage(getInteger(this, ((d + g) + toString(E))), "can not find event 1")
81- let B = valueOrErrorMessage(getInteger(this, ((d + h) + toString(E))), "can not find event 2")
82- let D = valueOrErrorMessage(getInteger(this, ((d + l) + toString(E))), "can not find event 3")
83- let G = toBase58String(r.caller.bytes)
84- let H = valueOrElse(getInteger(this, ((e + o) + toString(E))), 0)
85- let I = valueOrElse(getInteger(this, (((e + p) + G) + toString(E))), 0)
86- let J = valueOrElse(getInteger(this, ((e + n) + toString(E))), 0)
87- if ((A > height))
80+@Callable(s)
81+func funding (F) = {
82+ let B = valueOrErrorMessage(getInteger(this, ((e + h) + toString(F))), "can not find event 1")
83+ let C = valueOrErrorMessage(getInteger(this, ((e + i) + toString(F))), "can not find event 2")
84+ let E = valueOrErrorMessage(getInteger(this, ((e + m) + toString(F))), "can not find event 3")
85+ let H = toBase58String(s.caller.bytes)
86+ let I = valueOrElse(getInteger(this, ((f + p) + toString(F))), 0)
87+ let J = valueOrElse(getInteger(this, (((f + q) + H) + toString(F))), 0)
88+ let K = valueOrElse(getInteger(this, ((f + o) + toString(F))), 0)
89+ if ((height > B))
8890 then throw("crowdfunding not started")
89- else if ((height >= B))
91+ else if ((C >= height))
9092 then throw("crowdfunding is over")
91- else if ((H >= D))
93+ else if ((I >= E))
9294 then throw("crowdfunding is reached to hard cap. thank you for participating!")
93- else if (!(q(r)))
95+ else if (!(r(s)))
9496 then throw("you have to attach payment greater than zero")
9597 else {
96- let K = valueOrElse(getBoolean(this, c), true)
97- if (!(K))
98+ let L = valueOrElse(getBoolean(this, d), true)
99+ if (!(L))
98100 then throw("emergency shutdown")
99101 else {
100- let t = r.payments[0]
101- let L = t.amount
102-[IntegerEntry(((e + n) + toString(E)), (J + 1)), IntegerEntry(((e + o) + toString(E)), (H + L)), IntegerEntry(((((e + p) + G) + "_") + toString(E)), (I + L))]
102+ let u = s.payments[0]
103+ let M = u.amount
104+[IntegerEntry(((f + o) + toString(F)), (K + 1)), IntegerEntry(((f + p) + toString(F)), (I + M)), IntegerEntry(((((f + q) + H) + "_") + toString(F)), (J + M))]
103105 }
104106 }
105107 }
106108
107109
108110
109-@Callable(r)
111+@Callable(s)
110112 func claim () = throw("event owner will claim the money")
111113
112114
113115
114-@Callable(r)
116+@Callable(s)
117+func claimShare () = throw("event owner will claim the money")
118+
119+
120+
121+@Callable(s)
115122 func refund () = throw("if not success payers gonna refund")
116123
117124
118125
119-@Callable(r)
120-func delete (M) = if ((r.callerPublicKey == a))
121- then [DeleteEntry(M)]
126+@Callable(s)
127+func delete (N) = if ((s.callerPublicKey == a))
128+ then [DeleteEntry(N)]
122129 else throw("you are not allowed to do this!")
123130
124131
125-@Verifier(N)
126-func O () = sigVerify(N.bodyBytes, N.proofs[0], N.senderPublicKey)
132+@Verifier(O)
133+func P () = sigVerify(O.bodyBytes, O.proofs[0], O.senderPublicKey)
127134

github/deemru/w8io/169f3d6 
61.47 ms