tx · 8cKLdY81rfK2cHUc5oQ9PrB16VwG8adnq3pZkNpEjuYF 3N9eE86dXUm7rfc2WWCMLHkaEM4Y8yoNj7u: -0.01440000 Waves 2020.12.28 13:58 [1328455] smart account 3N9eE86dXUm7rfc2WWCMLHkaEM4Y8yoNj7u > SELF 0.00000000 Waves
{ "type": 13, "id": "8cKLdY81rfK2cHUc5oQ9PrB16VwG8adnq3pZkNpEjuYF", "fee": 1440000, "feeAssetId": null, "timestamp": 1609153138727, "version": 2, "chainId": 84, "sender": "3N9eE86dXUm7rfc2WWCMLHkaEM4Y8yoNj7u", "senderPublicKey": "FFDorDp8bC9dyUK2w8hYPWPVEcbbk9zYkpHn3gcq9svn", "proofs": [ "2i3u8aQki7BGDPYkgzNUktCamBrU36QvnF5TgmCogCY598qgd8Pc4EzShNT62tsNRUCCMRd4BuqNzAWQijqkx79X" ], "script": "base64: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b2tlbgQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAABJVc2VyR292ZXJuVG9rZW5LZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAMJAABmAAAAAgAAAAAAAAAAAQUAAAAfR292ZXJuVG9rZW5TbWFydENvbnRyYWN0QmFsYW5jZQkAAAIAAAABAgAAAD5ObyBlbm91Z2ggR292ZXJuVG9rZW4gSW4gQ29udHJhY3QsIFBsZWFzZSBkZXBvc2l0IEdvdmVyblRva2VucwMJAAAAAAAAAgUAAAAfU3Rha2VkVG9rZW5TbWFydENvbnRyYWN0QmFsYW5jZQAAAAAAAAAAAAQAAAAUbmV3QW1vdW50R292ZXJuVG9rZW4JAABkAAAAAgUAAAAYY3VycmVudEFtb3VudEdvdmVyblRva2VuAAAAAAAAAAAKCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAASVXNlckdvdmVyblRva2VuS2V5BQAAABRuZXdBbW91bnRHb3Zlcm5Ub2tlbgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAASVXNlclN0YWtlZFRva2VuS2V5BQAAABRuZXdBbW91bnRTdGFrZWRUb2tlbgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAYVXNlclN0YWtlVHJhbnNhY3Rpb25zS2V5BQAAABhOZXdVc2VyU3Rha2VUcmFuc2FjdGlvbnMJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAADFN0YWtlQmFsYW5jZQUAAAASU3Rha2VCYWxhbmNlQW1vdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAA1BZGRyZXNzSGVpZ2h0BQAAAAZoZWlnaHQFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIAAAAAAAAAAAoFAAAAC0dvdmVyblRva2VuBQAAAANuaWwDCQAAZgAAAAIFAAAAGE5ld1VzZXJTdGFrZVRyYW5zYWN0aW9ucwAAAAAAAAAAMgQAAAAGUmV3YXJkCQAAaAAAAAIJAABoAAAAAgAAAAAAAAAACgUAAAAYTmV3VXNlclN0YWtlVHJhbnNhY3Rpb25zCQAAaQAAAAIFAAAAFG5ld0Ftb3VudFN0YWtlZFRva2VuBQAAAB9TdGFrZWRUb2tlblNtYXJ0Q29udHJhY3RCYWxhbmNlBAAAABRuZXdBbW91bnRHb3Zlcm5Ub2tlbgkAAGQAAAACBQAAABhjdXJyZW50QW1vdW50R292ZXJuVG9rZW4FAAAABlJld2FyZAkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAElVzZXJHb3Zlcm5Ub2tlbktleQUAAAAGUmV3YXJkCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABJVc2VyU3Rha2VkVG9rZW5LZXkFAAAAFG5ld0Ftb3VudFN0YWtlZFRva2VuCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABhVc2VyU3Rha2VUcmFuc2FjdGlvbnNLZXkFAAAAGE5ld1VzZXJTdGFrZVRyYW5zYWN0aW9ucwkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAMU3Rha2VCYWxhbmNlBQAAABJTdGFrZUJhbGFuY2VBbW91bnQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAADUFkZHJlc3NIZWlnaHQFAAAABmhlaWdodAUAAAADbmlsCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAGUmV3YXJkBQAAAAtHb3Zlcm5Ub2tlbgUAAAADbmlsBAAAAAZSZXdhcmQJAABoAAAAAgAAAAAAAAAACgkAAGkAAAACBQAAABRuZXdBbW91bnRTdGFrZWRUb2tlbgUAAAAfU3Rha2VkVG9rZW5TbWFydENvbnRyYWN0QmFsYW5jZQQAAAAUbmV3QW1vdW50R292ZXJuVG9rZW4JAABkAAAAAgUAAAAYY3VycmVudEFtb3VudEdvdmVyblRva2VuBQAAAAZSZXdhcmQJAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABJVc2VyR292ZXJuVG9rZW5LZXkFAAAABlJld2FyZAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAASVXNlclN0YWtlZFRva2VuS2V5BQAAABRuZXdBbW91bnRTdGFrZWRUb2tlbgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAYVXNlclN0YWtlVHJhbnNhY3Rpb25zS2V5BQAAABhOZXdVc2VyU3Rha2VUcmFuc2FjdGlvbnMJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAADFN0YWtlQmFsYW5jZQUAAAASU3Rha2VCYWxhbmNlQW1vdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAA1BZGRyZXNzSGVpZ2h0BQAAAAZoZWlnaHQFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAABlJld2FyZAUAAAALR292ZXJuVG9rZW4FAAAAA25pbAkAAAIAAAABAgAAABtDYW4gZGVwb3NpdCBvbmx5IFN0YWtlVG9rZW4AAAABaQEAAAASRGVwb3NpdEdvdmVyblRva2VuAAAAAAQAAAALR292ZXJuVG9rZW4BAAAAIBKJZ/hXRGzhKnClqqGfZt9WOe3WY87qm3tHxlJnqDFeBAAAABVHb3Zlcm5Ub2tlbk1heERlcG9zaXQJAAJYAAAAAQUAAAALR292ZXJuVG9rZW4EAAAAA3BtdAkBAAAAB2V4dHJhY3QAAAABCAUAAAABaQAAAAdwYXltZW50AwMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAAAAAAAAgkBAAAAB2V4dHJhY3QAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQFAAAAC0dvdmVyblRva2VuBwQAAAAKY3VycmVudEtleQkAASwAAAACCQABLAAAAAIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwIAAAABXwkAAlgAAAABBQAAAAtHb3Zlcm5Ub2tlbgQAAAANY3VycmVudEFtb3VudAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAApjdXJyZW50S2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAGkN1cnJyZW50R292ZXJuVG9rZW5EZXBvc2l0CQAAZAAAAAIFAAAADWN1cnJlbnRBbW91bnQIBQAAAANwbXQAAAAGYW1vdW50BAAAAA5Hb3Zlcm5Ub2tlbktleQIAAAAVR292ZXJuVG9rZW5NYXhEZXBvc2l0BAAAABpNYXhHb3Zlcm5Ub2tlbkRlcG9zaXRlcktleQIAAAAaTWF4R292ZXJuVG9rZW5EZXBvc2l0ZXJLZXkEAAAAFU1heEdvdmVyblRva2VuRGVwb3NpdAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAA5Hb3Zlcm5Ub2tlbktleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAAAwkAAGYAAAACBQAAABpDdXJycmVudEdvdmVyblRva2VuRGVwb3NpdAUAAAAVTWF4R292ZXJuVG9rZW5EZXBvc2l0CQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAApjdXJyZW50S2V5BQAAABpDdXJycmVudEdvdmVyblRva2VuRGVwb3NpdAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAOR292ZXJuVG9rZW5LZXkFAAAAGkN1cnJyZW50R292ZXJuVG9rZW5EZXBvc2l0CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABpNYXhHb3Zlcm5Ub2tlbkRlcG9zaXRlcktleQUAAAAKY3VycmVudEtleQUAAAADbmlsCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAApjdXJyZW50S2V5BQAAABpDdXJycmVudEdvdmVyblRva2VuRGVwb3NpdAUAAAADbmlsCQAAAgAAAAECAAAAHUNhbiBkZXBvc2l0IG9u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WAAAAAEFAAAAC1N0YWtlZFRva2VuBAAAABFHb3Zlcm5Ub2tlbkFtb3VudAkAA+sAAAACBQAAAAR0aGlzBQAAAAtHb3Zlcm5Ub2tlbgQAAAANRnVuZEJveEhlaWdodAkAASwAAAACCQACWAAAAAEFAAAAEEZ1bmRCb3hBZGRyZXNzNTgCAAAADF9Qcml6ZUhlaWdodAQAAAAVVXNlckdvdmVyblRva2VuQW1vdW50BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAElVzZXJHb3Zlcm5Ub2tlbktleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABVVc2VyU3Rha2VkVG9rZW5BbW91bnQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAASVXNlclN0YWtlZFRva2VuS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAC1ByaXplQW1vdW50BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAEkZ1bmRCb3hTdGFrZWRUb2tlbgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAA5Hb3Zlcm5Ub2tlbktleQIAAAAVR292ZXJuVG9rZW5NYXhEZXBvc2l0BAAAABpNYXhHb3Zlcm5Ub2tlbkRlcG9zaXRlcktleQIAAAAaTWF4R292ZXJuVG9rZW5EZXBvc2l0ZXJLZXkEAAAAC1ByaXplV2lubmVyCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzBQAAABpNYXhHb3Zlcm5Ub2tlbkRlcG9zaXRlcktleQQAAAALUHJpemVIZWlnaHQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAANRnVuZEJveEhlaWdodAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABVNYXhHb3Zlcm5Ub2tlbkRlcG9zaXQE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", "height": 1328455, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 3HgDAV23LSs1MnxgAgZifQpYBv2iQptUeUoF4Qfr2Q2N Next: 5PqBXQbRAxzwHp8t25Zswpos9NaEKr8SAzYxnrUJ9pFq Diff:
Old | New | Differences | |
---|---|---|---|
97 | 97 | } | |
98 | 98 | let y = (x + t.amount) | |
99 | 99 | let z = { | |
100 | + | let j = getInteger(this, "StakeBalance") | |
101 | + | if ($isInstanceOf(j, "Int")) | |
102 | + | then { | |
103 | + | let k = j | |
104 | + | k | |
105 | + | } | |
106 | + | else 0 | |
107 | + | } | |
108 | + | let A = (z + t.amount) | |
109 | + | let B = { | |
100 | 110 | let j = getInteger(this, g) | |
101 | 111 | if ($isInstanceOf(j, "Int")) | |
102 | 112 | then { | |
109 | 119 | then throw("No enough GovernToken In Contract, Please deposit GovernTokens") | |
110 | 120 | else if ((s == 0)) | |
111 | 121 | then { | |
112 | - | let | |
113 | - | ScriptResult(WriteSet([DataEntry(g, | |
122 | + | let C = (B + 10) | |
123 | + | ScriptResult(WriteSet([DataEntry(g, C), DataEntry(f, y), DataEntry(p, w), DataEntry("StakeBalance", A), DataEntry(u, height)]), TransferSet([ScriptTransfer(a.caller, 10, e)])) | |
114 | 124 | } | |
115 | 125 | else if ((w > 50)) | |
116 | 126 | then { | |
117 | - | let | |
118 | - | let | |
119 | - | ScriptResult(WriteSet([DataEntry(g, | |
127 | + | let D = ((10 * w) * (y / s)) | |
128 | + | let C = (B + D) | |
129 | + | ScriptResult(WriteSet([DataEntry(g, D), DataEntry(f, y), DataEntry(p, w), DataEntry("StakeBalance", A), DataEntry(u, height)]), TransferSet([ScriptTransfer(a.caller, D, e)])) | |
120 | 130 | } | |
121 | 131 | else { | |
122 | - | let | |
123 | - | let | |
124 | - | ScriptResult(WriteSet([DataEntry(g, | |
132 | + | let D = (10 * (y / s)) | |
133 | + | let C = (B + D) | |
134 | + | ScriptResult(WriteSet([DataEntry(g, D), DataEntry(f, y), DataEntry(p, w), DataEntry("StakeBalance", A), DataEntry(u, height)]), TransferSet([ScriptTransfer(a.caller, D, e)])) | |
125 | 135 | } | |
126 | 136 | } | |
127 | 137 | else throw("Can deposit only StakeToken") | |
132 | 142 | @Callable(a) | |
133 | 143 | func DepositGovernToken () = { | |
134 | 144 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
135 | - | let | |
145 | + | let E = toBase58String(e) | |
136 | 146 | let t = extract(a.payment) | |
137 | 147 | if (if (isDefined(t.assetId)) | |
138 | 148 | then (extract(t.assetId) == e) | |
139 | 149 | else false) | |
140 | 150 | then { | |
141 | - | let | |
142 | - | let | |
143 | - | let j = getInteger(this, | |
151 | + | let F = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
152 | + | let G = { | |
153 | + | let j = getInteger(this, F) | |
144 | 154 | if ($isInstanceOf(j, "Int")) | |
145 | 155 | then { | |
146 | 156 | let k = j | |
148 | 158 | } | |
149 | 159 | else 0 | |
150 | 160 | } | |
151 | - | let | |
161 | + | let H = (G + t.amount) | |
152 | 162 | let b = "GovernTokenMaxDeposit" | |
153 | 163 | let c = "MaxGovernTokenDepositerKey" | |
154 | 164 | let i = { | |
160 | 170 | } | |
161 | 171 | else 0 | |
162 | 172 | } | |
163 | - | if (( | |
164 | - | then WriteSet([DataEntry( | |
165 | - | else WriteSet([DataEntry( | |
173 | + | if ((H > i)) | |
174 | + | then WriteSet([DataEntry(F, H), DataEntry(b, H), DataEntry(c, F)]) | |
175 | + | else WriteSet([DataEntry(F, H)]) | |
166 | 176 | } | |
167 | 177 | else throw("Can deposit only Govern Token") | |
168 | 178 | } | |
170 | 180 | ||
171 | 181 | ||
172 | 182 | @Callable(a) | |
173 | - | func WithdrawStakedFunds ( | |
183 | + | func WithdrawStakedFunds (I) = { | |
174 | 184 | let d = base58'GECLRH2fx2Xxix5gmrGV92AMt1A9LPohRpqwqRE16mwr' | |
175 | 185 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
176 | 186 | let f = ((toBase58String(a.caller.bytes) + "_") + toBase58String(d)) | |
177 | 187 | let g = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
178 | - | let | |
179 | - | let | |
188 | + | let F = toBase58String(a.caller.bytes) | |
189 | + | let G = { | |
180 | 190 | let j = getInteger(this, f) | |
181 | 191 | if ($isInstanceOf(j, "Int")) | |
182 | 192 | then { | |
185 | 195 | } | |
186 | 196 | else 0 | |
187 | 197 | } | |
188 | - | let | |
189 | - | if ((0 > | |
198 | + | let J = (G - I) | |
199 | + | if ((0 > I)) | |
190 | 200 | then throw("Can't withdraw negative amount") | |
191 | - | else if ((0 > | |
192 | - | then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString( | |
201 | + | else if ((0 > J)) | |
202 | + | then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString(G))) | |
193 | 203 | else { | |
194 | - | let | |
195 | - | if ((1 > | |
204 | + | let K = assetBalance(this, e) | |
205 | + | if ((1 > K)) | |
196 | 206 | then throw("No enough GovernToken In Contract") | |
197 | - | else ScriptResult(WriteSet([DataEntry(g, 1), DataEntry(f, | |
207 | + | else ScriptResult(WriteSet([DataEntry(g, 1), DataEntry(f, J)]), TransferSet([ScriptTransfer(a.caller, 1, e), ScriptTransfer(a.caller, I, d)])) | |
198 | 208 | } | |
199 | 209 | } | |
200 | 210 | ||
201 | 211 | ||
202 | 212 | ||
203 | 213 | @Callable(a) | |
204 | - | func HarvestGovernToiken ( | |
214 | + | func HarvestGovernToiken (I) = { | |
205 | 215 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
206 | 216 | let g = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
207 | - | let | |
208 | - | let | |
217 | + | let F = toBase58String(a.caller.bytes) | |
218 | + | let G = { | |
209 | 219 | let j = getInteger(this, g) | |
210 | 220 | if ($isInstanceOf(j, "Int")) | |
211 | 221 | then { | |
214 | 224 | } | |
215 | 225 | else 0 | |
216 | 226 | } | |
217 | - | let | |
218 | - | if ((0 > | |
227 | + | let J = (G - I) | |
228 | + | if ((0 > I)) | |
219 | 229 | then throw("Can't withdraw negative amount") | |
220 | - | else if ((0 > | |
221 | - | then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString( | |
230 | + | else if ((0 > J)) | |
231 | + | then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString(G))) | |
222 | 232 | else { | |
223 | - | let | |
224 | - | ScriptResult(WriteSet([DataEntry(g, | |
233 | + | let K = assetBalance(this, e) | |
234 | + | ScriptResult(WriteSet([DataEntry(g, J)]), TransferSet([ScriptTransfer(a.caller, I, e)])) | |
225 | 235 | } | |
226 | 236 | } | |
227 | 237 | ||
234 | 244 | let q = base58'3MsH5Hr1qQYUnwq4HTpiaGpXQi6cGPUsa5n' | |
235 | 245 | let f = ((toBase58String(a.caller.bytes) + "_") + toBase58String(d)) | |
236 | 246 | let g = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
237 | - | let | |
238 | - | let | |
239 | - | let | |
240 | - | let | |
247 | + | let L = ((toBase58String(q) + "_") + toBase58String(d)) | |
248 | + | let K = assetBalance(this, e) | |
249 | + | let M = (toBase58String(q) + "_PrizeHeight") | |
250 | + | let N = { | |
241 | 251 | let j = getInteger(this, g) | |
242 | 252 | if ($isInstanceOf(j, "Int")) | |
243 | 253 | then { | |
246 | 256 | } | |
247 | 257 | else 0 | |
248 | 258 | } | |
249 | - | let | |
259 | + | let O = { | |
250 | 260 | let j = getInteger(this, f) | |
251 | 261 | if ($isInstanceOf(j, "Int")) | |
252 | 262 | then { | |
255 | 265 | } | |
256 | 266 | else 0 | |
257 | 267 | } | |
258 | - | let | |
259 | - | let j = getInteger(this, | |
268 | + | let P = { | |
269 | + | let j = getInteger(this, L) | |
260 | 270 | if ($isInstanceOf(j, "Int")) | |
261 | 271 | then { | |
262 | 272 | let k = j | |
266 | 276 | } | |
267 | 277 | let b = "GovernTokenMaxDeposit" | |
268 | 278 | let c = "MaxGovernTokenDepositerKey" | |
269 | - | let | |
270 | - | let | |
271 | - | let j = getInteger(this, | |
279 | + | let Q = getStringValue(this, c) | |
280 | + | let R = { | |
281 | + | let j = getInteger(this, M) | |
272 | 282 | if ($isInstanceOf(j, "Int")) | |
273 | 283 | then { | |
274 | 284 | let k = j | |
285 | 295 | } | |
286 | 296 | else 0 | |
287 | 297 | } | |
288 | - | if (if (( | |
298 | + | if (if ((P == 0)) | |
289 | 299 | then true | |
290 | - | else (100 > | |
300 | + | else (100 > K)) | |
291 | 301 | then throw("No prize to Claim or No enough Govern Token en Contract") | |
292 | - | else if ((g != | |
302 | + | else if ((g != Q)) | |
293 | 303 | then throw("You are not the winner hence cannot claim the reward ") | |
294 | - | else if ((1 > | |
304 | + | else if ((1 > O)) | |
295 | 305 | then throw(("You have to Stake StakedToken to claim reward | |
296 | - | Your Balance of Staked Tokens is: " + toString( | |
297 | - | else if (if (if (( | |
298 | - | then (height >= ( | |
306 | + | Your Balance of Staked Tokens is: " + toString(O))) | |
307 | + | else if (if (if ((N >= 100)) | |
308 | + | then (height >= (R + 10)) | |
299 | 309 | else false) | |
300 | 310 | then (height > 0) | |
301 | 311 | else false) | |
302 | - | then if (( | |
303 | - | then ScriptResult(WriteSet([DataEntry( | |
312 | + | then if ((N >= i)) | |
313 | + | then ScriptResult(WriteSet([DataEntry(Q, P), DataEntry(L, 0), DataEntry(b, 0), DataEntry(g, 0), DataEntry(c, "")]), TransferSet([ScriptTransfer(a.caller, P, d), ScriptTransfer(a.caller, 100, e)])) | |
304 | 314 | else throw((("You should deposit at least " + toString(i)) + " to be able to claim reward")) | |
305 | 315 | else throw(((((((("You have to deposit 100 GovernToken to claim Reward | |
306 | - | Your Balance is: " + toString( | |
307 | - | Deposit done at: ") + toString( | |
316 | + | Your Balance is: " + toString(N)) + " | |
317 | + | Deposit done at: ") + toString(R)) + " And wait:") + toString((R + 10))) + "And Height is:") + toString(height))) | |
308 | 318 | } | |
309 | 319 | ||
310 | 320 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 3 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | ||
5 | 5 | ||
6 | 6 | @Callable(a) | |
7 | 7 | func ReadPoolData () = { | |
8 | 8 | let b = "GovernTokenMaxDeposit" | |
9 | 9 | let c = "MaxGovernTokenDepositerKey" | |
10 | 10 | let d = base58'GECLRH2fx2Xxix5gmrGV92AMt1A9LPohRpqwqRE16mwr' | |
11 | 11 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
12 | 12 | let f = ((toBase58String(a.caller.bytes) + "_") + toBase58String(d)) | |
13 | 13 | let g = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
14 | 14 | let h = getStringValue(this, c) | |
15 | 15 | let i = { | |
16 | 16 | let j = getInteger(this, b) | |
17 | 17 | if ($isInstanceOf(j, "Int")) | |
18 | 18 | then { | |
19 | 19 | let k = j | |
20 | 20 | k | |
21 | 21 | } | |
22 | 22 | else 0 | |
23 | 23 | } | |
24 | 24 | let l = getStringValue(this, g) | |
25 | 25 | let m = { | |
26 | 26 | let j = getInteger(this, g) | |
27 | 27 | if ($isInstanceOf(j, "Int")) | |
28 | 28 | then { | |
29 | 29 | let k = j | |
30 | 30 | k | |
31 | 31 | } | |
32 | 32 | else 0 | |
33 | 33 | } | |
34 | 34 | let n = getStringValue(this, f) | |
35 | 35 | let o = { | |
36 | 36 | let j = getInteger(this, f) | |
37 | 37 | if ($isInstanceOf(j, "Int")) | |
38 | 38 | then { | |
39 | 39 | let k = j | |
40 | 40 | k | |
41 | 41 | } | |
42 | 42 | else 0 | |
43 | 43 | } | |
44 | 44 | throw(((((((("Winner is.....: " + h) + " Balance is: ") + toString(i)) + " | |
45 | 45 | Staked Token in your Balance is.....: ") + toString(o)) + " | |
46 | 46 | Govern Token in your Balance is.....: ") + toString(m))) | |
47 | 47 | } | |
48 | 48 | ||
49 | 49 | ||
50 | 50 | ||
51 | 51 | @Callable(a) | |
52 | 52 | func ResetAccount () = { | |
53 | 53 | let d = base58'GECLRH2fx2Xxix5gmrGV92AMt1A9LPohRpqwqRE16mwr' | |
54 | 54 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
55 | 55 | let f = ((toBase58String(a.caller.bytes) + "_") + toBase58String(d)) | |
56 | 56 | let g = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
57 | 57 | let p = (toBase58String(a.caller.bytes) + "_StakedTransactions") | |
58 | 58 | WriteSet([DataEntry(g, 0), DataEntry(f, 0), DataEntry(p, 0)]) | |
59 | 59 | } | |
60 | 60 | ||
61 | 61 | ||
62 | 62 | ||
63 | 63 | @Callable(a) | |
64 | 64 | func Stake () = { | |
65 | 65 | let q = "3MsH5Hr1qQYUnwq4HTpiaGpXQi6cGPUsa5n" | |
66 | 66 | let d = base58'GECLRH2fx2Xxix5gmrGV92AMt1A9LPohRpqwqRE16mwr' | |
67 | 67 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
68 | 68 | let r = assetBalance(this, e) | |
69 | 69 | let s = assetBalance(this, d) | |
70 | 70 | let t = extract(a.payment) | |
71 | 71 | if (if ((t.amount > 0)) | |
72 | 72 | then (t.assetId == d) | |
73 | 73 | else false) | |
74 | 74 | then { | |
75 | 75 | let f = ((toBase58String(a.caller.bytes) + "_") + toBase58String(d)) | |
76 | 76 | let g = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
77 | 77 | let p = (toBase58String(a.caller.bytes) + "_StakedTransactions") | |
78 | 78 | let u = (toBase58String(a.caller.bytes) + "_PrizeHeight") | |
79 | 79 | let v = { | |
80 | 80 | let j = getInteger(this, p) | |
81 | 81 | if ($isInstanceOf(j, "Int")) | |
82 | 82 | then { | |
83 | 83 | let k = j | |
84 | 84 | k | |
85 | 85 | } | |
86 | 86 | else 0 | |
87 | 87 | } | |
88 | 88 | let w = (v + 1) | |
89 | 89 | let x = { | |
90 | 90 | let j = getInteger(this, f) | |
91 | 91 | if ($isInstanceOf(j, "Int")) | |
92 | 92 | then { | |
93 | 93 | let k = j | |
94 | 94 | k | |
95 | 95 | } | |
96 | 96 | else 0 | |
97 | 97 | } | |
98 | 98 | let y = (x + t.amount) | |
99 | 99 | let z = { | |
100 | + | let j = getInteger(this, "StakeBalance") | |
101 | + | if ($isInstanceOf(j, "Int")) | |
102 | + | then { | |
103 | + | let k = j | |
104 | + | k | |
105 | + | } | |
106 | + | else 0 | |
107 | + | } | |
108 | + | let A = (z + t.amount) | |
109 | + | let B = { | |
100 | 110 | let j = getInteger(this, g) | |
101 | 111 | if ($isInstanceOf(j, "Int")) | |
102 | 112 | then { | |
103 | 113 | let k = j | |
104 | 114 | k | |
105 | 115 | } | |
106 | 116 | else 0 | |
107 | 117 | } | |
108 | 118 | if ((1 > r)) | |
109 | 119 | then throw("No enough GovernToken In Contract, Please deposit GovernTokens") | |
110 | 120 | else if ((s == 0)) | |
111 | 121 | then { | |
112 | - | let | |
113 | - | ScriptResult(WriteSet([DataEntry(g, | |
122 | + | let C = (B + 10) | |
123 | + | ScriptResult(WriteSet([DataEntry(g, C), DataEntry(f, y), DataEntry(p, w), DataEntry("StakeBalance", A), DataEntry(u, height)]), TransferSet([ScriptTransfer(a.caller, 10, e)])) | |
114 | 124 | } | |
115 | 125 | else if ((w > 50)) | |
116 | 126 | then { | |
117 | - | let | |
118 | - | let | |
119 | - | ScriptResult(WriteSet([DataEntry(g, | |
127 | + | let D = ((10 * w) * (y / s)) | |
128 | + | let C = (B + D) | |
129 | + | ScriptResult(WriteSet([DataEntry(g, D), DataEntry(f, y), DataEntry(p, w), DataEntry("StakeBalance", A), DataEntry(u, height)]), TransferSet([ScriptTransfer(a.caller, D, e)])) | |
120 | 130 | } | |
121 | 131 | else { | |
122 | - | let | |
123 | - | let | |
124 | - | ScriptResult(WriteSet([DataEntry(g, | |
132 | + | let D = (10 * (y / s)) | |
133 | + | let C = (B + D) | |
134 | + | ScriptResult(WriteSet([DataEntry(g, D), DataEntry(f, y), DataEntry(p, w), DataEntry("StakeBalance", A), DataEntry(u, height)]), TransferSet([ScriptTransfer(a.caller, D, e)])) | |
125 | 135 | } | |
126 | 136 | } | |
127 | 137 | else throw("Can deposit only StakeToken") | |
128 | 138 | } | |
129 | 139 | ||
130 | 140 | ||
131 | 141 | ||
132 | 142 | @Callable(a) | |
133 | 143 | func DepositGovernToken () = { | |
134 | 144 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
135 | - | let | |
145 | + | let E = toBase58String(e) | |
136 | 146 | let t = extract(a.payment) | |
137 | 147 | if (if (isDefined(t.assetId)) | |
138 | 148 | then (extract(t.assetId) == e) | |
139 | 149 | else false) | |
140 | 150 | then { | |
141 | - | let | |
142 | - | let | |
143 | - | let j = getInteger(this, | |
151 | + | let F = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
152 | + | let G = { | |
153 | + | let j = getInteger(this, F) | |
144 | 154 | if ($isInstanceOf(j, "Int")) | |
145 | 155 | then { | |
146 | 156 | let k = j | |
147 | 157 | k | |
148 | 158 | } | |
149 | 159 | else 0 | |
150 | 160 | } | |
151 | - | let | |
161 | + | let H = (G + t.amount) | |
152 | 162 | let b = "GovernTokenMaxDeposit" | |
153 | 163 | let c = "MaxGovernTokenDepositerKey" | |
154 | 164 | let i = { | |
155 | 165 | let j = getInteger(this, b) | |
156 | 166 | if ($isInstanceOf(j, "Int")) | |
157 | 167 | then { | |
158 | 168 | let k = j | |
159 | 169 | k | |
160 | 170 | } | |
161 | 171 | else 0 | |
162 | 172 | } | |
163 | - | if (( | |
164 | - | then WriteSet([DataEntry( | |
165 | - | else WriteSet([DataEntry( | |
173 | + | if ((H > i)) | |
174 | + | then WriteSet([DataEntry(F, H), DataEntry(b, H), DataEntry(c, F)]) | |
175 | + | else WriteSet([DataEntry(F, H)]) | |
166 | 176 | } | |
167 | 177 | else throw("Can deposit only Govern Token") | |
168 | 178 | } | |
169 | 179 | ||
170 | 180 | ||
171 | 181 | ||
172 | 182 | @Callable(a) | |
173 | - | func WithdrawStakedFunds ( | |
183 | + | func WithdrawStakedFunds (I) = { | |
174 | 184 | let d = base58'GECLRH2fx2Xxix5gmrGV92AMt1A9LPohRpqwqRE16mwr' | |
175 | 185 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
176 | 186 | let f = ((toBase58String(a.caller.bytes) + "_") + toBase58String(d)) | |
177 | 187 | let g = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
178 | - | let | |
179 | - | let | |
188 | + | let F = toBase58String(a.caller.bytes) | |
189 | + | let G = { | |
180 | 190 | let j = getInteger(this, f) | |
181 | 191 | if ($isInstanceOf(j, "Int")) | |
182 | 192 | then { | |
183 | 193 | let k = j | |
184 | 194 | k | |
185 | 195 | } | |
186 | 196 | else 0 | |
187 | 197 | } | |
188 | - | let | |
189 | - | if ((0 > | |
198 | + | let J = (G - I) | |
199 | + | if ((0 > I)) | |
190 | 200 | then throw("Can't withdraw negative amount") | |
191 | - | else if ((0 > | |
192 | - | then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString( | |
201 | + | else if ((0 > J)) | |
202 | + | then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString(G))) | |
193 | 203 | else { | |
194 | - | let | |
195 | - | if ((1 > | |
204 | + | let K = assetBalance(this, e) | |
205 | + | if ((1 > K)) | |
196 | 206 | then throw("No enough GovernToken In Contract") | |
197 | - | else ScriptResult(WriteSet([DataEntry(g, 1), DataEntry(f, | |
207 | + | else ScriptResult(WriteSet([DataEntry(g, 1), DataEntry(f, J)]), TransferSet([ScriptTransfer(a.caller, 1, e), ScriptTransfer(a.caller, I, d)])) | |
198 | 208 | } | |
199 | 209 | } | |
200 | 210 | ||
201 | 211 | ||
202 | 212 | ||
203 | 213 | @Callable(a) | |
204 | - | func HarvestGovernToiken ( | |
214 | + | func HarvestGovernToiken (I) = { | |
205 | 215 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
206 | 216 | let g = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
207 | - | let | |
208 | - | let | |
217 | + | let F = toBase58String(a.caller.bytes) | |
218 | + | let G = { | |
209 | 219 | let j = getInteger(this, g) | |
210 | 220 | if ($isInstanceOf(j, "Int")) | |
211 | 221 | then { | |
212 | 222 | let k = j | |
213 | 223 | k | |
214 | 224 | } | |
215 | 225 | else 0 | |
216 | 226 | } | |
217 | - | let | |
218 | - | if ((0 > | |
227 | + | let J = (G - I) | |
228 | + | if ((0 > I)) | |
219 | 229 | then throw("Can't withdraw negative amount") | |
220 | - | else if ((0 > | |
221 | - | then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString( | |
230 | + | else if ((0 > J)) | |
231 | + | then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString(G))) | |
222 | 232 | else { | |
223 | - | let | |
224 | - | ScriptResult(WriteSet([DataEntry(g, | |
233 | + | let K = assetBalance(this, e) | |
234 | + | ScriptResult(WriteSet([DataEntry(g, J)]), TransferSet([ScriptTransfer(a.caller, I, e)])) | |
225 | 235 | } | |
226 | 236 | } | |
227 | 237 | ||
228 | 238 | ||
229 | 239 | ||
230 | 240 | @Callable(a) | |
231 | 241 | func ClaimPrize () = { | |
232 | 242 | let d = base58'GECLRH2fx2Xxix5gmrGV92AMt1A9LPohRpqwqRE16mwr' | |
233 | 243 | let e = base58'2FMrxDLdQhauSY7d1uDUyKP1MpxkM7BeWA2UMnk3cG3P' | |
234 | 244 | let q = base58'3MsH5Hr1qQYUnwq4HTpiaGpXQi6cGPUsa5n' | |
235 | 245 | let f = ((toBase58String(a.caller.bytes) + "_") + toBase58String(d)) | |
236 | 246 | let g = ((toBase58String(a.caller.bytes) + "_") + toBase58String(e)) | |
237 | - | let | |
238 | - | let | |
239 | - | let | |
240 | - | let | |
247 | + | let L = ((toBase58String(q) + "_") + toBase58String(d)) | |
248 | + | let K = assetBalance(this, e) | |
249 | + | let M = (toBase58String(q) + "_PrizeHeight") | |
250 | + | let N = { | |
241 | 251 | let j = getInteger(this, g) | |
242 | 252 | if ($isInstanceOf(j, "Int")) | |
243 | 253 | then { | |
244 | 254 | let k = j | |
245 | 255 | k | |
246 | 256 | } | |
247 | 257 | else 0 | |
248 | 258 | } | |
249 | - | let | |
259 | + | let O = { | |
250 | 260 | let j = getInteger(this, f) | |
251 | 261 | if ($isInstanceOf(j, "Int")) | |
252 | 262 | then { | |
253 | 263 | let k = j | |
254 | 264 | k | |
255 | 265 | } | |
256 | 266 | else 0 | |
257 | 267 | } | |
258 | - | let | |
259 | - | let j = getInteger(this, | |
268 | + | let P = { | |
269 | + | let j = getInteger(this, L) | |
260 | 270 | if ($isInstanceOf(j, "Int")) | |
261 | 271 | then { | |
262 | 272 | let k = j | |
263 | 273 | k | |
264 | 274 | } | |
265 | 275 | else 0 | |
266 | 276 | } | |
267 | 277 | let b = "GovernTokenMaxDeposit" | |
268 | 278 | let c = "MaxGovernTokenDepositerKey" | |
269 | - | let | |
270 | - | let | |
271 | - | let j = getInteger(this, | |
279 | + | let Q = getStringValue(this, c) | |
280 | + | let R = { | |
281 | + | let j = getInteger(this, M) | |
272 | 282 | if ($isInstanceOf(j, "Int")) | |
273 | 283 | then { | |
274 | 284 | let k = j | |
275 | 285 | k | |
276 | 286 | } | |
277 | 287 | else 0 | |
278 | 288 | } | |
279 | 289 | let i = { | |
280 | 290 | let j = getInteger(this, b) | |
281 | 291 | if ($isInstanceOf(j, "Int")) | |
282 | 292 | then { | |
283 | 293 | let k = j | |
284 | 294 | k | |
285 | 295 | } | |
286 | 296 | else 0 | |
287 | 297 | } | |
288 | - | if (if (( | |
298 | + | if (if ((P == 0)) | |
289 | 299 | then true | |
290 | - | else (100 > | |
300 | + | else (100 > K)) | |
291 | 301 | then throw("No prize to Claim or No enough Govern Token en Contract") | |
292 | - | else if ((g != | |
302 | + | else if ((g != Q)) | |
293 | 303 | then throw("You are not the winner hence cannot claim the reward ") | |
294 | - | else if ((1 > | |
304 | + | else if ((1 > O)) | |
295 | 305 | then throw(("You have to Stake StakedToken to claim reward | |
296 | - | Your Balance of Staked Tokens is: " + toString( | |
297 | - | else if (if (if (( | |
298 | - | then (height >= ( | |
306 | + | Your Balance of Staked Tokens is: " + toString(O))) | |
307 | + | else if (if (if ((N >= 100)) | |
308 | + | then (height >= (R + 10)) | |
299 | 309 | else false) | |
300 | 310 | then (height > 0) | |
301 | 311 | else false) | |
302 | - | then if (( | |
303 | - | then ScriptResult(WriteSet([DataEntry( | |
312 | + | then if ((N >= i)) | |
313 | + | then ScriptResult(WriteSet([DataEntry(Q, P), DataEntry(L, 0), DataEntry(b, 0), DataEntry(g, 0), DataEntry(c, "")]), TransferSet([ScriptTransfer(a.caller, P, d), ScriptTransfer(a.caller, 100, e)])) | |
304 | 314 | else throw((("You should deposit at least " + toString(i)) + " to be able to claim reward")) | |
305 | 315 | else throw(((((((("You have to deposit 100 GovernToken to claim Reward | |
306 | - | Your Balance is: " + toString( | |
307 | - | Deposit done at: ") + toString( | |
316 | + | Your Balance is: " + toString(N)) + " | |
317 | + | Deposit done at: ") + toString(R)) + " And wait:") + toString((R + 10))) + "And Height is:") + toString(height))) | |
308 | 318 | } | |
309 | 319 | ||
310 | 320 |
github/deemru/w8io/169f3d6 70.61 ms ◑![]()