tx · Ex7kX4VbJvB7PBhrHHDw6hLRBqL1uBa7Lh5M22terNx1

3PEZngxRNSDEJz2MiNUG3jAVBhhVFTNFQz2:  -0.01400000 Waves

2021.09.17 16:24 [2772019] smart account 3PEZngxRNSDEJz2MiNUG3jAVBhhVFTNFQz2 > SELF 0.00000000 Waves

{ "type": 13, "id": "Ex7kX4VbJvB7PBhrHHDw6hLRBqL1uBa7Lh5M22terNx1", "fee": 1400000, "feeAssetId": null, "timestamp": 1631885116070, "version": 2, "chainId": 87, "sender": "3PEZngxRNSDEJz2MiNUG3jAVBhhVFTNFQz2", "senderPublicKey": "8HhthX4cRpH5QMaK46KDBbQZhK75SQZYUjJZzBwHkaTK", "proofs": [ "rr8Yj9CMyTk7ZeF2mqAV25kwEy8sA7wKJu5xAD2vpJYUNhKtPa7TLGJX8rR1kMSuTGNcSeVFHzbV9DBf3nLYxtV" ], "script": "base64:AAIFAAAAAAAAC/4IAhIECgIIARIDCgEEEgASABIAEgMKAQgSAwoBCBIDCgEIEgMKAQgSBAoCCAgSAwoBCBIFCgMIAQESABoOCgJhMRIIbUFjY1BLZXkaDgoCYTISCG1BY2NBZGRyGhAKAmEzEgpmZWVQZXJjZW50GhMKAmE0Eg1vbGRFZ2dBc3NldElkGhgKAmE1EhJzd2FwRWdnRGFwcEFkZHJlc3MaFQoCYTYSD2tUb3RhbExpcXVpZGl0eRoSCgJhNxIMa0luaXRpYWxpemVkGhkKAmE4EhNrTGlxdWlkaXR5VGhyZXNob2xkGhcKAmE5EhFrRmFybVBhcnRpY2lwYW50cxoXCgJiMRIRa1RvdGFsU2hhcmVUb2tlbnMaEwoCYjISDWtTaGFyZUFzc2V0SWQaEgoCYjMSDGtGYXJtaW5nRGFwcBoWCgJiNBIQa01hcmtldFByb3h5RGFwcBoNCgJiNRIHa0xvY2tlZBoZCgJiNhITa1RvdGFsRmFybWluZ1Jld2FyZBoWCgJiNxIQa0Nlb0NvbGxlY3RlZEZlZRodCgJiOBIXa0Nlb0NvbGxlY3RlZEZlZU92ZXJhbGwaDgoCYjkSCGtUb0Rpc3RyGhUKAmMxEg9rVW5zdGFrZWRSZXdhcmQaGAoCYzISEmtMb2NrZWRJbnZlc3RtZW50cxoMCgJjMxIGZ2V0SW50GgkKAmM0EgNrZXkaDQoCYzUSByRtYXRjaDAaBwoCYzYSAWIaDAoCYzcSBmdldFN0choNCgJjOBIHZ2V0Qm9vbBoNCgJjORIHZ2V0U3RyQRoHCgJkMRIBYRoHCgJkMhIBaxoYCgJkMxISZ2V0TWFya2V0UHJveHlBZGRyGg4KAmQ0EghnZXRFZ2dJZBoVCgJkNRIPZ2V0U2hhcmVBc3NldElkGgcKAmQ2EgFpGgoKAmQ3EgRuYW1lGhYKAmQ4EhBtaW5pbXVtVGhyZXNob2xkGhEKAmQ5EgtzaGFyZVRva2VucxoQCgJlMRIKc2hhcmVUb2tlbhoHCgJlMhIBcxoQCgJlMxIKZWdnQXNzZXRJZBoUCgJlNBIOdG90YWxMaXF1aWRpdHkaFgoCZTUSEHRvdGFsU2hhcmVUb2tlbnMaHAoCZTYSFmN1cnJlbnRMaXF1aWRpdHlBbW91bnQaFwoCZTcSEXNoYXJlVG9rZW5zVG9HaXZlGhMKAmU4Eg1zaGFyZVRva2Vuc0lkGg0KAmU5EgdyZWlzc3VlGhYKAmYxEhBmYXJtUGFydGljaXBhbnRzGhMKAmYyEg1rUGFydGljaXBhdGVkGhkKAmYzEhNhbHJlYWR5UGFydGljaXBhdGVkGhkKAmY0EhNuZXdGYXJtUGFydGljaXBhbnRzGgkKAmY1EgNpZHMaEQoCZjYSC2Zhcm1pbmdEYXBwGhEKAmY3EgtjbGFpbVJld2FyZBoLCgJmOBIFYWNjdW0aCwoCZjkSBW5mdElkGgwKAmcxEgZpbnZSZXMaCQoCZzISA2ludBoMCgJnMxIGbmZ0SWRzGhAKAmc0Egpmb2xkUmVzdWx0GhMKAmc1Eg0kbGlzdDU3NDY1Nzc4GhMKAmc2Eg0kc2l6ZTU3NDY1Nzc4GhMKAmc3Eg0kYWNjMDU3NDY1Nzc4GhMKAmc4Eg0kYWNjMTU3NDY1Nzc4GhMKAmc5Eg0kYWNjMjU3NDY1Nzc4GhMKAmgxEg0kYWNjMzU3NDY1Nzc4GhMKAmgyEg0kYWNjNDU3NDY1Nzc4GhMKAmgzEg0kYWNjNTU3NDY1Nzc4GhMKAmg0Eg0kYWNjNjU3NDY1Nzc4GhMKAmg1Eg0kYWNjNzU3NDY1Nzc4GhMKAmg2Eg0kYWNjODU3NDY1Nzc4GhMKAmg3Eg0kYWNjOTU3NDY1Nzc4GhQKAmg4Eg4kYWNjMTA1NzQ2NTc3OBoUCgJoORIOJGFjYzExNTc0NjU3NzgaEwoCaTESDWNsYWltZWRSZXdhcmQaFAoCaTISDmZhcm1DZW9GZWVTaXplGg0KAmkzEgd0b0Rpc3RyGhgKAmk0EhJ0b3RhbEZhcm1pbmdSZXdhcmQaEwoCaTUSDWN1cnJlbnRDZW9GZWUaEwoCaTYSDWNlb0ZlZU92ZXJhbGwaDQoCaTcSB2FkZHJlc3MaHAoCaTgSFmN1cnJlbnRDZW9Db2xsZWN0ZWRGZWUaDwoCaTkSCWF1Y3Rpb25JZBoOCgJqMRIIZnVuY3Rpb24aDQoCajISB2Fzc2V0SWQaGAoCajMSEmZhcm1pbmdEYXBwQWRkcmVzcxoTCgJqNBINdXN0YWtlZFJld2FyZBoXCgJqNRIRdW5zdGFrZWRSZXdhcmROb3caFwoCajYSEW5ld1Vuc3Rha2VkUmV3YXJkGgoKAmo3EgR0eElkGggKAmo4EgJ0eBoPCgJqORIJa1JldmVydGVkGhAKAmsxEgp0eFJldmVydGVkGhAKAmsyEgptaW5CYWxhbmNlGhcKAmszEhFjdXJyZW50RWdnQmFsYW5jZRoPCgJrNBIJYWRkcmVzc2VzGh0KAms1Ehd0b3RhbFJld2FyZFRvRGlzdHJpYnV0ZRoSCgJrNhIMYWRkcmVzc1BhaXJzGhQKAms3Eg5wcm9jZXNzQWRkcmVzcxoRCgJrOBILYWRkcmVzc1BhaXIaEgoCazkSDGFkZHJlc3NQYXJ0cxoQCgJsMRIKYWRkcmVzc1N0choVCgJsMhIPdXNlclNoYXJlVG9rZW5zGhEKAmwzEgtrQWRkckVhcm5lZBoVCgJsNBIPYWRkclRvdGFsRWFybmVkGhMKAmw1Eg11c2VyUmV3YXJkTm93GgkKAmw2EgNyZXMaDAoCbDcSBnJlc3VsdBoVCgJsOBIPJGxpc3QxMDUwNzEwNTU0GhUKAmw5Eg8kc2l6ZTEwNTA3MTA1NTQaFQoCbTESDyRhY2MwMTA1MDcxMDU1NBoVCgJtMhIPJGFjYzExMDUwNzEwNTU0GhUKAm0zEg8kYWNjMjEwNTA3MTA1NTQaFQoCbTQSDyRhY2MzMTA1MDcxMDU1NBoVCgJtNRIPJGFjYzQxMDUwNzEwNTU0GhUKAm02Eg8kYWNjNTEwNTA3MTA1NTQaFQoCbTcSDyRhY2M2MTA1MDcxMDU1NBoVCgJtOBIPJGFjYzcxMDUwNzEwNTU0GhUKAm05Eg8kYWNjODEwNTA3MTA1NTQaFQoCbjESDyRhY2M5MTA1MDcxMDU1NBoWCgJuMhIQJGFjYzEwMTA1MDcxMDU1NBoWCgJuMxIQJGFjYzExMTA1MDcxMDU1NBoWCgJuNBIQJGFjYzEyMTA1MDcxMDU1NBoWCgJuNRIQJGFjYzEzMTA1MDcxMDU1NBoWCgJuNhIQJGFjYzE0MTA1MDcxMDU1NBoWCgJuNxIQJGFjYzE1MTA1MDcxMDU1NBoWCgJuOBIQJGFjYzE2MTA1MDcxMDU1NBoWCgJuORIQJGFjYzE3MTA1MDcxMDU1NBoWCgJvMRIQJGFjYzE4MTA1MDcxMDU1NBoWCgJvMhIQJGFjYzE5MTA1MDcxMDU1NBoWCgJvMxIQJGFjYzIwMTA1MDcxMDU1NBoWCgJvNBIQJGFjYzIxMTA1MDcxMDU1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BQAAAAJsOQAAAAAAAAAACQUAAAACbjEEAAAAAm4yCQEAAAACazcAAAACBQAAAAJuMQkAAZEAAAACBQAAAAJsOAAAAAAAAAAACQMJAAAAAAAAAgUAAAACbDkAAAAAAAAAAAoFAAAAAm4yBAAAAAJuMwkBAAAAAms3AAAAAgUAAAACbjIJAAGRAAAAAgUAAAACbDgAAAAAAAAAAAoDCQAAAAAAAAIFAAAAAmw5AAAAAAAAAAALBQAAAAJuMwQAAAACbjQJAQAAAAJrNwAAAAIFAAAAAm4zCQABkQAAAAIFAAAAAmw4AAAAAAAAAAALAwkAAAAAAAACBQAAAAJsOQAAAAAAAAAADAUAAAACbjQEAAAAAm41CQEAAAACazcAAAACBQAAAAJuNAkAAZEAAAACBQAAAAJsOAAAAAAAAAAADAMJAAAAAAAAAgUAAAACbDkAAAAAAAAAAA0FAAAAAm41BAAAAAJuNgkBAAAAAms3AAAAAgUAAAACbjUJAAGRAAAAAgUAAAACbDgAAAAAAAAAAA0DCQAAAAAAAAIFAAAAAmw5AAAAAAAAAAAOBQAAAAJuNgQAAAACbjcJAQAAAAJrNwAAAAIFAAAAAm42CQABkQAAAAIFAAAAAmw4AAAAAAAAAAAOAwkAAAAAAAACBQAAAAJsOQAAAAAAAAAADwUAAAACbjcEAAAAAm44CQEAAAACazcAAAACBQAAAAJuNwkAAZEAAAACBQAAAAJsOAAAAAAAAAAADwMJAAAAAAAAAgUAAAACbDkAAAAAAAAAABAFAAAAAm44BAAAAAJuOQkBAAAAAms3AAAAAgUAAAACbjgJAAGRAAAAAgUAAAACbDgAAAAAAAAAABADCQAAAAAAAAIFAAAAAmw5AAAAAAAAAAARBQAAAAJuOQQAAAACbzEJAQAAAAJrNwAAAAIFAAAAAm45CQABkQAAAAIFAAAAAmw4AAAAAAAAAAARAwkAAAAAAAACBQAAAAJsOQAAAAAAAAAAEgUAAAACbzEEAAAAAm8yCQEAAAACazcAAAACBQAAAAJvMQkAAZEAAAACBQAAAAJsOAAAAAAAAAAAEgMJAAAAAAAAAgUAAAACbDkAAAAAAAAAABMFAAAAAm8yBAAAAAJvMwkBAAAAAms3AAAAAgUAAAACbzIJAAGRAAAAAgUAAAACbDgAAAAAAAAAABMDCQAAAAAA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", "height": 2772019, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AwT4F5vYA7go9HxcJEFA5a2qdC9gnEgLEtWgZkCboocW Next: 8y6QHsuvjPm1FfXMhUtbzuRa9nJr4Rp1HRaApoJwamWV Diff:
OldNewDifferences
8787 then throw("_1")
8888 else if ((getBool(kInitialized) != unit))
8989 then throw("_2")
90- else if (if ((i.payments[0].amount != 10))
90+ else if (if ((i.payments[0].amount != (10 * 1000000)))
9191 then true
9292 else (i.payments[0].assetId != getEggId()))
9393 then throw("_20")
169169
170170 let nftIds = split(ids, ";")
171171 let foldResult = {
172- let $list57345766 = nftIds
173- let $size57345766 = size($list57345766)
174- let $acc057345766 = 0
175- if (($size57345766 == 0))
176- then $acc057345766
172+ let $list57465778 = nftIds
173+ let $size57465778 = size($list57465778)
174+ let $acc057465778 = 0
175+ if (($size57465778 == 0))
176+ then $acc057465778
177177 else {
178- let $acc157345766 = claimReward($acc057345766, $list57345766[0])
179- if (($size57345766 == 1))
180- then $acc157345766
178+ let $acc157465778 = claimReward($acc057465778, $list57465778[0])
179+ if (($size57465778 == 1))
180+ then $acc157465778
181181 else {
182- let $acc257345766 = claimReward($acc157345766, $list57345766[1])
183- if (($size57345766 == 2))
184- then $acc257345766
182+ let $acc257465778 = claimReward($acc157465778, $list57465778[1])
183+ if (($size57465778 == 2))
184+ then $acc257465778
185185 else {
186- let $acc357345766 = claimReward($acc257345766, $list57345766[2])
187- if (($size57345766 == 3))
188- then $acc357345766
186+ let $acc357465778 = claimReward($acc257465778, $list57465778[2])
187+ if (($size57465778 == 3))
188+ then $acc357465778
189189 else {
190- let $acc457345766 = claimReward($acc357345766, $list57345766[3])
191- if (($size57345766 == 4))
192- then $acc457345766
190+ let $acc457465778 = claimReward($acc357465778, $list57465778[3])
191+ if (($size57465778 == 4))
192+ then $acc457465778
193193 else {
194- let $acc557345766 = claimReward($acc457345766, $list57345766[4])
195- if (($size57345766 == 5))
196- then $acc557345766
194+ let $acc557465778 = claimReward($acc457465778, $list57465778[4])
195+ if (($size57465778 == 5))
196+ then $acc557465778
197197 else {
198- let $acc657345766 = claimReward($acc557345766, $list57345766[5])
199- if (($size57345766 == 6))
200- then $acc657345766
198+ let $acc657465778 = claimReward($acc557465778, $list57465778[5])
199+ if (($size57465778 == 6))
200+ then $acc657465778
201201 else {
202- let $acc757345766 = claimReward($acc657345766, $list57345766[6])
203- if (($size57345766 == 7))
204- then $acc757345766
202+ let $acc757465778 = claimReward($acc657465778, $list57465778[6])
203+ if (($size57465778 == 7))
204+ then $acc757465778
205205 else {
206- let $acc857345766 = claimReward($acc757345766, $list57345766[7])
207- if (($size57345766 == 8))
208- then $acc857345766
206+ let $acc857465778 = claimReward($acc757465778, $list57465778[7])
207+ if (($size57465778 == 8))
208+ then $acc857465778
209209 else {
210- let $acc957345766 = claimReward($acc857345766, $list57345766[8])
211- if (($size57345766 == 9))
212- then $acc957345766
210+ let $acc957465778 = claimReward($acc857465778, $list57465778[8])
211+ if (($size57465778 == 9))
212+ then $acc957465778
213213 else {
214- let $acc1057345766 = claimReward($acc957345766, $list57345766[9])
215- if (($size57345766 == 10))
216- then $acc1057345766
214+ let $acc1057465778 = claimReward($acc957465778, $list57465778[9])
215+ if (($size57465778 == 10))
216+ then $acc1057465778
217217 else {
218- let $acc1157345766 = claimReward($acc1057345766, $list57345766[10])
218+ let $acc1157465778 = claimReward($acc1057465778, $list57465778[10])
219219 throw("List size exceed 10")
220220 }
221221 }
344344 }
345345
346346 let result = {
347- let $list1049510542 = addressPairs
348- let $size1049510542 = size($list1049510542)
349- let $acc01049510542 = $Tuple2(0, nil)
350- if (($size1049510542 == 0))
351- then $acc01049510542
347+ let $list1050710554 = addressPairs
348+ let $size1050710554 = size($list1050710554)
349+ let $acc01050710554 = $Tuple2(0, nil)
350+ if (($size1050710554 == 0))
351+ then $acc01050710554
352352 else {
353- let $acc11049510542 = processAddress($acc01049510542, $list1049510542[0])
354- if (($size1049510542 == 1))
355- then $acc11049510542
353+ let $acc11050710554 = processAddress($acc01050710554, $list1050710554[0])
354+ if (($size1050710554 == 1))
355+ then $acc11050710554
356356 else {
357- let $acc21049510542 = processAddress($acc11049510542, $list1049510542[1])
358- if (($size1049510542 == 2))
359- then $acc21049510542
357+ let $acc21050710554 = processAddress($acc11050710554, $list1050710554[1])
358+ if (($size1050710554 == 2))
359+ then $acc21050710554
360360 else {
361- let $acc31049510542 = processAddress($acc21049510542, $list1049510542[2])
362- if (($size1049510542 == 3))
363- then $acc31049510542
361+ let $acc31050710554 = processAddress($acc21050710554, $list1050710554[2])
362+ if (($size1050710554 == 3))
363+ then $acc31050710554
364364 else {
365- let $acc41049510542 = processAddress($acc31049510542, $list1049510542[3])
366- if (($size1049510542 == 4))
367- then $acc41049510542
365+ let $acc41050710554 = processAddress($acc31050710554, $list1050710554[3])
366+ if (($size1050710554 == 4))
367+ then $acc41050710554
368368 else {
369- let $acc51049510542 = processAddress($acc41049510542, $list1049510542[4])
370- if (($size1049510542 == 5))
371- then $acc51049510542
369+ let $acc51050710554 = processAddress($acc41050710554, $list1050710554[4])
370+ if (($size1050710554 == 5))
371+ then $acc51050710554
372372 else {
373- let $acc61049510542 = processAddress($acc51049510542, $list1049510542[5])
374- if (($size1049510542 == 6))
375- then $acc61049510542
373+ let $acc61050710554 = processAddress($acc51050710554, $list1050710554[5])
374+ if (($size1050710554 == 6))
375+ then $acc61050710554
376376 else {
377- let $acc71049510542 = processAddress($acc61049510542, $list1049510542[6])
378- if (($size1049510542 == 7))
379- then $acc71049510542
377+ let $acc71050710554 = processAddress($acc61050710554, $list1050710554[6])
378+ if (($size1050710554 == 7))
379+ then $acc71050710554
380380 else {
381- let $acc81049510542 = processAddress($acc71049510542, $list1049510542[7])
382- if (($size1049510542 == 8))
383- then $acc81049510542
381+ let $acc81050710554 = processAddress($acc71050710554, $list1050710554[7])
382+ if (($size1050710554 == 8))
383+ then $acc81050710554
384384 else {
385- let $acc91049510542 = processAddress($acc81049510542, $list1049510542[8])
386- if (($size1049510542 == 9))
387- then $acc91049510542
385+ let $acc91050710554 = processAddress($acc81050710554, $list1050710554[8])
386+ if (($size1050710554 == 9))
387+ then $acc91050710554
388388 else {
389- let $acc101049510542 = processAddress($acc91049510542, $list1049510542[9])
390- if (($size1049510542 == 10))
391- then $acc101049510542
389+ let $acc101050710554 = processAddress($acc91050710554, $list1050710554[9])
390+ if (($size1050710554 == 10))
391+ then $acc101050710554
392392 else {
393- let $acc111049510542 = processAddress($acc101049510542, $list1049510542[10])
394- if (($size1049510542 == 11))
395- then $acc111049510542
393+ let $acc111050710554 = processAddress($acc101050710554, $list1050710554[10])
394+ if (($size1050710554 == 11))
395+ then $acc111050710554
396396 else {
397- let $acc121049510542 = processAddress($acc111049510542, $list1049510542[11])
398- if (($size1049510542 == 12))
399- then $acc121049510542
397+ let $acc121050710554 = processAddress($acc111050710554, $list1050710554[11])
398+ if (($size1050710554 == 12))
399+ then $acc121050710554
400400 else {
401- let $acc131049510542 = processAddress($acc121049510542, $list1049510542[12])
402- if (($size1049510542 == 13))
403- then $acc131049510542
401+ let $acc131050710554 = processAddress($acc121050710554, $list1050710554[12])
402+ if (($size1050710554 == 13))
403+ then $acc131050710554
404404 else {
405- let $acc141049510542 = processAddress($acc131049510542, $list1049510542[13])
406- if (($size1049510542 == 14))
407- then $acc141049510542
405+ let $acc141050710554 = processAddress($acc131050710554, $list1050710554[13])
406+ if (($size1050710554 == 14))
407+ then $acc141050710554
408408 else {
409- let $acc151049510542 = processAddress($acc141049510542, $list1049510542[14])
410- if (($size1049510542 == 15))
411- then $acc151049510542
409+ let $acc151050710554 = processAddress($acc141050710554, $list1050710554[14])
410+ if (($size1050710554 == 15))
411+ then $acc151050710554
412412 else {
413- let $acc161049510542 = processAddress($acc151049510542, $list1049510542[15])
414- if (($size1049510542 == 16))
415- then $acc161049510542
413+ let $acc161050710554 = processAddress($acc151050710554, $list1050710554[15])
414+ if (($size1050710554 == 16))
415+ then $acc161050710554
416416 else {
417- let $acc171049510542 = processAddress($acc161049510542, $list1049510542[16])
418- if (($size1049510542 == 17))
419- then $acc171049510542
417+ let $acc171050710554 = processAddress($acc161050710554, $list1050710554[16])
418+ if (($size1050710554 == 17))
419+ then $acc171050710554
420420 else {
421- let $acc181049510542 = processAddress($acc171049510542, $list1049510542[17])
422- if (($size1049510542 == 18))
423- then $acc181049510542
421+ let $acc181050710554 = processAddress($acc171050710554, $list1050710554[17])
422+ if (($size1050710554 == 18))
423+ then $acc181050710554
424424 else {
425- let $acc191049510542 = processAddress($acc181049510542, $list1049510542[18])
426- if (($size1049510542 == 19))
427- then $acc191049510542
425+ let $acc191050710554 = processAddress($acc181050710554, $list1050710554[18])
426+ if (($size1050710554 == 19))
427+ then $acc191050710554
428428 else {
429- let $acc201049510542 = processAddress($acc191049510542, $list1049510542[19])
430- if (($size1049510542 == 20))
431- then $acc201049510542
429+ let $acc201050710554 = processAddress($acc191050710554, $list1050710554[19])
430+ if (($size1050710554 == 20))
431+ then $acc201050710554
432432 else {
433- let $acc211049510542 = processAddress($acc201049510542, $list1049510542[20])
433+ let $acc211050710554 = processAddress($acc201050710554, $list1050710554[20])
434434 throw("List size exceed 20")
435435 }
436436 }
503503 else if ((size(inv.payments) > 2))
504504 then throw("_17")
505505 else if ((minBalance > ((assetBalance(this, getEggId()) - {
506- let $list1228112323 = inv.payments
507- let $size1228112323 = size($list1228112323)
508- let $acc01228112323 = 0
509- if (($size1228112323 == 0))
510- then $acc01228112323
506+ let $list1229312335 = inv.payments
507+ let $size1229312335 = size($list1229312335)
508+ let $acc01229312335 = 0
509+ if (($size1229312335 == 0))
510+ then $acc01229312335
511511 else {
512- let $acc11228112323 = totalEggSpending($acc01228112323, $list1228112323[0])
513- if (($size1228112323 == 1))
514- then $acc11228112323
512+ let $acc11229312335 = totalEggSpending($acc01229312335, $list1229312335[0])
513+ if (($size1229312335 == 1))
514+ then $acc11229312335
515515 else {
516- let $acc21228112323 = totalEggSpending($acc11228112323, $list1228112323[1])
517- if (($size1228112323 == 2))
518- then $acc21228112323
516+ let $acc21229312335 = totalEggSpending($acc11229312335, $list1229312335[1])
517+ if (($size1229312335 == 2))
518+ then $acc21229312335
519519 else {
520- let $acc31228112323 = totalEggSpending($acc21228112323, $list1228112323[2])
521- if (($size1228112323 == 3))
522- then $acc31228112323
520+ let $acc31229312335 = totalEggSpending($acc21229312335, $list1229312335[2])
521+ if (($size1229312335 == 3))
522+ then $acc31229312335
523523 else {
524- let $acc41228112323 = totalEggSpending($acc31228112323, $list1228112323[3])
524+ let $acc41229312335 = totalEggSpending($acc31229312335, $list1229312335[3])
525525 throw("List size exceed 3")
526526 }
527527 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let mAccPKey = base58'23NWm7kUDQqbTVkirjd5JXWRZaWVoS4ZesmRNHicBa3T'
55
66 let mAccAddr = addressFromPublicKey(mAccPKey)
77
88 let feePercent = getIntegerValue(mAccAddr, (("f_" + toString(this)) + "_fee"))
99
1010 let oldEggAssetId = base58'JCGDtrVy64cCJ1wCKfCaiNQMnyYwii71TbE5QeAHfxgF'
1111
1212 let swapEggDappAddress = addressFromStringValue("3PJQUUiJdvz9etUKED9ju7o7VrcNMtnkXBU")
1313
1414 let kTotalLiquidity = "total_liquidity"
1515
1616 let kInitialized = "INITIALIZED"
1717
1818 let kLiquidityThreshold = "LIQUIDITY_THRESHOLD"
1919
2020 let kFarmParticipants = "farm_participants"
2121
2222 let kTotalShareTokens = "total_share_tokens"
2323
2424 let kShareAssetId = "SHARE_ASSET_ID"
2525
2626 let kFarmingDapp = "FARMING_DAPP"
2727
2828 let kMarketProxyDapp = "MARKETPLACE_PROXY_DAPP"
2929
3030 let kLocked = "LOCKED"
3131
3232 let kTotalFarmingReward = "total_farming_reward"
3333
3434 let kCeoCollectedFee = "ceo_collected_fee"
3535
3636 let kCeoCollectedFeeOverall = "ceo_fee_overall"
3737
3838 let kToDistr = "to_distribute"
3939
4040 let kUnstakedReward = "unstaked_reward"
4141
4242 let kLockedInvestments = "locked_investments"
4343
4444 func getInt (key) = match getInteger(this, key) {
4545 case b: Int =>
4646 b
4747 case _ =>
4848 0
4949 }
5050
5151
5252 func getStr (key) = match getString(this, key) {
5353 case b: String =>
5454 b
5555 case _ =>
5656 ""
5757 }
5858
5959
6060 func getBool (key) = match getBoolean(this, key) {
6161 case b: Boolean =>
6262 b
6363 case _ =>
6464 unit
6565 }
6666
6767
6868 func getStrA (a,k) = match getString(a, k) {
6969 case b: String =>
7070 b
7171 case _ =>
7272 ""
7373 }
7474
7575
7676 func getMarketProxyAddr () = getStrA(mAccAddr, kMarketProxyDapp)
7777
7878
7979 func getEggId () = fromBase58String(getStringValue(mAccAddr, "EGG_ASSET_ID"))
8080
8181
8282 func getShareAssetId () = fromBase58String(getStr(kShareAssetId))
8383
8484
8585 @Callable(i)
8686 func initCollectiveFarm (name,minimumThreshold) = if ((i.callerPublicKey != mAccPKey))
8787 then throw("_1")
8888 else if ((getBool(kInitialized) != unit))
8989 then throw("_2")
90- else if (if ((i.payments[0].amount != 10))
90+ else if (if ((i.payments[0].amount != (10 * 1000000)))
9191 then true
9292 else (i.payments[0].assetId != getEggId()))
9393 then throw("_20")
9494 else {
9595 let shareTokens = 10000000
9696 let shareToken = Issue(name, (("Share token for the \"" + name) + "\" collective farm"), shareTokens, 8, true)
9797 [StringEntry(kShareAssetId, toBase58String(calculateAssetId(shareToken))), BooleanEntry(kInitialized, true), IntegerEntry(kTotalLiquidity, 10), IntegerEntry(kTotalShareTokens, shareTokens), shareToken, ScriptTransfer(i.caller, shareTokens, calculateAssetId(shareToken)), BooleanEntry(kLocked, false), IntegerEntry(kLiquidityThreshold, minimumThreshold)]
9898 }
9999
100100
101101
102102 @Callable(i)
103103 func setLock (s) = if ((i.callerPublicKey != mAccPKey))
104104 then throw("_21")
105105 else [BooleanEntry(kLocked, s)]
106106
107107
108108
109109 @Callable(i)
110110 func lockInvestments () = if ((i.caller != this))
111111 then throw("You cannot lock this contract")
112112 else [BooleanEntry(kLockedInvestments, true)]
113113
114114
115115
116116 @Callable(i)
117117 func unlockInvestments () = if ((i.caller != this))
118118 then throw("You cannot lock this contract")
119119 else [BooleanEntry(kLockedInvestments, false)]
120120
121121
122122
123123 @Callable(i)
124124 func provideLiquidity () = {
125125 let eggAssetId = getEggId()
126126 if ((getBool(kLockedInvestments) == true))
127127 then throw("Contract is locked for investments by it's CEO. Please invest in another collective farm.")
128128 else if ((getBool(kLocked) == true))
129129 then throw("_22")
130130 else if ((i.payments[0].assetId != eggAssetId))
131131 then throw("_4")
132132 else if ((1000000 > i.payments[0].amount))
133133 then throw("Min amount to invest is 0.01 EGG")
134134 else {
135135 let totalLiquidity = getInt(kTotalLiquidity)
136136 let totalShareTokens = getInt(kTotalShareTokens)
137137 let currentLiquidityAmount = i.payments[0].amount
138138 let shareTokensToGive = currentLiquidityAmount
139139 let shareTokensId = fromBase58String(getStr(kShareAssetId))
140140 let reissue = Reissue(getShareAssetId(), shareTokensToGive, true)
141141 let farmParticipants = getInt(kFarmParticipants)
142142 let kParticipated = (("account_" + toString(i.caller)) + "_participated")
143143 let alreadyParticipated = getBool(kParticipated)
144144 let newFarmParticipants = if ((alreadyParticipated == unit))
145145 then (farmParticipants + 1)
146146 else farmParticipants
147147 [reissue, ScriptTransfer(i.caller, shareTokensToGive, shareTokensId), IntegerEntry(kTotalShareTokens, (totalShareTokens + shareTokensToGive)), IntegerEntry(kTotalLiquidity, (totalLiquidity + (value(i.payments[0].amount) / 1000000))), IntegerEntry(kFarmParticipants, newFarmParticipants), BooleanEntry(kParticipated, true)]
148148 }
149149 }
150150
151151
152152
153153 @Callable(i)
154154 func claimFarmingRewardProxy (ids) = if ((i.callerPublicKey != mAccPKey))
155155 then throw("_23")
156156 else {
157157 let farmingDapp = addressFromStringValue(getStrA(mAccAddr, kFarmingDapp))
158158 func claimReward (accum,nftId) = {
159159 let invRes = invoke(farmingDapp, "claimReward", [nftId], nil)
160160 if ((invRes == invRes))
161161 then match invRes {
162162 case int: Int =>
163163 (accum + int)
164164 case _ =>
165165 throw("_5")
166166 }
167167 else throw("Strict value is not equal to itself.")
168168 }
169169
170170 let nftIds = split(ids, ";")
171171 let foldResult = {
172- let $list57345766 = nftIds
173- let $size57345766 = size($list57345766)
174- let $acc057345766 = 0
175- if (($size57345766 == 0))
176- then $acc057345766
172+ let $list57465778 = nftIds
173+ let $size57465778 = size($list57465778)
174+ let $acc057465778 = 0
175+ if (($size57465778 == 0))
176+ then $acc057465778
177177 else {
178- let $acc157345766 = claimReward($acc057345766, $list57345766[0])
179- if (($size57345766 == 1))
180- then $acc157345766
178+ let $acc157465778 = claimReward($acc057465778, $list57465778[0])
179+ if (($size57465778 == 1))
180+ then $acc157465778
181181 else {
182- let $acc257345766 = claimReward($acc157345766, $list57345766[1])
183- if (($size57345766 == 2))
184- then $acc257345766
182+ let $acc257465778 = claimReward($acc157465778, $list57465778[1])
183+ if (($size57465778 == 2))
184+ then $acc257465778
185185 else {
186- let $acc357345766 = claimReward($acc257345766, $list57345766[2])
187- if (($size57345766 == 3))
188- then $acc357345766
186+ let $acc357465778 = claimReward($acc257465778, $list57465778[2])
187+ if (($size57465778 == 3))
188+ then $acc357465778
189189 else {
190- let $acc457345766 = claimReward($acc357345766, $list57345766[3])
191- if (($size57345766 == 4))
192- then $acc457345766
190+ let $acc457465778 = claimReward($acc357465778, $list57465778[3])
191+ if (($size57465778 == 4))
192+ then $acc457465778
193193 else {
194- let $acc557345766 = claimReward($acc457345766, $list57345766[4])
195- if (($size57345766 == 5))
196- then $acc557345766
194+ let $acc557465778 = claimReward($acc457465778, $list57465778[4])
195+ if (($size57465778 == 5))
196+ then $acc557465778
197197 else {
198- let $acc657345766 = claimReward($acc557345766, $list57345766[5])
199- if (($size57345766 == 6))
200- then $acc657345766
198+ let $acc657465778 = claimReward($acc557465778, $list57465778[5])
199+ if (($size57465778 == 6))
200+ then $acc657465778
201201 else {
202- let $acc757345766 = claimReward($acc657345766, $list57345766[6])
203- if (($size57345766 == 7))
204- then $acc757345766
202+ let $acc757465778 = claimReward($acc657465778, $list57465778[6])
203+ if (($size57465778 == 7))
204+ then $acc757465778
205205 else {
206- let $acc857345766 = claimReward($acc757345766, $list57345766[7])
207- if (($size57345766 == 8))
208- then $acc857345766
206+ let $acc857465778 = claimReward($acc757465778, $list57465778[7])
207+ if (($size57465778 == 8))
208+ then $acc857465778
209209 else {
210- let $acc957345766 = claimReward($acc857345766, $list57345766[8])
211- if (($size57345766 == 9))
212- then $acc957345766
210+ let $acc957465778 = claimReward($acc857465778, $list57465778[8])
211+ if (($size57465778 == 9))
212+ then $acc957465778
213213 else {
214- let $acc1057345766 = claimReward($acc957345766, $list57345766[9])
215- if (($size57345766 == 10))
216- then $acc1057345766
214+ let $acc1057465778 = claimReward($acc957465778, $list57465778[9])
215+ if (($size57465778 == 10))
216+ then $acc1057465778
217217 else {
218- let $acc1157345766 = claimReward($acc1057345766, $list57345766[10])
218+ let $acc1157465778 = claimReward($acc1057465778, $list57465778[10])
219219 throw("List size exceed 10")
220220 }
221221 }
222222 }
223223 }
224224 }
225225 }
226226 }
227227 }
228228 }
229229 }
230230 }
231231 }
232232 let claimedReward = match foldResult {
233233 case int: Int =>
234234 int
235235 case _ =>
236236 throw("_6")
237237 }
238238 let farmCeoFeeSize = fraction(claimedReward, feePercent, 100)
239239 let toDistr = getInt(kToDistr)
240240 let totalFarmingReward = getInt(kTotalFarmingReward)
241241 let currentCeoFee = getInt(kCeoCollectedFee)
242242 let ceoFeeOverall = getInt(kCeoCollectedFeeOverall)
243243 [IntegerEntry(kTotalFarmingReward, ((totalFarmingReward + claimedReward) - farmCeoFeeSize)), IntegerEntry(kToDistr, ((toDistr + claimedReward) - farmCeoFeeSize)), IntegerEntry(kCeoCollectedFee, (currentCeoFee + farmCeoFeeSize)), IntegerEntry(kCeoCollectedFeeOverall, (ceoFeeOverall + farmCeoFeeSize))]
244244 }
245245
246246
247247
248248 @Callable(i)
249249 func claimCeoFee (address) = if ((getBool(kLocked) == true))
250250 then throw("_22")
251251 else if ((i.caller == this))
252252 then {
253253 let currentCeoCollectedFee = getInt(kCeoCollectedFee)
254254 [ScriptTransfer(addressFromStringValue(address), currentCeoCollectedFee, getEggId()), IntegerEntry(kCeoCollectedFee, 0)]
255255 }
256256 else throw("_8")
257257
258258
259259
260260 @Callable(i)
261261 func startLiquidation (auctionId) = throw("_7")
262262
263263
264264
265265 @Callable(i)
266266 func voteForLiquidation (auctionId) = throw("_7")
267267
268268
269269
270270 @Callable(i)
271271 func callUnstakeProxy (function,assetId) = if ((getBool(kLocked) == true))
272272 then throw("Contract is locked now")
273273 else if (if ((function != "unstakeNFT"))
274274 then (function != "unstakeJackpot")
275275 else false)
276276 then throw("Bad function name")
277277 else if ((i.caller != this))
278278 then throw("Can be called only by the account")
279279 else {
280280 let farmingDappAddress = addressFromStringValue(getStrA(mAccAddr, "FARMING_DAPP"))
281281 let ustakedReward = invoke(farmingDappAddress, function, [assetId], nil)
282282 if ((ustakedReward == ustakedReward))
283283 then {
284284 let unstakedRewardNow = getInt(kUnstakedReward)
285285 let newUnstakedReward = match ustakedReward {
286286 case int: Int =>
287287 (unstakedRewardNow + int)
288288 case _ =>
289289 throw("Error during unstaking")
290290 }
291291 let currentCeoFee = getInt(kCeoCollectedFee)
292292 let ceoFeeOverall = getInt(kCeoCollectedFeeOverall)
293293 let farmCeoFeeSize = fraction(unstakedRewardNow, feePercent, 100)
294294 [IntegerEntry(kCeoCollectedFee, (currentCeoFee + farmCeoFeeSize)), IntegerEntry(kCeoCollectedFeeOverall, (ceoFeeOverall + farmCeoFeeSize)), IntegerEntry(kUnstakedReward, newUnstakedReward)]
295295 }
296296 else throw("Strict value is not equal to itself.")
297297 }
298298
299299
300300
301301 @Callable(i)
302302 func revertTransfer (txId) = if ((getBool(kLocked) == true))
303303 then throw("Contract is locked now")
304304 else if ((i.caller != this))
305305 then throw("Can be called only by the account")
306306 else {
307307 let tx = value(transferTransactionById(fromBase58String(txId)))
308308 let kReverted = ("tx_revert_" + txId)
309309 let txReverted = getBool(kReverted)
310310 let unstakedRewardNow = getInt(kUnstakedReward)
311311 let toDistr = getInt(kToDistr)
312312 let minBalance = (unstakedRewardNow + toDistr)
313313 let currentEggBalance = assetBalance(this, getEggId())
314314 if ((txReverted == true))
315315 then throw("Tx already reverted")
316316 else if ((tx.recipient != this))
317317 then throw("Tx recipient is another account")
318318 else if (if ((tx.assetId != getEggId()))
319319 then (tx.assetId != getShareAssetId())
320320 else false)
321321 then throw("Transaction is not with EGG or share tokens")
322322 else if ((minBalance > (currentEggBalance - tx.amount)))
323323 then throw("Revert makes balance too low")
324324 else [ScriptTransfer(tx.sender, tx.amount, tx.assetId), BooleanEntry(kReverted, true)]
325325 }
326326
327327
328328
329329 @Callable(i)
330330 func distributeRewards (addresses,totalShareTokens,totalRewardToDistribute) = if ((i.caller != mAccAddr))
331331 then throw("Method can be called only by master account")
332332 else {
333333 let addressPairs = split(addresses, ";")
334334 func processAddress (accum,addressPair) = {
335335 let addressParts = split(addressPair, "=")
336336 let addressStr = addressParts[0]
337337 let address = addressFromStringValue(addressStr)
338338 let userShareTokens = parseIntValue(addressParts[1])
339339 let kAddrEarned = (("address_" + addressStr) + "_total_earned")
340340 let addrTotalEarned = getInt(kAddrEarned)
341341 let userRewardNow = fraction(totalRewardToDistribute, userShareTokens, totalShareTokens)
342342 let res = [IntegerEntry(kAddrEarned, (addrTotalEarned + userRewardNow)), IntegerEntry(((("address_" + addressStr) + "_reward_") + toString(lastBlock.timestamp)), userRewardNow), ScriptTransfer(address, userRewardNow, getEggId())]
343343 $Tuple2((accum._1 + userRewardNow), (accum._2 ++ res))
344344 }
345345
346346 let result = {
347- let $list1049510542 = addressPairs
348- let $size1049510542 = size($list1049510542)
349- let $acc01049510542 = $Tuple2(0, nil)
350- if (($size1049510542 == 0))
351- then $acc01049510542
347+ let $list1050710554 = addressPairs
348+ let $size1050710554 = size($list1050710554)
349+ let $acc01050710554 = $Tuple2(0, nil)
350+ if (($size1050710554 == 0))
351+ then $acc01050710554
352352 else {
353- let $acc11049510542 = processAddress($acc01049510542, $list1049510542[0])
354- if (($size1049510542 == 1))
355- then $acc11049510542
353+ let $acc11050710554 = processAddress($acc01050710554, $list1050710554[0])
354+ if (($size1050710554 == 1))
355+ then $acc11050710554
356356 else {
357- let $acc21049510542 = processAddress($acc11049510542, $list1049510542[1])
358- if (($size1049510542 == 2))
359- then $acc21049510542
357+ let $acc21050710554 = processAddress($acc11050710554, $list1050710554[1])
358+ if (($size1050710554 == 2))
359+ then $acc21050710554
360360 else {
361- let $acc31049510542 = processAddress($acc21049510542, $list1049510542[2])
362- if (($size1049510542 == 3))
363- then $acc31049510542
361+ let $acc31050710554 = processAddress($acc21050710554, $list1050710554[2])
362+ if (($size1050710554 == 3))
363+ then $acc31050710554
364364 else {
365- let $acc41049510542 = processAddress($acc31049510542, $list1049510542[3])
366- if (($size1049510542 == 4))
367- then $acc41049510542
365+ let $acc41050710554 = processAddress($acc31050710554, $list1050710554[3])
366+ if (($size1050710554 == 4))
367+ then $acc41050710554
368368 else {
369- let $acc51049510542 = processAddress($acc41049510542, $list1049510542[4])
370- if (($size1049510542 == 5))
371- then $acc51049510542
369+ let $acc51050710554 = processAddress($acc41050710554, $list1050710554[4])
370+ if (($size1050710554 == 5))
371+ then $acc51050710554
372372 else {
373- let $acc61049510542 = processAddress($acc51049510542, $list1049510542[5])
374- if (($size1049510542 == 6))
375- then $acc61049510542
373+ let $acc61050710554 = processAddress($acc51050710554, $list1050710554[5])
374+ if (($size1050710554 == 6))
375+ then $acc61050710554
376376 else {
377- let $acc71049510542 = processAddress($acc61049510542, $list1049510542[6])
378- if (($size1049510542 == 7))
379- then $acc71049510542
377+ let $acc71050710554 = processAddress($acc61050710554, $list1050710554[6])
378+ if (($size1050710554 == 7))
379+ then $acc71050710554
380380 else {
381- let $acc81049510542 = processAddress($acc71049510542, $list1049510542[7])
382- if (($size1049510542 == 8))
383- then $acc81049510542
381+ let $acc81050710554 = processAddress($acc71050710554, $list1050710554[7])
382+ if (($size1050710554 == 8))
383+ then $acc81050710554
384384 else {
385- let $acc91049510542 = processAddress($acc81049510542, $list1049510542[8])
386- if (($size1049510542 == 9))
387- then $acc91049510542
385+ let $acc91050710554 = processAddress($acc81050710554, $list1050710554[8])
386+ if (($size1050710554 == 9))
387+ then $acc91050710554
388388 else {
389- let $acc101049510542 = processAddress($acc91049510542, $list1049510542[9])
390- if (($size1049510542 == 10))
391- then $acc101049510542
389+ let $acc101050710554 = processAddress($acc91050710554, $list1050710554[9])
390+ if (($size1050710554 == 10))
391+ then $acc101050710554
392392 else {
393- let $acc111049510542 = processAddress($acc101049510542, $list1049510542[10])
394- if (($size1049510542 == 11))
395- then $acc111049510542
393+ let $acc111050710554 = processAddress($acc101050710554, $list1050710554[10])
394+ if (($size1050710554 == 11))
395+ then $acc111050710554
396396 else {
397- let $acc121049510542 = processAddress($acc111049510542, $list1049510542[11])
398- if (($size1049510542 == 12))
399- then $acc121049510542
397+ let $acc121050710554 = processAddress($acc111050710554, $list1050710554[11])
398+ if (($size1050710554 == 12))
399+ then $acc121050710554
400400 else {
401- let $acc131049510542 = processAddress($acc121049510542, $list1049510542[12])
402- if (($size1049510542 == 13))
403- then $acc131049510542
401+ let $acc131050710554 = processAddress($acc121050710554, $list1050710554[12])
402+ if (($size1050710554 == 13))
403+ then $acc131050710554
404404 else {
405- let $acc141049510542 = processAddress($acc131049510542, $list1049510542[13])
406- if (($size1049510542 == 14))
407- then $acc141049510542
405+ let $acc141050710554 = processAddress($acc131050710554, $list1050710554[13])
406+ if (($size1050710554 == 14))
407+ then $acc141050710554
408408 else {
409- let $acc151049510542 = processAddress($acc141049510542, $list1049510542[14])
410- if (($size1049510542 == 15))
411- then $acc151049510542
409+ let $acc151050710554 = processAddress($acc141050710554, $list1050710554[14])
410+ if (($size1050710554 == 15))
411+ then $acc151050710554
412412 else {
413- let $acc161049510542 = processAddress($acc151049510542, $list1049510542[15])
414- if (($size1049510542 == 16))
415- then $acc161049510542
413+ let $acc161050710554 = processAddress($acc151050710554, $list1050710554[15])
414+ if (($size1050710554 == 16))
415+ then $acc161050710554
416416 else {
417- let $acc171049510542 = processAddress($acc161049510542, $list1049510542[16])
418- if (($size1049510542 == 17))
419- then $acc171049510542
417+ let $acc171050710554 = processAddress($acc161050710554, $list1050710554[16])
418+ if (($size1050710554 == 17))
419+ then $acc171050710554
420420 else {
421- let $acc181049510542 = processAddress($acc171049510542, $list1049510542[17])
422- if (($size1049510542 == 18))
423- then $acc181049510542
421+ let $acc181050710554 = processAddress($acc171050710554, $list1050710554[17])
422+ if (($size1050710554 == 18))
423+ then $acc181050710554
424424 else {
425- let $acc191049510542 = processAddress($acc181049510542, $list1049510542[18])
426- if (($size1049510542 == 19))
427- then $acc191049510542
425+ let $acc191050710554 = processAddress($acc181050710554, $list1050710554[18])
426+ if (($size1050710554 == 19))
427+ then $acc191050710554
428428 else {
429- let $acc201049510542 = processAddress($acc191049510542, $list1049510542[19])
430- if (($size1049510542 == 20))
431- then $acc201049510542
429+ let $acc201050710554 = processAddress($acc191050710554, $list1050710554[19])
430+ if (($size1050710554 == 20))
431+ then $acc201050710554
432432 else {
433- let $acc211049510542 = processAddress($acc201049510542, $list1049510542[20])
433+ let $acc211050710554 = processAddress($acc201050710554, $list1050710554[20])
434434 throw("List size exceed 20")
435435 }
436436 }
437437 }
438438 }
439439 }
440440 }
441441 }
442442 }
443443 }
444444 }
445445 }
446446 }
447447 }
448448 }
449449 }
450450 }
451451 }
452452 }
453453 }
454454 }
455455 }
456456 }
457457 let toDistr = getInt(kToDistr)
458458 (result._2 ++ [IntegerEntry(kToDistr, (toDistr - result._1)), IntegerEntry(kUnstakedReward, 0)])
459459 }
460460
461461
462462
463463 @Callable(i)
464464 func swapEgg () = if ((i.caller != mAccAddr))
465465 then throw("Method can be called by master account only")
466466 else {
467467 let oldEggBalance = assetBalance(this, oldEggAssetId)
468468 let swapTx = invoke(swapEggDappAddress, "swapEgg", nil, [AttachedPayment(oldEggAssetId, oldEggBalance)])
469469 if ((swapTx == swapTx))
470470 then [BooleanEntry("swapped_egg", true), IntegerEntry("swapped_egg_amount", oldEggBalance)]
471471 else throw("Strict value is not equal to itself.")
472472 }
473473
474474
475475 @Verifier(tx)
476476 func verify () = {
477477 let checkStarted = (getInt(kTotalLiquidity) >= getInt(kLiquidityThreshold))
478478 func totalEggSpending (accum,payment) = if ((payment.assetId == getEggId()))
479479 then (accum + payment.amount)
480480 else accum
481481
482482 match tx {
483483 case inv: InvokeScriptTransaction =>
484484 let unstakedRewardNow = getInt(kUnstakedReward)
485485 let toDistr = getInt(kToDistr)
486486 let minBalance = (unstakedRewardNow + toDistr)
487487 if (if ((inv.function == "unstakeNFT"))
488488 then true
489489 else (inv.function == "unstakeJackpot"))
490490 then throw("You cannot call these functions directly")
491491 else if ((sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) == false))
492492 then throw("_100")
493493 else if ((checkStarted == false))
494494 then throw("_14")
495495 else if ((getBool(kLocked) == true))
496496 then throw("_22")
497497 else if (if ((inv.fee > 900000))
498498 then true
499499 else (inv.feeAssetId != unit))
500500 then throw("_15")
501501 else if ((inv.function == "claimReward"))
502502 then throw("_16")
503503 else if ((size(inv.payments) > 2))
504504 then throw("_17")
505505 else if ((minBalance > ((assetBalance(this, getEggId()) - {
506- let $list1228112323 = inv.payments
507- let $size1228112323 = size($list1228112323)
508- let $acc01228112323 = 0
509- if (($size1228112323 == 0))
510- then $acc01228112323
506+ let $list1229312335 = inv.payments
507+ let $size1229312335 = size($list1229312335)
508+ let $acc01229312335 = 0
509+ if (($size1229312335 == 0))
510+ then $acc01229312335
511511 else {
512- let $acc11228112323 = totalEggSpending($acc01228112323, $list1228112323[0])
513- if (($size1228112323 == 1))
514- then $acc11228112323
512+ let $acc11229312335 = totalEggSpending($acc01229312335, $list1229312335[0])
513+ if (($size1229312335 == 1))
514+ then $acc11229312335
515515 else {
516- let $acc21228112323 = totalEggSpending($acc11228112323, $list1228112323[1])
517- if (($size1228112323 == 2))
518- then $acc21228112323
516+ let $acc21229312335 = totalEggSpending($acc11229312335, $list1229312335[1])
517+ if (($size1229312335 == 2))
518+ then $acc21229312335
519519 else {
520- let $acc31228112323 = totalEggSpending($acc21228112323, $list1228112323[2])
521- if (($size1228112323 == 3))
522- then $acc31228112323
520+ let $acc31229312335 = totalEggSpending($acc21229312335, $list1229312335[2])
521+ if (($size1229312335 == 3))
522+ then $acc31229312335
523523 else {
524- let $acc41228112323 = totalEggSpending($acc31228112323, $list1228112323[3])
524+ let $acc41229312335 = totalEggSpending($acc31229312335, $list1229312335[3])
525525 throw("List size exceed 3")
526526 }
527527 }
528528 }
529529 }
530530 }) * 1000000)))
531531 then throw(("Your minimal balance should be = " + toString(minBalance)))
532532 else if (if ((addressFromRecipient(inv.dApp) == this))
533533 then (inv.function == "callUnstakeProxy")
534534 else false)
535535 then sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
536536 else if (if ((addressFromRecipient(inv.dApp) == this))
537537 then (inv.function == "revertTransfer")
538538 else false)
539539 then sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
540540 else if (if ((addressFromRecipient(inv.dApp) == this))
541541 then (inv.function == "claimCeoFee")
542542 else false)
543543 then sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
544544 else if (if ((addressFromRecipient(inv.dApp) == this))
545545 then if ((inv.function == "lockInvestments"))
546546 then true
547547 else (inv.function == "unlockInvestments")
548548 else false)
549549 then sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
550550 else if (if ((addressFromRecipient(inv.dApp) == addressFromStringValue(getMarketProxyAddr())))
551551 then (inv.function == "callMarketplaceProxy")
552552 else false)
553553 then sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
554554 else {
555555 let allowedContracts = getStrA(mAccAddr, "allowed_contracts")
556556 let allowedContractsList = split(allowedContracts, ";")
557557 let dappToCall = toString(addressFromRecipient(inv.dApp))
558558 (indexOf(allowedContractsList, dappToCall) != unit)
559559 }
560560 case mt: MassTransferTransaction =>
561561 sigVerify(tx.bodyBytes, tx.proofs[0], mAccPKey)
562562 case dt: DataTransaction =>
563563 sigVerify(tx.bodyBytes, tx.proofs[0], mAccPKey)
564564 case ss: SetScriptTransaction =>
565565 sigVerify(tx.bodyBytes, tx.proofs[0], mAccPKey)
566566 case _ =>
567567 false
568568 }
569569 }
570570

github/deemru/w8io/3ef1775 
314.48 ms