tx · 8FHWy6nxEbWwM6v6HwWfJDHiNwABYpP1J7Fj2zsiYTks 3N2wcNfEWihUVJV2S6jKwcw3QDupKgXPBnp: -0.01400000 Waves 2021.03.13 15:32 [1435915] smart account 3N2wcNfEWihUVJV2S6jKwcw3QDupKgXPBnp > SELF 0.00000000 Waves
{ "type": 13, "id": "8FHWy6nxEbWwM6v6HwWfJDHiNwABYpP1J7Fj2zsiYTks", "fee": 1400000, "feeAssetId": null, "timestamp": 1615638765383, "version": 1, "sender": "3N2wcNfEWihUVJV2S6jKwcw3QDupKgXPBnp", "senderPublicKey": "2Ek8QRiW2SC3s4ZC79pXUmvJbmqU6agaNsjN2wmnzmSs", "proofs": [ "5hfqcEshmzmvnWepB4p6E4UaQUrVfe3NzE1GAvo3KZLdQjLYG38xTvADMGhbgiWPFwFB9679bEiG1yR1xv7WyYTx" ], "script": "base64:AAIEAAAAAAAAAAgIAhIECgIYEQAAAAcAAAAAEWtVc2VyUG9vbFZvdGVTV09QAgAAAAVfdm90ZQAAAAASa1VzZXJUb3RhbFZvdGVTV09QAgAAABVfdXNlcl90b3RhbF9TV09QX3ZvdGUAAAAADWtQb29sVm90ZVNXT1ACAAAACl92b3RlX1NXT1AAAAAADmtUb3RhbFZvdGVTV09QAgAAAA90b3RhbF92b3RlX1NXT1AAAAAAB2dvdkFkZHIJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVRAR/HWw3DxHB4C9lwcyuInima35raJGzsBAAAAFGlzQ2FsbGVySW5Hb3Zlcm5hbmNlAAAAAQAAAAR1c2VyAwMJAABmAAAAAgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAdnb3ZBZGRyCQABLAAAAAIJAAQlAAAAAQUAAAAEdXNlcgIAAAAMX1NXT1BfYW1vdW50AAAAAAAAAAAAAAAAAAAAAAAABgkAAGYAAAACCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkABCUAAAABBQAAAAR1c2VyBQAAABJrVXNlclRvdGFsVm90ZVNXT1AAAAAAAAAAAAAAAAAAAAAAAAAGBwEAAAASaXNQb29sSW5Hb3Zlcm5hbmNlAAAAAQAAAAtwb29sQWRkcmVzcwMJAABmAAAAAgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAdnb3ZBZGRyCQABLAAAAAIFAAAAC3Bvb2xBZGRyZXNzAgAAAB1fY3VycmVudF9wb29sX2ZyYWN0aW9uX3Jld2FyZAAAAAAAAAAAAAAAAAAAAAAAAAYHAAAAAQAAAAFpAQAAAA52b3RlUG9vbFdlaWdodAAAAAIAAAANcG9vbEFkZHJlc3NlcwAAABBwb29sc1ZvdGVTV09QTmV3CgEAAAAQY2FsY1ZvdGVEaWZmU1dPUAAAAAIAAAALYWNjdW11bGF0ZWQAAAALcG9vbEFkZHJlc3MDCQEAAAABIQAAAAEJAQAAABJpc1Bvb2xJbkdvdmVybmFuY2UAAAABBQAAAAtwb29sQWRkcmVzcwkAAAIAAAABAgAAAEFUaGlzIHBvb2wgaGFzIG5vIF9jdXJyZW50X3Bvb2xfZnJhY3Rpb25fcmV3YXJkIGluIEdvdmVybmFuY2UgZEFwcAQAAAAJcG9vbEluZGV4CQEAAAAFdmFsdWUAAAABCQAETwAAAAIFAAAADXBvb2xBZGRyZXNzZXMFAAAAC3Bvb2xBZGRyZXNzBAAAABN1c2VyUG9vbFZvdGVTV09QTmV3CQABkQAAAAIFAAAAEHBvb2xzVm90ZVNXT1BOZXcFAAAACXBvb2xJbmRleAMJAABmAAAAAgAAAAAAAAAAAAUAAAATdXNlclBvb2xWb3RlU1dPUE5ldwkAAAIAAAABAgAAABd1c2VyUG9vbFZvdGVTV09QTmV3IDwgMAQAAAAQdXNlclBvb2xWb3RlU1dPUAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgIAAAABXwUAAAALcG9vbEFkZHJlc3MFAAAAEWtVc2VyUG9vbFZvdGVTV09QAAAAAAAAAAAABAAAABBwb29sVm90ZURpZmZTV09QCQAAZQAAAAIFAAAAE3VzZXJQb29sVm90ZVNXT1BOZXcFAAAAEHVzZXJQb29sVm90ZVNXT1AJAABkAAAAAgUAAAALYWNjdW11bGF0ZWQFAAAAEHBvb2xWb3RlRGlmZlNXT1AKAQAAAA11c2VyVm90ZUVudHJ5AAAAAgAAAAthY2N1bXVsYXRlZAAAAAtwb29sQWRkcmVzcwQAAAAJcG9vbEluZGV4CQEAAAAFdmFsdWUAAAABCQAETwAAAAIFAAAADXBvb2xBZGRyZXNzZXMFAAAAC3Bvb2xBZGRyZXNzBAAAABN1c2VyUG9vbFZvdGVTV09QTmV3CQABkQAAAAIFAAAAEHBvb2xzVm90ZVNXT1BOZXcFAAAACXBvb2xJbmRleAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXICAAAAAV8FAAAAC3Bvb2xBZGRyZXNzBQAAABFrVXNlclBvb2xWb3RlU1dPUAUAAAATdXNlclBvb2xWb3RlU1dPUE5ldwUAAAALYWNjdW11bGF0ZWQKAQAAAA1wb29sVm90ZUVudHJ5AAAAAgAAAAthY2N1bXVsYXRlZAAAAAtwb29sQWRkcmVzcwQAAAAJcG9vbEluZGV4CQEAAAAFdmFsdWUAAAABCQAETwAAAAIFAAAADXBvb2xBZGRyZXNzZXMFAAAAC3Bvb2xBZGRyZXNzBAAAABB1c2VyUG9vbFZvdGVTV09QCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyAgAAAAFfBQAAAAtwb29sQWRkcmVzcwUAAAARa1VzZXJQb29sVm90ZVNXT1AAAAAAAAAAAAAEAAAAE3VzZXJQb29sVm90ZVNXT1BOZXcJAAGRAAAAAgUAAAAQcG9vbHNWb3RlU1dPUE5ldwUAAAAJcG9vbEluZGV4BAAAABBwb29sVm90ZURpZmZTV09QCQAAZQAAAAIFAAAAE3VzZXJQb29sVm90ZVNXT1BOZXcFAAAAEHVzZXJQb29sVm90ZVNXT1AEAAAADHBvb2xWb3RlU1dPUAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIFAAAAC3Bvb2xBZGRyZXNzBQAAAA1rUG9vbFZvdGVTV09QAAAAAAAAAAAABAAAAA9wb29sVm90ZVNXT1BuZXcJAABkAAAAAgUAAAAMcG9vbFZvdGVTV09QBQAAABBwb29sVm90ZURpZmZTV09QCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAAC3Bvb2xBZGRyZXNzBQAAAA1rUG9vbFZvdGVTV09QBQAAAA9wb29sVm90ZVNXT1BuZXcFAAAAC2FjY3VtdWxhdGVkAwkBAAAAASEAAAABCQEAAAAUaXNDYWxsZXJJbkdvdmVybmFuY2UAAAABCAUAAAABaQAAAAZjYWxsZXIJAAACAAAAAQIAAAAqVGhpcyBhZGRyZXNzIGhhcyAwIFNXT1AgaW4gR292ZXJuYW5jZSBkQXBwBAAAAA10b3RhbFZvdGVTV09QCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMFAAAADmtUb3RhbFZvdGVTV09QAAAAAAAAAAAABAAAABF1c2VyVG90YWxWb3RlU1dPUAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABJrVXNlclRvdGFsVm90ZVNXT1AAAAAAAAAAAAAEAAAAFHVzZXJTV09QaW5Hb3Zlcm5hbmNlCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAdnb3ZBZGRyCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyAgAAAAxfU1dPUF9hbW91bnQEAAAAEHVzZXJWb3RlRGlmZlNXT1AEAAAADSRsaXN0MjkyNzI5NzAFAAAADXBvb2xBZGRyZXNzZXMEAAAADSRzaXplMjkyNzI5NzAJAAGQAAAAAQUAAAANJGxpc3QyOTI3Mjk3MAQAAAANJGFjYzAyOTI3Mjk3MAAAAAAAAAAAAAMJAAAAAAAAAgUAAAANJHNpemUyOTI3Mjk3MAAAAAAAAAAAAAUAAAANJGFjYzAyOTI3Mjk3MAQAAAANJGFjYzEyOTI3Mjk3MAkBAAAAEGNhbGNWb3RlRGlmZlNXT1AAAAACBQAAAA0kYWNjMDI5MjcyOTcwCQABkQAAAAIFAAAADSRsaXN0MjkyNzI5NzAAAAAAAAAAAAADCQAAAAAAAAIFAAAADSRzaXplMjkyNzI5NzAAAAAAAAAAAAEFAAAADSRhY2MxMjkyNzI5NzAEAAAADSRhY2MyMjkyNzI5NzAJAQAAABBjYWxjVm90ZURpZmZTV09QAAAAAgUAAAANJGFjYzEyOTI3Mjk3MAkAAZEAAAACBQAAAA0kbGlzdDI5MjcyOTcwAAAAAAAAAAABAwkAAAAAAAACBQAAAA0kc2l6ZTI5MjcyOTcwAAAAAAAAAAACBQAAAA0kYWNjMjI5MjcyOTcwBAAAAA0kYWNjMzI5MjcyOTcwCQEAAAAQY2FsY1ZvdGVEaWZmU1dPUAAAAAIFAAAADSRhY2MyMjkyNzI5NzAJAAGRAAAAAgUAAAANJGxpc3QyOTI3Mjk3MAAAAAAAAAAAAgMJAAAAAAAAAgUAAAANJHNpemUyOTI3Mjk3MAAAAAAAAAAAAwUAAAANJGFjYzMyOTI3Mjk3MAQAAAANJGFjYzQyOTI3Mjk3MAkBAAAAEGNhbGNWb3RlRGlmZlNXT1AAAAACBQAAAA0kYWNjMzI5MjcyOTcwCQABkQAAAAIFAAAADSRsaXN0MjkyNzI5NzAAAAAAAAAAAAMDCQAAAAAAAAIFAAAADSRzaXplMjkyNzI5NzAAAAAAAAAAAAQFAAAADSRhY2M0MjkyNzI5NzAEAAAADSRhY2M1MjkyNzI5NzAJAQAAABBjYWxjVm90ZURpZmZTV09QAAAAAgUAAAANJGFjYzQyOTI3Mjk3MAkAAZEAAAACBQAAAA0kbGlzdDI5MjcyOTcwAAAAAAAAAAAEAwkAAAAAAAACBQAAAA0kc2l6ZTI5MjcyOTcwAAAAAAAAAAAFBQAAAA0kYWNjNTI5MjcyOTcwBAAAAA0kYWNjNjI5MjcyOTcwCQEAAAAQY2FsY1ZvdGVEaWZmU1dPUAAAAAIFAAAADSRhY2M1MjkyNzI5NzAJAAGRAAAAAgUAAAANJGxpc3QyOTI3Mjk3MAAAAAAAAAAABQkAAAIAAAABAgAAABJMaXN0IHNpemUgZXhjZWVkIDUEAAAAFHVzZXJUb3RhbFZvdGVTV09QTmV3CQAAZAAAAAIFAAAAEXVzZXJUb3RhbFZvdGVTV09QBQAAABB1c2VyVm90ZURpZmZTV09QBAAAABB0b3RhbFZvdGVTV09QbmV3CQAAZAAAAAIFAAAADXRvdGFsVm90ZVNXT1AFAAAAEHVzZXJWb3RlRGlmZlNXT1ADBgkAAAIAAAABCQABpAAAAAEFAAAAFHVzZXJTV09QaW5Hb3Zlcm5hbmNlBAAAAA11c2VyRGF0YUVudHJ5BAAAAA0kbGlzdDMxODczMjI4BQAAAA1wb29sQWRkcmVzc2VzBAAAAA0kc2l6ZTMxODczMjI4CQABkAAAAAEFAAAADSRsaXN0MzE4NzMyMjgEAAAADSRhY2MwMzE4NzMyMjgFAAAAA25pbAMJAAAAAAAAAgUAAAANJHNpemUzMTg3MzIyOAAAAAAAAAAAAAUAAAANJGFjYzAzMTg3MzIyOAQAAAANJGFjYzEzMTg3MzIyOAkBAAAADXVzZXJWb3RlRW50cnkAAAACBQAAAA0kYWNjMDMxODczMjI4CQABkQAAAAIFAAAADSRsaXN0MzE4NzMyMjgAAAAAAAAAAAADCQAAAAAAAAIFAAAADSRzaXplMzE4NzMyMjgAAAAAAAAAAAEFAAAADSRhY2MxMzE4NzMyMjgEAAAADSRhY2MyMzE4NzMyMjgJAQAAAA11c2VyVm90ZUVudHJ5AAAAAgUAAAANJGFjYzEzMTg3MzIyOAkAAZEAAAACBQAAAA0kbGlzdDMxODczMjI4AAAAAAAAAAABAwkAAAAAAAACBQAAAA0kc2l6ZTMxODczMjI4AAAAAAAAAAACBQAAAA0kYWNjMjMxODczMjI4BAAAAA0kYWNjMzMxODczMjI4CQEAAAANdXNlclZvdGVFbnRyeQAAAAIFAAAADSRhY2MyMzE4NzMyMjgJAAGRAAAAAgUAAAANJGxpc3QzMTg3MzIyOAAAAAAAAAAAAgMJAAAAAAAAAgUAAAANJHNpemUzMTg3MzIyOAAAAAAAAAAAAwUAAAANJGFjYzMzMTg3MzIyOAQAAAANJGFjYzQzMTg3MzIyOAkBAAAADXVzZXJWb3RlRW50cnkAAAACBQAAAA0kYWNjMzMxODczMjI4CQABkQAAAAIFAAAADSRsaXN0MzE4NzMyMjgAAAAAAAAAAAMDCQAAAAAAAAIFAAAADSRzaXplMzE4NzMyMjgAAAAAAAAAAAQFAAAADSRhY2M0MzE4NzMyMjgEAAAADSRhY2M1MzE4NzMyMjgJAQAAAA11c2VyVm90ZUVudHJ5AAAAAgUAAAANJGFjYzQzMTg3MzIyOAkAAZEAAAACBQAAAA0kbGlzdDMxODczMjI4AAAAAAAAAAAEAwkAAAAAAAACBQAAAA0kc2l6ZTMxODczMjI4AAAAAAAAAAAFBQAAAA0kYWNjNTMxODczMjI4BAAAAA0kYWNjNjMxODczMjI4CQEAAAANdXNlclZvdGVFbnRyeQAAAAIFAAAADSRhY2M1MzE4NzMyMjgJAAGRAAAAAgUAAAANJGxpc3QzMTg3MzIyOAAAAAAAAAAABQkAAAIAAAABAgAAABJMaXN0IHNpemUgZXhjZWVkIDUEAAAADXBvb2xEYXRhRW50cnkEAAAADSRsaXN0MzI1MzMyOTQFAAAADXBvb2xBZGRyZXNzZXMEAAAADSRzaXplMzI1MzMyOTQJAAGQAAAAAQUAAAANJGxpc3QzMjUzMzI5NAQAAAANJGFjYzAzMjUzMzI5NAUAAAADbmlsAwkAAAAAAAACBQAAAA0kc2l6ZTMyNTMzMjk0AAAAAAAAAAAABQAAAA0kYWNjMDMyNTMzMjk0BAAAAA0kYWNjMTMyNTMzMjk0CQEAAAANcG9vbFZvdGVFbnRyeQAAAAIFAAAADSRhY2MwMzI1MzMyOTQJAAGRAAAAAgUAAAANJGxpc3QzMjUzMzI5NAAAAAAAAAAAAAMJAAAAAAAAAgUAAAANJHNpemUzMjUzMzI5NAAAAAAAAAAAAQUAAAANJGFjYzEzMjUzMzI5NAQAAAANJGFjYzIzMjUzMzI5NAkBAAAADXBvb2xWb3RlRW50cnkAAAACBQAAAA0kYWNjMTMyNTMzMjk0CQABkQAAAAIFAAAADSRsaXN0MzI1MzMyOTQAAAAAAAAAAAEDCQAAAAAAAAIFAAAADSRzaXplMzI1MzMyOTQAAAAAAAAAAAIFAAAADSRhY2MyMzI1MzMyOTQEAAAADSRhY2MzMzI1MzMyOTQJAQAAAA1wb29sVm90ZUVudHJ5AAAAAgUAAAANJGFjYzIzMjUzMzI5NAkAAZEAAAACBQAAAA0kbGlzdDMyNTMzMjk0AAAAAAAAAAACAwkAAAAAAAACBQAAAA0kc2l6ZTMyNTMzMjk0AAAAAAAAAAADBQAAAA0kYWNjMzMyNTMzMjk0BAAAAA0kYWNjNDMyNTMzMjk0CQEAAAANcG9vbFZvdGVFbnRyeQAAAAIFAAAADSRhY2MzMzI1MzMyOTQJAAGRAAAAAgUAAAANJGxpc3QzMjUzMzI5NAAAAAAAAAAAAwMJAAAAAAAAAgUAAAANJHNpemUzMjUzMzI5NAAAAAAAAAAABAUAAAANJGFjYzQzMjUzMzI5NAQAAAANJGFjYzUzMjUzMzI5NAkBAAAADXBvb2xWb3RlRW50cnkAAAACBQAAAA0kYWNjNDMyNTMzMjk0CQABkQAAAAIFAAAADSRsaXN0MzI1MzMyOTQAAAAAAAAAAAQDCQAAAAAAAAIFAAAADSRzaXplMzI1MzMyOTQAAAAAAAAAAAUFAAAADSRhY2M1MzI1MzMyOTQEAAAADSRhY2M2MzI1MzMyOTQJAQAAAA1wb29sVm90ZUVudHJ5AAAAAgUAAAANJGFjYzUzMjUzMzI5NAkAAZEAAAACBQAAAA0kbGlzdDMyNTMzMjk0AAAAAAAAAAAFCQAAAgAAAAECAAAAEkxpc3Qgc2l6ZSBleGNlZWQgNQMJAABmAAAAAgUAAAAUdXNlclNXT1BpbkdvdmVybmFuY2UFAAAAFHVzZXJUb3RhbFZvdGVTV09QTmV3CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkABCUAAAABBQAAAAR0aGlzAgAAAAUgaGFzIAkAAaQAAAABBQAAABR1c2VyU1dPUGluR292ZXJuYW5jZQIAAAAnU1dPUCBpbiBnb3Zlcm5hbmNlLiBOZXcgU1dPUCBpbiB2b3RpbmcgCQABpAAAAAEFAAAAFHVzZXJUb3RhbFZvdGVTV09QTmV3CQAETgAAAAIJAAROAAAAAgUAAAANdXNlckRhdGFFbnRyeQUAAAANcG9vbERhdGFFbnRyeQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAASa1VzZXJUb3RhbFZvdGVTV09QBQAAABR1c2VyVG90YWxWb3RlU1dPUE5ldwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAOa1RvdGFsVm90ZVNXT1AFAAAAEHRvdGFsVm90ZVNXT1BuZXcFAAAAA25pbAAAAADC0bkx", "chainId": 84, "height": 1435915, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HFqCVY3kVGib5gm4JsSKBMGvGbFKKVLxB8jDHsodNUHg Next: 7K3e9cu2VdEr5AyRvQx3ivb3TA9L9iUw7rGj9Am4KjMh Diff:
Old | New | Differences | |
---|---|---|---|
30 | 30 | else { | |
31 | 31 | let poolIndex = value(indexOf(poolAddresses, poolAddress)) | |
32 | 32 | let userPoolVoteSWOPNew = poolsVoteSWOPNew[poolIndex] | |
33 | - | let userPoolVoteSWOP = valueOrElse(getInteger(this, (((toString(i.caller) + "_") + poolAddress) + kUserPoolVoteSWOP)), 0) | |
34 | - | let poolVoteDiffSWOP = (userPoolVoteSWOPNew - userPoolVoteSWOP) | |
35 | - | (accumulated + poolVoteDiffSWOP) | |
33 | + | if ((0 > userPoolVoteSWOPNew)) | |
34 | + | then throw("userPoolVoteSWOPNew < 0") | |
35 | + | else { | |
36 | + | let userPoolVoteSWOP = valueOrElse(getInteger(this, (((toString(i.caller) + "_") + poolAddress) + kUserPoolVoteSWOP)), 0) | |
37 | + | let poolVoteDiffSWOP = (userPoolVoteSWOPNew - userPoolVoteSWOP) | |
38 | + | (accumulated + poolVoteDiffSWOP) | |
39 | + | } | |
36 | 40 | } | |
37 | 41 | ||
38 | 42 | func userVoteEntry (accumulated,poolAddress) = { | |
58 | 62 | let userTotalVoteSWOP = valueOrElse(getInteger(this, (toString(i.caller) + kUserTotalVoteSWOP)), 0) | |
59 | 63 | let userSWOPinGovernance = getIntegerValue(govAddr, (toString(i.caller) + "_SWOP_amount")) | |
60 | 64 | let userVoteDiffSWOP = { | |
61 | - | let $ | |
62 | - | let $ | |
63 | - | let $ | |
64 | - | if (($ | |
65 | - | then $ | |
65 | + | let $list29272970 = poolAddresses | |
66 | + | let $size29272970 = size($list29272970) | |
67 | + | let $acc029272970 = 0 | |
68 | + | if (($size29272970 == 0)) | |
69 | + | then $acc029272970 | |
66 | 70 | else { | |
67 | - | let $ | |
68 | - | if (($ | |
69 | - | then $ | |
71 | + | let $acc129272970 = calcVoteDiffSWOP($acc029272970, $list29272970[0]) | |
72 | + | if (($size29272970 == 1)) | |
73 | + | then $acc129272970 | |
70 | 74 | else { | |
71 | - | let $ | |
72 | - | if (($ | |
73 | - | then $ | |
75 | + | let $acc229272970 = calcVoteDiffSWOP($acc129272970, $list29272970[1]) | |
76 | + | if (($size29272970 == 2)) | |
77 | + | then $acc229272970 | |
74 | 78 | else { | |
75 | - | let $ | |
76 | - | if (($ | |
77 | - | then $ | |
79 | + | let $acc329272970 = calcVoteDiffSWOP($acc229272970, $list29272970[2]) | |
80 | + | if (($size29272970 == 3)) | |
81 | + | then $acc329272970 | |
78 | 82 | else { | |
79 | - | let $ | |
80 | - | if (($ | |
81 | - | then $ | |
83 | + | let $acc429272970 = calcVoteDiffSWOP($acc329272970, $list29272970[3]) | |
84 | + | if (($size29272970 == 4)) | |
85 | + | then $acc429272970 | |
82 | 86 | else { | |
83 | - | let $ | |
84 | - | if (($ | |
85 | - | then $ | |
87 | + | let $acc529272970 = calcVoteDiffSWOP($acc429272970, $list29272970[4]) | |
88 | + | if (($size29272970 == 5)) | |
89 | + | then $acc529272970 | |
86 | 90 | else { | |
87 | - | let $ | |
91 | + | let $acc629272970 = calcVoteDiffSWOP($acc529272970, $list29272970[5]) | |
88 | 92 | throw("List size exceed 5") | |
89 | 93 | } | |
90 | 94 | } | |
96 | 100 | let userTotalVoteSWOPNew = (userTotalVoteSWOP + userVoteDiffSWOP) | |
97 | 101 | let totalVoteSWOPnew = (totalVoteSWOP + userVoteDiffSWOP) | |
98 | 102 | if (true) | |
99 | - | then throw( | |
103 | + | then throw(toString(userSWOPinGovernance)) | |
100 | 104 | else { | |
101 | 105 | let userDataEntry = { | |
102 | - | let $ | |
103 | - | let $ | |
104 | - | let $ | |
105 | - | if (($ | |
106 | - | then $ | |
106 | + | let $list31873228 = poolAddresses | |
107 | + | let $size31873228 = size($list31873228) | |
108 | + | let $acc031873228 = nil | |
109 | + | if (($size31873228 == 0)) | |
110 | + | then $acc031873228 | |
107 | 111 | else { | |
108 | - | let $ | |
109 | - | if (($ | |
110 | - | then $ | |
112 | + | let $acc131873228 = userVoteEntry($acc031873228, $list31873228[0]) | |
113 | + | if (($size31873228 == 1)) | |
114 | + | then $acc131873228 | |
111 | 115 | else { | |
112 | - | let $ | |
113 | - | if (($ | |
114 | - | then $ | |
116 | + | let $acc231873228 = userVoteEntry($acc131873228, $list31873228[1]) | |
117 | + | if (($size31873228 == 2)) | |
118 | + | then $acc231873228 | |
115 | 119 | else { | |
116 | - | let $ | |
117 | - | if (($ | |
118 | - | then $ | |
120 | + | let $acc331873228 = userVoteEntry($acc231873228, $list31873228[2]) | |
121 | + | if (($size31873228 == 3)) | |
122 | + | then $acc331873228 | |
119 | 123 | else { | |
120 | - | let $ | |
121 | - | if (($ | |
122 | - | then $ | |
124 | + | let $acc431873228 = userVoteEntry($acc331873228, $list31873228[3]) | |
125 | + | if (($size31873228 == 4)) | |
126 | + | then $acc431873228 | |
123 | 127 | else { | |
124 | - | let $ | |
125 | - | if (($ | |
126 | - | then $ | |
128 | + | let $acc531873228 = userVoteEntry($acc431873228, $list31873228[4]) | |
129 | + | if (($size31873228 == 5)) | |
130 | + | then $acc531873228 | |
127 | 131 | else { | |
128 | - | let $ | |
132 | + | let $acc631873228 = userVoteEntry($acc531873228, $list31873228[5]) | |
129 | 133 | throw("List size exceed 5") | |
130 | 134 | } | |
131 | 135 | } | |
135 | 139 | } | |
136 | 140 | } | |
137 | 141 | let poolDataEntry = { | |
138 | - | let $ | |
139 | - | let $ | |
140 | - | let $ | |
141 | - | if (($ | |
142 | - | then $ | |
142 | + | let $list32533294 = poolAddresses | |
143 | + | let $size32533294 = size($list32533294) | |
144 | + | let $acc032533294 = nil | |
145 | + | if (($size32533294 == 0)) | |
146 | + | then $acc032533294 | |
143 | 147 | else { | |
144 | - | let $ | |
145 | - | if (($ | |
146 | - | then $ | |
148 | + | let $acc132533294 = poolVoteEntry($acc032533294, $list32533294[0]) | |
149 | + | if (($size32533294 == 1)) | |
150 | + | then $acc132533294 | |
147 | 151 | else { | |
148 | - | let $ | |
149 | - | if (($ | |
150 | - | then $ | |
152 | + | let $acc232533294 = poolVoteEntry($acc132533294, $list32533294[1]) | |
153 | + | if (($size32533294 == 2)) | |
154 | + | then $acc232533294 | |
151 | 155 | else { | |
152 | - | let $ | |
153 | - | if (($ | |
154 | - | then $ | |
156 | + | let $acc332533294 = poolVoteEntry($acc232533294, $list32533294[2]) | |
157 | + | if (($size32533294 == 3)) | |
158 | + | then $acc332533294 | |
155 | 159 | else { | |
156 | - | let $ | |
157 | - | if (($ | |
158 | - | then $ | |
160 | + | let $acc432533294 = poolVoteEntry($acc332533294, $list32533294[3]) | |
161 | + | if (($size32533294 == 4)) | |
162 | + | then $acc432533294 | |
159 | 163 | else { | |
160 | - | let $ | |
161 | - | if (($ | |
162 | - | then $ | |
164 | + | let $acc532533294 = poolVoteEntry($acc432533294, $list32533294[4]) | |
165 | + | if (($size32533294 == 5)) | |
166 | + | then $acc532533294 | |
163 | 167 | else { | |
164 | - | let $ | |
168 | + | let $acc632533294 = poolVoteEntry($acc532533294, $list32533294[5]) | |
165 | 169 | throw("List size exceed 5") | |
166 | 170 | } | |
167 | 171 | } |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 4 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let kUserPoolVoteSWOP = "_vote" | |
5 | 5 | ||
6 | 6 | let kUserTotalVoteSWOP = "_user_total_SWOP_vote" | |
7 | 7 | ||
8 | 8 | let kPoolVoteSWOP = "_vote_SWOP" | |
9 | 9 | ||
10 | 10 | let kTotalVoteSWOP = "total_vote_SWOP" | |
11 | 11 | ||
12 | 12 | let govAddr = Address(base58'3MumyD14hrRb2Vj3HAifsnCcUpsELAZWxAE') | |
13 | 13 | ||
14 | 14 | func isCallerInGovernance (user) = if (if ((valueOrElse(getInteger(govAddr, (toString(user) + "_SWOP_amount")), 0) > 0)) | |
15 | 15 | then true | |
16 | 16 | else (valueOrElse(getInteger(this, (toString(user) + kUserTotalVoteSWOP)), 0) > 0)) | |
17 | 17 | then true | |
18 | 18 | else false | |
19 | 19 | ||
20 | 20 | ||
21 | 21 | func isPoolInGovernance (poolAddress) = if ((valueOrElse(getInteger(govAddr, (poolAddress + "_current_pool_fraction_reward")), 0) > 0)) | |
22 | 22 | then true | |
23 | 23 | else false | |
24 | 24 | ||
25 | 25 | ||
26 | 26 | @Callable(i) | |
27 | 27 | func votePoolWeight (poolAddresses,poolsVoteSWOPNew) = { | |
28 | 28 | func calcVoteDiffSWOP (accumulated,poolAddress) = if (!(isPoolInGovernance(poolAddress))) | |
29 | 29 | then throw("This pool has no _current_pool_fraction_reward in Governance dApp") | |
30 | 30 | else { | |
31 | 31 | let poolIndex = value(indexOf(poolAddresses, poolAddress)) | |
32 | 32 | let userPoolVoteSWOPNew = poolsVoteSWOPNew[poolIndex] | |
33 | - | let userPoolVoteSWOP = valueOrElse(getInteger(this, (((toString(i.caller) + "_") + poolAddress) + kUserPoolVoteSWOP)), 0) | |
34 | - | let poolVoteDiffSWOP = (userPoolVoteSWOPNew - userPoolVoteSWOP) | |
35 | - | (accumulated + poolVoteDiffSWOP) | |
33 | + | if ((0 > userPoolVoteSWOPNew)) | |
34 | + | then throw("userPoolVoteSWOPNew < 0") | |
35 | + | else { | |
36 | + | let userPoolVoteSWOP = valueOrElse(getInteger(this, (((toString(i.caller) + "_") + poolAddress) + kUserPoolVoteSWOP)), 0) | |
37 | + | let poolVoteDiffSWOP = (userPoolVoteSWOPNew - userPoolVoteSWOP) | |
38 | + | (accumulated + poolVoteDiffSWOP) | |
39 | + | } | |
36 | 40 | } | |
37 | 41 | ||
38 | 42 | func userVoteEntry (accumulated,poolAddress) = { | |
39 | 43 | let poolIndex = value(indexOf(poolAddresses, poolAddress)) | |
40 | 44 | let userPoolVoteSWOPNew = poolsVoteSWOPNew[poolIndex] | |
41 | 45 | IntegerEntry((((toString(i.caller) + "_") + poolAddress) + kUserPoolVoteSWOP), userPoolVoteSWOPNew) :: accumulated | |
42 | 46 | } | |
43 | 47 | ||
44 | 48 | func poolVoteEntry (accumulated,poolAddress) = { | |
45 | 49 | let poolIndex = value(indexOf(poolAddresses, poolAddress)) | |
46 | 50 | let userPoolVoteSWOP = valueOrElse(getInteger(this, (((toString(i.caller) + "_") + poolAddress) + kUserPoolVoteSWOP)), 0) | |
47 | 51 | let userPoolVoteSWOPNew = poolsVoteSWOPNew[poolIndex] | |
48 | 52 | let poolVoteDiffSWOP = (userPoolVoteSWOPNew - userPoolVoteSWOP) | |
49 | 53 | let poolVoteSWOP = valueOrElse(getInteger(this, (poolAddress + kPoolVoteSWOP)), 0) | |
50 | 54 | let poolVoteSWOPnew = (poolVoteSWOP + poolVoteDiffSWOP) | |
51 | 55 | IntegerEntry((poolAddress + kPoolVoteSWOP), poolVoteSWOPnew) :: accumulated | |
52 | 56 | } | |
53 | 57 | ||
54 | 58 | if (!(isCallerInGovernance(i.caller))) | |
55 | 59 | then throw("This address has 0 SWOP in Governance dApp") | |
56 | 60 | else { | |
57 | 61 | let totalVoteSWOP = valueOrElse(getInteger(this, kTotalVoteSWOP), 0) | |
58 | 62 | let userTotalVoteSWOP = valueOrElse(getInteger(this, (toString(i.caller) + kUserTotalVoteSWOP)), 0) | |
59 | 63 | let userSWOPinGovernance = getIntegerValue(govAddr, (toString(i.caller) + "_SWOP_amount")) | |
60 | 64 | let userVoteDiffSWOP = { | |
61 | - | let $ | |
62 | - | let $ | |
63 | - | let $ | |
64 | - | if (($ | |
65 | - | then $ | |
65 | + | let $list29272970 = poolAddresses | |
66 | + | let $size29272970 = size($list29272970) | |
67 | + | let $acc029272970 = 0 | |
68 | + | if (($size29272970 == 0)) | |
69 | + | then $acc029272970 | |
66 | 70 | else { | |
67 | - | let $ | |
68 | - | if (($ | |
69 | - | then $ | |
71 | + | let $acc129272970 = calcVoteDiffSWOP($acc029272970, $list29272970[0]) | |
72 | + | if (($size29272970 == 1)) | |
73 | + | then $acc129272970 | |
70 | 74 | else { | |
71 | - | let $ | |
72 | - | if (($ | |
73 | - | then $ | |
75 | + | let $acc229272970 = calcVoteDiffSWOP($acc129272970, $list29272970[1]) | |
76 | + | if (($size29272970 == 2)) | |
77 | + | then $acc229272970 | |
74 | 78 | else { | |
75 | - | let $ | |
76 | - | if (($ | |
77 | - | then $ | |
79 | + | let $acc329272970 = calcVoteDiffSWOP($acc229272970, $list29272970[2]) | |
80 | + | if (($size29272970 == 3)) | |
81 | + | then $acc329272970 | |
78 | 82 | else { | |
79 | - | let $ | |
80 | - | if (($ | |
81 | - | then $ | |
83 | + | let $acc429272970 = calcVoteDiffSWOP($acc329272970, $list29272970[3]) | |
84 | + | if (($size29272970 == 4)) | |
85 | + | then $acc429272970 | |
82 | 86 | else { | |
83 | - | let $ | |
84 | - | if (($ | |
85 | - | then $ | |
87 | + | let $acc529272970 = calcVoteDiffSWOP($acc429272970, $list29272970[4]) | |
88 | + | if (($size29272970 == 5)) | |
89 | + | then $acc529272970 | |
86 | 90 | else { | |
87 | - | let $ | |
91 | + | let $acc629272970 = calcVoteDiffSWOP($acc529272970, $list29272970[5]) | |
88 | 92 | throw("List size exceed 5") | |
89 | 93 | } | |
90 | 94 | } | |
91 | 95 | } | |
92 | 96 | } | |
93 | 97 | } | |
94 | 98 | } | |
95 | 99 | } | |
96 | 100 | let userTotalVoteSWOPNew = (userTotalVoteSWOP + userVoteDiffSWOP) | |
97 | 101 | let totalVoteSWOPnew = (totalVoteSWOP + userVoteDiffSWOP) | |
98 | 102 | if (true) | |
99 | - | then throw( | |
103 | + | then throw(toString(userSWOPinGovernance)) | |
100 | 104 | else { | |
101 | 105 | let userDataEntry = { | |
102 | - | let $ | |
103 | - | let $ | |
104 | - | let $ | |
105 | - | if (($ | |
106 | - | then $ | |
106 | + | let $list31873228 = poolAddresses | |
107 | + | let $size31873228 = size($list31873228) | |
108 | + | let $acc031873228 = nil | |
109 | + | if (($size31873228 == 0)) | |
110 | + | then $acc031873228 | |
107 | 111 | else { | |
108 | - | let $ | |
109 | - | if (($ | |
110 | - | then $ | |
112 | + | let $acc131873228 = userVoteEntry($acc031873228, $list31873228[0]) | |
113 | + | if (($size31873228 == 1)) | |
114 | + | then $acc131873228 | |
111 | 115 | else { | |
112 | - | let $ | |
113 | - | if (($ | |
114 | - | then $ | |
116 | + | let $acc231873228 = userVoteEntry($acc131873228, $list31873228[1]) | |
117 | + | if (($size31873228 == 2)) | |
118 | + | then $acc231873228 | |
115 | 119 | else { | |
116 | - | let $ | |
117 | - | if (($ | |
118 | - | then $ | |
120 | + | let $acc331873228 = userVoteEntry($acc231873228, $list31873228[2]) | |
121 | + | if (($size31873228 == 3)) | |
122 | + | then $acc331873228 | |
119 | 123 | else { | |
120 | - | let $ | |
121 | - | if (($ | |
122 | - | then $ | |
124 | + | let $acc431873228 = userVoteEntry($acc331873228, $list31873228[3]) | |
125 | + | if (($size31873228 == 4)) | |
126 | + | then $acc431873228 | |
123 | 127 | else { | |
124 | - | let $ | |
125 | - | if (($ | |
126 | - | then $ | |
128 | + | let $acc531873228 = userVoteEntry($acc431873228, $list31873228[4]) | |
129 | + | if (($size31873228 == 5)) | |
130 | + | then $acc531873228 | |
127 | 131 | else { | |
128 | - | let $ | |
132 | + | let $acc631873228 = userVoteEntry($acc531873228, $list31873228[5]) | |
129 | 133 | throw("List size exceed 5") | |
130 | 134 | } | |
131 | 135 | } | |
132 | 136 | } | |
133 | 137 | } | |
134 | 138 | } | |
135 | 139 | } | |
136 | 140 | } | |
137 | 141 | let poolDataEntry = { | |
138 | - | let $ | |
139 | - | let $ | |
140 | - | let $ | |
141 | - | if (($ | |
142 | - | then $ | |
142 | + | let $list32533294 = poolAddresses | |
143 | + | let $size32533294 = size($list32533294) | |
144 | + | let $acc032533294 = nil | |
145 | + | if (($size32533294 == 0)) | |
146 | + | then $acc032533294 | |
143 | 147 | else { | |
144 | - | let $ | |
145 | - | if (($ | |
146 | - | then $ | |
148 | + | let $acc132533294 = poolVoteEntry($acc032533294, $list32533294[0]) | |
149 | + | if (($size32533294 == 1)) | |
150 | + | then $acc132533294 | |
147 | 151 | else { | |
148 | - | let $ | |
149 | - | if (($ | |
150 | - | then $ | |
152 | + | let $acc232533294 = poolVoteEntry($acc132533294, $list32533294[1]) | |
153 | + | if (($size32533294 == 2)) | |
154 | + | then $acc232533294 | |
151 | 155 | else { | |
152 | - | let $ | |
153 | - | if (($ | |
154 | - | then $ | |
156 | + | let $acc332533294 = poolVoteEntry($acc232533294, $list32533294[2]) | |
157 | + | if (($size32533294 == 3)) | |
158 | + | then $acc332533294 | |
155 | 159 | else { | |
156 | - | let $ | |
157 | - | if (($ | |
158 | - | then $ | |
160 | + | let $acc432533294 = poolVoteEntry($acc332533294, $list32533294[3]) | |
161 | + | if (($size32533294 == 4)) | |
162 | + | then $acc432533294 | |
159 | 163 | else { | |
160 | - | let $ | |
161 | - | if (($ | |
162 | - | then $ | |
164 | + | let $acc532533294 = poolVoteEntry($acc432533294, $list32533294[4]) | |
165 | + | if (($size32533294 == 5)) | |
166 | + | then $acc532533294 | |
163 | 167 | else { | |
164 | - | let $ | |
168 | + | let $acc632533294 = poolVoteEntry($acc532533294, $list32533294[5]) | |
165 | 169 | throw("List size exceed 5") | |
166 | 170 | } | |
167 | 171 | } | |
168 | 172 | } | |
169 | 173 | } | |
170 | 174 | } | |
171 | 175 | } | |
172 | 176 | } | |
173 | 177 | if ((userSWOPinGovernance > userTotalVoteSWOPNew)) | |
174 | 178 | then throw(((((toString(this) + " has ") + toString(userSWOPinGovernance)) + "SWOP in governance. New SWOP in voting ") + toString(userTotalVoteSWOPNew))) | |
175 | 179 | else ((userDataEntry ++ poolDataEntry) ++ [IntegerEntry((toString(i.caller) + kUserTotalVoteSWOP), userTotalVoteSWOPNew), IntegerEntry(kTotalVoteSWOP, totalVoteSWOPnew)]) | |
176 | 180 | } | |
177 | 181 | } | |
178 | 182 | } | |
179 | 183 | ||
180 | 184 |
github/deemru/w8io/c3f4982 88.13 ms ◑