tx · DWo4uXVErK9w38XKceA9CLwmbHRFfYRwMNfrZwWkymt8 3N9GKCsktAL7oPFmaKsgPBoDfu3ijk23Vmm: -0.01400000 Waves 2020.04.03 11:46 [937769] smart account 3N9GKCsktAL7oPFmaKsgPBoDfu3ijk23Vmm > SELF 0.00000000 Waves
{ "type": 13, "id": "DWo4uXVErK9w38XKceA9CLwmbHRFfYRwMNfrZwWkymt8", "fee": 1400000, "feeAssetId": null, "timestamp": 1585899910791, "version": 1, "sender": "3N9GKCsktAL7oPFmaKsgPBoDfu3ijk23Vmm", "senderPublicKey": "BjzUYgMDny7cYArZdjtnVo62UoVZKiCEeCoKYFnevrWU", "proofs": [ "5D9Zv1pEAXETf4FbAHCdV3BM1eBYKeFaSb2PauMAs1hyPoYXVXE4CBtWtnHDfgbhUqntXjLEhmarURQvbs6pNydf" ], "script": "base64:AAIDAAAAAAAAABgIARIDCgEBEgkKBwgICAgBCAgSBAoCCAEAAAAtAAAAAAdhQml0Q08yAQAAACDH+HoAnTdQnyoybLskiHPdWM4Tg4veh8IaLSgbZ8EolgAAAAAIc3RhcnRRdHkAAAAAAAACSfAAAAAACG5vbVByaWNlAAAAAAAAAAABAAAAAAN3dnMAAAAAAAX14QAAAAAABE5PTkUCAAAABG5vbmUAAAAAC093bmVyUHViS2V5AQAAACCfmEAXldMf/BjZSW6/ZEf7k5r0z4tisH8Gw1nNGq2ESQAAAAAGaXNzdWVyCQEAAAAHQWRkcmVzcwAAAAEBAAAAGgFU1D3rjtmNadk6Svjh9eFrA7lQldo3DBRUAAAAAANpZ3YAAAAAAAAAABIAAAAAA2NQQgAAAAAABT7GAAAAAAADdUlQAAAAAAAAAAAFAAAAAANwSVAAAAAAAAAAAAoAAAAAA3NJUAAAAAAAAAAAAQAAAAADZUlQAAAAAAAAAAABAAAAAAJwQQkBAAAAB0FkZHJlc3MAAAABAQAAABoBVMr3Oz7nL9FV4g+t+EWzLN77jdANRWt9bwEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABAAAAA2tleQQAAAADbnVtBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABQAAAANudW0BAAAAC2dldFN0ckJ5S2V5AAAAAQAAAANrZXkEAAAAA3N0cgQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQUAAAAETk9ORQUAAAADc3RyAQAAAApnZXRLZXlJdGVtAAAAAgAAAAhzdXBwbGllcgAAAAV0aXRsZQkAASwAAAACAgAAAAZBIHkgRzoJAAJYAAAAAQkAAfcAAAABCQABmwAAAAEJAAEsAAAAAgUAAAAIc3VwcGxpZXIFAAAABXRpdGxlAQAAABJnZXRLZXlJdGVtU3VwcGxpZXIAAAABAAAABGl0ZW0JAAEsAAAAAgUAAAAEaXRlbQIAAAAGX1AgU0FDAQAAABRnZXRWYWx1ZUl0ZW1TdXBwbGllcgAAAAEAAAAEaXRlbQkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAAEmdldEtleUl0ZW1TdXBwbGllcgAAAAEFAAAABGl0ZW0BAAAADWdldEtleVByb2plY3QAAAABAAAAAnBBCQABLAAAAAIFAAAAAnBBAgAAAAlfQS1QcmVJQ08BAAAAD2dldFZhbHVlUHJvamVjdAAAAAEAAAACcEEJAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAAA1nZXRLZXlQcm9qZWN0AAAAAQUAAAACcEEBAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtAgAAAApPcmRlcl/ihJY6AQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAVZ2V0S2V5VXNlckl0ZW1Db3VudGVyAAAAAgUAAAAEdXNlcgUAAAAEaXRlbQEAAAAOZ2V0S2V5SXRlbVVzZXIAAAABAAAABGl0ZW0CAAAACVVzZXJOYW1lOgEAAAAQZ2V0VmFsdWVJdGVtVXNlcgAAAAEAAAAEaXRlbQkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAADmdldEtleUl0ZW1Vc2VyAAAAAQUAAAAEaXRlbQEAAAARZ2V0S2V5VXNlckNvdW50cnkAAAABAAAABGl0ZW0CAAAACVVzZXJQYWlzOgEAAAATZ2V0VmFsdWVVc2VyQ291bnRyeQAAAAEAAAAEaXRlbQkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAAEWdldEtleVVzZXJDb3VudHJ5AAAAAQUAAAAEaXRlbQEAAAAMZ2V0S2V5SXRlbVVEAAAAAQAAAARpdGVtAgAAAANVRDoBAAAAFWdldEtleUJhbGFuY2VTdXBwbGllcgAAAAEAAAAIc3VwcGxpZXICAAAAF1NlbGxlcl9CYWxhbmNlLF9hQml0Q08yAQAAABdnZXRWYWx1ZUJhbGFuY2VTdXBwbGllcgAAAAEAAAAIc3VwcGxpZXIJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABVnZXRLZXlCYWxhbmNlU3VwcGxpZXIAAAABBQAAAAhzdXBwbGllcgEAAAAIZ2V0S2V5VUkAAAABAAAABGl0ZW0CAAAABlVJLF8lOgEAAAAKZ2V0VmFsdWVVSQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAACGdldEtleVVJAAAAAQUAAAAEaXRlbQEAAAAIZ2V0S2V5UEkAAAABAAAABGl0ZW0CAAAABlBJLF8lOgEAAAAKZ2V0VmFsdWVQSQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAACGdldEtleVBJAAAAAQUAAAAEaXRlbQEAAAAIZ2V0S2V5U0kAAAABAAAABGl0ZW0CAAAABlNJLF8lOgEAAAAKZ2V0VmFsdWVTSQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAACGdldEtleVNJAAAAAQUAAAAEaXRlbQEAAAAIZ2V0S2V5RUkAAAABAAAAAmVBAgAAAAZFSSxfJToBAAAACmdldFZhbHVlRUkAAAABAAAAAmVBCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAIZ2V0S2V5RUkAAAABBQAAAAJlQQEAAAASZ2V0S2V5SXRlbVVzZXJEYXRhAAAAAQAAAARpdGVtAgAAAAxVc2VyQ291bnRyeToBAAAAFmdldEtleUl0ZW1EaXNjb3VudFVzZXIAAAABAAAABGl0ZW0CAAAAEFVzZXJEaXNjb3VudCwgJToBAAAAGGdldFZhbHVlSXRlbURpc2NvdW50VXNlcgAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAFmdldEtleUl0ZW1EaXNjb3VudFVzZXIAAAABBQAAAARpdGVtAQAAABZnZXRLZXlJdGVtVXNlck9yZGVyUXR5AAAAAQAAAARpdGVtAgAAABJPcmRlcl9xdHksX3Rva2VuczoBAAAAGGdldFZhbHVlSXRlbVVzZXJPcmRlclF0eQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAFmdldEtleUl0ZW1Vc2VyT3JkZXJRdHkAAAABBQAAAARpdGVtAQAAABhnZXRLZXlCYWxhbmNlUXR5U3VwcGxpZXIAAAABAAAABGl0ZW0CAAAAFkJhbGFuY2Uv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", "chainId": 84, "height": 937769, "spentComplexity": 0 } View: original | compacted Prev: GQR1RoRHSo1EKfzS98opH8XYSfUAqDMocru71ApSoKSY Next: 7ms2BNMefV2Fit2wMdE5ZHRatWcvKE3rNN6zKhqiXY8G Diff:
Old | New | Differences | |
---|---|---|---|
17 | 17 | ||
18 | 18 | let h = 18 | |
19 | 19 | ||
20 | - | let i = | |
20 | + | let i = 88000000 | |
21 | 21 | ||
22 | - | let j = | |
22 | + | let j = 5 | |
23 | 23 | ||
24 | - | let k = | |
24 | + | let k = 10 | |
25 | 25 | ||
26 | 26 | let l = 1 | |
27 | 27 | ||
28 | - | let m = | |
28 | + | let m = 1 | |
29 | 29 | ||
30 | - | func n (o) = { | |
31 | - | let p = { | |
32 | - | let q = getInteger(this, o) | |
33 | - | if ($isInstanceOf(q, "Int")) | |
30 | + | let n = Address(base58'3N8RGScPyKYySaXd5Z3VcpnttH2uBeMpSy4') | |
31 | + | ||
32 | + | func o (p) = { | |
33 | + | let q = { | |
34 | + | let r = getInteger(this, p) | |
35 | + | if ($isInstanceOf(r, "Int")) | |
34 | 36 | then { | |
35 | - | let | |
36 | - | | |
37 | + | let s = r | |
38 | + | s | |
37 | 39 | } | |
38 | 40 | else 0 | |
39 | 41 | } | |
40 | - | | |
42 | + | q | |
41 | 43 | } | |
42 | 44 | ||
43 | 45 | ||
44 | - | func | |
45 | - | let | |
46 | - | let | |
47 | - | if ($isInstanceOf( | |
46 | + | func t (p) = { | |
47 | + | let u = { | |
48 | + | let r = getString(this, p) | |
49 | + | if ($isInstanceOf(r, "String")) | |
48 | 50 | then { | |
49 | - | let | |
50 | - | | |
51 | + | let s = r | |
52 | + | s | |
51 | 53 | } | |
52 | 54 | else e | |
53 | 55 | } | |
54 | - | | |
56 | + | u | |
55 | 57 | } | |
56 | 58 | ||
57 | 59 | ||
58 | - | func | |
60 | + | func v (w,x) = ("A y G:" + toBase58String(sha256(toBytes((w + x))))) | |
59 | 61 | ||
60 | 62 | ||
61 | - | func | |
63 | + | func y (z) = (z + "_P SAC") | |
62 | 64 | ||
63 | 65 | ||
64 | - | func | |
66 | + | func A (z) = t(y(z)) | |
65 | 67 | ||
66 | 68 | ||
67 | - | func | |
69 | + | func B (n) = (n + "_A-PreICO") | |
68 | 70 | ||
69 | 71 | ||
70 | - | func C ( | |
72 | + | func C (n) = t(B(n)) | |
71 | 73 | ||
72 | 74 | ||
73 | - | func D ( | |
75 | + | func D (E,z) = "Order_№:" | |
74 | 76 | ||
75 | 77 | ||
76 | - | func | |
78 | + | func F (E,z) = o(D(E, z)) | |
77 | 79 | ||
78 | 80 | ||
79 | - | func | |
81 | + | func G (z) = "UserName:" | |
80 | 82 | ||
81 | 83 | ||
82 | - | func | |
84 | + | func H (z) = t(G(z)) | |
83 | 85 | ||
84 | 86 | ||
85 | - | func | |
87 | + | func I (z) = "UserPais:" | |
86 | 88 | ||
87 | 89 | ||
88 | - | func | |
90 | + | func J (z) = t(I(z)) | |
89 | 91 | ||
90 | 92 | ||
91 | - | func | |
93 | + | func K (z) = "UD:" | |
92 | 94 | ||
93 | 95 | ||
94 | - | func | |
96 | + | func L (w) = "Seller_Balance,_aBitCO2" | |
95 | 97 | ||
96 | 98 | ||
97 | - | func | |
99 | + | func M (w) = o(L(w)) | |
98 | 100 | ||
99 | 101 | ||
100 | - | func | |
102 | + | func N (z) = "UI,_%:" | |
101 | 103 | ||
102 | 104 | ||
103 | - | func | |
105 | + | func O (z) = o(N(z)) | |
104 | 106 | ||
105 | 107 | ||
106 | - | func | |
108 | + | func P (z) = "PI,_%:" | |
107 | 109 | ||
108 | 110 | ||
109 | - | func | |
111 | + | func Q (z) = o(P(z)) | |
110 | 112 | ||
111 | 113 | ||
112 | - | func | |
114 | + | func R (z) = "SI,_%:" | |
113 | 115 | ||
114 | 116 | ||
115 | - | func | |
117 | + | func S (z) = o(R(z)) | |
116 | 118 | ||
117 | 119 | ||
118 | - | func | |
120 | + | func T (U) = "EI,_%:" | |
119 | 121 | ||
120 | 122 | ||
121 | - | func | |
123 | + | func V (U) = o(T(U)) | |
122 | 124 | ||
123 | 125 | ||
124 | - | func | |
126 | + | func W (z) = "UserCountry:" | |
125 | 127 | ||
126 | 128 | ||
127 | - | func | |
129 | + | func X (z) = "UserDiscount, %:" | |
128 | 130 | ||
129 | 131 | ||
130 | - | func | |
132 | + | func Y (z) = o(X(z)) | |
131 | 133 | ||
132 | 134 | ||
133 | - | func | |
135 | + | func Z (z) = "Order_qty,_tokens:" | |
134 | 136 | ||
135 | 137 | ||
136 | - | func | |
138 | + | func aa (z) = o(Z(z)) | |
137 | 139 | ||
138 | 140 | ||
139 | - | @Callable(Z) | |
140 | - | func deposit (aa) = { | |
141 | - | let ab = extract(Z.payment) | |
142 | - | if ((ab.assetId != a)) | |
141 | + | func ab (z) = "Balance/Saldo, tokens:" | |
142 | + | ||
143 | + | ||
144 | + | func ac (z) = o(ab(z)) | |
145 | + | ||
146 | + | ||
147 | + | @Callable(ad) | |
148 | + | func deposit (ae) = { | |
149 | + | let af = extract(ad.payment) | |
150 | + | if ((af.assetId != a)) | |
143 | 151 | then throw("Use cBitCO2 tokens only for the wallet deposit") | |
144 | 152 | else { | |
145 | - | let | |
146 | - | let | |
147 | - | let | |
148 | - | if ($isInstanceOf( | |
153 | + | let w = toBase58String(ad.caller.bytes) | |
154 | + | let ag = { | |
155 | + | let r = getInteger(this, w) | |
156 | + | if ($isInstanceOf(r, "Int")) | |
149 | 157 | then { | |
150 | - | let | |
151 | - | | |
158 | + | let s = r | |
159 | + | s | |
152 | 160 | } | |
153 | 161 | else b | |
154 | 162 | } | |
155 | - | let | |
156 | - | WriteSet([DataEntry( | |
163 | + | let ah = (ag + af.amount) | |
164 | + | WriteSet([DataEntry(w, ah)]) | |
157 | 165 | } | |
158 | 166 | } | |
159 | 167 | ||
160 | 168 | ||
161 | 169 | ||
162 | - | @Callable( | |
163 | - | func purchaseGTS ( | |
164 | - | let | |
165 | - | if (isDefined(( | |
170 | + | @Callable(ad) | |
171 | + | func purchaseGTS (z,ai,aj,ak,al,n,U) = { | |
172 | + | let af = extract(ad.payment) | |
173 | + | if (isDefined((af.assetId != a))) | |
166 | 174 | then throw("you can adquire these products only by BitCO2 tokens") | |
167 | 175 | else { | |
168 | - | let | |
169 | - | let | |
170 | - | if ($isInstanceOf( | |
176 | + | let w = { | |
177 | + | let r = getString(this, y(z)) | |
178 | + | if ($isInstanceOf(r, "String")) | |
171 | 179 | then { | |
172 | - | let | |
173 | - | | |
180 | + | let s = r | |
181 | + | s | |
174 | 182 | } | |
175 | 183 | else e | |
176 | 184 | } | |
177 | - | let | |
178 | - | let | |
179 | - | if ($isInstanceOf( | |
185 | + | let am = { | |
186 | + | let r = getInteger(this, L(w)) | |
187 | + | if ($isInstanceOf(r, "Int")) | |
180 | 188 | then { | |
181 | - | let | |
182 | - | | |
189 | + | let s = r | |
190 | + | s | |
183 | 191 | } | |
184 | 192 | else 0 | |
185 | 193 | } | |
186 | - | let aj = toBase58String(Z.caller.bytes) | |
187 | - | let ak = (ag - ((h * ag) / 100)) | |
188 | - | let al = ((ak * i) / 100) | |
189 | - | let am = ((ak * j) / 100) | |
190 | - | let an = ((ak * k) / 100) | |
191 | - | let ao = ((ak * l) / 100) | |
192 | - | let ap = ((ak * m) / 100) | |
193 | - | if ((ag > ab.amount)) | |
194 | + | let an = toBase58String(ad.caller.bytes) | |
195 | + | let ao = ((al - ((h * al) * d)) / 100) | |
196 | + | let ap = ((ao * j) / (i * 100)) | |
197 | + | let aq = ((ao * k) / 100) | |
198 | + | let ar = ((ao * m) / 100) | |
199 | + | let as = ((ao * m) / (i * 100)) | |
200 | + | let at = ((al - k) - ar) | |
201 | + | let au = ((ao * l) / (i * 100)) | |
202 | + | if ((al > af.amount)) | |
194 | 203 | then throw("Payment Amount can't be less than item Purchase Order") | |
195 | - | else if (( | |
204 | + | else if ((af.amount > al)) | |
196 | 205 | then throw("Payment Amount can't be higher than item Purchase Order") | |
197 | - | else ScriptResult(WriteSet([DataEntry( | |
206 | + | else ScriptResult(WriteSet([DataEntry(D(an, z), (F(an, z) + 1)), DataEntry(G(z), ai), DataEntry(I(z), aj), DataEntry(K(z), ak), DataEntry("Payment_amount,_wvs", al), DataEntry(N(z), ap), DataEntry(P(z), aq), DataEntry(R(z), at), DataEntry(T(U), ar), DataEntry("EcSys", as), DataEntry(("Order_Status:_" + an), "confirmed"), DataEntry(L(w), (am + af.amount))]), TransferSet([ScriptTransfer(addressFromStringValue(an), ap, a), ScriptTransfer(addressFromStringValue(n), aq, unit), ScriptTransfer(addressFromStringValue(w), at, unit), ScriptTransfer(addressFromStringValue(w), au, a), ScriptTransfer(addressFromStringValue(U), ar, unit), ScriptTransfer(addressFromStringValue(U), as, a)])) | |
198 | 207 | } | |
199 | 208 | } | |
200 | 209 | ||
201 | 210 | ||
202 | 211 | ||
203 | - | @Callable(Z) | |
204 | - | func purchase (y,ae,aq,ar,as) = { | |
205 | - | let ab = extract(Z.payment) | |
206 | - | if (isDefined(ab.assetId)) | |
207 | - | then throw("you can adquire cBitCO2 only by Waves tokens") | |
208 | - | else { | |
209 | - | let v = { | |
210 | - | let q = getString(this, x(y)) | |
211 | - | if ($isInstanceOf(q, "String")) | |
212 | - | then { | |
213 | - | let r = q | |
214 | - | r | |
215 | - | } | |
216 | - | else e | |
212 | + | @Callable(ad) | |
213 | + | func withdraw (z,ae) = { | |
214 | + | let an = toBase58String(ad.caller.bytes) | |
215 | + | let w = { | |
216 | + | let r = getString(this, y(z)) | |
217 | + | if ($isInstanceOf(r, "String")) | |
218 | + | then { | |
219 | + | let s = r | |
220 | + | s | |
217 | 221 | } | |
218 | - | | |
219 | - | | |
220 | - | | |
221 | - | | |
222 | - | | |
223 | - | | |
224 | - | | |
225 | - | | |
222 | + | else e | |
223 | + | } | |
224 | + | let av = { | |
225 | + | let r = getInteger(this, ab(z)) | |
226 | + | if ($isInstanceOf(r, "Int")) | |
227 | + | then { | |
228 | + | let s = r | |
229 | + | s | |
226 | 230 | } | |
227 | - | let ai = { | |
228 | - | let q = getInteger(this, G(v)) | |
229 | - | if ($isInstanceOf(q, "Int")) | |
230 | - | then { | |
231 | - | let r = q | |
232 | - | r | |
233 | - | } | |
234 | - | else 0 | |
235 | - | } | |
236 | - | let aj = toBase58String(Z.caller.bytes) | |
237 | - | let au = ((((100 - ar) * c) * d) / 100) | |
238 | - | let ag = (as * au) | |
239 | - | if ((ag > ab.amount)) | |
240 | - | then throw("Payment Amount can't be less than item Purchase Order") | |
241 | - | else if ((ab.amount > ag)) | |
242 | - | then throw("Payment Amount can't be higher than item Purchase Order") | |
243 | - | else ScriptResult(WriteSet([DataEntry(A(aj, y), (C(aj, y) + 1)), DataEntry(X(y), (at - as)), DataEntry(D(y), ae), DataEntry(S(y), aq), DataEntry(T(y), ar), DataEntry(V(y), as), DataEntry("tokenPrice/Supplier, wvs", (c * d)), DataEntry("tokenPrice/User, wvs", au), DataEntry("investedAmount/User, wvs", ag), DataEntry("purchaseOrder/Status:", "confirmed"), DataEntry(G(v), (ai + ab.amount))]), TransferSet([ScriptTransfer(addressFromStringValue(aj), as, a)])) | |
244 | - | } | |
231 | + | else b | |
232 | + | } | |
233 | + | let ah = (av - ae) | |
234 | + | if ((0 > ae)) | |
235 | + | then throw("Can't withdraw negative amount") | |
236 | + | else if ((0 > ah)) | |
237 | + | then throw("Not enought /suficiente balance") | |
238 | + | else ScriptResult(WriteSet([DataEntry(z, ah)]), TransferSet([ScriptTransfer(ad.caller, ae, a)])) | |
245 | 239 | } | |
246 | 240 | ||
247 | 241 | ||
248 | - | ||
249 | - | @Callable(Z) | |
250 | - | func withdraw (y,aa) = { | |
251 | - | let aj = toBase58String(Z.caller.bytes) | |
252 | - | let v = { | |
253 | - | let q = getString(this, x(y)) | |
254 | - | if ($isInstanceOf(q, "String")) | |
242 | + | @Verifier(aw) | |
243 | + | func ax () = { | |
244 | + | let r = aw | |
245 | + | if ($isInstanceOf(r, "SetScriptTransaction")) | |
246 | + | then { | |
247 | + | let ay = r | |
248 | + | sigVerify(aw.bodyBytes, aw.proofs[0], f) | |
249 | + | } | |
250 | + | else if ($isInstanceOf(r, "DataTransaction")) | |
255 | 251 | then { | |
256 | - | let r = q | |
257 | - | r | |
258 | - | } | |
259 | - | else e | |
260 | - | } | |
261 | - | let at = { | |
262 | - | let q = getInteger(this, X(y)) | |
263 | - | if ($isInstanceOf(q, "Int")) | |
264 | - | then { | |
265 | - | let r = q | |
266 | - | r | |
267 | - | } | |
268 | - | else b | |
269 | - | } | |
270 | - | let ad = (at - aa) | |
271 | - | if ((0 > aa)) | |
272 | - | then throw("Can't withdraw negative amount") | |
273 | - | else if ((0 > ad)) | |
274 | - | then throw("Not enought /suficiente balance") | |
275 | - | else ScriptResult(WriteSet([DataEntry(y, ad)]), TransferSet([ScriptTransfer(Z.caller, aa, a)])) | |
276 | - | } | |
277 | - | ||
278 | - | ||
279 | - | @Verifier(av) | |
280 | - | func aw () = { | |
281 | - | let q = av | |
282 | - | if ($isInstanceOf(q, "SetScriptTransaction")) | |
283 | - | then { | |
284 | - | let ax = q | |
285 | - | sigVerify(av.bodyBytes, av.proofs[0], f) | |
286 | - | } | |
287 | - | else if ($isInstanceOf(q, "DataTransaction")) | |
288 | - | then { | |
289 | - | let ay = q | |
252 | + | let az = r | |
290 | 253 | true | |
291 | 254 | } | |
292 | - | else if ($isInstanceOf( | |
255 | + | else if ($isInstanceOf(r, "TransferTransaction")) | |
293 | 256 | then { | |
294 | - | let | |
295 | - | let | |
296 | - | if (( | |
257 | + | let aw = r | |
258 | + | let aA = toBase58String(addressFromRecipient(aw.recipient).bytes) | |
259 | + | if ((aw.sender == g)) | |
297 | 260 | then true | |
298 | 261 | else throw("You can't transferred this token") | |
299 | 262 | } |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 3 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = base58'ETbtNp6MBuSM9EfjmLDwctrYEBBiq8CZ7ti7zbwTktry' | |
5 | 5 | ||
6 | 6 | let b = 150000 | |
7 | 7 | ||
8 | 8 | let c = 1 | |
9 | 9 | ||
10 | 10 | let d = 100000000 | |
11 | 11 | ||
12 | 12 | let e = "none" | |
13 | 13 | ||
14 | 14 | let f = base58'BjzUYgMDny7cYArZdjtnVo62UoVZKiCEeCoKYFnevrWU' | |
15 | 15 | ||
16 | 16 | let g = Address(base58'3N9GKCsktAL7oPFmaKsgPBoDfu3ijk23Vmm') | |
17 | 17 | ||
18 | 18 | let h = 18 | |
19 | 19 | ||
20 | - | let i = | |
20 | + | let i = 88000000 | |
21 | 21 | ||
22 | - | let j = | |
22 | + | let j = 5 | |
23 | 23 | ||
24 | - | let k = | |
24 | + | let k = 10 | |
25 | 25 | ||
26 | 26 | let l = 1 | |
27 | 27 | ||
28 | - | let m = | |
28 | + | let m = 1 | |
29 | 29 | ||
30 | - | func n (o) = { | |
31 | - | let p = { | |
32 | - | let q = getInteger(this, o) | |
33 | - | if ($isInstanceOf(q, "Int")) | |
30 | + | let n = Address(base58'3N8RGScPyKYySaXd5Z3VcpnttH2uBeMpSy4') | |
31 | + | ||
32 | + | func o (p) = { | |
33 | + | let q = { | |
34 | + | let r = getInteger(this, p) | |
35 | + | if ($isInstanceOf(r, "Int")) | |
34 | 36 | then { | |
35 | - | let | |
36 | - | | |
37 | + | let s = r | |
38 | + | s | |
37 | 39 | } | |
38 | 40 | else 0 | |
39 | 41 | } | |
40 | - | | |
42 | + | q | |
41 | 43 | } | |
42 | 44 | ||
43 | 45 | ||
44 | - | func | |
45 | - | let | |
46 | - | let | |
47 | - | if ($isInstanceOf( | |
46 | + | func t (p) = { | |
47 | + | let u = { | |
48 | + | let r = getString(this, p) | |
49 | + | if ($isInstanceOf(r, "String")) | |
48 | 50 | then { | |
49 | - | let | |
50 | - | | |
51 | + | let s = r | |
52 | + | s | |
51 | 53 | } | |
52 | 54 | else e | |
53 | 55 | } | |
54 | - | | |
56 | + | u | |
55 | 57 | } | |
56 | 58 | ||
57 | 59 | ||
58 | - | func | |
60 | + | func v (w,x) = ("A y G:" + toBase58String(sha256(toBytes((w + x))))) | |
59 | 61 | ||
60 | 62 | ||
61 | - | func | |
63 | + | func y (z) = (z + "_P SAC") | |
62 | 64 | ||
63 | 65 | ||
64 | - | func | |
66 | + | func A (z) = t(y(z)) | |
65 | 67 | ||
66 | 68 | ||
67 | - | func | |
69 | + | func B (n) = (n + "_A-PreICO") | |
68 | 70 | ||
69 | 71 | ||
70 | - | func C ( | |
72 | + | func C (n) = t(B(n)) | |
71 | 73 | ||
72 | 74 | ||
73 | - | func D ( | |
75 | + | func D (E,z) = "Order_№:" | |
74 | 76 | ||
75 | 77 | ||
76 | - | func | |
78 | + | func F (E,z) = o(D(E, z)) | |
77 | 79 | ||
78 | 80 | ||
79 | - | func | |
81 | + | func G (z) = "UserName:" | |
80 | 82 | ||
81 | 83 | ||
82 | - | func | |
84 | + | func H (z) = t(G(z)) | |
83 | 85 | ||
84 | 86 | ||
85 | - | func | |
87 | + | func I (z) = "UserPais:" | |
86 | 88 | ||
87 | 89 | ||
88 | - | func | |
90 | + | func J (z) = t(I(z)) | |
89 | 91 | ||
90 | 92 | ||
91 | - | func | |
93 | + | func K (z) = "UD:" | |
92 | 94 | ||
93 | 95 | ||
94 | - | func | |
96 | + | func L (w) = "Seller_Balance,_aBitCO2" | |
95 | 97 | ||
96 | 98 | ||
97 | - | func | |
99 | + | func M (w) = o(L(w)) | |
98 | 100 | ||
99 | 101 | ||
100 | - | func | |
102 | + | func N (z) = "UI,_%:" | |
101 | 103 | ||
102 | 104 | ||
103 | - | func | |
105 | + | func O (z) = o(N(z)) | |
104 | 106 | ||
105 | 107 | ||
106 | - | func | |
108 | + | func P (z) = "PI,_%:" | |
107 | 109 | ||
108 | 110 | ||
109 | - | func | |
111 | + | func Q (z) = o(P(z)) | |
110 | 112 | ||
111 | 113 | ||
112 | - | func | |
114 | + | func R (z) = "SI,_%:" | |
113 | 115 | ||
114 | 116 | ||
115 | - | func | |
117 | + | func S (z) = o(R(z)) | |
116 | 118 | ||
117 | 119 | ||
118 | - | func | |
120 | + | func T (U) = "EI,_%:" | |
119 | 121 | ||
120 | 122 | ||
121 | - | func | |
123 | + | func V (U) = o(T(U)) | |
122 | 124 | ||
123 | 125 | ||
124 | - | func | |
126 | + | func W (z) = "UserCountry:" | |
125 | 127 | ||
126 | 128 | ||
127 | - | func | |
129 | + | func X (z) = "UserDiscount, %:" | |
128 | 130 | ||
129 | 131 | ||
130 | - | func | |
132 | + | func Y (z) = o(X(z)) | |
131 | 133 | ||
132 | 134 | ||
133 | - | func | |
135 | + | func Z (z) = "Order_qty,_tokens:" | |
134 | 136 | ||
135 | 137 | ||
136 | - | func | |
138 | + | func aa (z) = o(Z(z)) | |
137 | 139 | ||
138 | 140 | ||
139 | - | @Callable(Z) | |
140 | - | func deposit (aa) = { | |
141 | - | let ab = extract(Z.payment) | |
142 | - | if ((ab.assetId != a)) | |
141 | + | func ab (z) = "Balance/Saldo, tokens:" | |
142 | + | ||
143 | + | ||
144 | + | func ac (z) = o(ab(z)) | |
145 | + | ||
146 | + | ||
147 | + | @Callable(ad) | |
148 | + | func deposit (ae) = { | |
149 | + | let af = extract(ad.payment) | |
150 | + | if ((af.assetId != a)) | |
143 | 151 | then throw("Use cBitCO2 tokens only for the wallet deposit") | |
144 | 152 | else { | |
145 | - | let | |
146 | - | let | |
147 | - | let | |
148 | - | if ($isInstanceOf( | |
153 | + | let w = toBase58String(ad.caller.bytes) | |
154 | + | let ag = { | |
155 | + | let r = getInteger(this, w) | |
156 | + | if ($isInstanceOf(r, "Int")) | |
149 | 157 | then { | |
150 | - | let | |
151 | - | | |
158 | + | let s = r | |
159 | + | s | |
152 | 160 | } | |
153 | 161 | else b | |
154 | 162 | } | |
155 | - | let | |
156 | - | WriteSet([DataEntry( | |
163 | + | let ah = (ag + af.amount) | |
164 | + | WriteSet([DataEntry(w, ah)]) | |
157 | 165 | } | |
158 | 166 | } | |
159 | 167 | ||
160 | 168 | ||
161 | 169 | ||
162 | - | @Callable( | |
163 | - | func purchaseGTS ( | |
164 | - | let | |
165 | - | if (isDefined(( | |
170 | + | @Callable(ad) | |
171 | + | func purchaseGTS (z,ai,aj,ak,al,n,U) = { | |
172 | + | let af = extract(ad.payment) | |
173 | + | if (isDefined((af.assetId != a))) | |
166 | 174 | then throw("you can adquire these products only by BitCO2 tokens") | |
167 | 175 | else { | |
168 | - | let | |
169 | - | let | |
170 | - | if ($isInstanceOf( | |
176 | + | let w = { | |
177 | + | let r = getString(this, y(z)) | |
178 | + | if ($isInstanceOf(r, "String")) | |
171 | 179 | then { | |
172 | - | let | |
173 | - | | |
180 | + | let s = r | |
181 | + | s | |
174 | 182 | } | |
175 | 183 | else e | |
176 | 184 | } | |
177 | - | let | |
178 | - | let | |
179 | - | if ($isInstanceOf( | |
185 | + | let am = { | |
186 | + | let r = getInteger(this, L(w)) | |
187 | + | if ($isInstanceOf(r, "Int")) | |
180 | 188 | then { | |
181 | - | let | |
182 | - | | |
189 | + | let s = r | |
190 | + | s | |
183 | 191 | } | |
184 | 192 | else 0 | |
185 | 193 | } | |
186 | - | let aj = toBase58String(Z.caller.bytes) | |
187 | - | let ak = (ag - ((h * ag) / 100)) | |
188 | - | let al = ((ak * i) / 100) | |
189 | - | let am = ((ak * j) / 100) | |
190 | - | let an = ((ak * k) / 100) | |
191 | - | let ao = ((ak * l) / 100) | |
192 | - | let ap = ((ak * m) / 100) | |
193 | - | if ((ag > ab.amount)) | |
194 | + | let an = toBase58String(ad.caller.bytes) | |
195 | + | let ao = ((al - ((h * al) * d)) / 100) | |
196 | + | let ap = ((ao * j) / (i * 100)) | |
197 | + | let aq = ((ao * k) / 100) | |
198 | + | let ar = ((ao * m) / 100) | |
199 | + | let as = ((ao * m) / (i * 100)) | |
200 | + | let at = ((al - k) - ar) | |
201 | + | let au = ((ao * l) / (i * 100)) | |
202 | + | if ((al > af.amount)) | |
194 | 203 | then throw("Payment Amount can't be less than item Purchase Order") | |
195 | - | else if (( | |
204 | + | else if ((af.amount > al)) | |
196 | 205 | then throw("Payment Amount can't be higher than item Purchase Order") | |
197 | - | else ScriptResult(WriteSet([DataEntry( | |
206 | + | else ScriptResult(WriteSet([DataEntry(D(an, z), (F(an, z) + 1)), DataEntry(G(z), ai), DataEntry(I(z), aj), DataEntry(K(z), ak), DataEntry("Payment_amount,_wvs", al), DataEntry(N(z), ap), DataEntry(P(z), aq), DataEntry(R(z), at), DataEntry(T(U), ar), DataEntry("EcSys", as), DataEntry(("Order_Status:_" + an), "confirmed"), DataEntry(L(w), (am + af.amount))]), TransferSet([ScriptTransfer(addressFromStringValue(an), ap, a), ScriptTransfer(addressFromStringValue(n), aq, unit), ScriptTransfer(addressFromStringValue(w), at, unit), ScriptTransfer(addressFromStringValue(w), au, a), ScriptTransfer(addressFromStringValue(U), ar, unit), ScriptTransfer(addressFromStringValue(U), as, a)])) | |
198 | 207 | } | |
199 | 208 | } | |
200 | 209 | ||
201 | 210 | ||
202 | 211 | ||
203 | - | @Callable(Z) | |
204 | - | func purchase (y,ae,aq,ar,as) = { | |
205 | - | let ab = extract(Z.payment) | |
206 | - | if (isDefined(ab.assetId)) | |
207 | - | then throw("you can adquire cBitCO2 only by Waves tokens") | |
208 | - | else { | |
209 | - | let v = { | |
210 | - | let q = getString(this, x(y)) | |
211 | - | if ($isInstanceOf(q, "String")) | |
212 | - | then { | |
213 | - | let r = q | |
214 | - | r | |
215 | - | } | |
216 | - | else e | |
212 | + | @Callable(ad) | |
213 | + | func withdraw (z,ae) = { | |
214 | + | let an = toBase58String(ad.caller.bytes) | |
215 | + | let w = { | |
216 | + | let r = getString(this, y(z)) | |
217 | + | if ($isInstanceOf(r, "String")) | |
218 | + | then { | |
219 | + | let s = r | |
220 | + | s | |
217 | 221 | } | |
218 | - | | |
219 | - | | |
220 | - | | |
221 | - | | |
222 | - | | |
223 | - | | |
224 | - | | |
225 | - | | |
222 | + | else e | |
223 | + | } | |
224 | + | let av = { | |
225 | + | let r = getInteger(this, ab(z)) | |
226 | + | if ($isInstanceOf(r, "Int")) | |
227 | + | then { | |
228 | + | let s = r | |
229 | + | s | |
226 | 230 | } | |
227 | - | let ai = { | |
228 | - | let q = getInteger(this, G(v)) | |
229 | - | if ($isInstanceOf(q, "Int")) | |
230 | - | then { | |
231 | - | let r = q | |
232 | - | r | |
233 | - | } | |
234 | - | else 0 | |
235 | - | } | |
236 | - | let aj = toBase58String(Z.caller.bytes) | |
237 | - | let au = ((((100 - ar) * c) * d) / 100) | |
238 | - | let ag = (as * au) | |
239 | - | if ((ag > ab.amount)) | |
240 | - | then throw("Payment Amount can't be less than item Purchase Order") | |
241 | - | else if ((ab.amount > ag)) | |
242 | - | then throw("Payment Amount can't be higher than item Purchase Order") | |
243 | - | else ScriptResult(WriteSet([DataEntry(A(aj, y), (C(aj, y) + 1)), DataEntry(X(y), (at - as)), DataEntry(D(y), ae), DataEntry(S(y), aq), DataEntry(T(y), ar), DataEntry(V(y), as), DataEntry("tokenPrice/Supplier, wvs", (c * d)), DataEntry("tokenPrice/User, wvs", au), DataEntry("investedAmount/User, wvs", ag), DataEntry("purchaseOrder/Status:", "confirmed"), DataEntry(G(v), (ai + ab.amount))]), TransferSet([ScriptTransfer(addressFromStringValue(aj), as, a)])) | |
244 | - | } | |
231 | + | else b | |
232 | + | } | |
233 | + | let ah = (av - ae) | |
234 | + | if ((0 > ae)) | |
235 | + | then throw("Can't withdraw negative amount") | |
236 | + | else if ((0 > ah)) | |
237 | + | then throw("Not enought /suficiente balance") | |
238 | + | else ScriptResult(WriteSet([DataEntry(z, ah)]), TransferSet([ScriptTransfer(ad.caller, ae, a)])) | |
245 | 239 | } | |
246 | 240 | ||
247 | 241 | ||
248 | - | ||
249 | - | @Callable(Z) | |
250 | - | func withdraw (y,aa) = { | |
251 | - | let aj = toBase58String(Z.caller.bytes) | |
252 | - | let v = { | |
253 | - | let q = getString(this, x(y)) | |
254 | - | if ($isInstanceOf(q, "String")) | |
242 | + | @Verifier(aw) | |
243 | + | func ax () = { | |
244 | + | let r = aw | |
245 | + | if ($isInstanceOf(r, "SetScriptTransaction")) | |
246 | + | then { | |
247 | + | let ay = r | |
248 | + | sigVerify(aw.bodyBytes, aw.proofs[0], f) | |
249 | + | } | |
250 | + | else if ($isInstanceOf(r, "DataTransaction")) | |
255 | 251 | then { | |
256 | - | let r = q | |
257 | - | r | |
258 | - | } | |
259 | - | else e | |
260 | - | } | |
261 | - | let at = { | |
262 | - | let q = getInteger(this, X(y)) | |
263 | - | if ($isInstanceOf(q, "Int")) | |
264 | - | then { | |
265 | - | let r = q | |
266 | - | r | |
267 | - | } | |
268 | - | else b | |
269 | - | } | |
270 | - | let ad = (at - aa) | |
271 | - | if ((0 > aa)) | |
272 | - | then throw("Can't withdraw negative amount") | |
273 | - | else if ((0 > ad)) | |
274 | - | then throw("Not enought /suficiente balance") | |
275 | - | else ScriptResult(WriteSet([DataEntry(y, ad)]), TransferSet([ScriptTransfer(Z.caller, aa, a)])) | |
276 | - | } | |
277 | - | ||
278 | - | ||
279 | - | @Verifier(av) | |
280 | - | func aw () = { | |
281 | - | let q = av | |
282 | - | if ($isInstanceOf(q, "SetScriptTransaction")) | |
283 | - | then { | |
284 | - | let ax = q | |
285 | - | sigVerify(av.bodyBytes, av.proofs[0], f) | |
286 | - | } | |
287 | - | else if ($isInstanceOf(q, "DataTransaction")) | |
288 | - | then { | |
289 | - | let ay = q | |
252 | + | let az = r | |
290 | 253 | true | |
291 | 254 | } | |
292 | - | else if ($isInstanceOf( | |
255 | + | else if ($isInstanceOf(r, "TransferTransaction")) | |
293 | 256 | then { | |
294 | - | let | |
295 | - | let | |
296 | - | if (( | |
257 | + | let aw = r | |
258 | + | let aA = toBase58String(addressFromRecipient(aw.recipient).bytes) | |
259 | + | if ((aw.sender == g)) | |
297 | 260 | then true | |
298 | 261 | else throw("You can't transferred this token") | |
299 | 262 | } | |
300 | 263 | else false | |
301 | 264 | } | |
302 | 265 |
github/deemru/w8io/169f3d6 91.43 ms ◑![]()