tx · 9vHL7r6M9ndfd8VKh1tFWGn3LPm3pCoMpHG6mo8JoZy5

3N1Epwa6GQuTQr2K9WzeUcqSFCdERwuvL5T:  -0.01400000 Waves

2022.05.06 11:34 [2039592] smart account 3N1Epwa6GQuTQr2K9WzeUcqSFCdERwuvL5T > SELF 0.00000000 Waves

{ "type": 13, "id": "9vHL7r6M9ndfd8VKh1tFWGn3LPm3pCoMpHG6mo8JoZy5", "fee": 1400000, "feeAssetId": null, "timestamp": 1651826068990, "version": 1, "sender": "3N1Epwa6GQuTQr2K9WzeUcqSFCdERwuvL5T", "senderPublicKey": "7iXEgsFNsnbLZ3ca4tmz8jffnyxMu9keuBV6CuQPJLuA", "proofs": [ "4Yz4brVuqmbxED5nXeAYhBPMfSnzgbAQSjk8xmu24g1joRKoqA41TAE9YspUcnweQMifpMJcUzpqypmxVva6iQU" ], "script": "base64:AAIFAAAAAAAAADoIAhIMCgoICAgIAQgBAQgBEgQKAggIEgUKAwgIBBIECgIICBIDCgEBEgMKAQESBAoCCAgSAwoBCBIAAAAAGwAAAAAJc2VwYXJhdG9yAgAAAAJfXwAAAAAMa2V5RmVlQW1vdW50CQAEuQAAAAIJAARMAAAAAgIAAAACJXMJAARMAAAAAgIAAAADZmVlBQAAAANuaWwFAAAACXNlcGFyYXRvcgAAAAAOa2V5VXNkbkFzc2V0SWQJAAS5AAAAAgkABEwAAAACAgAAAAIlcwkABEwAAAACAgAAAAt1c2RuQXNzZXRJZAUAAAADbmlsBQAAAAlzZXBhcmF0b3IAAAAAEWtleVZvdGluZ0R1cmF0aW9uCQAEuQAAAAIJAARMAAAAAgIAAAACJXMJAARMAAAAAgIAAAALZXBvY2hMZW5ndGgFAAAAA25pbAUAAAAJc2VwYXJhdG9yAAAAABFrZXlGaW5hbGl6ZVJld2FyZAkABLkAAAACCQAETAAAAAICAAAAAiVzCQAETAAAAAICAAAADmZpbmFsaXplUmV3YXJkBQAAAANuaWwFAAAACXNlcGFyYXRvcgAAAAASa2V5Vm90aW5nVGhyZXNob2xkCQAEuQAAAAIJAARMAAAAAgIAAAACJXMJAARMAAAAAgIAAAAPdm90aW5nVGhyZXNob2xkBQAAAANuaWwFAAAACXNlcGFyYXRvcgAAAAAMa2V5V3hBc3NldElkCQAEuQAAAAIJAARMAAAAAgIAAAACJXMJAARMAAAAAgIAAAAJd3hBc3NldElkBQAAAANuaWwFAAAACXNlcGFyYXRvcgAAAAAWa2V5QXNzZXRzU3RvcmVDb250cmFjdAkABLkAAAACCQAETAAAAAICAAAAAiVzCQAETAAAAAICAAAAE2Fzc2V0c1N0b3JlQ29udHJhY3QFAAAAA25pbAUAAAAJc2VwYXJhdG9yAAAAABNrZXl1c2VyUG9vbENvbnRyYWN0CQAEuQAAAAIJAARMAAAAAgIAAAACJXMJAARMAAAAAgIAAAAQdXNlclBvb2xDb250cmFjdAUAAAADbmlsBQAAAAlzZXBhcmF0b3IAAAAAE2tleUVtaXNzaW9uQ29udHJhY3QJAAS5AAAAAgkABEwAAAACAgAAAAIlcwkABEwAAAACAgAAABBlbWlzc2lvbkNvbnRyYWN0BQAAAANuaWwFAAAACXNlcGFyYXRvcgAAAAATa2V5Qm9vc3RpbmdDb250cmFjdAkABLkAAAACCQAETAAAAAICAAAAAiVzCQAETAAAAAICAAAAEGJvb3N0aW5nQ29udHJhY3QFAAAAA25pbAUAAAAJc2VwYXJhdG9yAQAAAA9nZXRTdHJpbmdPckZhaWwAAAABAAAAA2tleQkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEHQAAAAIFAAAABHRoaXMFAAAAA2tleQkAASwAAAACBQAAAANrZXkCAAAADyBpcyBub3QgZGVmaW5lZAEAAAAQa2V5SW5MaXN0QXNzZXRJZAAAAAIAAAANYW1vdW50QXNzZXRJZAAAAAxwcmljZUFzc2V0SWQJAAS5AAAAAgkABEwAAAACCQABLAAAAAICAAAABiVzJXMlcwIAAAAGaW5MaXN0CQAETAAAAAIFAAAADWFtb3VudEFzc2V0SWQJAARMAAAAAgUAAAAMcHJpY2VBc3NldElkBQAAAANuaWwFAAAACXNlcGFyYXRvcgEAAAAOa2V5U3RhcnRIZWlnaHQAAAACAAAADWFtb3VudEFzc2V0SWQAAAAMcHJpY2VBc3NldElkCQAEuQAAAAIJAARMAAAAAgkAASwAAAACAgAAAAYlcyVzJXMCAAAAC3N0YXJ0SGVpZ2h0CQAETAAAAAIFAAAADWFtb3VudEFzc2V0SWQJAARMAAAAAgUAAAAMcHJpY2VBc3NldElkBQAAAANuaWwFAAAACXNlcGFyYXRvcgEAAAAPa2V5Vm90aW5nUmVzdWx0AAAAAgAAAA1hbW91bnRBc3NldElkAAAADHByaWNlQXNzZXRJZAkABLkAAAACCQAETAAAAAICAAAABiVzJXMlcwkABEwAAAACAgAAAAx2b3RpbmdSZXN1bHQJAARMAAAAAgUAAAANYW1vdW50QXNzZXRJZAkABEwAAAACBQAAAAxwcmljZUFzc2V0SWQFAAAAA25pbAUAAAAJc2VwYXJhdG9yAQAAAAdrZXlWb3RlAAAAAwAAAA1hbW91bnRBc3NldElkAAAADHByaWNlQXNzZXRJZAAAAAx2b3RlckFkZHJlc3MJAAS5AAAAAgkABEwAAAACAgAAAAglcyVzJXMlcwkABEwAAAACAgAAAAR2b3RlCQAETAAAAAIFAAAADWFtb3VudEFzc2V0SWQJAARMAAAAAgUAAAAMcHJpY2VBc3NldElkCQAETAAAAAIFAAAADHZvdGVyQWRkcmVzcwUAAAADbmlsBQAAAAlzZXBhcmF0b3IBAAAADGtleVZvdGVWYWx1ZQAAAAIAAAAJZ3d4QW1vdW50AAAABHZvdGUEAAAAA2tleQMFAAAABHZvdGUJAAS5AAAAAgkABEwAAAACAgAAAAQlZCVzCQAETAAAAAIFAAAACWd3eEFtb3VudAkABEwAAAACAgAAAAN5ZXMFAAAAA25pbAUAAAAJc2VwYXJhdG9yCQAEuQAAAAIJAARMAAAAAgIAAAAEJWQlcwkABEwAAAACBQAAAAlnd3hBbW91bnQJAARMAAAAAgIAAAACbm8FAAAAA25pbAUAAAAJc2VwYXJhdG9yBQAAAANrZXkBAAAAE2tleU1hbmFnZXJQdWJsaWNLZXkAAAAAAgAAABQlc19fbWFuYWdlclB1YmxpY0tleQEAAAAaa2V5UGVuZGluZ01hbmFnZXJQdWJsaWNLZXkAAAAAAgAAABslc19fcGVuZGluZ01hbmFnZXJQdWJsaWNLZXkAAAAAEGVtaXNzaW9uQ29udHJhY3QJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAABBQAAABNrZXlFbWlzc2lvbkNvbnRyYWN0AAAAABB1c2VyUG9vbENvbnRyYWN0CQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABCQEAAAAPZ2V0U3RyaW5nT3JGYWlsAAAAAQUAAAATa2V5dXNlclBvb2xDb250cmFjdAAAAAAQYm9vc3RpbmdDb250cmFjdAkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQkBAAAAD2dldFN0cmluZ09yRmFpbAAAAAEFAAAAE2tleUJvb3N0aW5nQ29udHJhY3QAAAAAEmFzc2V0U3RvcmVDb250cmFjdAkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQkBAAAAD2dldFN0cmluZ09yRmFpbAAAAAEFAAAAFmtleUFzc2V0c1N0b3JlQ29udHJhY3QBAAAAFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQAAAAABAAAAAckbWF0Y2gwCQAEIgAAAAEJAQAAABNrZXlNYW5hZ2VyUHVibGljS2V5AAAAAAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFzBQAAAAckbWF0Y2gwCQACWQAAAAEFAAAAAXMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQFAAAABHVuaXQJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IBAAAAHXBlbmRpbmdNYW5hZ2VyUHVibGljS2V5T3JVbml0AAAAAAQAAAAHJG1hdGNoMAkABCIAAAABCQEAAAAaa2V5UGVuZGluZ01hbmFnZXJQdWJsaWNLZXkAAAAAAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAXMFAAAAByRtYXRjaDAJAAJZAAAAAQUAAAABcwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAEVW5pdAUAAAAEdW5pdAkAAAIAAAABAgAAAAtNYXRjaCBlcnJvcgEAAAALbXVzdE1hbmFnZXIAAAABAAAAAWkEAAAAAnBkCQAAAgAAAAECAAAAEVBlcm1pc3Npb24gZGVuaWVkBAAAAAckbWF0Y2gwCQEAAAAWbWFuYWdlclB1YmxpY0tleU9yVW5pdAAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAACkJ5dGVWZWN0b3IEAAAAAnBrBQAAAAckbWF0Y2gwAwkAAAAAAAACCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkFAAAAAnBrBgUAAAACcGQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQDCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAEdGhpcwYFAAAAAnBkCQAAAgAAAAECAAAAC01hdGNoIGVycm9yAQAAAAVhc0ludAAAAAEAAAADdmFsBAAAAAckbWF0Y2gwBQAAAAN2YWwDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAAGdmFsSW50BQAAAAckbWF0Y2gwBQAAAAZ2YWxJbnQJAAACAAAAAQIAAAAbRmFpbGVkIHRvIGNhc3QgaW50byBJbnRlZ2VyAAAACQAAAAFpAQAAAAtjb25zdHJ1Y3RvcgAAAAoAAAAWYXNzZXRzU3RvcmVDb250cmFjdFBybQAAABN1c2VyUG9vbENvbnRyYWN0UHJtAAAAE2Jvb3N0aW5nQ29udHJhY3RQcm0AAAATZW1pc3Npb25Db250cmFjdFBybQAAAAxmZWVBbW91bnRQcm0AAAAMd3hBc3NldElkUHJtAAAAEnZvdGluZ1RocmVzaG9sZFBybQAAABF2b3RpbmdEdXJhdGlvblBybQAAAA51c2RuQXNzZXRJZFBybQAAABFmaW5hbGl6ZVJld2FyZFBybQQAAAAGY2hlY2tzCQAETAAAAAIDCQEAAAALbXVzdE1hbmFnZXIAAAABBQAAAAFpBgkAAAIAAAABAgAAAAxNdXN0IG1hbmFnZXIJAARMAAAAAgMJAQAAAAlpc0RlZmluZWQAAAABCQAEJgAAAAEFAAAAFmFzc2V0c1N0b3JlQ29udHJhY3RQcm0GCQAAAgAAAAECAAAAJEludmFsaWQgYXNzZXRfc3RvcmUgY29udHJhY3QgYWRkcmVzcwkABEwAAAACAwkBAAAACWlzRGVmaW5lZAAAAAEJAAQmAAAAAQUAAAATYm9vc3RpbmdDb250cmFjdFBybQYJAAACAAAAAQIAAAAhSW52YWxpZCBib29zdGluZyBjb250cmFjdCBhZGRyZXNzCQAETAAAAAIDCQEAAAAJaXNEZWZpbmVkAAAAAQkABCYAAAABBQAAABN1c2VyUG9vbENvbnRyYWN0UHJtBgkAAAIAAAABAgAAACNJbnZhbGlkIHVzZXJfcG9vbHMgY29udHJhY3QgYWRkcmVzcwkABEwAAAACAwkBAAAACWlzRGVmaW5lZAAAAAEJAAQmAAAAAQUAAAATZW1pc3Npb25Db250cmFjdFBybQYJAAACAAAAAQIAAAAhSW52YWxpZCBlbWlzc2lvbiBjb250cmFjdCBhZGRyZXNzCQAETAAAAAIDCQAAZwAAAAIFAAAADGZlZUFtb3VudFBybQAAAAAAAAAAAAYJAAACAAAAAQIAAAASSW52YWxpZCBmZWUgYW1vdW50CQAETAAAAAIDCQAAZgAAAAIFAAAAEXZvdGluZ0R1cmF0aW9uUHJtAAAAAAAAAAAABgkAAAIAAAABAgAAABdJbnZhbGlkIHZvdGluZyBkdXJhdGlvbgkABEwAAAACAwkAAGYAAAACBQAAABFmaW5hbGl6ZVJld2FyZFBybQAAAAAAAAAAAAYJAAACAAAAAQIAAAAXSW52YWxpZCBmaW5hbGl6ZSByZXdhcmQJAARMAAAAAgMJAABnAAAAAgUAAAASdm90aW5nVGhyZXNob2xkUHJtAAAAAAAAAAAABgkAAAIAAAABAgAAABhJbnZhbGlkIHZvdGluZyB0aHJlc2hvbGQJAARMAAAAAgMJAQAAAAlpc0RlZmluZWQAAAABCQAD7AAAAAEJAAJZAAAAAQUAAAAMd3hBc3NldElkUHJtBgkAAAIAAAABAgAAABNJbnZhbGlkIFdYIGFzc2V0IElECQAETAAAAAIDCQEAAAAJaXNEZWZpbmVkAAAAAQkAA+wAAAABCQACWQAAAAEFAAAADnVzZG5Bc3NldElkUHJtBgkAAAIAAAABAgAAABVJbnZhbGlkIFVTRE4gYXNzZXQgSUQFAAAAA25pbAMJAAAAAAAAAgUAAAAGY2hlY2tzBQAAAAZjaGVja3MJAAUUAAAAAgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAABZrZXlBc3NldHNTdG9yZUNvbnRyYWN0BQAAABZhc3NldHNTdG9yZUNvbnRyYWN0UHJtCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAAE2tleXVzZXJQb29sQ29udHJhY3QFAAAAE3VzZXJQb29sQ29udHJhY3RQcm0JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAATa2V5RW1pc3Npb25Db250cmFjdAUAAAATZW1pc3Npb25Db250cmFjdFBybQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAMa2V5RmVlQW1vdW50BQAAAAxmZWVBbW91bnRQcm0JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEWtleVZvdGluZ0R1cmF0aW9uBQAAABF2b3RpbmdEdXJhdGlvblBybQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAARa2V5RmluYWxpemVSZXdhcmQFAAAAEWZpbmFsaXplUmV3YXJkUHJtCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABJrZXlWb3RpbmdUaHJlc2hvbGQFAAAAEnZvdGluZ1RocmVzaG9sZFBybQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAAAxr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YWN0AgAAAARidXJuBQAAAANuaWwJAARMAAAAAgkBAAAAD0F0dGFjaGVkUGF5bWVudAAAAAIIBQAAAAdwYXltZW50AAAAB2Fzc2V0SWQIBQAAAAdwYXltZW50AAAABmFtb3VudAUAAAADbmlsAwkAAAAAAAACBQAAAApidXJuRmVlSW52BQAAAApidXJuRmVlSW52CQAETAAAAAIJAQAAAAxCb29sZWFuRW50cnkAAAACCQEAAAAQa2V5SW5MaXN0QXNzZXRJZAAAAAIFAAAADWFtb3VudEFzc2V0SWQFAAAADHByaWNlQXNzZXRJZAYJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAA5rZXlTdGFydEhlaWdodAAAAAIFAAAADWFtb3VudEFzc2V0SWQFAAAADHByaWNlQXNzZXRJZAUAAAAGaGVpZ2h0BQAAAANuaWwJAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAAAAAWkBAAAABHZvdGUAAAADAAAADWFtb3VudEFzc2V0SWQAAAAMcHJpY2VBc3NldElkAAAAB2luRmF2b3IEAAAAEnZvdGluZ0ZpbmlzaEhlaWdodAkAAGQAAAACCQEAAAAFdmFsdWUAAAABCQAEHwAAAAEJAQAAAA5rZXlTdGFydEhlaWdodAAAAAIFAAAADWFtb3VudEFzc2V0SWQFAAAADHByaWNlQXNzZXRJZAkBAAAABXZhbHVlAAAAAQkABB8AAAABBQAAABFrZXlWb3RpbmdEdXJhdGlvbgQAAAAGY2hlY2tzCQAETAAAAAIDCQEAAAALdmFsdWVPckVsc2UAAAACCQAEIAAAAAEJAQAAABBrZXlJbkxpc3RBc3NldElkAAAAAgUAAAANYW1vdW50QXNzZXRJZAUAAAAMcHJpY2VBc3NldElkBwYJAAACAAAAAQIAAAAiVGhlIHRva2VuIGlz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aW5nTWFuYWdlclB1YmxpY0tleQQAAAALY2hlY2tDYWxsZXIJAQAAAAttdXN0TWFuYWdlcgAAAAEFAAAAAWkDCQAAAAAAAAIFAAAAC2NoZWNrQ2FsbGVyBQAAAAtjaGVja0NhbGxlcgQAAAAVY2hlY2tNYW5hZ2VyUHVibGljS2V5CQACWQAAAAEFAAAAF3BlbmRpbmdNYW5hZ2VyUHVibGljS2V5AwkAAAAAAAACBQAAABVjaGVja01hbmFnZXJQdWJsaWNLZXkFAAAAFWNoZWNrTWFuYWdlclB1YmxpY0tleQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAaa2V5UGVuZGluZ01hbmFnZXJQdWJsaWNLZXkAAAAABQAAABdwZW5kaW5nTWFuYWdlclB1YmxpY0tleQUAAAADbmlsCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4AAAABaQEAAAAOY29uZmlybU1hbmFnZXIAAAAABAAAAAJwbQkBAAAAHXBlbmRpbmdNYW5hZ2VyUHVibGljS2V5T3JVbml0AAAAAAQAAAAFaGFzUE0DCQEAAAAJaXNEZWZpbmVkAAAAAQUAAAACcG0GCQAAAgAAAAECAAAAEk5vIHBlbmRpbmcgbWFuYWdlcgMJAAAAAAAAAgUAAAAFaGFzUE0FAAAABWhhc1BNBAAAAAdjaGVja1BNAwkAAAAAAAACCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkJAQAAAAV2YWx1ZQAAAAEFAAAAAnBtBgkAAAIAAAABAgAAABtZb3UgYXJlIG5vdCBwZW5kaW5nIG1hbmFnZXIDCQAAAAAAAAIFAAAAB2NoZWNrUE0FAAAAB2NoZWNrUE0JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAE2tleU1hbmFnZXJQdWJsaWNLZXkAAAAACQACWAAAAAEJAQAAAAV2YWx1ZQAAAAEFAAAAAnBtCQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAQAAABprZXlQZW5kaW5nTWFuYWdlclB1YmxpY0tleQAAAAAFAAAAA25pbAkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAQAAAAPdGFyZ2V0UHVibGljS2V5BAAAAAckbWF0Y2gwCQEAAAAWbWFuYWdlclB1YmxpY0tleU9yVW5pdAAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAACkJ5dGVWZWN0b3IEAAAAAnBrBQAAAAckbWF0Y2gwBQAAAAJwawMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAEVW5pdAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tleQkAAAIAAAABAgAAAAtNYXRjaCBlcnJvcgkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAFAAAAD3RhcmdldFB1YmxpY0tleS2UJvs=", "chainId": 84, "height": 2039592, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9mtHfAgaGN7N91fkPGmPhsUBTh3D6wTaYQWxY2A7hnSX Next: 66aDmYgExJDGMj1nKA9pEAZrpsf6rqFUCGu9cuCFQdHj Diff:
OldNewDifferences
99
1010 let d = makeString(["%s", "epochLength"], a)
1111
12-let e = makeString(["%s", "votingThreshold"], a)
12+let e = makeString(["%s", "finalizeReward"], a)
1313
14-let f = makeString(["%s", "wxAssetId"], a)
14+let f = makeString(["%s", "votingThreshold"], a)
1515
16-let g = makeString(["%s", "assetsStoreContract"], a)
16+let g = makeString(["%s", "wxAssetId"], a)
1717
18-let h = makeString(["%s", "userPoolContract"], a)
18+let h = makeString(["%s", "assetsStoreContract"], a)
1919
20-let i = makeString(["%s", "emissionContract"], a)
20+let i = makeString(["%s", "userPoolContract"], a)
2121
22-let j = makeString(["%s", "boostingContract"], a)
22+let j = makeString(["%s", "emissionContract"], a)
2323
24-func k (l) = valueOrErrorMessage(getString(this, l), (l + " is not defined"))
24+let k = makeString(["%s", "boostingContract"], a)
25+
26+func l (m) = valueOrErrorMessage(getString(this, m), (m + " is not defined"))
2527
2628
27-func m (n,o) = makeString([("%s%s%s" + "inList"), n, o], a)
29+func n (o,p) = makeString([("%s%s%s" + "inList"), o, p], a)
2830
2931
30-func p (n,o) = makeString([("%s%s%s" + "startHeight"), n, o], a)
32+func q (o,p) = makeString([("%s%s%s" + "startHeight"), o, p], a)
3133
3234
33-func q (n,o) = makeString(["%s%s%s", "votingResult", n, o], a)
35+func r (o,p) = makeString(["%s%s%s", "votingResult", o, p], a)
3436
3537
36-func r (n,o,s) = makeString(["%s%s%s%s", "vote", n, o, s], a)
38+func s (o,p,t) = makeString(["%s%s%s%s", "vote", o, p, t], a)
3739
3840
39-func t () = "%s__managerPublicKey"
41+func u (v,w) = {
42+ let m = if (w)
43+ then makeString(["%d%s", v, "yes"], a)
44+ else makeString(["%d%s", v, "no"], a)
45+ m
46+ }
4047
4148
42-func u () = "%s__pendingManagerPublicKey"
49+func x () = "%s__managerPublicKey"
4350
4451
45-let v = addressFromStringValue(k(i))
52+func y () = "%s__pendingManagerPublicKey"
4653
47-let w = addressFromStringValue(k(h))
4854
49-let x = addressFromStringValue(k(j))
55+let z = addressFromStringValue(l(j))
5056
51-func y () = {
52- let z = getString(t())
53- if ($isInstanceOf(z, "String"))
57+let A = addressFromStringValue(l(i))
58+
59+let B = addressFromStringValue(l(k))
60+
61+let C = addressFromStringValue(l(h))
62+
63+func D () = {
64+ let E = getString(x())
65+ if ($isInstanceOf(E, "String"))
5466 then {
55- let A = z
56- fromBase58String(A)
67+ let F = E
68+ fromBase58String(F)
5769 }
58- else if ($isInstanceOf(z, "Unit"))
70+ else if ($isInstanceOf(E, "Unit"))
5971 then unit
6072 else throw("Match error")
6173 }
6274
6375
64-func B () = {
65- let z = getString(u())
66- if ($isInstanceOf(z, "String"))
76+func G () = {
77+ let E = getString(y())
78+ if ($isInstanceOf(E, "String"))
6779 then {
68- let A = z
69- fromBase58String(A)
80+ let F = E
81+ fromBase58String(F)
7082 }
71- else if ($isInstanceOf(z, "Unit"))
83+ else if ($isInstanceOf(E, "Unit"))
7284 then unit
7385 else throw("Match error")
7486 }
7587
7688
77-func C (D) = {
78- let E = throw("Permission denied")
79- let z = y()
80- if ($isInstanceOf(z, "ByteVector"))
89+func H (I) = {
90+ let J = throw("Permission denied")
91+ let E = D()
92+ if ($isInstanceOf(E, "ByteVector"))
8193 then {
82- let F = z
83- if ((D.callerPublicKey == F))
94+ let K = E
95+ if ((I.callerPublicKey == K))
8496 then true
85- else E
97+ else J
8698 }
87- else if ($isInstanceOf(z, "Unit"))
88- then if ((D.caller == this))
99+ else if ($isInstanceOf(E, "Unit"))
100+ then if ((I.caller == this))
89101 then true
90- else E
102+ else J
91103 else throw("Match error")
92104 }
93105
94106
95-func G (H) = {
96- let z = H
97- if ($isInstanceOf(z, "Int"))
107+func L (M) = {
108+ let E = M
109+ if ($isInstanceOf(E, "Int"))
98110 then {
99- let I = z
100- I
111+ let N = E
112+ N
101113 }
102114 else throw("Failed to cast into Integer")
103115 }
104116
105117
106-@Callable(D)
107-func constructor (J,K,L,M,N,O,P,Q,R) = {
108- let S = [if (C(D))
118+@Callable(I)
119+func constructor (O,P,Q,R,S,T,U,V,W,X) = {
120+ let Y = [if (H(I))
109121 then true
110- else throw("Must manager"), if (isDefined(addressFromString(J)))
122+ else throw("Must manager"), if (isDefined(addressFromString(O)))
111123 then true
112- else throw("Invalid asset_store contract address"), if (isDefined(addressFromString(L)))
124+ else throw("Invalid asset_store contract address"), if (isDefined(addressFromString(Q)))
113125 then true
114- else throw("Invalid boosting contract address"), if (isDefined(addressFromString(K)))
126+ else throw("Invalid boosting contract address"), if (isDefined(addressFromString(P)))
115127 then true
116- else throw("Invalid user_pools contract address"), if (isDefined(addressFromString(M)))
128+ else throw("Invalid user_pools contract address"), if (isDefined(addressFromString(R)))
117129 then true
118- else throw("Invalid emission contract address"), if ((N >= 0))
130+ else throw("Invalid emission contract address"), if ((S >= 0))
119131 then true
120- else throw("Invalid fee amount"), if ((Q > 0))
132+ else throw("Invalid fee amount"), if ((V > 0))
121133 then true
122- else throw("Invalid voting duration"), if ((P >= 0))
134+ else throw("Invalid voting duration"), if ((X > 0))
123135 then true
124- else throw("Invalid voting threshold"), if (isDefined(assetInfo(fromBase58String(O))))
136+ else throw("Invalid finalize reward"), if ((U >= 0))
125137 then true
126- else throw("Invalid WX asset ID"), if (isDefined(assetInfo(fromBase58String(R))))
138+ else throw("Invalid voting threshold"), if (isDefined(assetInfo(fromBase58String(T))))
139+ then true
140+ else throw("Invalid WX asset ID"), if (isDefined(assetInfo(fromBase58String(W))))
127141 then true
128142 else throw("Invalid USDN asset ID")]
129- if ((S == S))
130- then $Tuple2([StringEntry(g, J), StringEntry(h, K), StringEntry(i, M), IntegerEntry(b, N), IntegerEntry(d, Q), IntegerEntry(e, P), StringEntry(f, O), StringEntry(c, R)], unit)
143+ if ((Y == Y))
144+ then $Tuple2([StringEntry(h, O), StringEntry(i, P), StringEntry(j, R), IntegerEntry(b, S), IntegerEntry(d, V), IntegerEntry(e, X), IntegerEntry(f, U), StringEntry(g, T), StringEntry(c, W)], unit)
131145 else throw("Strict value is not equal to itself.")
132146 }
133147
134148
135149
136-@Callable(D)
137-func suggest (n,o) = {
138- let T = value(D.payments[0])
139- let U = valueOrErrorMessage(assetInfo(fromBase58String(n)), "Invalid amountAssetId ID")
140- let S = [if ((U.issuer == D.caller))
150+@Callable(I)
151+func suggest (o,p) = {
152+ let Z = value(I.payments[0])
153+ let aa = valueOrErrorMessage(assetInfo(fromBase58String(o)), "Invalid amountAssetId ID")
154+ let Y = [if ((aa.issuer == I.caller))
141155 then true
142- else throw("Asset can only be suggested by its issuer"), if ((U.scripted == false))
156+ else throw("Asset can only be suggested by its issuer"), if ((aa.scripted == false))
143157 then true
144- else throw("Asset is smart"), if ((toBase58String(value(T.assetId)) == value(getString(f))))
158+ else throw("Asset is smart"), if ((toBase58String(value(Z.assetId)) == value(getString(g))))
145159 then true
146- else throw("Invalid fee asset"), if ((T.amount == value(getInteger(b))))
160+ else throw("Invalid fee asset"), if ((Z.amount == value(getInteger(b))))
147161 then true
148- else throw("Invalid fee amount"), if ((o == value(getString(c))))
162+ else throw("Invalid fee amount"), if ((p == value(getString(c))))
149163 then true
150- else throw("priceAssetId is not USDN"), if ((getBoolean(m(n, o)) == unit))
164+ else throw("priceAssetId is not USDN"), if ((getBoolean(n(o, p)) == unit))
151165 then true
152166 else throw("Already in voting list")]
153- if ((S == S))
167+ if ((Y == Y))
154168 then {
155- let V = {
156- let z = invoke(w, "statusREADONLY", [n, o], nil)
157- if ($isInstanceOf(z, "String"))
169+ let ab = {
170+ let E = invoke(A, "statusREADONLY", [o, p], nil)
171+ if ($isInstanceOf(E, "String"))
158172 then {
159- let A = z
160- if ((A == "active"))
173+ let F = E
174+ if ((F == "active"))
161175 then true
162176 else throw("User pool is not active")
163177 }
164178 else throw("User pool is not active")
165179 }
166- if ((V == V))
180+ if ((ab == ab))
167181 then {
168- let W = {
169- let z = invoke(value(addressFromString(g)), "isVerifiedREADONLY", [n], nil)
170- if ($isInstanceOf(z, "Boolean"))
182+ let ac = {
183+ let E = invoke(value(addressFromString(h)), "isVerifiedREADONLY", [o], nil)
184+ if ($isInstanceOf(E, "Boolean"))
171185 then {
172- let X = z
173- X
186+ let ad = E
187+ ad
174188 }
175189 else throw("Asset is not verified")
176190 }
177- if ((W == W))
191+ if ((ac == ac))
178192 then {
179- let Y = invoke(v, "burn", nil, [AttachedPayment(T.assetId, T.amount)])
180- if ((Y == Y))
181- then [BooleanEntry(m(n, o), true), IntegerEntry(p(n, o), height)]
193+ let ae = invoke(z, "burn", nil, [AttachedPayment(Z.assetId, Z.amount)])
194+ if ((ae == ae))
195+ then [BooleanEntry(n(o, p), true), IntegerEntry(q(o, p), height)]
182196 else throw("Strict value is not equal to itself.")
183197 }
184198 else throw("Strict value is not equal to itself.")
190204
191205
192206
193-@Callable(D)
194-func vote (n,o,Z) = {
195- let S = [if (valueOrElse(getBoolean(m(n, o)), false))
207+@Callable(I)
208+func vote (o,p,af) = {
209+ let ag = (value(getInteger(q(o, p))) + value(getInteger(d)))
210+ let Y = [if (valueOrElse(getBoolean(n(o, p)), false))
196211 then true
197- else throw("The token isn't on the voting list"), (height >= (value(getInteger(p(n, o))) + value(getInteger(d))))]
198- if ((S == S))
212+ else throw("The token isn't on the voting list"), if ((height >= ag))
213+ then true
214+ else throw("too late to vote")]
215+ if ((Y == Y))
199216 then {
200- let aa = split(value(getString(q(n, o))), a)
201- let ab = aa[1]
202- let ac = aa[2]
203- let ad = invoke(x, "getUserGwxAmountAtHeightREADONLY", [toString(D.caller), height], nil)
204- let ae = if (Z)
217+ let ah = split(value(getString(r(o, p))), a)
218+ let ai = ah[1]
219+ let aj = ah[2]
220+ let v = invoke(B, "getUserGwxAmountAtHeightREADONLY", [toString(I.caller), ag], nil)
221+ let ak = if (af)
205222 then {
206- let af = (parseIntValue(ab) + G(ad))
207- let ag = makeString(["%d%d", toString(af), ac], a)
208- let ah = r(n, o, toString(D.caller))
209- let ai = makeString([q(n, o), "yes"], a)
210- $Tuple2([StringEntry(q(n, o), ag), StringEntry(ah, ai)], unit)
223+ let al = (parseIntValue(ai) + L(v))
224+ let am = makeString(["%d%d", toString(al), aj], a)
225+ let an = s(o, p, toString(I.caller))
226+ let ao = u(toString(L(v)), af)
227+ $Tuple2([StringEntry(r(o, p), am), StringEntry(an, ao)], unit)
211228 }
212229 else {
213- let aj = (parseIntValue(ac) + G(ad))
214- let ag = makeString(["%d%d", ab, toString(aj)], a)
215- let ak = r(n, o, toString(D.caller))
216- let al = makeString([q(n, o), "no"], a)
217- $Tuple2([StringEntry(q(n, o), ag), StringEntry(ak, al)], unit)
230+ let ap = (parseIntValue(aj) + L(v))
231+ let am = makeString(["%d%d", ai, toString(ap)], a)
232+ let aq = s(o, p, toString(I.caller))
233+ let ar = u(toString(L(v)), af)
234+ $Tuple2([StringEntry(r(o, p), am), StringEntry(aq, ar)], unit)
218235 }
219- ae
236+ ak
220237 }
221238 else throw("Strict value is not equal to itself.")
222239 }
223240
224241
225242
226-@Callable(D)
227-func setManager (am) = {
228- let an = C(D)
229- if ((an == an))
243+@Callable(I)
244+func cancelVote (o,p) = {
245+ let Y = [if (isDefined(r(o, p)))
246+ then true
247+ else throw("No vote for assets pair")]
248+ if ((Y == Y))
230249 then {
231- let ao = fromBase58String(am)
232- if ((ao == ao))
233- then [StringEntry(u(), am)]
250+ let w = split(value(getString(s(o, p, toString(I.caller)))), a)
251+ let as = w[1]
252+ let at = w[2]
253+ let ah = split(value(getString(r(o, p))), a)
254+ let ai = ah[1]
255+ let aj = ah[2]
256+ let au = if ((at == "yes"))
257+ then {
258+ let al = (parseIntValue(ai) - parseIntValue(as))
259+ let am = makeString(["%d%d", toString(al), aj], a)
260+ $Tuple2([StringEntry(r(o, p), am), DeleteEntry(s(o, p, toString(I.caller)))], unit)
261+ }
262+ else {
263+ let ap = (parseIntValue(aj) - parseIntValue(as))
264+ let am = makeString(["%d%d", toString(ap), aj], a)
265+ $Tuple2([StringEntry(r(o, p), am), DeleteEntry(s(o, p, toString(I.caller)))], unit)
266+ }
267+ au
268+ }
269+ else throw("Strict value is not equal to itself.")
270+ }
271+
272+
273+
274+@Callable(I)
275+func setVotingThreshold (av) = {
276+ let Y = [if (H(I))
277+ then true
278+ else throw("Must manager")]
279+ if ((Y == Y))
280+ then [IntegerEntry(f, av)]
281+ else throw("Strict value is not equal to itself.")
282+ }
283+
284+
285+
286+@Callable(I)
287+func setFee (aw) = {
288+ let Y = [if (H(I))
289+ then true
290+ else throw("Must manager")]
291+ if ((Y == Y))
292+ then [IntegerEntry(b, aw)]
293+ else throw("Strict value is not equal to itself.")
294+ }
295+
296+
297+
298+@Callable(I)
299+func finalize (o,p) = {
300+ let ag = (value(getInteger(q(o, p))) + value(getInteger(d)))
301+ let Y = [if (isDefined(n(o, p)))
302+ then true
303+ else throw("No assets pair"), if ((ag > height))
304+ then true
305+ else throw("insufficient height for completion")]
306+ if ((Y == Y))
307+ then {
308+ let ah = split(value(getString(r(o, p))), a)
309+ let ai = parseIntValue(ah[1])
310+ let aj = parseIntValue(ah[2])
311+ let au = if ((ai > aj))
312+ then {
313+ let ax = invoke(C, "setPoolLabels", [o, p, "WX_EMISSION"], nil)
314+ if ((ax == ax))
315+ then $Tuple2([DeleteEntry(n(o, p))], unit)
316+ else throw("Strict value is not equal to itself.")
317+ }
318+ else $Tuple2([DeleteEntry(n(o, p))], unit)
319+ au
320+ }
321+ else throw("Strict value is not equal to itself.")
322+ }
323+
324+
325+
326+@Callable(I)
327+func setManager (ay) = {
328+ let az = H(I)
329+ if ((az == az))
330+ then {
331+ let aA = fromBase58String(ay)
332+ if ((aA == aA))
333+ then [StringEntry(y(), ay)]
234334 else throw("Strict value is not equal to itself.")
235335 }
236336 else throw("Strict value is not equal to itself.")
238338
239339
240340
241-@Callable(D)
341+@Callable(I)
242342 func confirmManager () = {
243- let ap = B()
244- let aq = if (isDefined(ap))
343+ let aB = G()
344+ let aC = if (isDefined(aB))
245345 then true
246346 else throw("No pending manager")
247- if ((aq == aq))
347+ if ((aC == aC))
248348 then {
249- let ar = if ((D.callerPublicKey == value(ap)))
349+ let aD = if ((I.callerPublicKey == value(aB)))
250350 then true
251351 else throw("You are not pending manager")
252- if ((ar == ar))
253- then [StringEntry(t(), toBase58String(value(ap))), DeleteEntry(u())]
352+ if ((aD == aD))
353+ then [StringEntry(x(), toBase58String(value(aB))), DeleteEntry(y())]
254354 else throw("Strict value is not equal to itself.")
255355 }
256356 else throw("Strict value is not equal to itself.")
257357 }
258358
259359
260-@Verifier(as)
261-func at () = {
262- let au = {
263- let z = y()
264- if ($isInstanceOf(z, "ByteVector"))
360+@Verifier(aE)
361+func aF () = {
362+ let aG = {
363+ let E = D()
364+ if ($isInstanceOf(E, "ByteVector"))
265365 then {
266- let F = z
267- F
366+ let K = E
367+ K
268368 }
269- else if ($isInstanceOf(z, "Unit"))
270- then as.senderPublicKey
369+ else if ($isInstanceOf(E, "Unit"))
370+ then aE.senderPublicKey
271371 else throw("Match error")
272372 }
273- sigVerify(as.bodyBytes, as.proofs[0], au)
373+ sigVerify(aE.bodyBytes, aE.proofs[0], aG)
274374 }
275375
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 let b = makeString(["%s", "fee"], a)
77
88 let c = makeString(["%s", "usdnAssetId"], a)
99
1010 let d = makeString(["%s", "epochLength"], a)
1111
12-let e = makeString(["%s", "votingThreshold"], a)
12+let e = makeString(["%s", "finalizeReward"], a)
1313
14-let f = makeString(["%s", "wxAssetId"], a)
14+let f = makeString(["%s", "votingThreshold"], a)
1515
16-let g = makeString(["%s", "assetsStoreContract"], a)
16+let g = makeString(["%s", "wxAssetId"], a)
1717
18-let h = makeString(["%s", "userPoolContract"], a)
18+let h = makeString(["%s", "assetsStoreContract"], a)
1919
20-let i = makeString(["%s", "emissionContract"], a)
20+let i = makeString(["%s", "userPoolContract"], a)
2121
22-let j = makeString(["%s", "boostingContract"], a)
22+let j = makeString(["%s", "emissionContract"], a)
2323
24-func k (l) = valueOrErrorMessage(getString(this, l), (l + " is not defined"))
24+let k = makeString(["%s", "boostingContract"], a)
25+
26+func l (m) = valueOrErrorMessage(getString(this, m), (m + " is not defined"))
2527
2628
27-func m (n,o) = makeString([("%s%s%s" + "inList"), n, o], a)
29+func n (o,p) = makeString([("%s%s%s" + "inList"), o, p], a)
2830
2931
30-func p (n,o) = makeString([("%s%s%s" + "startHeight"), n, o], a)
32+func q (o,p) = makeString([("%s%s%s" + "startHeight"), o, p], a)
3133
3234
33-func q (n,o) = makeString(["%s%s%s", "votingResult", n, o], a)
35+func r (o,p) = makeString(["%s%s%s", "votingResult", o, p], a)
3436
3537
36-func r (n,o,s) = makeString(["%s%s%s%s", "vote", n, o, s], a)
38+func s (o,p,t) = makeString(["%s%s%s%s", "vote", o, p, t], a)
3739
3840
39-func t () = "%s__managerPublicKey"
41+func u (v,w) = {
42+ let m = if (w)
43+ then makeString(["%d%s", v, "yes"], a)
44+ else makeString(["%d%s", v, "no"], a)
45+ m
46+ }
4047
4148
42-func u () = "%s__pendingManagerPublicKey"
49+func x () = "%s__managerPublicKey"
4350
4451
45-let v = addressFromStringValue(k(i))
52+func y () = "%s__pendingManagerPublicKey"
4653
47-let w = addressFromStringValue(k(h))
4854
49-let x = addressFromStringValue(k(j))
55+let z = addressFromStringValue(l(j))
5056
51-func y () = {
52- let z = getString(t())
53- if ($isInstanceOf(z, "String"))
57+let A = addressFromStringValue(l(i))
58+
59+let B = addressFromStringValue(l(k))
60+
61+let C = addressFromStringValue(l(h))
62+
63+func D () = {
64+ let E = getString(x())
65+ if ($isInstanceOf(E, "String"))
5466 then {
55- let A = z
56- fromBase58String(A)
67+ let F = E
68+ fromBase58String(F)
5769 }
58- else if ($isInstanceOf(z, "Unit"))
70+ else if ($isInstanceOf(E, "Unit"))
5971 then unit
6072 else throw("Match error")
6173 }
6274
6375
64-func B () = {
65- let z = getString(u())
66- if ($isInstanceOf(z, "String"))
76+func G () = {
77+ let E = getString(y())
78+ if ($isInstanceOf(E, "String"))
6779 then {
68- let A = z
69- fromBase58String(A)
80+ let F = E
81+ fromBase58String(F)
7082 }
71- else if ($isInstanceOf(z, "Unit"))
83+ else if ($isInstanceOf(E, "Unit"))
7284 then unit
7385 else throw("Match error")
7486 }
7587
7688
77-func C (D) = {
78- let E = throw("Permission denied")
79- let z = y()
80- if ($isInstanceOf(z, "ByteVector"))
89+func H (I) = {
90+ let J = throw("Permission denied")
91+ let E = D()
92+ if ($isInstanceOf(E, "ByteVector"))
8193 then {
82- let F = z
83- if ((D.callerPublicKey == F))
94+ let K = E
95+ if ((I.callerPublicKey == K))
8496 then true
85- else E
97+ else J
8698 }
87- else if ($isInstanceOf(z, "Unit"))
88- then if ((D.caller == this))
99+ else if ($isInstanceOf(E, "Unit"))
100+ then if ((I.caller == this))
89101 then true
90- else E
102+ else J
91103 else throw("Match error")
92104 }
93105
94106
95-func G (H) = {
96- let z = H
97- if ($isInstanceOf(z, "Int"))
107+func L (M) = {
108+ let E = M
109+ if ($isInstanceOf(E, "Int"))
98110 then {
99- let I = z
100- I
111+ let N = E
112+ N
101113 }
102114 else throw("Failed to cast into Integer")
103115 }
104116
105117
106-@Callable(D)
107-func constructor (J,K,L,M,N,O,P,Q,R) = {
108- let S = [if (C(D))
118+@Callable(I)
119+func constructor (O,P,Q,R,S,T,U,V,W,X) = {
120+ let Y = [if (H(I))
109121 then true
110- else throw("Must manager"), if (isDefined(addressFromString(J)))
122+ else throw("Must manager"), if (isDefined(addressFromString(O)))
111123 then true
112- else throw("Invalid asset_store contract address"), if (isDefined(addressFromString(L)))
124+ else throw("Invalid asset_store contract address"), if (isDefined(addressFromString(Q)))
113125 then true
114- else throw("Invalid boosting contract address"), if (isDefined(addressFromString(K)))
126+ else throw("Invalid boosting contract address"), if (isDefined(addressFromString(P)))
115127 then true
116- else throw("Invalid user_pools contract address"), if (isDefined(addressFromString(M)))
128+ else throw("Invalid user_pools contract address"), if (isDefined(addressFromString(R)))
117129 then true
118- else throw("Invalid emission contract address"), if ((N >= 0))
130+ else throw("Invalid emission contract address"), if ((S >= 0))
119131 then true
120- else throw("Invalid fee amount"), if ((Q > 0))
132+ else throw("Invalid fee amount"), if ((V > 0))
121133 then true
122- else throw("Invalid voting duration"), if ((P >= 0))
134+ else throw("Invalid voting duration"), if ((X > 0))
123135 then true
124- else throw("Invalid voting threshold"), if (isDefined(assetInfo(fromBase58String(O))))
136+ else throw("Invalid finalize reward"), if ((U >= 0))
125137 then true
126- else throw("Invalid WX asset ID"), if (isDefined(assetInfo(fromBase58String(R))))
138+ else throw("Invalid voting threshold"), if (isDefined(assetInfo(fromBase58String(T))))
139+ then true
140+ else throw("Invalid WX asset ID"), if (isDefined(assetInfo(fromBase58String(W))))
127141 then true
128142 else throw("Invalid USDN asset ID")]
129- if ((S == S))
130- then $Tuple2([StringEntry(g, J), StringEntry(h, K), StringEntry(i, M), IntegerEntry(b, N), IntegerEntry(d, Q), IntegerEntry(e, P), StringEntry(f, O), StringEntry(c, R)], unit)
143+ if ((Y == Y))
144+ then $Tuple2([StringEntry(h, O), StringEntry(i, P), StringEntry(j, R), IntegerEntry(b, S), IntegerEntry(d, V), IntegerEntry(e, X), IntegerEntry(f, U), StringEntry(g, T), StringEntry(c, W)], unit)
131145 else throw("Strict value is not equal to itself.")
132146 }
133147
134148
135149
136-@Callable(D)
137-func suggest (n,o) = {
138- let T = value(D.payments[0])
139- let U = valueOrErrorMessage(assetInfo(fromBase58String(n)), "Invalid amountAssetId ID")
140- let S = [if ((U.issuer == D.caller))
150+@Callable(I)
151+func suggest (o,p) = {
152+ let Z = value(I.payments[0])
153+ let aa = valueOrErrorMessage(assetInfo(fromBase58String(o)), "Invalid amountAssetId ID")
154+ let Y = [if ((aa.issuer == I.caller))
141155 then true
142- else throw("Asset can only be suggested by its issuer"), if ((U.scripted == false))
156+ else throw("Asset can only be suggested by its issuer"), if ((aa.scripted == false))
143157 then true
144- else throw("Asset is smart"), if ((toBase58String(value(T.assetId)) == value(getString(f))))
158+ else throw("Asset is smart"), if ((toBase58String(value(Z.assetId)) == value(getString(g))))
145159 then true
146- else throw("Invalid fee asset"), if ((T.amount == value(getInteger(b))))
160+ else throw("Invalid fee asset"), if ((Z.amount == value(getInteger(b))))
147161 then true
148- else throw("Invalid fee amount"), if ((o == value(getString(c))))
162+ else throw("Invalid fee amount"), if ((p == value(getString(c))))
149163 then true
150- else throw("priceAssetId is not USDN"), if ((getBoolean(m(n, o)) == unit))
164+ else throw("priceAssetId is not USDN"), if ((getBoolean(n(o, p)) == unit))
151165 then true
152166 else throw("Already in voting list")]
153- if ((S == S))
167+ if ((Y == Y))
154168 then {
155- let V = {
156- let z = invoke(w, "statusREADONLY", [n, o], nil)
157- if ($isInstanceOf(z, "String"))
169+ let ab = {
170+ let E = invoke(A, "statusREADONLY", [o, p], nil)
171+ if ($isInstanceOf(E, "String"))
158172 then {
159- let A = z
160- if ((A == "active"))
173+ let F = E
174+ if ((F == "active"))
161175 then true
162176 else throw("User pool is not active")
163177 }
164178 else throw("User pool is not active")
165179 }
166- if ((V == V))
180+ if ((ab == ab))
167181 then {
168- let W = {
169- let z = invoke(value(addressFromString(g)), "isVerifiedREADONLY", [n], nil)
170- if ($isInstanceOf(z, "Boolean"))
182+ let ac = {
183+ let E = invoke(value(addressFromString(h)), "isVerifiedREADONLY", [o], nil)
184+ if ($isInstanceOf(E, "Boolean"))
171185 then {
172- let X = z
173- X
186+ let ad = E
187+ ad
174188 }
175189 else throw("Asset is not verified")
176190 }
177- if ((W == W))
191+ if ((ac == ac))
178192 then {
179- let Y = invoke(v, "burn", nil, [AttachedPayment(T.assetId, T.amount)])
180- if ((Y == Y))
181- then [BooleanEntry(m(n, o), true), IntegerEntry(p(n, o), height)]
193+ let ae = invoke(z, "burn", nil, [AttachedPayment(Z.assetId, Z.amount)])
194+ if ((ae == ae))
195+ then [BooleanEntry(n(o, p), true), IntegerEntry(q(o, p), height)]
182196 else throw("Strict value is not equal to itself.")
183197 }
184198 else throw("Strict value is not equal to itself.")
185199 }
186200 else throw("Strict value is not equal to itself.")
187201 }
188202 else throw("Strict value is not equal to itself.")
189203 }
190204
191205
192206
193-@Callable(D)
194-func vote (n,o,Z) = {
195- let S = [if (valueOrElse(getBoolean(m(n, o)), false))
207+@Callable(I)
208+func vote (o,p,af) = {
209+ let ag = (value(getInteger(q(o, p))) + value(getInteger(d)))
210+ let Y = [if (valueOrElse(getBoolean(n(o, p)), false))
196211 then true
197- else throw("The token isn't on the voting list"), (height >= (value(getInteger(p(n, o))) + value(getInteger(d))))]
198- if ((S == S))
212+ else throw("The token isn't on the voting list"), if ((height >= ag))
213+ then true
214+ else throw("too late to vote")]
215+ if ((Y == Y))
199216 then {
200- let aa = split(value(getString(q(n, o))), a)
201- let ab = aa[1]
202- let ac = aa[2]
203- let ad = invoke(x, "getUserGwxAmountAtHeightREADONLY", [toString(D.caller), height], nil)
204- let ae = if (Z)
217+ let ah = split(value(getString(r(o, p))), a)
218+ let ai = ah[1]
219+ let aj = ah[2]
220+ let v = invoke(B, "getUserGwxAmountAtHeightREADONLY", [toString(I.caller), ag], nil)
221+ let ak = if (af)
205222 then {
206- let af = (parseIntValue(ab) + G(ad))
207- let ag = makeString(["%d%d", toString(af), ac], a)
208- let ah = r(n, o, toString(D.caller))
209- let ai = makeString([q(n, o), "yes"], a)
210- $Tuple2([StringEntry(q(n, o), ag), StringEntry(ah, ai)], unit)
223+ let al = (parseIntValue(ai) + L(v))
224+ let am = makeString(["%d%d", toString(al), aj], a)
225+ let an = s(o, p, toString(I.caller))
226+ let ao = u(toString(L(v)), af)
227+ $Tuple2([StringEntry(r(o, p), am), StringEntry(an, ao)], unit)
211228 }
212229 else {
213- let aj = (parseIntValue(ac) + G(ad))
214- let ag = makeString(["%d%d", ab, toString(aj)], a)
215- let ak = r(n, o, toString(D.caller))
216- let al = makeString([q(n, o), "no"], a)
217- $Tuple2([StringEntry(q(n, o), ag), StringEntry(ak, al)], unit)
230+ let ap = (parseIntValue(aj) + L(v))
231+ let am = makeString(["%d%d", ai, toString(ap)], a)
232+ let aq = s(o, p, toString(I.caller))
233+ let ar = u(toString(L(v)), af)
234+ $Tuple2([StringEntry(r(o, p), am), StringEntry(aq, ar)], unit)
218235 }
219- ae
236+ ak
220237 }
221238 else throw("Strict value is not equal to itself.")
222239 }
223240
224241
225242
226-@Callable(D)
227-func setManager (am) = {
228- let an = C(D)
229- if ((an == an))
243+@Callable(I)
244+func cancelVote (o,p) = {
245+ let Y = [if (isDefined(r(o, p)))
246+ then true
247+ else throw("No vote for assets pair")]
248+ if ((Y == Y))
230249 then {
231- let ao = fromBase58String(am)
232- if ((ao == ao))
233- then [StringEntry(u(), am)]
250+ let w = split(value(getString(s(o, p, toString(I.caller)))), a)
251+ let as = w[1]
252+ let at = w[2]
253+ let ah = split(value(getString(r(o, p))), a)
254+ let ai = ah[1]
255+ let aj = ah[2]
256+ let au = if ((at == "yes"))
257+ then {
258+ let al = (parseIntValue(ai) - parseIntValue(as))
259+ let am = makeString(["%d%d", toString(al), aj], a)
260+ $Tuple2([StringEntry(r(o, p), am), DeleteEntry(s(o, p, toString(I.caller)))], unit)
261+ }
262+ else {
263+ let ap = (parseIntValue(aj) - parseIntValue(as))
264+ let am = makeString(["%d%d", toString(ap), aj], a)
265+ $Tuple2([StringEntry(r(o, p), am), DeleteEntry(s(o, p, toString(I.caller)))], unit)
266+ }
267+ au
268+ }
269+ else throw("Strict value is not equal to itself.")
270+ }
271+
272+
273+
274+@Callable(I)
275+func setVotingThreshold (av) = {
276+ let Y = [if (H(I))
277+ then true
278+ else throw("Must manager")]
279+ if ((Y == Y))
280+ then [IntegerEntry(f, av)]
281+ else throw("Strict value is not equal to itself.")
282+ }
283+
284+
285+
286+@Callable(I)
287+func setFee (aw) = {
288+ let Y = [if (H(I))
289+ then true
290+ else throw("Must manager")]
291+ if ((Y == Y))
292+ then [IntegerEntry(b, aw)]
293+ else throw("Strict value is not equal to itself.")
294+ }
295+
296+
297+
298+@Callable(I)
299+func finalize (o,p) = {
300+ let ag = (value(getInteger(q(o, p))) + value(getInteger(d)))
301+ let Y = [if (isDefined(n(o, p)))
302+ then true
303+ else throw("No assets pair"), if ((ag > height))
304+ then true
305+ else throw("insufficient height for completion")]
306+ if ((Y == Y))
307+ then {
308+ let ah = split(value(getString(r(o, p))), a)
309+ let ai = parseIntValue(ah[1])
310+ let aj = parseIntValue(ah[2])
311+ let au = if ((ai > aj))
312+ then {
313+ let ax = invoke(C, "setPoolLabels", [o, p, "WX_EMISSION"], nil)
314+ if ((ax == ax))
315+ then $Tuple2([DeleteEntry(n(o, p))], unit)
316+ else throw("Strict value is not equal to itself.")
317+ }
318+ else $Tuple2([DeleteEntry(n(o, p))], unit)
319+ au
320+ }
321+ else throw("Strict value is not equal to itself.")
322+ }
323+
324+
325+
326+@Callable(I)
327+func setManager (ay) = {
328+ let az = H(I)
329+ if ((az == az))
330+ then {
331+ let aA = fromBase58String(ay)
332+ if ((aA == aA))
333+ then [StringEntry(y(), ay)]
234334 else throw("Strict value is not equal to itself.")
235335 }
236336 else throw("Strict value is not equal to itself.")
237337 }
238338
239339
240340
241-@Callable(D)
341+@Callable(I)
242342 func confirmManager () = {
243- let ap = B()
244- let aq = if (isDefined(ap))
343+ let aB = G()
344+ let aC = if (isDefined(aB))
245345 then true
246346 else throw("No pending manager")
247- if ((aq == aq))
347+ if ((aC == aC))
248348 then {
249- let ar = if ((D.callerPublicKey == value(ap)))
349+ let aD = if ((I.callerPublicKey == value(aB)))
250350 then true
251351 else throw("You are not pending manager")
252- if ((ar == ar))
253- then [StringEntry(t(), toBase58String(value(ap))), DeleteEntry(u())]
352+ if ((aD == aD))
353+ then [StringEntry(x(), toBase58String(value(aB))), DeleteEntry(y())]
254354 else throw("Strict value is not equal to itself.")
255355 }
256356 else throw("Strict value is not equal to itself.")
257357 }
258358
259359
260-@Verifier(as)
261-func at () = {
262- let au = {
263- let z = y()
264- if ($isInstanceOf(z, "ByteVector"))
360+@Verifier(aE)
361+func aF () = {
362+ let aG = {
363+ let E = D()
364+ if ($isInstanceOf(E, "ByteVector"))
265365 then {
266- let F = z
267- F
366+ let K = E
367+ K
268368 }
269- else if ($isInstanceOf(z, "Unit"))
270- then as.senderPublicKey
369+ else if ($isInstanceOf(E, "Unit"))
370+ then aE.senderPublicKey
271371 else throw("Match error")
272372 }
273- sigVerify(as.bodyBytes, as.proofs[0], au)
373+ sigVerify(aE.bodyBytes, aE.proofs[0], aG)
274374 }
275375

github/deemru/w8io/169f3d6 
97.06 ms