tx · 5Latfi5ZQpUdkzgh3tamgARi2wuH7h3tggPPcVZTV2A

3N7K289iko3fSFeKU3rmMSiqyanEAA9n2jN:  -0.01000000 Waves

2022.04.15 04:33 [2009005] smart account 3N7K289iko3fSFeKU3rmMSiqyanEAA9n2jN > SELF 0.00000000 Waves

{ "type": 13, "id": "5Latfi5ZQpUdkzgh3tamgARi2wuH7h3tggPPcVZTV2A", "fee": 1000000, "feeAssetId": null, "timestamp": 1649986532904, "version": 2, "chainId": 84, "sender": "3N7K289iko3fSFeKU3rmMSiqyanEAA9n2jN", "senderPublicKey": "CZtiUnqpRzKWD8mwWmdt4DUk5rQzzC4LXxJpLFWYwRRA", "proofs": [ "5BWDix6X6GMV5aTZ3jLBNQTNbnfpJbV58hjJ1EZ6ggrKED5AVb5c32qBNEssFpo5oK3Egnv2zL1ovN7WBPFwoCMd" ], "script": "base64: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ACcQCQABkQAAAAIFAAAADUFzc2V0c1dlaWdodHMFAAAACEluZGV4T3V0AAAAAAAAAAAEAAAAAAAAAAAQBQAAAAdDRUlMSU5HCQAAaAAAAAIFAAAABlNjYWxlOAUAAAAGU2NhbGU4BQAAAARET1dOAQAAAA9nZXRUb2tlbkJhbGFuY2UAAAABAAAAB2Fzc2V0SWQEAAAAByRtYXRjaDAFAAAAB2Fzc2V0SWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAACkJ5dGVWZWN0b3IEAAAAAXQFAAAAByRtYXRjaDAJAAPwAAAAAgUAAAAEdGhpcwUAAAABdAgJAAPvAAAAAQUAAAAEdGhpcwAAAAlhdmFpbGFibGUBAAAAHWNhbGN1bGF0ZUN1cnJlbnRBc3NldEludGVyZXN0AAAABAAAAAdhc3NldElkAAAACmFzc2V0SWRTdHIAAAAIYUJhbGFuY2UAAAAWdG9rZW5FYXJuaW5nc0xhc3RDaGVjawQAAAALdG90YWxTdGFrZWQJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQIAAAASZ2xvYmFsX2luZGV4U3Rha2VkBAAAABV0b2tlbkJhbGFuY2VMYXN0Q2hlY2sFAAAAFnRva2VuRWFybmluZ3NMYXN0Q2hlY2sEAAAAE2N1cnJlbnRCYWxhbmNlRGVsdGEJAABlAAAAAgkBAAAAD2dldFRva2VuQmFsYW5jZQAAAAEFAAAAB2Fzc2V0SWQFAAAACGFCYWxhbmNlBAAAABRjdXJyZW50VG9rZW5FYXJuaW5ncwMJAABmAAAAAgUAAAATY3VycmVudEJhbGFuY2VEZWx0YQUAAAAVdG9rZW5CYWxhbmNlTGFzdENoZWNrBQAAABNjdXJyZW50QmFsYW5jZURlbHRhBQAAABV0b2tlbkJhbGFuY2VMYXN0Q2hlY2sEAAAAC25ld0Vhcm5pbmdzCQAAZQAAAAIFAAAAFGN1cnJlbnRUb2tlbkVhcm5pbmdzBQAAABV0b2tlbkJhbGFuY2VMYXN0Q2hlY2sEAAAAC25ld0ludGVyZXN0AwkAAAAAAAACBQAAAAt0b3RhbFN0YWtlZAAAAAAAAAAAAAAAAAAAAAAAAAkAAGsAAAADBQAAAAtuZXdFYXJuaW5ncwUAAAAGU2NhbGU4BQAAAAt0b3RhbFN0YWtlZAQAAAARbGFzdENoZWNrSW50ZXJlc3QJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkAASwAAAACCQABLAAAAAICAAAAEWdsb2JhbF9sYXN0Q2hlY2tfBQAAAAphc3NldElkU3RyAgAAAAlfaW50ZXJlc3QJAABkAAAAAgUAAAARbGFzdENoZWNrSW50ZXJlc3QFAAAAC25ld0ludGVyZXN0AQAAAAtjbGFpbVJlc3VsdAAAAAEAAAAHYWRkcmVzcwQAAAAKYWRkcmVzc1N0cgkABCUAAAABBQAAAAdhZGRyZXNzBAAAAAxwdXp6bGVBbW91bnQJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkAASwAAAACBQAAAAphZGRyZXNzU3RyAgAAAAxfaW5kZXhTdGFrZWQKAQAAAAdoYW5kbGVyAAAAAgAAAAVhY2N1bQAAAAdhc3NldElkBAAAAAphc3NldElkU3RyCQEAAAAOZ2V0QXNzZXRTdHJpbmcAAAABBQAAAAdhc3NldElkBAAAAAhhQmFsYW5jZQkBAAAADXRyeUdldEludGVnZXIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAHZ2xvYmFsXwkBAAAADmdldEFzc2V0U3RyaW5nAAAAAQUAAAAHYXNzZXRJZAIAAAAIX2JhbGFuY2UEAAAAFnRva2VuRWFybmluZ3NMYXN0Q2hlY2sJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkAASwAAAACCQABLAAAAAICAAAAEWdsb2JhbF9sYXN0Q2hlY2tfBQAAAAphc3NldElkU3RyAgAAAAlfZWFybmluZ3MEAAAAFGN1cnJlbnRUb2tlbkludGVyZXN0CQEAAAAdY2FsY3VsYXRlQ3VycmVudEFzc2V0SW50ZXJlc3QAAAAEBQAAAAdhc3NldElkBQAAAAphc3NldElkU3RyBQAAAAhhQmFsYW5jZQUAAAAWdG9rZW5FYXJuaW5nc0xhc3RDaGVjawQAAAAUY3VycmVudFRva2VuRWFybmluZ3MJAAGWAAAAAQkABEwAAAACBQAAABZ0b2tlbkVhcm5pbmdzTGFzdENoZWNrCQAETAAAAAIJAABlAAAAAgkBAAAAD2dldFRva2VuQmFsYW5jZQAAAAEFAAAAB2Fzc2V0SWQFAAAACGFCYWxhbmNlBQAAAANuaWwEAAAADHJld2Fy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aWFsUG9vbFRva2VucwkBAAAAGWNhbGN1bGF0ZVBvb2xUb2tlbnNBbW91bnQAAAABCAUAAAABaQAAAAhwYXltZW50cwMJAAAAAAAAAgUAAAARaW5pdGlhbFBvb2xUb2tlbnMAAAAAAAAAAAAJAAACAAAAAQIAAAAyeW91IG5lZWQgYSBiaWdnZXIgdG9rZW5zIGFtb3VudCB0byBsYXVuY2ggdGhlIHBvb2wEAAAADnBvb2xUb2tlbklzc3VlCQAEQwAAAAcJAAEsAAAAAgIAAAADUFogCQEAAAAMdHJ5R2V0U3RyaW5nAAAAAQIAAAARc3RhdGljX3Bvb2xEb21haW4CAAAAHVB1enpsZSBTd2FwOiBwb29sIGluZGV4IHRva2VuBQAAABFpbml0aWFsUG9vbFRva2VucwUAAAARUG9vbFRva2VuRGVjaW1hbHMGBQAAAAR1bml0AAAAAAAAAAAABAAAAAtwb29sVG9rZW5JZAkABDgAAAABBQAAAA5wb29sVG9rZW5Jc3N1ZQkABE4AAAACCQEAAAALcHJlcGFyZUxpc3QAAAAACQAETAAAAAIFAAAADnBvb2xUb2tlbklzc3VlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABdnbG9iYWxfcG9vbFRva2VuX2Ftb3VudAUAAAARaW5pdGlhbFBvb2xUb2tlbnMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAEGdsb2JhbF93YXNJbml0ZWQAAAAAAAAAAAEJAARMAAAAAgkBAAAAC0JpbmFyeUVudHJ5AAAAAgIAAAATZ2xvYmFsX3Bvb2xUb2tlbl9pZAUAAAALcG9vbFRva2VuSWQJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAWc3RhdGljX3Bvb2xUb2tlbl9pZFN0cgkBAAAADmdldEFzc2V0U3RyaW5nAAAAAQUAAAALcG9vbFRva2VuSWQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAABFpbml0aWFsUG9vbFRva2VucwUAAAALcG9vbFRva2VuSWQFAAAAA25pbAAAAAFpAQAAAA1nZW5lcmF0ZUluZGV4AAAAAQAAAApuZWVkQ2hhbmdlAwkBAAAAAiE9AAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwUAAAABVAkAAAIAAAABCQABLAAAAAICAAAAO3lvdSBuZWVkIHRvIGF0dGFjaCBhbGwgcG9vbCB0b2tlbnMuIGFtb3VudCBvZiBwb29sIHRva2VuczogCQABpAAAAAEFAAAAAVQDCQEAAAABIQAAAAEJAQAAABNjaGVja1Rva2Vuc1ZhbGlkaXR5AAAAAQgFAAAAAWkAAAAIcGF5bWVudHMJAAACAAAAAQIAAAAVd3JvbmcgYXNzZXRzIGF0dGFjaGVkBAAAAAdQSXNzdWVkCQEAAAANZ2V0TWluUElzc3VlZAAAAAEIBQAAAAFpAAAACHBheW1lbnRzBAAAAAdyZWlzc3VlCQEAAAAHUmVpc3N1ZQAAAAMJAQAAABFAZXh0ck5hdGl2ZSgxMDU3KQAAAAECAAAAE2dsb2JhbF9wb29sVG9rZW5faWQFAAAAB1BJc3N1ZWQGBAAAAAZyZXN1bHQJAQAAABNoYW5kbGVQb29sVG9rZW5zQWRkAAAABAUAAAAHUElzc3VlZAgFAAAAAWkAAAAIcGF5bWVudHMIBQAAAAFpAAAADG9yaWdpbkNhbGxlcgUAAAAKbmVlZENoYW5nZQkABRQAAAACCQAETgAAAAIFAAAABnJlc3VsdAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAAB1BJc3N1ZWQJAQAAAAx0cnlHZXRCaW5hcnkAAAABAgAAABNnbG9iYWxfcG9vbFRva2VuX2lkCQAETAAAAAIFAAAAB3JlaXNzdWUJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAF2dsb2JhbF9wb29sVG9rZW5fYW1vdW50CQAAZAAAAAIJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQIAAAAXZ2xvYmFsX3Bvb2xUb2tlbl9hbW91bnQFAAAAB1BJc3N1ZWQFAAAAA25pbAUAAAAHUElzc3VlZAAAAAFpAQAAAApzdGFrZUluZGV4AAAAAAQAAAAKYWRkcmVzc1N0cgkABCUAAAABCAUAAAABaQAAAAxvcmlnaW5DYWxsZXIEAAAAA3BtdAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAMJAQAAAAIhPQAAAAIJAQAAAAV2YWx1ZQAAAAEIBQAAAANwbXQAAAAHYXNzZXRJZAkBAAAADHRyeUdldEJpbmFyeQAAAAECAAAAE2dsb2JhbF9wb29sVG9rZW5faWQJAAACAAAAAQIAAAAUd3JvbmcgYXNzZXQgYXR0YWNoZWQJAQAAABBpbmRleFN0YWtlUmVzdWx0AAAAAgUAAAAKYWRkcmVzc1N0cggFAAAAA3BtdAAAAAZhbW91bnQAAAABaQEAAAAMdW5zdGFrZUluZGV4AAAAAQAAAAxwdXp6bGVBbW91bnQEAAAACmFkZHJlc3NTdHIJAAQlAAAAAQgFAAAAAWkAAAAMb3JpZ2luQ2FsbGVyBAAAAA9wdXp6bGVBdmFpbGFibGUJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkAASwAAAACBQAAAAphZGRyZXNzU3RyAgAAAAxfaW5kZXhTdGFrZWQDCQAAZgAAAAIFAAAADHB1enpsZUFtb3VudAUAAAAPcHV6emxlQXZhaWxhYmxlCQAAAgAAAAECAAAAJXlvdSBkb24ndCBoYXZlIGluZGV4IHRva2VucyBhdmFpbGFibGUJAAROAAAAAgkBAAAAC2NsYWltUmVzdWx0AAAAAQgFAAAAAWkAAAAMb3JpZ2luQ2FsbGVyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAACmFkZHJlc3NTdHICAAAADF9pbmRleFN0YWtlZAkAAGUAAAACBQAAAA9wdXp6bGVBdmFpbGFibGUFAAAADHB1enpsZUFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAASZ2xvYmFsX2luZGV4U3Rha2VkCQAAZQAAAAIJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQIAAAASZ2xvYmFsX2luZGV4U3Rha2VkBQAAAAxwdXp6bGVBbW91bnQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAAxwdXp6bGVBbW91bnQJAQAAABFAZXh0ck5hdGl2ZSgxMDU3KQAAAAECAAAAE2dsb2JhbF9wb29sVG9rZW5faWQFAAAAA25pbAAAAAFpAQAAABFjbGFpbUluZGV4UmV3YXJkcwAAAAAJAQAAAAtjbGFpbVJlc3VsdAAAAAEIBQAAAAFpAAAABmNhbGxlcgAAAAFpAQAAAAtyZWRlZW1JbmRleAAAAAEAAAAMc2VuZFRvT3JpZ2luBAAAAANwbXQJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAADCQEAAAACIT0AAAACCAUAAAADcG10AAAAB2Fzc2V0SWQJAQAAAAx0cnlHZXRCaW5hcnkAAAABAgAAABNnbG9iYWxfcG9vbFRva2VuX2lkCQAAAgAAAAECAAAAHnBsZWFzZSBhdHRhY2ggcG9vbCBzaGFyZSB0b2tlbgQAAAAJUFJlZGVlbWVkCAUAAAADcG10AAAABmFtb3VudAQAAAAGcmVzdWx0CQEAAAAWaGFuZGxlUG9vbFRva2Vuc1JlZGVlbQAAAAIFAAAACVBSZWRlZW1lZAMFAAAADHNlbmRUb09yaWdpbggFAAAAAWkAAAAMb3JpZ2luQ2FsbGVyCAUAAAABaQAAAAZjYWxsZXIJAAROAAAAAgUAAAAGcmVzdWx0CQAETAAAAAIJAQAAAARCdXJuAAAAAgkBAAAADHRyeUdldEJpbmFyeQAAAAECAAAAE2dsb2JhbF9wb29sVG9rZW5faWQFAAAACVBSZWRlZW1lZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAXZ2xvYmFsX3Bvb2xUb2tlbl9hbW91bnQJAABlAAAAAgkBAAAADXRyeUdldEludGVnZXIAAAABAgAAABdnbG9iYWxfcG9vbFRva2VuX2Ftb3VudAUAAAAJUFJlZGVlbWVkBQAAAANuaWwAAAABaQEAAAAEc3dhcAAAAAIAAAAIYXNzZXRPdXQAAAAHbWluaW11bQQAAAADcG10CQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAAhBbW91bnRJbgkBAAAABXZhbHVlAAAAAQgJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAGYW1vdW50BAAAAAdBc3NldEluCAUAAAADcG10AAAAB2Fzc2V0SWQEAAAACEFzc2V0T3V0CQEAAAANZ2V0QXNzZXRCeXRlcwAAAAEFAAAACGFzc2V0T3V0BAAAAA5Bc3NldEluQmFsYW5jZQkBAAAADXRyeUdldEludGVnZXIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAHZ2xvYmFsXwkBAAAADmdldEFzc2V0U3RyaW5nAAAAAQUAAAAHQXNzZXRJbgIAAAAIX2JhbGFuY2UEAAAAD0Fzc2V0T3V0QmFsYW5jZQkBAAAADXRyeUdldEludGVnZXIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAHZ2xvYmFsXwUAAAAIYXNzZXRPdXQCAAAACF9iYWxhbmNlBAAAAAlBbW91bnRPdXQJAQAAABJjYWxjdWxhdGVPdXRBbW91bnQAAAAFBQAAAAhBbW91bnRJbgUAAAAHQXNzZXRJbgUAAAAIQXNzZXRPdXQFAAAADkFzc2V0SW5CYWxhbmNlBQAAAA9Bc3NldE91dEJhbGFuY2UEAAAACWZlZUFtb3VudAkAAGsAAAADBQAAAAlBbW91bnRPdXQFAAAAA0ZlZQUAAAAIRmVlU2NhbGUEAAAADmNsZWFuQW1vdW50T3V0CQAAZQAAAAIFAAAACUFtb3VudE91dAUAAAAJZmVlQW1vdW50AwkAAGYAAAACBQAAAAdtaW5pbXVtBQAAAA5jbGVhbkFtb3VudE91dAkAAAIAAAABCQABLAAAAAICAAAAK2Ftb3VudCB0byByZWNpZXZlIGlzIGxvd2VyIHRoYW4gZ2l2ZW4gb25lOiAJAAGkAAAAAQUAAAAOY2xlYW5BbW91bnRPdXQDCQAAZgAAAAIAAAAAAAAAAAAJAABlAAAAAgUAAAAPQXNzZXRPdXRCYWxhbmNlBQAAAAlBbW91bnRPdXQJAAACAAAAAQIAAAAbY29udHJhY3QgaXMgb3V0IG9mIHJlc2VydmVzBAAAAAxuZXdCYWxhbmNlSW4JAABkAAAAAgUAAAAOQXNzZXRJbkJhbGFuY2UFAAAACEFtb3VudEluBAAAAA1uZXdCYWxhbmNlT3V0CQAAZQAAAAIFAAAAD0Fzc2V0T3V0QmFsYW5jZQUAAAAJQW1vdW50T3V0BAAAAAt1c2RuQXNzZXRJZAEAAAAgtiYpwwT1zlORpA5LdSQvZIxRsfrfr1QpvUjSHSqyqtEDCQAAAAAAAAIFAAAAC3VzZG5Bc3NldElkBQAAAAhBc3NldE91dAQAAAANdXNkbkZlZUFtb3VudAUAAAAJZmVlQW1vdW50BAAAAA9wcm90b2NvbFVzZG5GZWUJAABrAAAAAwUAAAANdXNkbkZlZUFtb3VudAAAAAAAAAAABAAAAAAAAAAACgQAAAAMc3Rha2luZ1RvcFVwCQAD/QAAAAQJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVeUaIz57qK5qp/W9Y68qY9nGpwG9BYpibsCAAAAC3RvcFVwUmV3YXJkBQAAAANuaWwJAARMAAAAAgkBAAAAD0F0dGFjaGVkUGF5bWVudAAAAAIFAAAAC3VzZG5Bc3NldElkBQAAAA9wcm90b2NvbFVzZG5GZWUFAAAAA25pbAMJAAAAAAAAAgUAAAAMc3Rha2luZ1RvcFVwBQAAAAxzdGFraW5nVG9wVXAJAAUUAAAAAgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAAB2dsb2JhbF8FAAAACGFzc2V0T3V0AgAAAAhfYmFsYW5jZQUAAAANbmV3QmFsYW5jZU91dAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAAB2dsb2JhbF8JAQAAAA5nZXRBc3NldFN0cmluZwAAAAEFAAAAB0Fzc2V0SW4CAAAACF9iYWxhbmNlBQAAAAxuZXdCYWxhbmNlSW4JAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAA5jbGVhbkFtb3VudE91dAUAAAAIQXNzZXRPdXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADWdsb2JhbF92b2x1bWUJAABkAAAAAgkBAAAADXRyeUdldEludGVnZXIAAAABAgAAAA1nbG9iYWxfdm9sdW1lCQEAAAASY2FsY3VsYXRlVXNkblZhbHVlAAAAAwUAAAAHQXNzZXRJbgUAAAAIQW1vdW50SW4FAAAADkFzc2V0SW5CYWxhbmNlBQAAAANuaWwFAAAADmNsZWFuQW1vdW50T3V0CQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgQAAAALdXNkbkJhbGFuY2UDCQAAAAAAAAIFAAAAB0Fzc2V0SW4FAAAAC3VzZG5Bc3NldElkBQAAAAxuZXdCYWxhbmNlSW4JAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkAASwAAAACCQABLAAAAAICAAAAB2dsb2JhbF8JAQAAAA5nZXRBc3NldFN0cmluZwAAAAEFAAAAC3VzZG5Bc3NldElkAgAAAAhfYmFsYW5jZQQAAAANdXNkbkZlZUFtb3VudAkBAAAAEmNhbGN1bGF0ZU91dEFtb3VudAAAAAUFAAAACWZlZUFtb3VudAUAAAAIQXNzZXRPdXQFAAAAC3VzZG5Bc3NldElkBQAAAA1uZXdCYWxhbmNlT3V0BQAAAAt1c2RuQmFsYW5jZQQAAAAPcHJvdG9jb2xVc2RuRmVlCQAAawAAAAMFAAAADXVzZG5GZWVBbW91bnQAAAAAAAAAAAQAAAAAAAAAAAoEAAAADHN0YWtpbmdUb3BVcAkAA/0AAAAECQEAAAAHQWRkcmVzcwAAAAEBAAAAGgFXlGiM+e6iuaqf1vWOvKmPZxqcBvQWKYm7AgAAAAt0b3BVcFJld2FyZAUAAAADbmlsCQAETAAAAAIJAQAAAA9BdHRhY2hlZFBheW1lbnQAAAACBQAAAAt1c2RuQXNzZXRJZAUAAAAPcHJvdG9jb2xVc2RuRmVlBQAAAANuaWwDCQAAAAAAAAIFAAAADHN0YWtpbmdUb3BVcAUAAAAMc3Rha2luZ1RvcFVwBAAAABZ1c2RuQmFsYW5jZUNoYW5nZUVudHJ5CQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAAB2dsb2JhbF8JAAJYAAAAAQUAAAALdXNkbkFzc2V0SWQCAAAACF9iYWxhbmNlCQAAZQAAAAIFAAAAC3VzZG5CYWxhbmNlBQAAAA11c2RuRmVlQW1vdW50BAAAAA5iYWxhbmNlQ2hhbmdlcwMJAAAAAAAAAgUAAAAHQXNzZXRJbgUAAAALdXNkbkFzc2V0SWQJAARMAAAAAgUAAAAWdXNkbkJhbGFuY2VDaGFuZ2VFbnRyeQUAAAADbmlsCQAETAAAAAIFAAAAFnVzZG5CYWxhbmNlQ2hhbmdlRW50cnkJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdnbG9iYWxfCQEAAAAOZ2V0QXNzZXRTdHJpbmcAAAABBQAAAAdBc3NldEluAgAAAAhfYmFsYW5jZQUAAAAMbmV3QmFsYW5jZUluBQAAAANuaWwJAAUUAAAAAgkABE4AAAACCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAHZ2xvYmFsXwUAAAAIYXNzZXRPdXQCAAAACF9iYWxhbmNlCQAAZAAAAAIFAAAADW5ld0JhbGFuY2VPdXQFAAAACWZlZUFtb3VudAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAADmNsZWFuQW1vdW50T3V0BQAAAAhBc3NldE91dAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAANZ2xvYmFsX3ZvbHVtZQkAAGQAAAACCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAECAAAADWdsb2JhbF92b2x1bWUJAQAAABJjYWxjdWxhdGVVc2RuVmFsdWUAAAADBQAAAAdBc3NldEluBQAAAAhBbW91bnRJbgUAAAAOQXNzZXRJbkJhbGFuY2UFAAAAA25pbAUAAAAOYmFsYW5jZUNoYW5nZXMFAAAADmNsZWFuQW1vdW50T3V0CQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAADCQEAAAAKaXNTaHV0ZG93bgAAAAAHCQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tleTgnnik=", "height": 2009005, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+func a (b) = {
5+ let c = getInteger(this, b)
6+ if ($isInstanceOf(c, "Int"))
7+ then {
8+ let d = c
9+ d
10+ }
11+ else 0
12+ }
13+
14+
15+func e (b) = {
16+ let c = getBinary(this, b)
17+ if ($isInstanceOf(c, "ByteVector"))
18+ then {
19+ let d = c
20+ d
21+ }
22+ else base58''
23+ }
24+
25+
26+func f (b) = {
27+ let c = getString(this, b)
28+ if ($isInstanceOf(c, "String"))
29+ then {
30+ let d = c
31+ d
32+ }
33+ else ""
34+ }
35+
36+
37+func g (h) = {
38+ let c = h
39+ if ($isInstanceOf(c, "ByteVector"))
40+ then {
41+ let d = c
42+ toBase58String(d)
43+ }
44+ else "WAVES"
45+ }
46+
47+
48+func i (j) = if ((j == "WAVES"))
49+ then unit
50+ else fromBase58String(j)
51+
52+
53+func k (l,m) = (l ++ [i(m)])
54+
55+
56+func n (l,m) = (l ++ [a((("static_" + g(m)) + "_weight"))])
57+
58+
59+func o (l,m) = (l ++ [a((("static_" + g(m)) + "_decimals"))])
60+
61+
62+func p (l,m) = (l ++ [a((("static_" + g(m)) + "_scale"))])
63+
64+
65+func q (l,m) = (l ++ [parseIntValue(m)])
66+
67+
68+let r = a("static_tokensAmount")
69+
70+let s = {
71+ let t = split(f("static_tokenIds"), ",")
72+ let u = size(t)
73+ let v = nil
74+ func w (x,y) = if ((y >= u))
75+ then x
76+ else k(x, t[y])
77+
78+ func z (x,y) = if ((y >= u))
79+ then x
80+ else throw("List size exceeds 10")
81+
82+ z(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
83+ }
84+
85+let A = {
86+ let t = s
87+ let u = size(t)
88+ let v = nil
89+ func B (x,y) = if ((y >= u))
90+ then x
91+ else n(x, t[y])
92+
93+ func C (x,y) = if ((y >= u))
94+ then x
95+ else throw("List size exceeds 10")
96+
97+ C(B(B(B(B(B(B(B(B(B(B(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
98+ }
99+
100+let D = {
101+ let t = s
102+ let u = size(t)
103+ let v = nil
104+ func E (x,y) = if ((y >= u))
105+ then x
106+ else o(x, t[y])
107+
108+ func F (x,y) = if ((y >= u))
109+ then x
110+ else throw("List size exceeds 10")
111+
112+ F(E(E(E(E(E(E(E(E(E(E(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
113+ }
114+
115+let G = {
116+ let t = s
117+ let u = size(t)
118+ let v = nil
119+ func H (x,y) = if ((y >= u))
120+ then x
121+ else p(x, t[y])
122+
123+ func I (x,y) = if ((y >= u))
124+ then x
125+ else throw("List size exceeds 10")
126+
127+ I(H(H(H(H(H(H(H(H(H(H(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
128+ }
129+
130+let J = a("static_fee")
131+
132+let K = 2
133+
134+let L = 10000
135+
136+let M = 100000000
137+
138+let N = 10000
139+
140+let O = 8
141+
142+let P = pow(10, 0, O, 0, 0, HALFUP)
143+
144+let Q = s
145+
146+func R () = {
147+ let c = getBoolean(Address(base58'3PEpv9hRFWEEBU22WRnLsw1bH4YGtcU728o'), "is_shutdown")
148+ if ($isInstanceOf(c, "Boolean"))
149+ then {
150+ let S = c
151+ S
152+ }
153+ else false
154+ }
155+
156+
157+func T (U) = {
158+ let V = g(s[U])
159+ a((("global_" + V) + "_balance"))
160+ }
161+
162+
163+func W (X,V) = {
164+ let Y = a("global_poolToken_amount")
165+ let Z = a((("global_" + g(V)) + "_balance"))
166+ fraction(X, Y, Z, DOWN)
167+ }
168+
169+
170+func aa (ab) = {
171+ func ac (l,ad) = {
172+ let ae = W(ad.amount, ad.assetId)
173+ if (if ((l == 0))
174+ then true
175+ else (l > ae))
176+ then ae
177+ else l
178+ }
179+
180+ let af = {
181+ let t = ab
182+ let u = size(t)
183+ let v = 0
184+ func ag (x,y) = if ((y >= u))
185+ then x
186+ else ac(x, t[y])
187+
188+ func ah (x,y) = if ((y >= u))
189+ then x
190+ else throw("List size exceeds 10")
191+
192+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
193+ }
194+ af
195+ }
196+
197+
198+func ai (h,X,aj) = {
199+ let ak = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
200+ let al = A[value(indexOf(s, ak))]
201+ let am = A[value(indexOf(s, h))]
202+ let an = a((("global_" + g(ak)) + "_balance"))
203+ fraction(X, (an / al), (aj / am))
204+ }
205+
206+
207+func ao (ab) = {
208+ func ap (l,aq) = (l ++ [aq.assetId])
209+
210+ let ar = {
211+ let t = ab
212+ let u = size(t)
213+ let v = nil
214+ func ag (x,y) = if ((y >= u))
215+ then x
216+ else ap(x, t[y])
217+
218+ func ah (x,y) = if ((y >= u))
219+ then x
220+ else throw("List size exceeds 10")
221+
222+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
223+ }
224+ if ((ar == ar))
225+ then {
226+ func as (l,h) = if ((indexOf(ar, h) != unit))
227+ then (l + 1)
228+ else throw(("asset not attached: " + g(h)))
229+
230+ let at = {
231+ let t = s
232+ let u = size(t)
233+ let v = 0
234+ func au (x,y) = if ((y >= u))
235+ then x
236+ else as(x, t[y])
237+
238+ func av (x,y) = if ((y >= u))
239+ then x
240+ else throw("List size exceeds 10")
241+
242+ av(au(au(au(au(au(au(au(au(au(au(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
243+ }
244+ if ((at == at))
245+ then true
246+ else throw("Strict value is not equal to itself.")
247+ }
248+ else throw("Strict value is not equal to itself.")
249+ }
250+
251+
252+func aw (ae,ab,ax,ay) = {
253+ func az (V) = {
254+ func ac (l,aq) = if ((aq.assetId == V))
255+ then aq.amount
256+ else l
257+
258+ let t = ab
259+ let u = size(t)
260+ let v = 0
261+ func ag (x,y) = if ((y >= u))
262+ then x
263+ else ac(x, t[y])
264+
265+ func ah (x,y) = if ((y >= u))
266+ then x
267+ else throw("List size exceeds 10")
268+
269+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
270+ }
271+
272+ func aA (l,V) = {
273+ let aB = a((("global_" + g(V)) + "_balance"))
274+ let aC = a("global_poolToken_amount")
275+ let aD = a((("static_" + g(V)) + "_scale"))
276+ let aE = fraction((fraction((aC + ae), aD, aC, DOWN) - aD), aB, aD, DOWN)
277+ let aF = az(V)
278+ let aG = ((if ((aF != 0))
279+ then aF
280+ else 0) - aE)
281+ let aH = if (ay)
282+ then [ScriptTransfer(ax, aG, V)]
283+ else nil
284+ ((l ++ aH) ++ [IntegerEntry((("global_" + g(V)) + "_balance"), (aB + aE))])
285+ }
286+
287+ let t = s
288+ let u = size(t)
289+ let v = nil
290+ func ag (x,y) = if ((y >= u))
291+ then x
292+ else aA(x, t[y])
293+
294+ func ah (x,y) = if ((y >= u))
295+ then x
296+ else throw("List size exceeds 10")
297+
298+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
299+ }
300+
301+
302+func aI (aJ,ax) = {
303+ func aK (l,V) = {
304+ let aB = a((("global_" + g(V)) + "_balance"))
305+ let aC = a("global_poolToken_amount")
306+ let aD = a((("static_" + g(V)) + "_scale"))
307+ let X = toInt(fraction((toBigInt(M) - fraction(toBigInt((aC - aJ)), toBigInt(M), toBigInt(aC), CEILING)), toBigInt(aB), toBigInt(M), DOWN))
308+ (l ++ [IntegerEntry((("global_" + g(V)) + "_balance"), (aB - X)), ScriptTransfer(ax, X, V)])
309+ }
310+
311+ let t = s
312+ let u = size(t)
313+ let v = nil
314+ func ag (x,y) = if ((y >= u))
315+ then x
316+ else aK(x, t[y])
317+
318+ func ah (x,y) = if ((y >= u))
319+ then x
320+ else throw("List size exceeds 10")
321+
322+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
323+ }
324+
325+
326+func aL (aM,aN,aO,aP,aQ) = {
327+ let aR = value(indexOf(s, aN))
328+ let aS = value(indexOf(s, aO))
329+ if ((aR == aS))
330+ then throw("wrong tokens pair")
331+ else fraction(aQ, ((M * M) - toInt(pow(fraction(toBigInt(aP), toBigInt((M * M)), toBigInt((aP + aM)), HALFUP), 16, toBigInt(fraction(A[aR], 10000, A[aS])), 4, 16, CEILING))), (M * M), DOWN)
332+ }
333+
334+
335+func aT (h) = {
336+ let c = h
337+ if ($isInstanceOf(c, "ByteVector"))
338+ then {
339+ let aH = c
340+ assetBalance(this, aH)
341+ }
342+ else wavesBalance(this).available
343+ }
344+
345+
346+func aU (h,j,aj,aV) = {
347+ let aW = a("global_indexStaked")
348+ let aX = aV
349+ let aY = (aT(h) - aj)
350+ let aZ = if ((aY > aX))
351+ then aY
352+ else aX
353+ let ba = (aZ - aX)
354+ let bb = if ((aW == 0))
355+ then 0
356+ else fraction(ba, M, aW)
357+ let bc = a((("global_lastCheck_" + j) + "_interest"))
358+ (bc + bb)
359+ }
360+
361+
362+func bd (be) = {
363+ let bf = toString(be)
364+ let bg = a((bf + "_indexStaked"))
365+ func ac (l,h) = {
366+ let j = g(h)
367+ let aj = a((("global_" + g(h)) + "_balance"))
368+ let aV = a((("global_lastCheck_" + j) + "_earnings"))
369+ let bh = aU(h, j, aj, aV)
370+ let aZ = max([aV, (aT(h) - aj)])
371+ let bi = fraction(bg, (bh - a((((bf + "_lastCheck_") + j) + "_interest"))), M)
372+ let bj = if ((bi == 0))
373+ then nil
374+ else [ScriptTransfer(be, bi, h)]
375+ $Tuple2(((l._1 ++ bj) ++ [IntegerEntry((("global_lastCheck_" + j) + "_earnings"), (aZ - bi)), IntegerEntry((("global_lastCheck_" + j) + "_interest"), bh), IntegerEntry((((bf + "_lastCheck_") + j) + "_interest"), bh)]), (l._2 + ai(h, bi, aj)))
376+ }
377+
378+ let l = {
379+ let t = Q
380+ let u = size(t)
381+ let v = $Tuple2(nil, 0)
382+ func ag (x,y) = if ((y >= u))
383+ then x
384+ else ac(x, t[y])
385+
386+ func ah (x,y) = if ((y >= u))
387+ then x
388+ else throw("List size exceeds 10")
389+
390+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
391+ }
392+ (l._1 ++ [IntegerEntry((bf + "_claimedRewardValue"), (a((bf + "_claimedRewardValue")) + l._2)), IntegerEntry((bf + "_lastClaim"), lastBlock.timestamp)])
393+ }
394+
395+
396+func bk (bf,X) = {
397+ let bl = bd(addressFromStringValue(bf))
398+ (bl ++ [IntegerEntry((bf + "_indexStaked"), (a((bf + "_indexStaked")) + X)), IntegerEntry("global_indexStaked", (a("global_indexStaked") + X))])
399+ }
400+
401+
402+func bm (l,bn) = (l + parseIntValue(bn))
403+
404+
405+@Callable(bo)
406+func preInit (bp,bq,br,bs) = if ((this != bo.caller))
407+ then throw("admin only")
408+ else if ((size(bs) > 13))
409+ then throw("too large pool domain")
410+ else {
411+ let bt = split(bp, ",")
412+ let bu = {
413+ let t = bt
414+ let u = size(t)
415+ let v = nil
416+ func ag (x,y) = if ((y >= u))
417+ then x
418+ else k(x, t[y])
419+
420+ func ah (x,y) = if ((y >= u))
421+ then x
422+ else throw("List size exceeds 10")
423+
424+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
425+ }
426+ let bv = split(bq, ",")
427+ let bw = {
428+ let t = bv
429+ let u = size(t)
430+ let v = 0
431+ func au (x,y) = if ((y >= u))
432+ then x
433+ else bm(x, t[y])
434+
435+ func av (x,y) = if ((y >= u))
436+ then x
437+ else throw("List size exceeds 10")
438+
439+ av(au(au(au(au(au(au(au(au(au(au(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
440+ }
441+ func bx (l,by) = if ((by >= size(bu)))
442+ then l
443+ else {
444+ let bz = value(assetInfo(bu[by])).decimals
445+ (l ++ [IntegerEntry((("static_" + bt[by]) + "_scale"), pow(10, 0, bz, 0, 0, DOWN)), IntegerEntry((("static_" + bt[by]) + "_decimals"), bz), IntegerEntry((("static_" + bt[by]) + "_weight"), value(parseInt(bv[by])))])
446+ }
447+
448+ if ((bw != 100))
449+ then throw("sum of token weights must be equal to 100")
450+ else ({
451+ let t = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
452+ let u = size(t)
453+ let v = nil
454+ func bA (x,y) = if ((y >= u))
455+ then x
456+ else bx(x, t[y])
457+
458+ func bB (x,y) = if ((y >= u))
459+ then x
460+ else throw("List size exceeds 10")
461+
462+ bB(bA(bA(bA(bA(bA(bA(bA(bA(bA(bA(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
463+ } ++ [StringEntry("static_tokenIds", bp), StringEntry("static_tokenWeights", bq), IntegerEntry("static_tokensAmount", size(bu)), StringEntry("static_poolDomain", bs), StringEntry("static_baseTokenId", br), IntegerEntry("static_fee", 200)])
464+ }
465+
466+
467+
468+@Callable(bo)
469+func deInit () = if ((bo.caller != this))
470+ then throw("admin only")
471+ else [IntegerEntry("global_wasInited", 0)]
472+
473+
474+
475+@Callable(bo)
476+func init () = {
477+ func bC () = {
478+ func ac (l,bn) = (l ++ [IntegerEntry((("global_" + g(bn.assetId)) + "_balance"), bn.amount)])
479+
480+ let t = bo.payments
481+ let u = size(t)
482+ let v = nil
483+ func ag (x,y) = if ((y >= u))
484+ then x
485+ else ac(x, t[y])
486+
487+ func ah (x,y) = if ((y >= u))
488+ then x
489+ else throw("List size exceeds 10")
490+
491+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
492+ }
493+
494+ func bD (ab) = {
495+ func ac (l,bE) = {
496+ let h = bE.assetId
497+ func as (l,bn) = if ((bn == h))
498+ then value(indexOf(s, bn))
499+ else l
500+
501+ let bF = {
502+ let t = s
503+ let u = size(t)
504+ let v = 1
505+ func ag (x,y) = if ((y >= u))
506+ then x
507+ else as(x, t[y])
508+
509+ func ah (x,y) = if ((y >= u))
510+ then x
511+ else throw("List size exceeds 10")
512+
513+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
514+ }
515+ fraction(l, pow(bE.amount, D[bF], A[bF], K, 8, FLOOR), M)
516+ }
517+
518+ let t = ab
519+ let u = size(t)
520+ let v = P
521+ func ag (x,y) = if ((y >= u))
522+ then x
523+ else ac(x, t[y])
524+
525+ func ah (x,y) = if ((y >= u))
526+ then x
527+ else throw("List size exceeds 10")
528+
529+ ah(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
530+ }
531+
532+ if ((a("global_wasInited") > 0))
533+ then throw("pool already inited")
534+ else {
535+ let bG = bD(bo.payments)
536+ if ((bG == 0))
537+ then throw("you need a bigger tokens amount to launch the pool")
538+ else {
539+ let bH = Issue(("PZ " + f("static_poolDomain")), "Puzzle Swap: pool index token", bG, O, true, unit, 0)
540+ let bI = calculateAssetId(bH)
541+ (bC() ++ [bH, IntegerEntry("global_poolToken_amount", bG), IntegerEntry("global_wasInited", 1), BinaryEntry("global_poolToken_id", bI), StringEntry("static_poolToken_idStr", g(bI)), ScriptTransfer(bo.caller, bG, bI)])
542+ }
543+ }
544+ }
545+
546+
547+
548+@Callable(bo)
549+func generateIndex (ay) = if ((size(bo.payments) != r))
550+ then throw(("you need to attach all pool tokens. amount of pool tokens: " + toString(r)))
551+ else if (!(ao(bo.payments)))
552+ then throw("wrong assets attached")
553+ else {
554+ let ae = aa(bo.payments)
555+ let bJ = Reissue(getBinaryValue("global_poolToken_id"), ae, true)
556+ let bK = aw(ae, bo.payments, bo.originCaller, ay)
557+ $Tuple2((bK ++ [ScriptTransfer(bo.caller, ae, e("global_poolToken_id")), bJ, IntegerEntry("global_poolToken_amount", (a("global_poolToken_amount") + ae))]), ae)
558+ }
559+
560+
561+
562+@Callable(bo)
563+func stakeIndex () = {
564+ let bf = toString(bo.originCaller)
565+ let bE = bo.payments[0]
566+ if ((value(bE.assetId) != e("global_poolToken_id")))
567+ then throw("wrong asset attached")
568+ else bk(bf, bE.amount)
569+ }
570+
571+
572+
573+@Callable(bo)
574+func unstakeIndex (bg) = {
575+ let bf = toString(bo.originCaller)
576+ let bL = a((bf + "_indexStaked"))
577+ if ((bg > bL))
578+ then throw("you don't have index tokens available")
579+ else (bd(bo.originCaller) ++ [IntegerEntry((bf + "_indexStaked"), (bL - bg)), IntegerEntry("global_indexStaked", (a("global_indexStaked") - bg)), ScriptTransfer(bo.caller, bg, getBinaryValue("global_poolToken_id"))])
580+ }
581+
582+
583+
584+@Callable(bo)
585+func claimIndexRewards () = bd(bo.caller)
586+
587+
588+
589+@Callable(bo)
590+func redeemIndex (bM) = {
591+ let bE = bo.payments[0]
592+ if ((bE.assetId != e("global_poolToken_id")))
593+ then throw("please attach pool share token")
594+ else {
595+ let aJ = bE.amount
596+ let bK = aI(aJ, if (bM)
597+ then bo.originCaller
598+ else bo.caller)
599+ (bK ++ [Burn(e("global_poolToken_id"), aJ), IntegerEntry("global_poolToken_amount", (a("global_poolToken_amount") - aJ))])
600+ }
601+ }
602+
603+
604+
605+@Callable(bo)
606+func swap (aO,bN) = {
607+ let bE = value(bo.payments[0])
608+ let aM = value(bo.payments[0].amount)
609+ let bO = bE.assetId
610+ let bP = i(aO)
611+ let bQ = a((("global_" + g(bO)) + "_balance"))
612+ let bR = a((("global_" + aO) + "_balance"))
613+ let bS = aL(aM, bO, bP, bQ, bR)
614+ let bT = fraction(bS, J, N)
615+ let bU = (bS - bT)
616+ if ((bN > bU))
617+ then throw(("amount to recieve is lower than given one: " + toString(bU)))
618+ else if ((0 > (bR - bS)))
619+ then throw("contract is out of reserves")
620+ else {
621+ let bV = (bQ + aM)
622+ let bW = (bR - bS)
623+ let bX = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
624+ if ((bX == bP))
625+ then {
626+ let bY = bT
627+ let bZ = fraction(bY, 4, 10)
628+ let ca = reentrantInvoke(Address(base58'3PFTbywqxtFfukX3HyT881g4iW5K4QL3FAS'), "topUpReward", nil, [AttachedPayment(bX, bZ)])
629+ if ((ca == ca))
630+ then $Tuple2([IntegerEntry((("global_" + aO) + "_balance"), bW), IntegerEntry((("global_" + g(bO)) + "_balance"), bV), ScriptTransfer(bo.caller, bU, bP), IntegerEntry("global_volume", (a("global_volume") + ai(bO, aM, bQ)))], bU)
631+ else throw("Strict value is not equal to itself.")
632+ }
633+ else {
634+ let an = if ((bO == bX))
635+ then bV
636+ else a((("global_" + g(bX)) + "_balance"))
637+ let bY = aL(bT, bP, bX, bW, an)
638+ let bZ = fraction(bY, 4, 10)
639+ let ca = reentrantInvoke(Address(base58'3PFTbywqxtFfukX3HyT881g4iW5K4QL3FAS'), "topUpReward", nil, [AttachedPayment(bX, bZ)])
640+ if ((ca == ca))
641+ then {
642+ let cb = IntegerEntry((("global_" + toBase58String(bX)) + "_balance"), (an - bY))
643+ let cc = if ((bO == bX))
644+ then [cb]
645+ else [cb, IntegerEntry((("global_" + g(bO)) + "_balance"), bV)]
646+ $Tuple2(([IntegerEntry((("global_" + aO) + "_balance"), (bW + bT)), ScriptTransfer(bo.caller, bU, bP), IntegerEntry("global_volume", (a("global_volume") + ai(bO, aM, bQ)))] ++ cc), bU)
647+ }
648+ else throw("Strict value is not equal to itself.")
649+ }
650+ }
651+ }
652+
653+
654+@Verifier(cd)
655+func ce () = if (R())
656+ then false
657+ else sigVerify(cd.bodyBytes, cd.proofs[0], cd.senderPublicKey)
658+

github/deemru/w8io/169f3d6 
34.61 ms