tx · GHw1bkAfRv2SdnZvGtDZLyj9jvv8nczB7AGhn4hKXKrp

3Mupdyb81j4n41mVbMNjoftdFnHxveMzaj8:  -0.01000000 Waves

2021.11.09 18:32 [1783658] smart account 3Mupdyb81j4n41mVbMNjoftdFnHxveMzaj8 > SELF 0.00000000 Waves

{ "type": 13, "id": "GHw1bkAfRv2SdnZvGtDZLyj9jvv8nczB7AGhn4hKXKrp", "fee": 1000000, "feeAssetId": null, "timestamp": 1636472026046, "version": 1, "sender": "3Mupdyb81j4n41mVbMNjoftdFnHxveMzaj8", "senderPublicKey": "9xyvh6gua3PPBUCqbLpW34DXo6yLvbHr5hQ6erMTHPyB", "proofs": [ "2Z4HnxatzL1o4or4BWcUFo5QJ63C9Frv5WwBVP7XUSV5QmyU5BBKU27RhBjgz6dfJBtCWitku7zH8n7H57eKSA1T" ], "script": "base64:AAIFAAAAAAAAABsIAhIJCgcBAQEBAQgBEgASBAoCCAgSBAoCCAgAAAAqAQAAAA9nZXRTdHJpbmdPckZhaWwAAAABAAAAA2tleQkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEIgAAAAEFAAAAA2tleQkAASwAAAACCQABLAAAAAICAAAAD21hbmRhdG9yeSB0aGlzLgUAAAADa2V5AgAAAA8gaXMgbm90IGRlZmluZWQAAAAAA1NFUAIAAAACX18AAAAACEJVRlNDQUxFCQABNgAAAAEADeC2s6dkAAABAAAAHWNvbnZlcnRQcmljZUFzc2V0SW50b0lkb0Fzc2V0AAAABQAAABBwcmljZUFzc2V0QW1vdW50AAAADnByaWNlQXNzZXRNVUxUAAAABXByaWNlAAAACXByaWNlTVVMVAAAAAxpZG9Bc3NldE1VTFQEAAAAD2JQcmljZUFzc2V0TVVMVAkAATYAAAABBQAAAA5wcmljZUFzc2V0TVVMVAQAAAANYklkb0Fzc2V0TVVMVAkAATYAAAABBQAAAAxpZG9Bc3NldE1VTFQEAAAADmJQcmljZUFzc2V0QlVGCQABPAAAAAMJAAE2AAAAAQUAAAAQcHJpY2VBc3NldEFtb3VudAUAAAAIQlVGU0NBTEUFAAAAD2JQcmljZUFzc2V0TVVMVAQAAAAPYkFtb3VudEFzc2V0QlVGCQABPAAAAAMFAAAADmJQcmljZUFzc2V0QlVGCQABNgAAAAEFAAAACXByaWNlTVVMVAkAATYAAAABBQAAAAVwcmljZQkAAaAAAAABCQABPAAAAAMFAAAAD2JBbW91bnRBc3NldEJVRgkAATYAAAABBQAAAAxpZG9Bc3NldE1VTFQFAAAACEJVRlNDQUxFAAAAAA5JZHhDZmdJZG9TdGFydAAAAAAAAAAAAQAAAAARSWR4Q2ZnSWRvRHVyYXRpb24AAAAAAAAAAAIAAAAAEElkeENmZ0NsYWltU3RhcnQAAAAAAAAAAAMAAAAAE0lkeENmZ0NsYWltRHVyYXRpb24AAAAAAAAAAAQAAAAAC0lkeENmZ1ByaWNlAAAAAAAAAAAFAAAAAA9JZHhDZmdQcmljZU11bHQAAAAAAAAAAAYAAAAAEElkeENmZ0lkb0Fzc2V0SWQAAAAAAAAAAAcAAAAAEklkeENmZ0lkb0Fzc2V0TXVsdAAAAAAAAAAACAAAAAASSWR4Q2ZnUHJpY2VBc3NldElkAAAAAAAAAAAJAAAAABRJZHhDZmdQcmljZUFzc2V0TXVsdAAAAAAAAAAACgAAAAAVSWR4Q2ZnTWluSW52ZXN0QW1vdW50AAAAAAAAAAALAQAAAA1mcm9tYXRDb25maWdTAAAADAAAAAhpZG9TdGFydAAAAAtpZG9EdXJhdGlvbgAAAApjbGFpbVN0YXJ0AAAADWNsYWltRHVyYXRpb24AAAAFcHJpY2UAAAAJcHJpY2VNdWx0AAAADGlkb0Fzc2V0SWQ1OAAAAAxpZG9Bc3NldE11bHQAAAAOcHJpY2VBc3NldElkNTgAAAAOcHJpY2VBc3NldE11bHQAAAAPbWluSW52ZXN0QW1vdW50AAAAE3RvdGFsSWRvQXNzZXRUb1NlbGwJAAS5AAAAAgkABEwAAAACAgAAABglZCVkJWQlZCVkJWQlcyVkJXMlZCVkJWQJAARMAAAAAgUAAAAIaWRvU3RhcnQJAARMAAAAAgUAAAALaWRvRHVyYXRpb24JAARMAAAAAgUAAAAKY2xhaW1TdGFydAkABEwAAAACBQAAAA1jbGFpbUR1cmF0aW9uCQAETAAAAAIFAAAABXByaWNlCQAETAAAAAIFAAAACXByaWNlTXVsdAkABEwAAAACBQAAAAxpZG9Bc3NldElkNTgJAARMAAAAAgUAAAAMaWRvQXNzZXRNdWx0CQAETAAAAAIFAAAADnByaWNlQXNzZXRJZDU4CQAETAAAAAIFAAAADnByaWNlQXNzZXRNdWx0CQAETAAAAAIFAAAAD21pbkludmVzdEFtb3VudAkABEwAAAACBQAAABN0b3RhbElkb0Fzc2V0VG9TZWxsBQAAAANuaWwFAAAAA1NFUAEAAAAMZnJvbWF0Q29uZmlnAAAADAAAAAhpZG9TdGFydAAAAAtpZG9EdXJhdGlvbgAAAApjbGFpbVN0YXJ0AAAADWNsYWltRHVyYXRpb24AAAAFcHJpY2UAAAAJcHJpY2VNdWx0AAAADGlkb0Fzc2V0SWQ1OAAAAAxpZG9Bc3NldE11bHQAAAAOcHJpY2VBc3NldElkNTgAAAAOcHJpY2VBc3NldE11bHQAAAAPbWluSW52ZXN0QW1vdW50AAAAE3RvdGFsSWRvQXNzZXRUb1NlbGwJAQAAAA1mcm9tYXRDb25maWdTAAAADAkAAaQAAAABBQAAAAhpZG9TdGFydAkAAaQAAAABBQAAAAtpZG9EdXJhdGlvbgkAAaQAAAABBQAAAApjbGFpbVN0YXJ0CQABpAAAAAEFAAAADWNsYWltRHVyYXRpb24JAAGkAAAAAQUAAAAFcHJpY2UJAAGkAAAAAQUAAAAJcHJpY2VNdWx0BQAAAAxpZG9Bc3NldElkNTgJAAGkAAAAAQUAAAAMaWRvQXNzZXRNdWx0BQAAAA5wcmljZUFzc2V0SWQ1OAkAAaQAAAABBQAAAA5wcmljZUFzc2V0TXVsdAkAAaQAAAABBQAAAA9taW5JbnZlc3RBbW91bnQJAAGkAAAAAQUAAAATdG90YWxJZG9Bc3NldFRvU2VsbAAAAAARSWR4SW52VG90YWxBbW91bnQAAAAAAAAAAAEAAAAAFUlkeEludlJlbWFpbmluZ0Ftb3VudAAAAAAAAAAAAgAAAAAdSWR4SW52Q2xhaW1lZFByaWNlQXNzZXRBbW91bnQAAAAAAAAAAAMAAAAAG0lkeEludkNsYWltZWRJZG9Bc3NldEFtb3VudAAAAAAAAAAABAAAAAAXSWR4SW52TGFzdENsYWltZWRIZWlnaHQAAAAAAAAAAAUBAAAAD2Zvcm1hdEludmVzdG9yUwAAAAUAAAALdG90YWxBbW91bnQAAAAPcmVtYWluaW5nQW1vdW50AAAAF2NsYWltZWRQcmljZUFzc2V0QW1vdW50AAAAFWNsYWltZWRJZG9Bc3NldEFtb3VudAAAABFsYXN0Q2xhaW1lZEhlaWdodAkABLkAAAACCQAETAAAAAICAAAACiVkJWQlZCVkJWQJAARMAAAAAgUAAAALdG90YWxBbW91bnQJAARMAAAAAgUAAAAPcmVtYWluaW5nQW1vdW50CQAETAAAAAIFAAAAF2NsYWltZWRQcmljZUFzc2V0QW1vdW50CQAETAAAAAIFAAAAFWNsYWltZWRJZG9Bc3NldEFtb3VudAkABEwAAAACBQAAABFsYXN0Q2xhaW1lZEhlaWdodAUAAAADbmlsBQAAAANTRVABAAAADmZvcm1hdEludmVzdG9yAAAABQAAAAt0b3RhbEFtb3VudAAAAA9yZW1haW5pbmdBbW91bnQAAAAXY2xhaW1lZFByaWNlQXNzZXRBbW91bnQAAAAVY2xhaW1lZElkb0Fzc2V0QW1vdW50AAAAEWxhc3RDbGFpbWVkSGVpZ2h0CQEAAAAPZm9ybWF0SW52ZXN0b3JTAAAABQkAAaQAAAABBQAAAAt0b3RhbEFtb3VudAkAAaQAAAABBQAAAA9yZW1haW5pbmdBbW91bnQJAAGkAAAAAQUAAAAXY2xhaW1lZFByaWNlQXNzZXRBbW91bnQJAAGkAAAAAQUAAAAVY2xhaW1lZElkb0Fzc2V0QW1vdW50CQABpAAAAAEFAAAAEWxhc3RDbGFpbWVkSGVpZ2h0AQAAABNmb3JtYXRIaXN0b3J5UmVjb3JkAAAAAgAAABBwcmljZUFzc2V0QW1vdW50AAAADmlkb0Fzc2V0QW1vdW50CQAEuQAAAAIJAARMAAAAAgIAAAAIJWQlZCVkJWQJAARMAAAAAgkAAaQAAAABBQAAAAZoZWlnaHQJAARMAAAAAgkAAaQAAAABCAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAkABEwAAAACCQABpAAAAAEFAAAAEHByaWNlQXNzZXRBbW91bnQJAARMAAAAAgkAAaQAAAABBQAAAA5pZG9Bc3NldEFtb3VudAUAAAADbmlsBQAAAANTRVABAAAACWtleUNvbmZpZwAAAAACAAAACiVzX19jb25maWcBAAAAC2tleUludmVzdG9yAAAAAQAAAAt1c2VyQWRkcmVzcwkAASwAAAACAgAAAAQlc19fBQAAAAt1c2VyQWRkcmVzcwEAAAAJa2V5VG90YWxzAAAAAAIAAAAKJXNfX3RvdGFscwEAAAAZa2V5T3BlcmF0aW9uSGlzdG9yeVJlY29yZAAAAAMAAAAEdHlwZQAAAAt1c2VyQWRkcmVzcwAAAAZ0eElkNTgJAAS5AAAAAgkABEwAAAACAgAAABElcyVzJXMlc19faGlzdG9yeQkABEwAAAACBQAAAAR0eXBlCQAETAAAAAIFAAAAC3VzZXJBZGRyZXNzCQAETAAAAAIFAAAABnR4SWQ1OAUAAAADbmlsBQAAAANTRVABAAAAD3JlYWRDb25maWdBcnJheQAAAAAJAAS1AAAAAgkBAAAAD2dldFN0cmluZ09yRmFpbAAAAAEJAQAAAAlrZXlDb25maWcAAAAABQAAAANTRVABAAAAI3JlYWRUb3RhbHNBcnJheU9yRGVmYXVsdEJ5Q3VzdG9tS2V5AAAAAQAAAAljdXN0b21LZXkJAAS1AAAAAgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABCIAAAABBQAAAAljdXN0b21LZXkJAQAAAA9mb3JtYXRJbnZlc3RvclMAAAAFAgAAAAEwAgAAAAEwAgAAAAEwAgAAAAEwAgAAAAEwBQAAAANTRVABAAAAGHJlYWRUb3RhbHNBcnJheU9yRGVmYXVsdAAAAAAJAQAAACNyZWFkVG90YWxzQXJyYXlPckRlZmF1bHRCeUN1c3RvbUtleQAAAAEJAQAAAAlrZXlUb3RhbHMAAAAAAQAAABpyZWFkSW52ZXN0b3JBcnJheU9yRGVmYXVsdAAAAAEAAAALdXNlckFkZHJlc3MJAQAAACNyZWFkVG90YWxzQXJyYXlPckRlZmF1bHRCeUN1c3RvbUtleQAAAAEJAQAAAAtrZXlJbnZlc3RvcgAAAAEFAAAAC3VzZXJBZGRyZXNzAQAAABdyZWFkSW52ZXN0b3JBcnJheU9yRmFpbAAAAAEAAAALdXNlckFkZHJlc3MJAAS1AAAAAgkBAAAAD2dldFN0cmluZ09yRmFpbAAAAAEJAQAAAAtrZXlJbnZlc3RvcgAAAAEFAAAAC3VzZXJBZGRyZXNzBQAAAANTRVAAAAAAFUlkeERpZmZUb3RhbEluY3JlbWVudAAAAAAAAAAAAAAAAAAkSWR4RGlmZlJlbWFpbmluZ1ByaWNlQW1vdW50SW5jcmVtZW50AAAAAAAAAAABAAAAACJJZHhEaWZmQ2xhaW1lZFByaWNlQW1vdW50SW5jcmVtZW50AAAAAAAAAAACAAAAACVJZHhEaWZmQ2xhaW1lZElkb0Fzc2V0QW1vdW50SW5jcmVtZW50AAAAAAAAAAADAQAAAAtUb3RhbHNFbnRyeQAAAAQAAAADa2V5AAAACW9yaWdBcnJheQAAAA1pbmNyZW1lbnREaWZmAAAAFG5ld0xhc3RDbGFpbWVkSGVpZ2h0BAAAAAt0b3RhbEFtb3VudAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACW9yaWdBcnJheQUAAAARSWR4SW52VG90YWxBbW91bnQEAAAAD3JlbWFpbmluZ0Ftb3VudAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACW9yaWdBcnJheQUAAAAVSWR4SW52UmVtYWluaW5nQW1vdW50BAAAABdjbGFpbWVkUHJpY2VBc3NldEFtb3VudAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACW9yaWdBcnJheQUAAAAdSWR4SW52Q2xhaW1lZFByaWNlQXNzZXRBbW91bnQEAAAAFWNsYWltZWRJZG9Bc3NldEFtb3VudAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACW9yaWdBcnJheQUAAAAbSWR4SW52Q2xhaW1lZElkb0Fzc2V0QW1vdW50BAAAABFsYXN0Q2xhaW1lZEhlaWdodAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACW9yaWdBcnJheQUAAAAXSWR4SW52TGFzdENsYWltZWRIZWlnaHQEAAAADm5ld1RvdGFsQW1vdW50CQAAZAAAAAIFAAAAC3RvdGFsQW1vdW50CQABkQAAAAIFAAAADWluY3JlbWVudERpZmYFAAAAFUlkeERpZmZUb3RhbEluY3JlbWVudAQAAAASbmV3UmVtYWluaW5nQW1vdW50CQAAZAAAAAIFAAAAD3JlbWFpbmluZ0Ftb3VudAkAAZEAAAACBQAAAA1pbmNyZW1lbnREaWZmBQAAACRJZHhEaWZmUmVtYWluaW5nUHJpY2VBbW91bnRJbmNyZW1lbnQEAAAAGm5ld0NsYWltZWRQcmljZUFzc2V0QW1vdW50CQAAZAAAAAIFAAAAF2NsYWltZWRQcmljZUFzc2V0QW1vdW50CQABkQAAAAIFAAAADWluY3JlbWVudERpZmYFAAAAIklkeERpZmZDbGFpbWVkUHJpY2VBbW91bnRJbmNyZW1lbnQEAAAAGG5ld0NsYWltZWRJZG9Bc3NldEFtb3VudAkAAGQAAAACBQAAABVjbGFpbWVkSWRvQXNzZXRBbW91bnQJAAGRAAAAAgUAAAANaW5jcmVtZW50RGlmZgUAAAAlSWR4RGlmZkNsYWltZWRJZG9Bc3NldEFtb3VudEluY3JlbWVudAMJAABmAAAAAgAAAAAAAAAAAAUAAAASbmV3UmVtYWluaW5nQW1vdW50CQAAAgAAAAECAAAADGludmFsaWQgbWF0aAkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAADa2V5CQEAAAAOZm9ybWF0SW52ZXN0b3IAAAAFBQAAAA5uZXdUb3RhbEFtb3VudAUAAAASbmV3UmVtYWluaW5nQW1vdW50BQAAABpuZXdDbGFpbWVkUHJpY2VBc3NldEFtb3VudAUAAAAYbmV3Q2xhaW1lZElkb0Fzc2V0QW1vdW50BQAAABRuZXdMYXN0Q2xhaW1lZEhlaWdodAEAAAAbSW52ZXN0T3BlcmF0aW9uSGlzdG9yeUVudHJ5AAAABAAAAAt1c2VyQWRkcmVzcwAAABBwcmljZUFzc2V0QW1vdW50AAAADmlkb0Fzc2V0QW1vdW50AAAABHR4SWQJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABlrZXlPcGVyYXRpb25IaXN0b3J5UmVjb3JkAAAAAwIAAAAGaW52ZXN0BQAAAAt1c2VyQWRkcmVzcwkAAlgAAAABBQAAAAR0eElkCQEAAAATZm9ybWF0SGlzdG9yeVJlY29yZAAAAAIFAAAAEHByaWNlQXNzZXRBbW91bnQFAAAADmlkb0Fzc2V0QW1vdW50AQAAABpDbGFpbU9wZXJhdGlvbkhpc3RvcnlFbnRyeQAAAAQAAAALdXNlckFkZHJlc3MAAAAQcHJpY2VBc3NldEFtb3VudAAAAA5pZG9Bc3NldEFtb3VudAAAAAR0eElkCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAZa2V5T3BlcmF0aW9uSGlzdG9yeVJlY29yZAAAAAMCAAAABWNsYWltBQAAAAt1c2VyQWRkcmVzcwkAAlgAAAABBQAAAAR0eElkCQEAAAATZm9ybWF0SGlzdG9yeVJlY29yZAAAAAIFAAAAEHByaWNlQXNzZXRBbW91bnQFAAAADmlkb0Fzc2V0QW1vdW50AQAAAA1pbnRlcm5hbENsYWltAAAAAwAAABBjbGFpbWVkQXNzZXRJZDU4AAAAC3VzZXJBZGRyZXNzAAAABHR4SWQEAAAACGNmZ0FycmF5CQEAAAAPcmVhZENvbmZpZ0FycmF5AAAAAAQAAAAKY2xhaW1TdGFydAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACGNmZ0FycmF5BQAAABBJZHhDZmdDbGFpbVN0YXJ0BAAAAA1jbGFpbUR1cmF0aW9uCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIY2ZnQXJyYXkFAAAAE0lkeENmZ0NsYWltRHVyYXRpb24EAAAACGNsYWltRW5kCQAAZAAAAAIFAAAACmNsYWltU3RhcnQFAAAADWNsYWltRHVyYXRpb24EAAAABXByaWNlCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIY2ZnQXJyYXkFAAAAC0lkeENmZ1ByaWNlBAAAAAlwcmljZU11bHQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAAPSWR4Q2ZnUHJpY2VNdWx0BAAAAAxpZG9Bc3NldElkNTgJAAGRAAAAAgUAAAAIY2ZnQXJyYXkFAAAAEElkeENmZ0lkb0Fzc2V0SWQEAAAACmlkb0Fzc2V0SWQJAAJZAAAAAQUAAAAMaWRvQXNzZXRJZDU4BAAAAAxpZG9Bc3NldE11bHQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAASSWR4Q2ZnSWRvQXNzZXRNdWx0BAAAAA5wcmljZUFzc2V0SWQ1OAkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAASSWR4Q2ZnUHJpY2VBc3NldElkBAAAAAxwcmljZUFzc2V0SWQJAAJZAAAAAQUAAAAOcHJpY2VBc3NldElkNTgEAAAADnByaWNlQXNzZXRNdWx0CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIY2ZnQXJyYXkFAAAAFElkeENmZ1ByaWNlQXNzZXRNdWx0BAAAAA11c2VyQWRkcmVzczU4CQAEJQAAAAEFAAAAC3VzZXJBZGRyZXNzBAAAAA9vcmlnSW52ZXN0QXJyYXkJAQAAABdyZWFkSW52ZXN0b3JBcnJheU9yRmFpbAAAAAEFAAAADXVzZXJBZGRyZXNzNTgEAAAAEWludmVzdFRvdGFsQW1vdW50CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAPb3JpZ0ludmVzdEFycmF5BQAAABFJZHhJbnZUb3RhbEFtb3VudAQAAAAXaW52ZXN0TGFzdENsYWltZWRIZWlnaHQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAA9vcmlnSW52ZXN0QXJyYXkFAAAAF0lkeEludkxhc3RDbGFpbWVkSGVpZ2h0BAAAABRuZXdDbGFpbVBlcmlvZEhlaWdodAMJAABmAAAAAgUAAAAGaGVpZ2h0BQAAAAhjbGFpbUVuZAUAAAAIY2xhaW1FbmQDCQAAZgAAAAIFAAAACmNsYWltU3RhcnQFAAAABmhlaWdodAUAAAAKY2xhaW1TdGFydAUAAAAGaGVpZ2h0BAAAAA5jbGFpbWluZ0Jsb2NrcwkAAGUAAAACBQAAABRuZXdDbGFpbVBlcmlvZEhlaWdodAUAAAAXaW52ZXN0TGFzdENsYWltZWRIZWlnaHQEAAAAGGNsYWltaW5nUHJpY2VBc3NldEFtb3VudAkAAGsAAAADBQAAABFpbnZlc3RUb3RhbEFtb3VudAUAAAAOY2xhaW1pbmdCbG9ja3MFAAAADWNsYWltRHVyYXRpb24EAAAAFmNsYWltaW5nSWRvQXNzZXRBbW91bnQJAQAAAB1jb252ZXJ0UHJpY2VBc3NldEludG9JZG9Bc3NldAAAAAUFAAAAGGNsYWltaW5nUHJpY2VBc3NldEFtb3VudAUAAAAOcHJpY2VBc3NldE11bHQFAAAABXByaWNlBQAAAAlwcmljZU11bHQFAAAADGlkb0Fzc2V0TXVsdAMJAAAAAAAAAgUAAAAQY2xhaW1lZEFzc2V0SWQ1OAUAAAAOcHJpY2VBc3NldElkNTgJAAUYAAAABgkABEwAAAACAAAAAAAAAAAACQAETAAAAAIJAQAAAAEtAAAAAQUAAAAYY2xhaW1pbmdQcmljZUFzc2V0QW1vdW50CQAETAAAAAIFAAAAGGNsYWltaW5nUHJpY2VBc3NldEFtb3VudAkABEwAAAACAAAAAAAAAAAABQAAAANuaWwFAAAAGGNsYWltaW5nUHJpY2VBc3NldEFtb3VudAUAAAAMcHJpY2VBc3NldElkBQAAAA9vcmlnSW52ZXN0QXJyYXkFAAAAFG5ld0NsYWltUGVyaW9kSGVpZ2h0CQAETAAAAAIFAAAAGGNsYWltaW5nUHJpY2VBc3NldEFtb3VudAkABEwAAAACBQAAABZjbGFpbWluZ0lkb0Fzc2V0QW1vdW50BQAAAANuaWwDCQAAAAAAAAIFAAAA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AQAAAAxmcm9tYXRDb25maWcAAAAMBQAAAAhpZG9TdGFydAUAAAALaWRvRHVyYXRpb24FAAAACmNsYWltU3RhcnQFAAAADWNsYWltRHVyYXRpb24FAAAABXByaWNlBQAAAAlwcmljZU11bHQFAAAADGlkb0Fzc2V0SWQ1OAUAAAAMaWRvQXNzZXRNdWx0BQAAAA5wcmljZUFzc2V0SWQ1OAUAAAAOcHJpY2VBc3NldE11bHQFAAAAD21pbkludmVzdEFtb3VudAgFAAAAA3BtdAAAAAZhbW91bnQJAARMAAAAAgkBAAAAC1RvdGFsc0VudHJ5AAAABAkBAAAACWtleVRvdGFscwAAAAAFAAAAD29yaWdUb3RhbHNBcnJheQUAAAAKdG90YWxzRGlmZgUAAAAKY2xhaW1TdGFydAUAAAADbmlsAAAAAWkBAAAABmludmVzdAAAAAAEAAAACGNmZ0FycmF5CQEAAAAPcmVhZENvbmZpZ0FycmF5AAAAAAQAAAAIaWRvU3RhcnQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAAOSWR4Q2ZnSWRvU3RhcnQEAAAAC2lkb0R1cmF0aW9uCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIY2ZnQXJyYXkFAAAAEUlkeENmZ0lkb0R1cmF0aW9uBAAAAAZpZG9FbmQJAABkAAAAAgUAAAAIaWRvU3RhcnQFAAAAC2lkb0R1cmF0aW9uBAAAAApjbGFpbVN0YXJ0CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIY2ZnQXJyYXkFAAAAEElkeENmZ0NsYWltU3RhcnQEAAAADWNsYWltRHVyYXRpb24JAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAATSWR4Q2ZnQ2xhaW1EdXJhdGlvbgQAAAAFcHJpY2UJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAALSWR4Q2ZnUHJpY2UEAAAACXByaWNlTXVsdAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACGNmZ0FycmF5BQAAAA9JZHhDZmdQcmljZU11bHQEAAAADGlkb0Fzc2V0SWQ1OAkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAAQSWR4Q2ZnSWRvQXNzZXRJZAQAAAAKaWRvQXNzZXRJZAkAAlkAAAABBQAAAAxpZG9Bc3NldElkNTgEAAAADGlkb0Fzc2V0TXVsdAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACGNmZ0FycmF5BQAAABJJZHhDZmdJZG9Bc3NldE11bHQEAAAADnByaWNlQXNzZXRJZDU4CQABkQAAAAIFAAAACGNmZ0FycmF5BQAAABJJZHhDZmdQcmljZUFzc2V0SWQEAAAADHByaWNlQXNzZXRJZAkAAlkAAAABBQAAAA5wcmljZUFzc2V0SWQ1OAQAAAAOcHJpY2VBc3NldE11bHQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAAUSWR4Q2ZnUHJpY2VBc3NldE11bHQEAAAADm1pbkl2ZXN0QW1vdW50CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIY2ZnQXJyYXkFAAAAFUlkeENmZ01pbkludmVzdEFtb3VudAQAAAALdXNlckFkZHJlc3MJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyAwkAAGYAAAACBQAAAAhpZG9TdGFydAUAAAAGaGVpZ2h0CQAAAgAAAAECAAAAHGlkbyBoYXMgbm90IGJlZW4gc3RhcnRlZCB5ZXQDCQAAZgAAAAIFAAAABmhlaWdodAUAAAAGaWRvRW5kCQAAAgAAAAECAAAAGmlkbyBoYXMgYmVlbiBhbHJlYWR5IGVuZGVkAwkBAAAAAiE9AAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQkAAAIAAAABAgAAAB1leGFjdGx5IDEgcGF5bWVudCBpcyBleHBlY3RlZAQAAAADcG10CQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAApwbXRBc3NldElkCQEAAAAFdmFsdWUAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQEAAAACXBtdEFtb3VudAgFAAAAA3BtdAAAAAZhbW91bnQDCQEAAAACIT0AAAACBQAAAApwbXRBc3NldElkBQAAAAxwcmljZUFzc2V0SWQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAGmludmFsaWQgcGF5bWVudCBhc3NldCBpZDogCQACWAAAAAEFAAAACnBtdEFzc2V0SWQCAAAADCBpcyBleHBlY3RlZAQAAAARb3JpZ0ludmVzdG9yQXJyYXkJAQAAABpyZWFkSW52ZXN0b3JBcnJheU9yRGVmYXVsdAAAAAEFAAAAC3VzZXJBZGRyZXNzBAAAAA9vcmlnVG90YWxzQXJyYXkJAQAAABhyZWFkVG90YWxzQXJyYXlPckRlZmF1bHQAAAAABAAAABNuZXdQcmljZVRvdGFsQW1vdW50CQAAZAAAAAIJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAA9vcmlnVG90YWxzQXJyYXkFAAAAEUlkeEludlRvdGFsQW1vdW50BQAAAAlwbXRBbW91bnQEAAAAFnJlcXVpcmVkSWRvQXNzZXRBbW91bnQJAABoAAAAAgUAAAATbmV3UHJpY2VUb3RhbEFtb3VudAAAAAAAAAAAZAMJAABmAAAAAgUAAAAWcmVxdWlyZWRJZG9Bc3NldEFtb3VudAkAA/AAAAACBQAAAAR0aGlzBQAAAAppZG9Bc3NldElkCQAAAgAAAAECAAAAOUlETyBhc3NldCBoYXMgYmVlbiAtIHNvbGQgY29uc2lkZXIgdG8gdXNlIHNtYWxsZXIgcGF5bWVudAQAAAAKdG90YWxzRGlmZgkABEwAAAACBQAAAAlwbXRBbW91bnQJAARMAAAAAgUAAAAJcG10QW1vdW50CQAETAAAAAIAAAAAAAAAAAAJAARMAAAAAgAAAAAAAAAAAAUAAAADbmlsCQAETAAAAAIJAQAAAAtUb3RhbHNFbnRyeQAAAAQJAQAAAAtrZXlJbnZlc3RvcgAAAAEFAAAAC3VzZXJBZGRyZXNzBQAAABFvcmlnSW52ZXN0b3JBcnJheQUAAAAKdG90YWxzRGlmZgUAAAAKY2xhaW1TdGFydAkABEwAAAACCQEAAAALVG90YWxzRW50cnkAAAAECQEAAAAJa2V5VG90YWxzAAAAAAUAAAAPb3JpZ1RvdGFsc0FycmF5BQAAAAp0b3RhbHNEaWZmBQAAAApjbGFpbVN0YXJ0CQAETAAAAAIJAQAAABtJbnZlc3RPcGVyYXRpb25IaXN0b3J5RW50cnkAAAAEBQAAAAt1c2VyQWRkcmVzcwUAAAAJcG10QW1vdW50AAAAAAAAAAAACAUAAAABaQAAAA10cmFuc2FjdGlvbklkBQAAAANuaWwAAAABaQEAAAAFY2xhaW0AAAACAAAAEGNsYWltZWRBc3NldElkNTgAAAANdXNlckFkZHJlc3M1OAQAAAAPY2FsbGVyQWRkcmVzczU4CQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgMJAQAAAAIhPQAAAAIFAAAADXVzZXJBZGRyZXNzNTgFAAAAD2NhbGxlckFkZHJlc3M1OAkAAAIAAAABAgAAAA5ub3QgYXV0aG9yaXplZAQAAAAQY2xhaW1SZXN1bHRUdXBsZQkBAAAADWludGVybmFsQ2xhaW0AAAADBQAAABBjbGFpbWVkQXNzZXRJZDU4CAUAAAABaQAAAAZjYWxsZXIIBQAAAAFpAAAADXRyYW5zYWN0aW9uSWQEAAAACnRvdGFsc0RpZmYIBQAAABBjbGFpbVJlc3VsdFR1cGxlAAAAAl8xBAAAAAlvdXRBbW91bnQIBQAAABBjbGFpbVJlc3VsdFR1cGxlAAAAAl8yBAAAAApvdXRBc3NldElkCAUAAAAQY2xhaW1SZXN1bHRUdXBsZQAAAAJfMwQAAAAPb3JpZ0ludmVzdEFycmF5CAUAAAAQY2xhaW1SZXN1bHRUdXBsZQAAAAJfNAQAAAAUbmV3Q2xhaW1QZXJpb2RIZWlnaHQIBQAAABBjbGFpbVJlc3VsdFR1cGxlAAAAAl81BAAAABpjbGFpbWVkUHJpY2VBbW91bnRGcm9tRGlmZgkAAZEAAAACBQAAAAp0b3RhbHNEaWZmBQAAACJJZHhEaWZmQ2xhaW1lZFByaWNlQW1vdW50SW5jcmVtZW50BAAAAB1jbGFpbWVkSWRvQXNzZXRBbW91bnRGcm9tRGlmZgkAAZEAAAACBQAAAAp0b3RhbHNEaWZmBQAAACVJZHhEaWZmQ2xhaW1lZElkb0Fzc2V0QW1vdW50SW5jcmVtZW50CQAFFAAAAAIJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAAlvdXRBbW91bnQFAAAACm91dEFzc2V0SWQJAARMAAAAAgkBAAAAC1RvdGFsc0VudHJ5AAAABAkBAAAAC2tleUludmVzdG9yAAAAAQUAAAANdXNlckFkZHJlc3M1OAUAAAAPb3JpZ0ludmVzdEFycmF5BQAAAAp0b3RhbHNEaWZmBQAAABRuZXdDbGFpbVBlcmlvZEhlaWdodAkABEwAAAACCQEAAAALVG90YWxzRW50cnkAAAAECQEAAAAJa2V5VG90YWxzAAAAAAkBAAAAGHJlYWRUb3RhbHNBcnJheU9yRGVmYXVsdAAAAAAFAAAACnRvdGFsc0RpZmYFAAAAFG5ld0NsYWltUGVyaW9kSGVpZ2h0CQAETAAAAAIJAQAAABpDbGFpbU9wZXJhdGlvbkhpc3RvcnlFbnRyeQAAAAQFAAAADXVzZXJBZGRyZXNzNTgFAAAAGmNsYWltZWRQcmljZUFtb3VudEZyb21EaWZmBQAAAB1jbGFpbWVkSWRvQXNzZXRBbW91bnRGcm9tRGlmZggFAAAAAWkAAAANdHJhbnNhY3Rpb25JZAUAAAADbmlsBQAAAAR1bml0AAAAAWkBAAAADWNsYWltUkVBRE9OTFkAAAACAAAAEGNsYWltZWRBc3NldElkNTgAAAANdXNlckFkZHJlc3M1OAQAAAAQY2xhaW1SZXN1bHRUdXBsZQkBAAAADWludGVybmFsQ2xhaW0AAAADBQAAABBjbGFpbWVkQXNzZXRJZDU4CQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABBQAAAA11c2VyQWRkcmVzczU4CQACWQAAAAECAAAAAAQAAAAKdG90YWxzRGlmZggFAAAAEGNsYWltUmVzdWx0VHVwbGUAAAACXzEEAAAACW91dEFtb3VudAgFAAAAEGNsYWltUmVzdWx0VHVwbGUAAAACXzIEAAAACm91dEFzc2V0SWQIBQAAABBjbGFpbVJlc3VsdFR1cGxlAAAAAl8zBAAAAA9vcmlnSW52ZXN0QXJyYXkIBQAAABBjbGFpbVJlc3VsdFR1cGxlAAAAAl80BAAAABRuZXdDbGFpbVBlcmlvZEhlaWdodAgFAAAAEGNsYWltUmVzdWx0VHVwbGUAAAACXzUEAAAAFWF2YWlsYWJsZVRvQ2xhaW1BcnJheQgFAAAAEGNsYWltUmVzdWx0VHVwbGUAAAACXzYEAAAAG2F2YWlsYWJsZVByaWNlQW1vdW50VG9DbGFpbQkAAZEAAAACBQAAABVhdmFpbGFibGVUb0NsYWltQXJyYXkAAAAAAAAAAAAEAAAAGWF2YWlsYWJsZUlkb0Ftb3VudFRvQ2xhaW0JAAGRAAAAAgUAAAAVYXZhaWxhYmxlVG9DbGFpbUFycmF5AAAAAAAAAAABCQAFFAAAAAIFAAAAA25pbAkABLkAAAACCQAETAAAAAICAAAABiVzJWQlZAkABEwAAAACBQAAAA11c2VyQWRkcmVzczU4CQAETAAAAAIJAAGkAAAAAQUAAAAbYXZhaWxhYmxlUHJpY2VBbW91bnRUb0NsYWltCQAETAAAAAIJAAGkAAAAAQUAAAAZYXZhaWxhYmxlSWRvQW1vdW50VG9DbGFpbQUAAAADbmlsBQAAAANTRVAAAAAAM/PdnQ==", "chainId": 84, "height": 1783658, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 3DQkFSzS9SbXFpYdsFkRrytRbEh4CB6CEaRUMTHzhcna Next: none Diff:
OldNewDifferences
1010
1111 func e (f,g,h,i,j) = {
1212 let k = toBigInt(g)
13- let l = fraction(toBigInt(f), d, k)
14- let m = fraction(l, k, toBigInt(h))
15- toInt(fraction(m, toBigInt(j), d))
13+ let l = toBigInt(j)
14+ let m = fraction(toBigInt(f), d, k)
15+ let n = fraction(m, toBigInt(i), toBigInt(h))
16+ toInt(fraction(n, toBigInt(j), d))
1617 }
1718
1819
19-let n = 1
20+let o = 1
2021
21-let o = 2
22+let p = 2
2223
23-let p = 3
24+let q = 3
2425
25-let q = 4
26+let r = 4
2627
27-let r = 5
28+let s = 5
2829
29-let s = 6
30+let t = 6
3031
31-let t = 7
32+let u = 7
3233
33-let u = 8
34+let v = 8
3435
35-let v = 9
36+let w = 9
3637
37-let w = 10
38+let x = 10
3839
39-let x = 11
40+let y = 11
4041
41-func y (z,A,B,C,h,D,E,F,G,H,I,J) = makeString(["%d%d%d%d%d%d%s%d%s%d%d%d", z, A, B, C, h, D, E, F, G, H, I, J], c)
42+func z (A,B,C,D,h,E,F,G,H,I,J,K) = makeString(["%d%d%d%d%d%d%s%d%s%d%d%d", A, B, C, D, h, E, F, G, H, I, J, K], c)
4243
4344
44-func K (z,A,B,C,h,D,E,F,G,H,I,J) = y(toString(z), toString(A), toString(B), toString(C), toString(h), toString(D), E, toString(F), G, toString(H), toString(I), toString(J))
45+func L (A,B,C,D,h,E,F,G,H,I,J,K) = z(toString(A), toString(B), toString(C), toString(D), toString(h), toString(E), F, toString(G), H, toString(I), toString(J), toString(K))
4546
4647
47-let L = 1
48+let M = 1
4849
49-let M = 2
50+let N = 2
5051
51-let N = 3
52+let O = 3
5253
53-let O = 4
54+let P = 4
5455
55-let P = 5
56+let Q = 5
5657
57-func Q (R,S,T,U,V) = makeString(["%d%d%d%d%d", R, S, T, U, V], c)
58+func R (S,T,U,V,W) = makeString(["%d%d%d%d%d", S, T, U, V, W], c)
5859
5960
60-func W (R,S,T,U,V) = Q(toString(R), toString(S), toString(T), toString(U), toString(V))
61+func X (S,T,U,V,W) = R(toString(S), toString(T), toString(U), toString(V), toString(W))
6162
6263
63-func X (f,Y) = makeString(["%d%d%d%d", toString(height), toString(lastBlock.timestamp), toString(f), toString(Y)], c)
64+func Y (f,Z) = makeString(["%d%d%d%d", toString(height), toString(lastBlock.timestamp), toString(f), toString(Z)], c)
6465
6566
66-func Z () = "%s__config"
67+func aa () = "%s__config"
6768
6869
69-func aa (ab) = ("%s__" + ab)
70+func ab (ac) = ("%s__" + ac)
7071
7172
72-func ac () = "%s__totals"
73+func ad () = "%s__totals"
7374
7475
75-func ad (ae,ab,af) = makeString(["%s%s%s%s__history", ae, ab, af], c)
76+func ae (af,ac,ag) = makeString(["%s%s%s%s__history", af, ac, ag], c)
7677
7778
78-func ag () = split(a(Z()), c)
79+func ah () = split(a(aa()), c)
7980
8081
81-func ah (ai) = split(valueOrElse(getString(ai), Q("0", "0", "0", "0", "0")), c)
82+func ai (aj) = split(valueOrElse(getString(aj), R("0", "0", "0", "0", "0")), c)
8283
8384
84-func aj () = ah(ac())
85+func ak () = ai(ad())
8586
8687
87-func ak (ab) = ah(aa(ab))
88+func al (ac) = ai(ab(ac))
8889
8990
90-func al (ab) = split(a(aa(ab)), c)
91+func am (ac) = split(a(ab(ac)), c)
9192
9293
93-let am = 0
94+let an = 0
9495
95-let an = 1
96+let ao = 1
9697
97-let ao = 2
98+let ap = 2
9899
99-let ap = 3
100+let aq = 3
100101
101-func aq (b,ar,as,at) = {
102- let R = parseIntValue(ar[L])
103- let S = parseIntValue(ar[M])
104- let T = parseIntValue(ar[N])
105- let U = parseIntValue(ar[O])
106- let V = parseIntValue(ar[P])
107- let au = (R + as[am])
108- let av = (S + as[an])
109- let aw = (T + as[ao])
110- let ax = (U + as[ap])
111- if ((0 > av))
102+func ar (b,as,at,au) = {
103+ let S = parseIntValue(as[M])
104+ let T = parseIntValue(as[N])
105+ let U = parseIntValue(as[O])
106+ let V = parseIntValue(as[P])
107+ let W = parseIntValue(as[Q])
108+ let av = (S + at[an])
109+ let aw = (T + at[ao])
110+ let ax = (U + at[ap])
111+ let ay = (V + at[aq])
112+ if ((0 > aw))
112113 then throw("invalid math")
113- else StringEntry(b, W(au, av, aw, ax, at))
114+ else StringEntry(b, X(av, aw, ax, ay, au))
114115 }
115116
116117
117-func ay (ab,f,Y,az) = StringEntry(ad("invest", ab, toBase58String(az)), X(f, Y))
118+func az (ac,f,Z,aA) = StringEntry(ae("invest", ac, toBase58String(aA)), Y(f, Z))
118119
119120
120-func aA (ab,f,Y,az) = StringEntry(ad("claim", ab, toBase58String(az)), X(f, Y))
121+func aB (ac,f,Z,aA) = StringEntry(ae("claim", ac, toBase58String(aA)), Y(f, Z))
121122
122123
123-func aB (aC,ab,az) = {
124- let aD = ag()
125- let B = parseIntValue(aD[p])
126- let C = parseIntValue(aD[q])
127- let aE = (B + C)
128- let h = parseIntValue(aD[r])
129- let D = parseIntValue(aD[s])
130- let E = aD[t]
131- let aF = fromBase58String(E)
132- let F = parseIntValue(aD[u])
133- let G = aD[v]
134- let aG = fromBase58String(G)
135- let H = parseIntValue(aD[w])
136- let aH = toString(ab)
137- let aI = al(aH)
138- let aJ = parseIntValue(aI[L])
139- let aK = parseIntValue(aI[P])
140- let aL = if ((height > aE))
141- then aE
142- else if ((B > height))
143- then B
124+func aC (aD,ac,aA) = {
125+ let aE = ah()
126+ let C = parseIntValue(aE[q])
127+ let D = parseIntValue(aE[r])
128+ let aF = (C + D)
129+ let h = parseIntValue(aE[s])
130+ let E = parseIntValue(aE[t])
131+ let F = aE[u]
132+ let aG = fromBase58String(F)
133+ let G = parseIntValue(aE[v])
134+ let H = aE[w]
135+ let aH = fromBase58String(H)
136+ let I = parseIntValue(aE[x])
137+ let aI = toString(ac)
138+ let aJ = am(aI)
139+ let aK = parseIntValue(aJ[M])
140+ let aL = parseIntValue(aJ[Q])
141+ let aM = if ((height > aF))
142+ then aF
143+ else if ((C > height))
144+ then C
144145 else height
145- let aM = (aL - aK)
146- let aN = fraction(aJ, aM, C)
147- let aO = e(aN, H, h, D, F)
148- if ((aC == G))
149- then $Tuple6([0, -(aN), aN, 0], aN, aG, aI, aL, [aN, aO])
150- else if ((aC == E))
151- then $Tuple6([0, -(aN), 0, aO], aO, aF, aI, aL, [aN, aO])
152- else throw(("unsupported assetId: " + aC))
146+ let aN = (aM - aL)
147+ let aO = fraction(aK, aN, D)
148+ let aP = e(aO, I, h, E, G)
149+ if ((aD == H))
150+ then $Tuple6([0, -(aO), aO, 0], aO, aH, aJ, aM, [aO, aP])
151+ else if ((aD == F))
152+ then $Tuple6([0, -(aO), 0, aP], aP, aG, aJ, aM, [aO, aP])
153+ else throw(("unsupported assetId: " + aD))
153154 }
154155
155156
156-@Callable(aP)
157-func constructor (z,A,B,C,h,G,I) = {
158- let D = ((100 * 1000) * 1000)
159- let aQ = (z + A)
160- if (isDefined(getString(Z())))
157+@Callable(aQ)
158+func constructor (A,B,C,D,h,H,J) = {
159+ let E = ((100 * 1000) * 1000)
160+ let aR = (A + B)
161+ if (isDefined(getString(aa())))
161162 then throw("already initialized")
162- else if (("3N4Aib5iubWiGMzdTh6wWiVDVbo32oeVUmH" != toString(aP.caller)))
163+ else if (("3N4Aib5iubWiGMzdTh6wWiVDVbo32oeVUmH" != toString(aQ.caller)))
163164 then throw("not authorized")
164- else if ((size(aP.payments) != 1))
165+ else if ((size(aQ.payments) != 1))
165166 then throw("exactly 1 payment must be attached")
166- else if ((aQ >= B))
167+ else if ((aR >= C))
167168 then throw("claimStart must be greater than idoEnd")
168169 else {
169- let aR = value(aP.payments[0])
170- let aF = value(aR.assetId)
171- let aS = valueOrErrorMessage(assetInfo(aF), "fail to load ido asset info")
172- let E = toBase58String(aF)
173- let F = pow(10, 0, aS.decimals, 0, 0, DOWN)
174- let aG = fromBase58String(G)
175- let aT = valueOrErrorMessage(assetInfo(aG), "fail to load price asset info")
176- let H = pow(10, 0, aT.decimals, 0, 0, DOWN)
177- let aU = aj()
178- let aV = [0, 0, 0, 0]
179-[StringEntry(Z(), K(z, A, B, C, h, D, E, F, G, H, I, aR.amount)), aq(ac(), aU, aV, B)]
170+ let aS = value(aQ.payments[0])
171+ let aG = value(aS.assetId)
172+ let aT = valueOrErrorMessage(assetInfo(aG), "fail to load ido asset info")
173+ let F = toBase58String(aG)
174+ let G = pow(10, 0, aT.decimals, 0, 0, DOWN)
175+ let aH = fromBase58String(H)
176+ let aU = valueOrErrorMessage(assetInfo(aH), "fail to load price asset info")
177+ let I = pow(10, 0, aU.decimals, 0, 0, DOWN)
178+ let aV = ak()
179+ let aW = [0, 0, 0, 0]
180+[StringEntry(aa(), L(A, B, C, D, h, E, F, G, H, I, J, aS.amount)), ar(ad(), aV, aW, C)]
180181 }
181182 }
182183
183184
184185
185-@Callable(aP)
186+@Callable(aQ)
186187 func invest () = {
187- let aD = ag()
188- let z = parseIntValue(aD[n])
189- let A = parseIntValue(aD[o])
190- let aQ = (z + A)
191- let B = parseIntValue(aD[p])
192- let C = parseIntValue(aD[q])
193- let h = parseIntValue(aD[r])
194- let D = parseIntValue(aD[s])
195- let E = aD[t]
196- let aF = fromBase58String(E)
197- let F = parseIntValue(aD[u])
198- let G = aD[v]
199- let aG = fromBase58String(G)
200- let H = parseIntValue(aD[w])
201- let aW = parseIntValue(aD[x])
202- let ab = toString(aP.caller)
203- if ((z > height))
188+ let aE = ah()
189+ let A = parseIntValue(aE[o])
190+ let B = parseIntValue(aE[p])
191+ let aR = (A + B)
192+ let C = parseIntValue(aE[q])
193+ let D = parseIntValue(aE[r])
194+ let h = parseIntValue(aE[s])
195+ let E = parseIntValue(aE[t])
196+ let F = aE[u]
197+ let aG = fromBase58String(F)
198+ let G = parseIntValue(aE[v])
199+ let H = aE[w]
200+ let aH = fromBase58String(H)
201+ let I = parseIntValue(aE[x])
202+ let aX = parseIntValue(aE[y])
203+ let ac = toString(aQ.caller)
204+ if ((A > height))
204205 then throw("ido has not been started yet")
205- else if ((height > aQ))
206+ else if ((height > aR))
206207 then throw("ido has been already ended")
207- else if ((size(aP.payments) != 1))
208+ else if ((size(aQ.payments) != 1))
208209 then throw("exactly 1 payment is expected")
209210 else {
210- let aR = value(aP.payments[0])
211- let aX = value(aR.assetId)
212- let aY = aR.amount
213- if ((aX != aG))
214- then throw((("invalid payment asset id: " + toBase58String(aX)) + " is expected"))
211+ let aS = value(aQ.payments[0])
212+ let aY = value(aS.assetId)
213+ let aZ = aS.amount
214+ if ((aY != aH))
215+ then throw((("invalid payment asset id: " + toBase58String(aY)) + " is expected"))
215216 else {
216- let aZ = ak(ab)
217- let aU = aj()
218- let ba = (parseIntValue(aU[L]) + aY)
219- let bb = (ba * 100)
220- if ((bb > assetBalance(this, aF)))
217+ let ba = al(ac)
218+ let aV = ak()
219+ let bb = (parseIntValue(aV[M]) + aZ)
220+ let bc = (bb * 100)
221+ if ((bc > assetBalance(this, aG)))
221222 then throw("IDO asset has been - sold consider to use smaller payment")
222223 else {
223- let aV = [aY, aY, 0, 0]
224-[aq(aa(ab), aZ, aV, B), aq(ac(), aU, aV, B), ay(ab, aY, 0, aP.transactionId)]
224+ let aW = [aZ, aZ, 0, 0]
225+[ar(ab(ac), ba, aW, C), ar(ad(), aV, aW, C), az(ac, aZ, 0, aQ.transactionId)]
225226 }
226227 }
227228 }
229230
230231
231232
232-@Callable(aP)
233-func claim (aC,aH) = {
234- let bc = toString(aP.caller)
235- if ((aH != bc))
233+@Callable(aQ)
234+func claim (aD,aI) = {
235+ let bd = toString(aQ.caller)
236+ if ((aI != bd))
236237 then throw("not authorized")
237238 else {
238- let bd = aB(aC, aP.caller, aP.transactionId)
239- let aV = bd._1
240- let be = bd._2
241- let bf = bd._3
242- let aI = bd._4
243- let aL = bd._5
244- let bg = aV[ao]
245- let bh = aV[ap]
246- $Tuple2([ScriptTransfer(aP.caller, be, bf), aq(aa(aH), aI, aV, aL), aq(ac(), aj(), aV, aL), aA(aH, bg, bh, aP.transactionId)], unit)
239+ let be = aC(aD, aQ.caller, aQ.transactionId)
240+ let aW = be._1
241+ let bf = be._2
242+ let bg = be._3
243+ let aJ = be._4
244+ let aM = be._5
245+ let bh = aW[ap]
246+ let bi = aW[aq]
247+ $Tuple2([ScriptTransfer(aQ.caller, bf, bg), ar(ab(aI), aJ, aW, aM), ar(ad(), ak(), aW, aM), aB(aI, bh, bi, aQ.transactionId)], unit)
247248 }
248249 }
249250
250251
251252
252-@Callable(aP)
253-func claimREADONLY (aC,aH) = {
254- let bd = aB(aC, addressFromStringValue(aH), fromBase58String(""))
255- let aV = bd._1
256- let be = bd._2
257- let bf = bd._3
258- let aI = bd._4
259- let aL = bd._5
260- let bi = bd._6
261- let bj = bi[0]
262- let bk = bi[1]
263- $Tuple2(nil, makeString(["%s%d%d", aH, toString(bj), toString(bk)], c))
253+@Callable(aQ)
254+func claimREADONLY (aD,aI) = {
255+ let be = aC(aD, addressFromStringValue(aI), fromBase58String(""))
256+ let aW = be._1
257+ let bf = be._2
258+ let bg = be._3
259+ let aJ = be._4
260+ let aM = be._5
261+ let bj = be._6
262+ let bk = bj[0]
263+ let bl = bj[1]
264+ $Tuple2(nil, makeString(["%s%d%d", aI, toString(bk), toString(bl)], c))
264265 }
265266
266267
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func a (b) = valueOrErrorMessage(getString(b), (("mandatory this." + b) + " is not defined"))
55
66
77 let c = "__"
88
99 let d = toBigInt(1000000000000000000)
1010
1111 func e (f,g,h,i,j) = {
1212 let k = toBigInt(g)
13- let l = fraction(toBigInt(f), d, k)
14- let m = fraction(l, k, toBigInt(h))
15- toInt(fraction(m, toBigInt(j), d))
13+ let l = toBigInt(j)
14+ let m = fraction(toBigInt(f), d, k)
15+ let n = fraction(m, toBigInt(i), toBigInt(h))
16+ toInt(fraction(n, toBigInt(j), d))
1617 }
1718
1819
19-let n = 1
20+let o = 1
2021
21-let o = 2
22+let p = 2
2223
23-let p = 3
24+let q = 3
2425
25-let q = 4
26+let r = 4
2627
27-let r = 5
28+let s = 5
2829
29-let s = 6
30+let t = 6
3031
31-let t = 7
32+let u = 7
3233
33-let u = 8
34+let v = 8
3435
35-let v = 9
36+let w = 9
3637
37-let w = 10
38+let x = 10
3839
39-let x = 11
40+let y = 11
4041
41-func y (z,A,B,C,h,D,E,F,G,H,I,J) = makeString(["%d%d%d%d%d%d%s%d%s%d%d%d", z, A, B, C, h, D, E, F, G, H, I, J], c)
42+func z (A,B,C,D,h,E,F,G,H,I,J,K) = makeString(["%d%d%d%d%d%d%s%d%s%d%d%d", A, B, C, D, h, E, F, G, H, I, J, K], c)
4243
4344
44-func K (z,A,B,C,h,D,E,F,G,H,I,J) = y(toString(z), toString(A), toString(B), toString(C), toString(h), toString(D), E, toString(F), G, toString(H), toString(I), toString(J))
45+func L (A,B,C,D,h,E,F,G,H,I,J,K) = z(toString(A), toString(B), toString(C), toString(D), toString(h), toString(E), F, toString(G), H, toString(I), toString(J), toString(K))
4546
4647
47-let L = 1
48+let M = 1
4849
49-let M = 2
50+let N = 2
5051
51-let N = 3
52+let O = 3
5253
53-let O = 4
54+let P = 4
5455
55-let P = 5
56+let Q = 5
5657
57-func Q (R,S,T,U,V) = makeString(["%d%d%d%d%d", R, S, T, U, V], c)
58+func R (S,T,U,V,W) = makeString(["%d%d%d%d%d", S, T, U, V, W], c)
5859
5960
60-func W (R,S,T,U,V) = Q(toString(R), toString(S), toString(T), toString(U), toString(V))
61+func X (S,T,U,V,W) = R(toString(S), toString(T), toString(U), toString(V), toString(W))
6162
6263
63-func X (f,Y) = makeString(["%d%d%d%d", toString(height), toString(lastBlock.timestamp), toString(f), toString(Y)], c)
64+func Y (f,Z) = makeString(["%d%d%d%d", toString(height), toString(lastBlock.timestamp), toString(f), toString(Z)], c)
6465
6566
66-func Z () = "%s__config"
67+func aa () = "%s__config"
6768
6869
69-func aa (ab) = ("%s__" + ab)
70+func ab (ac) = ("%s__" + ac)
7071
7172
72-func ac () = "%s__totals"
73+func ad () = "%s__totals"
7374
7475
75-func ad (ae,ab,af) = makeString(["%s%s%s%s__history", ae, ab, af], c)
76+func ae (af,ac,ag) = makeString(["%s%s%s%s__history", af, ac, ag], c)
7677
7778
78-func ag () = split(a(Z()), c)
79+func ah () = split(a(aa()), c)
7980
8081
81-func ah (ai) = split(valueOrElse(getString(ai), Q("0", "0", "0", "0", "0")), c)
82+func ai (aj) = split(valueOrElse(getString(aj), R("0", "0", "0", "0", "0")), c)
8283
8384
84-func aj () = ah(ac())
85+func ak () = ai(ad())
8586
8687
87-func ak (ab) = ah(aa(ab))
88+func al (ac) = ai(ab(ac))
8889
8990
90-func al (ab) = split(a(aa(ab)), c)
91+func am (ac) = split(a(ab(ac)), c)
9192
9293
93-let am = 0
94+let an = 0
9495
95-let an = 1
96+let ao = 1
9697
97-let ao = 2
98+let ap = 2
9899
99-let ap = 3
100+let aq = 3
100101
101-func aq (b,ar,as,at) = {
102- let R = parseIntValue(ar[L])
103- let S = parseIntValue(ar[M])
104- let T = parseIntValue(ar[N])
105- let U = parseIntValue(ar[O])
106- let V = parseIntValue(ar[P])
107- let au = (R + as[am])
108- let av = (S + as[an])
109- let aw = (T + as[ao])
110- let ax = (U + as[ap])
111- if ((0 > av))
102+func ar (b,as,at,au) = {
103+ let S = parseIntValue(as[M])
104+ let T = parseIntValue(as[N])
105+ let U = parseIntValue(as[O])
106+ let V = parseIntValue(as[P])
107+ let W = parseIntValue(as[Q])
108+ let av = (S + at[an])
109+ let aw = (T + at[ao])
110+ let ax = (U + at[ap])
111+ let ay = (V + at[aq])
112+ if ((0 > aw))
112113 then throw("invalid math")
113- else StringEntry(b, W(au, av, aw, ax, at))
114+ else StringEntry(b, X(av, aw, ax, ay, au))
114115 }
115116
116117
117-func ay (ab,f,Y,az) = StringEntry(ad("invest", ab, toBase58String(az)), X(f, Y))
118+func az (ac,f,Z,aA) = StringEntry(ae("invest", ac, toBase58String(aA)), Y(f, Z))
118119
119120
120-func aA (ab,f,Y,az) = StringEntry(ad("claim", ab, toBase58String(az)), X(f, Y))
121+func aB (ac,f,Z,aA) = StringEntry(ae("claim", ac, toBase58String(aA)), Y(f, Z))
121122
122123
123-func aB (aC,ab,az) = {
124- let aD = ag()
125- let B = parseIntValue(aD[p])
126- let C = parseIntValue(aD[q])
127- let aE = (B + C)
128- let h = parseIntValue(aD[r])
129- let D = parseIntValue(aD[s])
130- let E = aD[t]
131- let aF = fromBase58String(E)
132- let F = parseIntValue(aD[u])
133- let G = aD[v]
134- let aG = fromBase58String(G)
135- let H = parseIntValue(aD[w])
136- let aH = toString(ab)
137- let aI = al(aH)
138- let aJ = parseIntValue(aI[L])
139- let aK = parseIntValue(aI[P])
140- let aL = if ((height > aE))
141- then aE
142- else if ((B > height))
143- then B
124+func aC (aD,ac,aA) = {
125+ let aE = ah()
126+ let C = parseIntValue(aE[q])
127+ let D = parseIntValue(aE[r])
128+ let aF = (C + D)
129+ let h = parseIntValue(aE[s])
130+ let E = parseIntValue(aE[t])
131+ let F = aE[u]
132+ let aG = fromBase58String(F)
133+ let G = parseIntValue(aE[v])
134+ let H = aE[w]
135+ let aH = fromBase58String(H)
136+ let I = parseIntValue(aE[x])
137+ let aI = toString(ac)
138+ let aJ = am(aI)
139+ let aK = parseIntValue(aJ[M])
140+ let aL = parseIntValue(aJ[Q])
141+ let aM = if ((height > aF))
142+ then aF
143+ else if ((C > height))
144+ then C
144145 else height
145- let aM = (aL - aK)
146- let aN = fraction(aJ, aM, C)
147- let aO = e(aN, H, h, D, F)
148- if ((aC == G))
149- then $Tuple6([0, -(aN), aN, 0], aN, aG, aI, aL, [aN, aO])
150- else if ((aC == E))
151- then $Tuple6([0, -(aN), 0, aO], aO, aF, aI, aL, [aN, aO])
152- else throw(("unsupported assetId: " + aC))
146+ let aN = (aM - aL)
147+ let aO = fraction(aK, aN, D)
148+ let aP = e(aO, I, h, E, G)
149+ if ((aD == H))
150+ then $Tuple6([0, -(aO), aO, 0], aO, aH, aJ, aM, [aO, aP])
151+ else if ((aD == F))
152+ then $Tuple6([0, -(aO), 0, aP], aP, aG, aJ, aM, [aO, aP])
153+ else throw(("unsupported assetId: " + aD))
153154 }
154155
155156
156-@Callable(aP)
157-func constructor (z,A,B,C,h,G,I) = {
158- let D = ((100 * 1000) * 1000)
159- let aQ = (z + A)
160- if (isDefined(getString(Z())))
157+@Callable(aQ)
158+func constructor (A,B,C,D,h,H,J) = {
159+ let E = ((100 * 1000) * 1000)
160+ let aR = (A + B)
161+ if (isDefined(getString(aa())))
161162 then throw("already initialized")
162- else if (("3N4Aib5iubWiGMzdTh6wWiVDVbo32oeVUmH" != toString(aP.caller)))
163+ else if (("3N4Aib5iubWiGMzdTh6wWiVDVbo32oeVUmH" != toString(aQ.caller)))
163164 then throw("not authorized")
164- else if ((size(aP.payments) != 1))
165+ else if ((size(aQ.payments) != 1))
165166 then throw("exactly 1 payment must be attached")
166- else if ((aQ >= B))
167+ else if ((aR >= C))
167168 then throw("claimStart must be greater than idoEnd")
168169 else {
169- let aR = value(aP.payments[0])
170- let aF = value(aR.assetId)
171- let aS = valueOrErrorMessage(assetInfo(aF), "fail to load ido asset info")
172- let E = toBase58String(aF)
173- let F = pow(10, 0, aS.decimals, 0, 0, DOWN)
174- let aG = fromBase58String(G)
175- let aT = valueOrErrorMessage(assetInfo(aG), "fail to load price asset info")
176- let H = pow(10, 0, aT.decimals, 0, 0, DOWN)
177- let aU = aj()
178- let aV = [0, 0, 0, 0]
179-[StringEntry(Z(), K(z, A, B, C, h, D, E, F, G, H, I, aR.amount)), aq(ac(), aU, aV, B)]
170+ let aS = value(aQ.payments[0])
171+ let aG = value(aS.assetId)
172+ let aT = valueOrErrorMessage(assetInfo(aG), "fail to load ido asset info")
173+ let F = toBase58String(aG)
174+ let G = pow(10, 0, aT.decimals, 0, 0, DOWN)
175+ let aH = fromBase58String(H)
176+ let aU = valueOrErrorMessage(assetInfo(aH), "fail to load price asset info")
177+ let I = pow(10, 0, aU.decimals, 0, 0, DOWN)
178+ let aV = ak()
179+ let aW = [0, 0, 0, 0]
180+[StringEntry(aa(), L(A, B, C, D, h, E, F, G, H, I, J, aS.amount)), ar(ad(), aV, aW, C)]
180181 }
181182 }
182183
183184
184185
185-@Callable(aP)
186+@Callable(aQ)
186187 func invest () = {
187- let aD = ag()
188- let z = parseIntValue(aD[n])
189- let A = parseIntValue(aD[o])
190- let aQ = (z + A)
191- let B = parseIntValue(aD[p])
192- let C = parseIntValue(aD[q])
193- let h = parseIntValue(aD[r])
194- let D = parseIntValue(aD[s])
195- let E = aD[t]
196- let aF = fromBase58String(E)
197- let F = parseIntValue(aD[u])
198- let G = aD[v]
199- let aG = fromBase58String(G)
200- let H = parseIntValue(aD[w])
201- let aW = parseIntValue(aD[x])
202- let ab = toString(aP.caller)
203- if ((z > height))
188+ let aE = ah()
189+ let A = parseIntValue(aE[o])
190+ let B = parseIntValue(aE[p])
191+ let aR = (A + B)
192+ let C = parseIntValue(aE[q])
193+ let D = parseIntValue(aE[r])
194+ let h = parseIntValue(aE[s])
195+ let E = parseIntValue(aE[t])
196+ let F = aE[u]
197+ let aG = fromBase58String(F)
198+ let G = parseIntValue(aE[v])
199+ let H = aE[w]
200+ let aH = fromBase58String(H)
201+ let I = parseIntValue(aE[x])
202+ let aX = parseIntValue(aE[y])
203+ let ac = toString(aQ.caller)
204+ if ((A > height))
204205 then throw("ido has not been started yet")
205- else if ((height > aQ))
206+ else if ((height > aR))
206207 then throw("ido has been already ended")
207- else if ((size(aP.payments) != 1))
208+ else if ((size(aQ.payments) != 1))
208209 then throw("exactly 1 payment is expected")
209210 else {
210- let aR = value(aP.payments[0])
211- let aX = value(aR.assetId)
212- let aY = aR.amount
213- if ((aX != aG))
214- then throw((("invalid payment asset id: " + toBase58String(aX)) + " is expected"))
211+ let aS = value(aQ.payments[0])
212+ let aY = value(aS.assetId)
213+ let aZ = aS.amount
214+ if ((aY != aH))
215+ then throw((("invalid payment asset id: " + toBase58String(aY)) + " is expected"))
215216 else {
216- let aZ = ak(ab)
217- let aU = aj()
218- let ba = (parseIntValue(aU[L]) + aY)
219- let bb = (ba * 100)
220- if ((bb > assetBalance(this, aF)))
217+ let ba = al(ac)
218+ let aV = ak()
219+ let bb = (parseIntValue(aV[M]) + aZ)
220+ let bc = (bb * 100)
221+ if ((bc > assetBalance(this, aG)))
221222 then throw("IDO asset has been - sold consider to use smaller payment")
222223 else {
223- let aV = [aY, aY, 0, 0]
224-[aq(aa(ab), aZ, aV, B), aq(ac(), aU, aV, B), ay(ab, aY, 0, aP.transactionId)]
224+ let aW = [aZ, aZ, 0, 0]
225+[ar(ab(ac), ba, aW, C), ar(ad(), aV, aW, C), az(ac, aZ, 0, aQ.transactionId)]
225226 }
226227 }
227228 }
228229 }
229230
230231
231232
232-@Callable(aP)
233-func claim (aC,aH) = {
234- let bc = toString(aP.caller)
235- if ((aH != bc))
233+@Callable(aQ)
234+func claim (aD,aI) = {
235+ let bd = toString(aQ.caller)
236+ if ((aI != bd))
236237 then throw("not authorized")
237238 else {
238- let bd = aB(aC, aP.caller, aP.transactionId)
239- let aV = bd._1
240- let be = bd._2
241- let bf = bd._3
242- let aI = bd._4
243- let aL = bd._5
244- let bg = aV[ao]
245- let bh = aV[ap]
246- $Tuple2([ScriptTransfer(aP.caller, be, bf), aq(aa(aH), aI, aV, aL), aq(ac(), aj(), aV, aL), aA(aH, bg, bh, aP.transactionId)], unit)
239+ let be = aC(aD, aQ.caller, aQ.transactionId)
240+ let aW = be._1
241+ let bf = be._2
242+ let bg = be._3
243+ let aJ = be._4
244+ let aM = be._5
245+ let bh = aW[ap]
246+ let bi = aW[aq]
247+ $Tuple2([ScriptTransfer(aQ.caller, bf, bg), ar(ab(aI), aJ, aW, aM), ar(ad(), ak(), aW, aM), aB(aI, bh, bi, aQ.transactionId)], unit)
247248 }
248249 }
249250
250251
251252
252-@Callable(aP)
253-func claimREADONLY (aC,aH) = {
254- let bd = aB(aC, addressFromStringValue(aH), fromBase58String(""))
255- let aV = bd._1
256- let be = bd._2
257- let bf = bd._3
258- let aI = bd._4
259- let aL = bd._5
260- let bi = bd._6
261- let bj = bi[0]
262- let bk = bi[1]
263- $Tuple2(nil, makeString(["%s%d%d", aH, toString(bj), toString(bk)], c))
253+@Callable(aQ)
254+func claimREADONLY (aD,aI) = {
255+ let be = aC(aD, addressFromStringValue(aI), fromBase58String(""))
256+ let aW = be._1
257+ let bf = be._2
258+ let bg = be._3
259+ let aJ = be._4
260+ let aM = be._5
261+ let bj = be._6
262+ let bk = bj[0]
263+ let bl = bj[1]
264+ $Tuple2(nil, makeString(["%s%d%d", aI, toString(bk), toString(bl)], c))
264265 }
265266
266267

github/deemru/w8io/169f3d6 
111.63 ms