tx · 5rCXf9HPV76xKwEm4CoRKEUo66cwaTLU5hxNLMBoJ6sc

3MqV7nczBawUF4nLJ3MikS43jHMYaVHF8UA:  -0.00900000 Waves

2022.08.07 20:12 [2174325] smart account 3MqV7nczBawUF4nLJ3MikS43jHMYaVHF8UA > SELF 0.00000000 Waves

{ "type": 13, "id": "5rCXf9HPV76xKwEm4CoRKEUo66cwaTLU5hxNLMBoJ6sc", "fee": 900000, "feeAssetId": null, "timestamp": 1659892367281, "version": 2, "chainId": 84, "sender": "3MqV7nczBawUF4nLJ3MikS43jHMYaVHF8UA", "senderPublicKey": "Fng6v4kqm1P6h6xF9hCvumcEKbjAKgpoiwaYa7VEkDoU", "proofs": [ "5sSetLuymBi7nsncfc6Xe74To3sxW1mGh71XCSJ8MPgUaJe8BjJNfbKgBEoPW6orPnPphrPkxV91GYhugedfMDxg" ], "script": "base64:AAIFAAAAAAAAAAwIAhIICgYICAgBAQEAAAAxAAAAAAZCaXRDTzIBAAAAIMUi0QAOPWzHrrHgLgYvt6byvqBTCBHKATKU5thr4LIYAAAAAA1zdGFydFRvdGFsUXR5AAAAAAAABKodAAAAAAxGaXJzdEZhc2VRdHkAAAAAAAAAedkAAAAADVNlY29uZEZhc2VRdHkAAAAAAAAEMEQAAAAAA3d2cwAAAAAABfXhAAAAAAAETk9ORQIAAAAEbm9uZQAAAAAFZXVyb3UAAAAAAAAAAGUAAAAABXVzZG53AAAAAAAAAAJBAAAAAAViY28yZQAAAAAAAAAACgAAAAASYWRtTjA4R1RTYXNvYzExVzkwCQEAAAAHQWRkcmVzcwAAAAEBAAAAGgFU+i7AyYrRaVtmoLjDmy4+7UHs4qzGX19uAAAAABRhZG1OMDhFQ0dUU2Fzb2MxMVcxMAkBAAAAB0FkZHJlc3MAAAABAQAAABoBVDanr/iFPErnvzy2ts6SNOnfE9/sP2Z7cwAAAAASQWRtTjA4R1RTYXNvYzExVzkwAgAAACMzTkNpdmlMYnNEMW1NMlJnUVZERm9hRU1ZeTE1UWJySHdCMwAAAAAUQWRtTjA4RUNHVFNhc29jMTFXMTACAAAAIzNNdHU1OVFMZkhrSkJxUlJDdVJMOUs4S21FclIxSlFlZ2NyAAAAAA1Bc29jUHJlc3RlYzAxAgAAACMzTjg2RDJFN3BTRkQ3ZkpCQjFxa2NHTThTb1I2clpwRnc5bwAAAAANQXNvY1ByZXN0ZWMwMgIAAAAjM04yakh0Z1NWQ3RXNmpkZG1RdWVyTjdOU25YalIzS2NFZmcBAAAADmdldE51bWJlckJ5S2V5AAAAAQAAAANrZXkEAAAAA251bQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAUAAAADbnVtAQAAAAtnZXRTdHJCeUtleQAAAAEAAAADa2V5BAAAAANzdHIEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEFAAAABE5PTkUFAAAAA3N0cgEAAAAVZ2V0S2V5UHJvamVjdENhdGVnb3J5AAAAAQAAAARpdGVtAgAAABhDYXRlZ29yw61hIGRlbCBQcm95ZWN0bzoBAAAAF2dldFZhbHVlUHJvamVjdENhdGVnb3J5AAAAAQAAAARpdGVtCQEAAAALZ2V0U3RyQnlLZXkAAAABCQEAAAAVZ2V0S2V5UHJvamVjdENhdGVnb3J5AAAAAQUAAAAEaXRlbQEAAAASZ2V0S2V5SXRlbVN1cHBsaWVyAAAAAQAAAAhzdXBwbGllcgkAASwAAAACBQAAAAhzdXBwbGllcgIAAAAjQ29tdW5pZGFkIEFjaHVhciBLYXBhd2kgZGVsIEVjdWFkb3IBAAAAEWdldEtleVByb2plY3ROYW1lAAAAAQAAAARpdGVtAgAAABROb21icmUgZGVsIFByb3llY3RvOgEAAAATZ2V0VmFsdWVQcm9qZWN0TmFtZQAAAAEAAAAEaXRlbQkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAAEWdldEtleVByb2plY3ROYW1lAAAAAQUAAAAEaXRlbQEAAAAUZ2V0S2V5UHJvamVjdENvdW50cnkAAAABAAAABGl0ZW0CAAAAE1Bhw61zIHwgVWJpY2FjacOzbjoBAAAAFmdldFZhbHVlUHJvamVjdENvdW50cnkAAAABAAAABGl0ZW0JAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAABRnZXRLZXlQcm9qZWN0Q291bnRyeQAAAAEFAAAABGl0ZW0BAAAAEWdldEtleVByb2plY3RDb2RlAAAAAQAAAARpdGVtAgAAAAhDw7NkaWdvOgEAAAATZ2V0VmFsdWVQcm9qZWN0Q29kZQAAAAEAAAAEaXRlbQkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAAEWdldEtleVByb2plY3RDb2RlAAAAAQUAAAAEaXRlbQEAAAAXZ2V0S2V5UHJvamVjdFByb3BpZXRhcnkAAAABAAAABGl0ZW0CAAAAKFByb3BpZXRhcmlvIHwgQmVuZWZpY2lhcmlvIGRlbCBQcm95ZWN0bzoBAAAAGWdldFZhbHVlUHJvamVjdFByb3BpZXRhcnkAAAABAAAABGl0ZW0JAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAABdnZXRLZXlQcm9qZWN0UHJvcGlldGFyeQAAAAEFAAAABGl0ZW0BAAAAEGdldEtleVByb2plY3REZXYAAAABAAAACHN1cHBsaWVyAgAAACJEZXNhcnJvbGxhZG9yIHwgUmVzcG9uc2FibGUgTGVnYWw6AQAAABJnZXRWYWx1ZVByb2plY3REZXYAAAABAAAACHN1cHBsaWVyCQEAAAALZ2V0U3RyQnlLZXkAAAABCQEAAAAQZ2V0S2V5UHJvamVjdERldgAAAAEFAAAACHN1cHBsaWVyAQAAABNnZXRLZXlOb21Ub2tlblByaWNlAAAAAQAAAARpdGVtAgAAABpQcmVjaW8gTm9taW5hbCwgMSBCaXQtQ08yOgEAAAAYZ2V0S2V5RGVzY3VlbnRvNlRva1ByaWNlAAAAAQAAAARpdGVtAgAAACZQcmVjaW8gZGUgMSBCaXQtQ08yIGNvbiBkc2N0byBlbGVqaWRvOgEAAAAaZ2V0VmFsdWVEZXNjdWVudG82VG9rUHJpY2UAAAABAAAABGl0ZW0JAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABhnZXRLZXlEZXNjdWVudG82VG9rUHJpY2UAAAABBQAAAARpdGVtAQAAABJnZXRLZXlGaXJzdEZhc2VRdHkAAAABAAAABGl0ZW0CAAAALUNhbnRpZGFkIGRlIFRva2VucyBPZmVydGFkb3MgZW4gbGEgRjEgUHJlSUNPOgEAAAAUZ2V0VmFsdWVGaXJzdEZhc2VRdHkAAAABAAAABGl0ZW0JAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAABJnZXRLZXlGaXJzdEZhc2VRdHkAAAABBQAAAARpdGVtAQAAAB1nZXRLZXlTYWxkb1Rva2VuUXR5U3RhcnRFdGFwYQAAAAEAAAAEaXRlbQIAAAAiVG90YWwgZGUgVG9rZW5zIFJlYWxpemFkb3MsIFByZUlDTwEAAAAfZ2V0VmFsdWVTYWxkb1Rva2VuUXR5U3RhcnRFdGFwYQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAHWdldEtleVNhbGRvVG9rZW5RdHlTdGFydEV0YXBhAAAAAQUAAAAEaXRlbQEAAAAVZ2V0S2V5QmFsYW5jZVN1cHBsaWVyAAAAAQAAAAhzdXBwbGllcgIAAAA6Rm9uZG9zIHBhcmEgUHJveWVjdG9zIFZlcmRlcyBOYXR1cmFsZXMsIEFzb2NpYWRvcyBCaXQtQ08yOgEAAAAXZ2V0VmFsdWVCYWxhbmNlU3VwcGxpZXIAAAABAAAACHN1cHBsaWVyCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAVZ2V0S2V5QmFsYW5jZVN1cHBsaWVyAAAAAQUAAAAIc3VwcGxpZXIBAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtAgAAAApPcmRlcl/ihJY6AQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAVZ2V0S2V5VXNlckl0ZW1Db3VudGVyAAAAAgUAAAAEdXNlcgUAAAAEaXRlbQEAAAASZ2V0S2V5VXNlckRvY3VtZW50AAAAAQAAAARpdGVtAgAAADFEb2N1bWVudG8gTmFjaW9uYWwgZGUgSWRlbnRpZGFkLCBETkkgZGVsIFVzdWFyaW86AQAAABRnZXRWYWx1ZVVzZXJEb2N1bWVudAAAAAEAAAAEaXRlbQkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAAEmdldEtleVVzZXJEb2N1bWVudAAAAAEFAAAABGl0ZW0BAAAAEWdldEtleVVzZXJDb3VudHJ5AAAAAQAAAARpdGVtAgAAACBQYcOtcyBkZSBSZXNpZGVuY2lhIGRlbCBVc3VhcmlvOgEAAAATZ2V0VmFsdWVVc2VyQ291bnRyeQAAAAEAAAAEaXRlbQkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAAEWdldEtleVVzZXJDb3VudHJ5AAAAAQUAAAAEaXRlbQEAAAATZ2V0S2V5RGlzY291bnQ2VXNlcgAAAAEAAAAEaXRlbQIAAAAjUG9yY2VudGFqZSBkZSBkZXNjdWVudG8gZWxlamlkbywgJToBAAAAFWdldFZhbHVlRGlzY291bnQ2VXNlcgAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAE2dldEtleURpc2NvdW50NlVzZXIAAAABBQAAAARpdGVtAQAAABZnZXRLZXlJdGVtVXNlck9yZGVyUXR5AAAAAQAAAARpdGVtAgAAAB5DYW50aWRhZCBkZSB0b2tlbnMgYWRxdWlyaWRvczoBAAAAGGdldFZhbHVlSXRlbVVzZXJPcmRlclF0eQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAFmdldEtleUl0ZW1Vc2VyT3JkZXJRdHkAAAABBQAAAARpdGVtAAAAAQAAAAFpAQAAAA5wdXJjaGFzZUFzb2MxMQAAAAYAAAAEaXRlbQAAAAx1c2VyRG9jdW1lbnQAAAALdXNlckNvdW50cnkAAAAMdXNlckRpc2NvdW50AAAACG9yZGVyUXR5AAAAC3RvdGFsQW1vdW50BAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQIAAAAZU2UgcmVxdWllcmUgcGFnbyBhZGp1bnRvLgMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAABMVWQuIHNvbG8gcHVlZGUgYWRxdWlyaXIgYml0LWNvMiB1c2FuZG8gV2F2ZXNLZWVwZXIgeSBzdSB0b2tlbiBkZSBwYWdvIFdhdmVzLgQAAAAIc3VwcGxpZXIEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwkBAAAAEmdldEtleUl0ZW1TdXBwbGllcgAAAAEFAAAABGl0ZW0DCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQUAAAAETk9ORQQAAAAJcHJlSWNvUXR5BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAQAAAB1nZXRLZXlTYWxkb1Rva2VuUXR5U3RhcnRFdGFwYQAAAAEFAAAABGl0ZW0DCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAPYmFsYW5jZVN1cHBsaWVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAQAAABVnZXRLZXlCYWxhbmNlU3VwcGxpZXIAAAABBQAAAAhzdXBwbGllcgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAt1c2VyQWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzAwMDAwkBAAAAAiE9AAAAAgUAAAALdXNlckFkZHJlc3MFAAAAEkFkbU4wOEdUU2Fzb2MxMVc5MAkBAAAAAiE9AAAAAgUAAAALdXNlckFkZHJlc3MFAAAAFEFkbU4wOEVDR1RTYXNvYzExVzEwBwkBAAAAAiE9AAAAAgUAAAALdXNlckFkZHJlc3MFAAAADUFzb2NQcmVzdGVjMDEHCQEAAAACIT0AAAACBQAAAAt1c2VyQWRkcmVzcwUAAAANQXNvY1ByZXN0ZWMwMgcJAAACAAAAAQIAAABERGlzY3VscGUsIFN1IGN1ZW50YSBubyB0aWVuZSBkZXJlY2hvIGRlIEFzb2NpYWRvIEJpdC1DTzIgYSBQcm95ZWN0b3MEAAAAEWN1cnJlbnRUb2tlblByaWNlCQAAaQAAAAIJAABpAAAAAgkAAGgAAAACCQAAaAAAAAIJAABoAAAAAgkAAGUAAAACAAAAAAAAAABkBQAAAAx1c2VyRGlzY291bnQFAAAABWJjbzJlBQAAAAVldXJvdQUAAAADd3ZzAAAAAAAAAABkBQAAAAV1c2RudwQAAAAVZjFQak9mZXJ0YUFzb2NHVFM5WDEwCQAAZAAAAAIJAABpAAAAAgkAAGgAAAACAAAAAAAAAAAJBQAAAAxGaXJzdEZhc2VRdHkAAAAAAAAAAAoAAAAAAAAAAAEEAAAAHGYxUGpTdGFydEFkbUZvbmRzQXNvY0dUUzFYMTAJAABpAAAAAgkAAGgAAAACAAAAAAAAAAABBQAAAAxGaXJzdEZhc2VRdHkAAAAAAAAAAAoDCQAAZwAAAAIAAAAAAAAAAAAJAABlAAAAAgkAAGUAAAACBQAAAA1zdGFydFRvdGFsUXR5BQAAAAlwcmVJY29RdHkFAAAACG9yZGVyUXR5CQAAAgAAAAECAAAARExvIHNlbnRpbW9zLCBwb3IgYWhvcmEgbm8gaGF5IG9mZXJ0YSBkZSB0b2tlbnMgcGFyYSBzdSB0cmFuc2FjY2nDs24uAwkAAGYAAAACBQAAAAt0b3RhbEFtb3VudAgFAAAAA3BtdAAAAAZhbW91bnQJAAACAAAAAQIAAABLRWwgbW9udG8gZGVsIHBhZ28gbm8gcHVlZGUgc2VyIGluZmVyaW9yIGEgbGEgb3JkZW4gZGUgY29tcHJhIGRlbCBhcnTDrWN1bG8uAwkAAGYAAAACCAUAAAADcG10AAAABmFtb3VudAUAAAALdG90YWxBbW91bnQJAAACAAAAAQIAAABKRWwgbW9udG8gZGVsIHBhZ28gbm8gcHVlZGUgc2VyIG1heW9yIHF1ZSBsYSBvcmRlbiBkZSBjb21wcmEgZGVsIGFydMOtY3Vsby4JAAUUAAAAAgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAVZ2V0S2V5UHJvamVjdENhdGVnb3J5AAAAAQUAAAAEaXRlbQIAAAAWQ29uc2VydmFjacOzbiBGb3Jlc3RhbAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAARZ2V0S2V5UHJvamVjdE5hbWUAAAABBQAAAARpdGVtAgAAACBSZXNlcnZhIEFtYXrDs25pY2EgQWNodWFyLUthcGF3aQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAUZ2V0S2V5UHJvamVjdENvdW50cnkAAAABBQAAAARpdGVtAgAAAAdFY3VhZG9yCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABFnZXRLZXlQcm9qZWN0Q29kZQAAAAEFAAAABGl0ZW0CAAAAHE4wOEVDLTAxX0FDSC1LQVBBV0lfUFJFSUNPRjEJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAF2dldEtleVByb2plY3RQcm9waWV0YXJ5AAAAAQUAAAAEaXRlbQIAAAAXQ29tdW5pZGFkIEFjaHVhciBLYXBhd2kJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAEGdldEtleVByb2plY3REZXYAAAABBQAAAAhzdXBwbGllcgIAAAAqRnVuZGFjacOzbiBBbGlhbnphIEVjb2zDs2dpY2EgTkFTRUUgJ0ZBRU4nCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABNnZXRLZXlOb21Ub2tlblByaWNlAAAAAQUAAAAEaXRlbQIAAAALMTAuMDAgRXVyb3MJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAL3Rva2VucyBCaXQtQ08yIGVtaXRpZG9zIGVuIEYxL0YyIFByZUlDTywgdG90YWwgBQAAAA1zdGFydFRvdGFsUXR5CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAACp0b2tlbnMgQml0LUNPMiBlbiBvZmVydGEgRjEgUHJlSUNPLCB1bmlkcyAFAAAADEZpcnN0RmFzZVF0eQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAtdG9rZW5zIEJpdC1DTzIgZW4gb2ZlcnRhL0ludGVyY2FtYmlvLCA5MCUgRjEgBQAAABVmMVBqT2ZlcnRhQXNvY0dUUzlYMTAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAALnRva2VucyBCaXQtQ08yIGRlIEFwb3lvIEFkbWluLUluaWNpYWwsIDEwJSBGMSAFAAAAHGYxUGpTdGFydEFkbUZvbmRzQXNvY0dUUzFYMTAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAKnRva2VucyBCaXQtQ08yIGVuIG9mZXJ0YSBGMiBQcmVJQ08sIHVuaWRzIAUAAAANU2Vjb25kRmFzZVF0eQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAARpdGVtCQAAZAAAAAIJAQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAARpdGVtAAAAAAAAAAABCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABFnZXRLZXlVc2VyQ291bnRyeQAAAAEFAAAABGl0ZW0FAAAAC3VzZXJDb3VudHJ5CQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABJnZXRLZXlVc2VyRG9jdW1lbnQAAAABBQAAAARpdGVtBQAAAAx1c2VyRG9jdW1lbnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABNnZXRLZXlEaXNjb3VudDZVc2VyAAAAAQUAAAAEaXRlbQUAAAAMdXNlckRpc2NvdW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAYZ2V0S2V5RGVzY3VlbnRvNlRva1ByaWNlAAAAAQUAAAAEaXRlbQUAAAARY3VycmVudFRva2VuUHJpY2UJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAcRXN0YWRvIGRlIHN1IHBlZGlkbywgdG9rZW5zIAIAAAAawqFBZHF1aXNpY2nDs24gQ29uZmlybWFkYSEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABZnZXRLZXlJdGVtVXNlck9yZGVyUXR5AAAAAQUAAAAEaXRlbQUAAAAIb3JkZXJRdHkJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAIVN1bWEgdHJhbnNtaXRpZGEgYSBsYSBQcmVJQ08sIHd2cwUAAAALdG90YWxBbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAB1nZXRLZXlTYWxkb1Rva2VuUXR5U3RhcnRFdGFwYQAAAAEFAAAABGl0ZW0JAABkAAAAAgkBAAAAH2dldFZhbHVlU2FsZG9Ub2tlblF0eVN0YXJ0RXRhcGEAAAABBQAAAARpdGVtBQAAAAhvcmRlclF0eQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAlU2FsZG8gZGUgQml0LUNPMiBlbiBvZmVydGEgRjEgUHJlSUNPIAkAAGUAAAACCQAAZQAAAAIFAAAADEZpcnN0RmFzZVF0eQkBAAAAH2dldFZhbHVlU2FsZG9Ub2tlblF0eVN0YXJ0RXRhcGEAAAABBQAAAARpdGVtBQAAAAhvcmRlclF0eQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAkU2FsZG8gVG90YWwgZGUgQml0LUNPMiBlbiBGMSBQcmVJQ08gCQAAZQAAAAIJAABlAAAAAgUAAAANc3RhcnRUb3RhbFF0eQkBAAAAH2dldFZhbHVlU2FsZG9Ub2tlblF0eVN0YXJ0RXRhcGEAAAABBQAAAARpdGVtBQAAAAhvcmRlclF0eQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAkU2FsZG8gVG90YWwgZGUgQml0LUNPMiBlbiBGMiBQcmVJQ08gBQAAAA1TZWNvbmRGYXNlUXR5CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAVZ2V0S2V5QmFsYW5jZVN1cHBsaWVyAAAAAQUAAAAIc3VwcGxpZXIJAABkAAAAAgkBAAAAF2dldFZhbHVlQmFsYW5jZVN1cHBsaWVyAAAAAQUAAAAIc3VwcGxpZXIIBQAAAANwbXQAAAAGYW1vdW50CQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEFAAAAC3VzZXJBZGRyZXNzCQAAaAAAAAIAAAAAAAAAJxAFAAAACG9yZGVyUXR5BQAAAAZCaXRDTzIJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAASYWRtTjA4R1RTYXNvYzExVzkwCQAAaQAAAAIJAABoAAAAAgAAAAAAAAAAWggFAAAAA3BtdAAAAAZhbW91bnQAAAAAAAAAAGQFAAAABHVuaXQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAUYWRtTjA4RUNHVFNhc29jMTFXMTAJAABpAAAAAgkAAGgAAAACAAAAAAAAAAAKCAUAAAADcG10AAAABmFtb3VudAAAAAAAAAAAZAUAAAAEdW5pdAUAAAADbmlsBQAAAAR1bml0AAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAQAAAAHJG1hdGNoMAUAAAACdHgDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAFFNldFNjcmlwdFRyYW5zYWN0aW9uBAAAAAF0BQAAAAckbWF0Y2gwCQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAkAAlkAAAABAgAAACxGbmc2djRrcW0xUDZoNnhGOWhDdnVtY0VLYmpBS2dwb2l3YVlhN1ZFa0RvVQdVbC+G", "height": 2174325, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 4smYaAbGNzFukkDQbnUViV5thP8D6E9EbKgdLtxJKAUu Next: B17Eqcv8JMFhnYcBHsNAQDR6yqWfkWARKNa1f9WjFrf3 Diff:
OldNewDifferences
1-{-# STDLIB_VERSION 3 #-}
1+{-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let BitCO2 = base58'EGY7HCyeHiHiCiiYpqH1Dmd5E6nzbwrgsdX3FHx5kFWw'
1515
1616 let eurou = 101
1717
18-let usdnw = 478
18+let usdnw = 577
1919
2020 let bco2e = 10
2121
22-let OwnerPubKey = base58'Fng6v4kqm1P6h6xF9hCvumcEKbjAKgpoiwaYa7VEkDoU'
22+let admN08GTSasoc11W90 = Address(base58'3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3')
2323
24-let admN08AmazPjGTSasoc11W = Address(base58'3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3')
24+let admN08ECGTSasoc11W10 = Address(base58'3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr')
2525
26-let admN08ECpjAmazB10 = Address(base58'3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr')
26+let AdmN08GTSasoc11W90 = "3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3"
2727
28-let AdmN08PjGTSasoc11W = "3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3"
29-
30-let AdmN08ECpjAmazB10 = "3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr"
28+let AdmN08ECGTSasoc11W10 = "3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr"
3129
3230 let AsocPrestec01 = "3N86D2E7pSFD7fJBB1qkcGM8SoR6rZpFw9o"
3331
152150
153151
154152 @Callable(i)
155-func purchase (item,userDocument,userCountry,userDiscount,orderQty,totalAmount) = {
156- let pmt = extract(i.payment)
153+func purchaseAsoc11 (item,userDocument,userCountry,userDiscount,orderQty,totalAmount) = {
154+ let pmt = if ((size(i.payments) == 1))
155+ then i.payments[0]
156+ else throw("Se requiere pago adjunto.")
157157 if (isDefined(pmt.assetId))
158- then throw("Ud. puede adquirir tokens BitCO2 usando WavesKeeper y su token de pago Waves.")
158+ then throw("Ud. solo puede adquirir bit-co2 usando WavesKeeper y su token de pago Waves.")
159159 else {
160160 let supplier = match getString(this, getKeyItemSupplier(item)) {
161161 case a: String =>
176176 0
177177 }
178178 let userAddress = toBase58String(i.caller.bytes)
179- if (if (if (if ((userAddress != AdmN08PjGTSasoc11W))
180- then (userAddress != AdmN08ECpjAmazB10)
179+ if (if (if (if ((userAddress != AdmN08GTSasoc11W90))
180+ then (userAddress != AdmN08ECGTSasoc11W10)
181181 else false)
182182 then (userAddress != AsocPrestec01)
183183 else false)
186186 then throw("Disculpe, Su cuenta no tiene derecho de Asociado Bit-CO2 a Proyectos")
187187 else {
188188 let currentTokenPrice = ((((((100 - userDiscount) * bco2e) * eurou) * wvs) / 100) / usdnw)
189- let f1PjDirecAsocB9X10 = (((9 * FirstFaseQty) / 10) + 1)
190- let f1PjStartAdmFondsB1X10 = ((1 * FirstFaseQty) / 10)
191- let pjStartAdmB8 = ((8 * f1PjStartAdmFondsB1X10) / 10)
192- let pjStartSysB2 = (((2 * f1PjStartAdmFondsB1X10) / 10) + 1)
189+ let f1PjOfertaAsocGTS9X10 = (((9 * FirstFaseQty) / 10) + 1)
190+ let f1PjStartAdmFondsAsocGTS1X10 = ((1 * FirstFaseQty) / 10)
193191 if ((0 >= ((startTotalQty - preIcoQty) - orderQty)))
194- then throw("Lo sentimos, por ahora no hay oferta de tokens para su transacción")
192+ then throw("Lo sentimos, por ahora no hay oferta de tokens para su transacción.")
195193 else if ((totalAmount > pmt.amount))
196- then throw("Payment Amount can't be less than item Purchase Order")
194+ then throw("El monto del pago no puede ser inferior a la orden de compra del artículo.")
197195 else if ((pmt.amount > totalAmount))
198- then throw("Payment Amount can't be higher than item Purchase Order")
199- else ScriptResult(WriteSet([DataEntry(getKeyProjectCategory(item), "Conservación Forestal"), DataEntry(getKeyProjectName(item), "Reserva Amazónica Achuar-Kapawi"), DataEntry(getKeyProjectCountry(item), "Ecuador"), DataEntry(getKeyProjectCode(item), "N08EC-01_ACH-KAPAWI_PREICOF1"), DataEntry(getKeyProjectPropietary(item), "Comunidad Achuar Kapawi"), DataEntry(getKeyProjectDev(supplier), "Fundación Alianza Ecológica NASEE 'FAEN'"), DataEntry(getKeyNomTokenPrice(item), "10.00 Euros"), DataEntry("Bit-CO2 emitidos en F1/F2 PreICO, total", startTotalQty), DataEntry("Bit-CO2 en oferta para la F1 PreICO, total", FirstFaseQty), DataEntry("Bit-CO2 en oferta para Asociados, 90% F1", f1PjDirecAsocB9X10), DataEntry("Bit-CO2 para Apoyo Administrativo, 10% F1 ", f1PjStartAdmFondsB1X10), DataEntry("Cta. de Apoyo-Admin del Proyecto, blockchain", "3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr"), DataEntry("Apoyo para el Desarrollador-Proyecto, tokens", pjStartAdmB8), DataEntry("Apoyo para el IT System del Proyecto, tokens", pjStartSysB2), DataEntry("Oferta de tokens utilizada", "Programa-Asoc11 | Programa-GTS | Otros"), DataEntry("Descuento máximo ofrecido", " Según Programa"), DataEntry(getKeyUserItemCounter(userAddress, item), (getValueUserItemCounter(userAddress, item) + 1)), DataEntry(getKeyUserDocument(item), userDocument), DataEntry(getKeyUserCountry(item), userCountry), DataEntry(getKeyDiscount6User(item), userDiscount), DataEntry(getKeyDescuento6TokPrice(item), currentTokenPrice), DataEntry("Estado de su pedido, tokens", "¡Adquisición Confirmada!"), DataEntry(getKeyItemUserOrderQty(item), orderQty), DataEntry("Suma transmitida a la PreICO, wvs:", totalAmount), DataEntry(getKeySaldoTokenQtyStartEtapa(item), (getValueSaldoTokenQtyStartEtapa(item) + orderQty)), DataEntry("Saldo de Tokens Bit-CO2 en oferta, F1 PreICO:", ((FirstFaseQty - getValueSaldoTokenQtyStartEtapa(item)) - orderQty)), DataEntry("Saldo de Tokens Bit-CO2, PreICO Achuar-Kapawi:", ((startTotalQty - getValueSaldoTokenQtyStartEtapa(item)) - orderQty)), DataEntry(getKeyBalanceSupplier(supplier), (getValueBalanceSupplier(supplier) + pmt.amount)), DataEntry("Cta. Admin-GTS para Progr-Asoc11, blockchain:", "3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3")]), TransferSet([ScriptTransfer(addressFromStringValue(userAddress), (10000 * orderQty), BitCO2), ScriptTransfer(admN08AmazPjGTSasoc11W, ((95 * pmt.amount) / 100), unit)]))
196+ then throw("El monto del pago no puede ser mayor que la orden de compra del artículo.")
197+ else $Tuple2([StringEntry(getKeyProjectCategory(item), "Conservación Forestal"), StringEntry(getKeyProjectName(item), "Reserva Amazónica Achuar-Kapawi"), StringEntry(getKeyProjectCountry(item), "Ecuador"), StringEntry(getKeyProjectCode(item), "N08EC-01_ACH-KAPAWI_PREICOF1"), StringEntry(getKeyProjectPropietary(item), "Comunidad Achuar Kapawi"), StringEntry(getKeyProjectDev(supplier), "Fundación Alianza Ecológica NASEE 'FAEN'"), StringEntry(getKeyNomTokenPrice(item), "10.00 Euros"), IntegerEntry("tokens Bit-CO2 emitidos en F1/F2 PreICO, total ", startTotalQty), IntegerEntry("tokens Bit-CO2 en oferta F1 PreICO, unids ", FirstFaseQty), IntegerEntry("tokens Bit-CO2 en oferta/Intercambio, 90% F1 ", f1PjOfertaAsocGTS9X10), IntegerEntry("tokens Bit-CO2 de Apoyo Admin-Inicial, 10% F1 ", f1PjStartAdmFondsAsocGTS1X10), IntegerEntry("tokens Bit-CO2 en oferta F2 PreICO, unids ", SecondFaseQty), IntegerEntry(getKeyUserItemCounter(userAddress, item), (getValueUserItemCounter(userAddress, item) + 1)), StringEntry(getKeyUserCountry(item), userCountry), StringEntry(getKeyUserDocument(item), userDocument), IntegerEntry(getKeyDiscount6User(item), userDiscount), IntegerEntry(getKeyDescuento6TokPrice(item), currentTokenPrice), StringEntry("Estado de su pedido, tokens ", "¡Adquisición Confirmada!"), IntegerEntry(getKeyItemUserOrderQty(item), orderQty), IntegerEntry("Suma transmitida a la PreICO, wvs", totalAmount), IntegerEntry(getKeySaldoTokenQtyStartEtapa(item), (getValueSaldoTokenQtyStartEtapa(item) + orderQty)), IntegerEntry("Saldo de Bit-CO2 en oferta F1 PreICO ", ((FirstFaseQty - getValueSaldoTokenQtyStartEtapa(item)) - orderQty)), IntegerEntry("Saldo Total de Bit-CO2 en F1 PreICO ", ((startTotalQty - getValueSaldoTokenQtyStartEtapa(item)) - orderQty)), IntegerEntry("Saldo Total de Bit-CO2 en F2 PreICO ", SecondFaseQty), IntegerEntry(getKeyBalanceSupplier(supplier), (getValueBalanceSupplier(supplier) + pmt.amount)), ScriptTransfer(addressFromStringValue(userAddress), (10000 * orderQty), BitCO2), ScriptTransfer(admN08GTSasoc11W90, ((90 * pmt.amount) / 100), unit), ScriptTransfer(admN08ECGTSasoc11W10, ((10 * pmt.amount) / 100), unit)], unit)
200198 }
201199 }
202200 }
205203 @Verifier(tx)
206204 func verify () = match tx {
207205 case t: SetScriptTransaction =>
208- sigVerify(tx.bodyBytes, tx.proofs[0], OwnerPubKey)
209- case d: DataTransaction =>
210- true
211- case tx: TransferTransaction =>
212- true
206+ sigVerify(tx.bodyBytes, tx.proofs[0], fromBase58String("Fng6v4kqm1P6h6xF9hCvumcEKbjAKgpoiwaYa7VEkDoU"))
213207 case _ =>
214208 false
215209 }
Full:
OldNewDifferences
1-{-# STDLIB_VERSION 3 #-}
1+{-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let BitCO2 = base58'EGY7HCyeHiHiCiiYpqH1Dmd5E6nzbwrgsdX3FHx5kFWw'
55
66 let startTotalQty = 305693
77
88 let FirstFaseQty = 31193
99
1010 let SecondFaseQty = 274500
1111
1212 let wvs = 100000000
1313
1414 let NONE = "none"
1515
1616 let eurou = 101
1717
18-let usdnw = 478
18+let usdnw = 577
1919
2020 let bco2e = 10
2121
22-let OwnerPubKey = base58'Fng6v4kqm1P6h6xF9hCvumcEKbjAKgpoiwaYa7VEkDoU'
22+let admN08GTSasoc11W90 = Address(base58'3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3')
2323
24-let admN08AmazPjGTSasoc11W = Address(base58'3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3')
24+let admN08ECGTSasoc11W10 = Address(base58'3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr')
2525
26-let admN08ECpjAmazB10 = Address(base58'3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr')
26+let AdmN08GTSasoc11W90 = "3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3"
2727
28-let AdmN08PjGTSasoc11W = "3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3"
29-
30-let AdmN08ECpjAmazB10 = "3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr"
28+let AdmN08ECGTSasoc11W10 = "3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr"
3129
3230 let AsocPrestec01 = "3N86D2E7pSFD7fJBB1qkcGM8SoR6rZpFw9o"
3331
3432 let AsocPrestec02 = "3N2jHtgSVCtW6jddmQuerN7NSnXjR3KcEfg"
3533
3634 func getNumberByKey (key) = {
3735 let num = match getInteger(this, key) {
3836 case a: Int =>
3937 a
4038 case _ =>
4139 0
4240 }
4341 num
4442 }
4543
4644
4745 func getStrByKey (key) = {
4846 let str = match getString(this, key) {
4947 case a: String =>
5048 a
5149 case _ =>
5250 NONE
5351 }
5452 str
5553 }
5654
5755
5856 func getKeyProjectCategory (item) = "Categoría del Proyecto:"
5957
6058
6159 func getValueProjectCategory (item) = getStrByKey(getKeyProjectCategory(item))
6260
6361
6462 func getKeyItemSupplier (supplier) = (supplier + "Comunidad Achuar Kapawi del Ecuador")
6563
6664
6765 func getKeyProjectName (item) = "Nombre del Proyecto:"
6866
6967
7068 func getValueProjectName (item) = getStrByKey(getKeyProjectName(item))
7169
7270
7371 func getKeyProjectCountry (item) = "País | Ubicación:"
7472
7573
7674 func getValueProjectCountry (item) = getStrByKey(getKeyProjectCountry(item))
7775
7876
7977 func getKeyProjectCode (item) = "Código:"
8078
8179
8280 func getValueProjectCode (item) = getStrByKey(getKeyProjectCode(item))
8381
8482
8583 func getKeyProjectPropietary (item) = "Propietario | Beneficiario del Proyecto:"
8684
8785
8886 func getValueProjectPropietary (item) = getStrByKey(getKeyProjectPropietary(item))
8987
9088
9189 func getKeyProjectDev (supplier) = "Desarrollador | Responsable Legal:"
9290
9391
9492 func getValueProjectDev (supplier) = getStrByKey(getKeyProjectDev(supplier))
9593
9694
9795 func getKeyNomTokenPrice (item) = "Precio Nominal, 1 Bit-CO2:"
9896
9997
10098 func getKeyDescuento6TokPrice (item) = "Precio de 1 Bit-CO2 con dscto elejido:"
10199
102100
103101 func getValueDescuento6TokPrice (item) = getNumberByKey(getKeyDescuento6TokPrice(item))
104102
105103
106104 func getKeyFirstFaseQty (item) = "Cantidad de Tokens Ofertados en la F1 PreICO:"
107105
108106
109107 func getValueFirstFaseQty (item) = getStrByKey(getKeyFirstFaseQty(item))
110108
111109
112110 func getKeySaldoTokenQtyStartEtapa (item) = "Total de Tokens Realizados, PreICO"
113111
114112
115113 func getValueSaldoTokenQtyStartEtapa (item) = getNumberByKey(getKeySaldoTokenQtyStartEtapa(item))
116114
117115
118116 func getKeyBalanceSupplier (supplier) = "Fondos para Proyectos Verdes Naturales, Asociados Bit-CO2:"
119117
120118
121119 func getValueBalanceSupplier (supplier) = getNumberByKey(getKeyBalanceSupplier(supplier))
122120
123121
124122 func getKeyUserItemCounter (user,item) = "Order_№:"
125123
126124
127125 func getValueUserItemCounter (user,item) = getNumberByKey(getKeyUserItemCounter(user, item))
128126
129127
130128 func getKeyUserDocument (item) = "Documento Nacional de Identidad, DNI del Usuario:"
131129
132130
133131 func getValueUserDocument (item) = getStrByKey(getKeyUserDocument(item))
134132
135133
136134 func getKeyUserCountry (item) = "País de Residencia del Usuario:"
137135
138136
139137 func getValueUserCountry (item) = getStrByKey(getKeyUserCountry(item))
140138
141139
142140 func getKeyDiscount6User (item) = "Porcentaje de descuento elejido, %:"
143141
144142
145143 func getValueDiscount6User (item) = getNumberByKey(getKeyDiscount6User(item))
146144
147145
148146 func getKeyItemUserOrderQty (item) = "Cantidad de tokens adquiridos:"
149147
150148
151149 func getValueItemUserOrderQty (item) = getNumberByKey(getKeyItemUserOrderQty(item))
152150
153151
154152 @Callable(i)
155-func purchase (item,userDocument,userCountry,userDiscount,orderQty,totalAmount) = {
156- let pmt = extract(i.payment)
153+func purchaseAsoc11 (item,userDocument,userCountry,userDiscount,orderQty,totalAmount) = {
154+ let pmt = if ((size(i.payments) == 1))
155+ then i.payments[0]
156+ else throw("Se requiere pago adjunto.")
157157 if (isDefined(pmt.assetId))
158- then throw("Ud. puede adquirir tokens BitCO2 usando WavesKeeper y su token de pago Waves.")
158+ then throw("Ud. solo puede adquirir bit-co2 usando WavesKeeper y su token de pago Waves.")
159159 else {
160160 let supplier = match getString(this, getKeyItemSupplier(item)) {
161161 case a: String =>
162162 a
163163 case _ =>
164164 NONE
165165 }
166166 let preIcoQty = match getInteger(this, getKeySaldoTokenQtyStartEtapa(item)) {
167167 case a: Int =>
168168 a
169169 case _ =>
170170 0
171171 }
172172 let balanceSupplier = match getInteger(this, getKeyBalanceSupplier(supplier)) {
173173 case a: Int =>
174174 a
175175 case _ =>
176176 0
177177 }
178178 let userAddress = toBase58String(i.caller.bytes)
179- if (if (if (if ((userAddress != AdmN08PjGTSasoc11W))
180- then (userAddress != AdmN08ECpjAmazB10)
179+ if (if (if (if ((userAddress != AdmN08GTSasoc11W90))
180+ then (userAddress != AdmN08ECGTSasoc11W10)
181181 else false)
182182 then (userAddress != AsocPrestec01)
183183 else false)
184184 then (userAddress != AsocPrestec02)
185185 else false)
186186 then throw("Disculpe, Su cuenta no tiene derecho de Asociado Bit-CO2 a Proyectos")
187187 else {
188188 let currentTokenPrice = ((((((100 - userDiscount) * bco2e) * eurou) * wvs) / 100) / usdnw)
189- let f1PjDirecAsocB9X10 = (((9 * FirstFaseQty) / 10) + 1)
190- let f1PjStartAdmFondsB1X10 = ((1 * FirstFaseQty) / 10)
191- let pjStartAdmB8 = ((8 * f1PjStartAdmFondsB1X10) / 10)
192- let pjStartSysB2 = (((2 * f1PjStartAdmFondsB1X10) / 10) + 1)
189+ let f1PjOfertaAsocGTS9X10 = (((9 * FirstFaseQty) / 10) + 1)
190+ let f1PjStartAdmFondsAsocGTS1X10 = ((1 * FirstFaseQty) / 10)
193191 if ((0 >= ((startTotalQty - preIcoQty) - orderQty)))
194- then throw("Lo sentimos, por ahora no hay oferta de tokens para su transacción")
192+ then throw("Lo sentimos, por ahora no hay oferta de tokens para su transacción.")
195193 else if ((totalAmount > pmt.amount))
196- then throw("Payment Amount can't be less than item Purchase Order")
194+ then throw("El monto del pago no puede ser inferior a la orden de compra del artículo.")
197195 else if ((pmt.amount > totalAmount))
198- then throw("Payment Amount can't be higher than item Purchase Order")
199- else ScriptResult(WriteSet([DataEntry(getKeyProjectCategory(item), "Conservación Forestal"), DataEntry(getKeyProjectName(item), "Reserva Amazónica Achuar-Kapawi"), DataEntry(getKeyProjectCountry(item), "Ecuador"), DataEntry(getKeyProjectCode(item), "N08EC-01_ACH-KAPAWI_PREICOF1"), DataEntry(getKeyProjectPropietary(item), "Comunidad Achuar Kapawi"), DataEntry(getKeyProjectDev(supplier), "Fundación Alianza Ecológica NASEE 'FAEN'"), DataEntry(getKeyNomTokenPrice(item), "10.00 Euros"), DataEntry("Bit-CO2 emitidos en F1/F2 PreICO, total", startTotalQty), DataEntry("Bit-CO2 en oferta para la F1 PreICO, total", FirstFaseQty), DataEntry("Bit-CO2 en oferta para Asociados, 90% F1", f1PjDirecAsocB9X10), DataEntry("Bit-CO2 para Apoyo Administrativo, 10% F1 ", f1PjStartAdmFondsB1X10), DataEntry("Cta. de Apoyo-Admin del Proyecto, blockchain", "3Mtu59QLfHkJBqRRCuRL9K8KmErR1JQegcr"), DataEntry("Apoyo para el Desarrollador-Proyecto, tokens", pjStartAdmB8), DataEntry("Apoyo para el IT System del Proyecto, tokens", pjStartSysB2), DataEntry("Oferta de tokens utilizada", "Programa-Asoc11 | Programa-GTS | Otros"), DataEntry("Descuento máximo ofrecido", " Según Programa"), DataEntry(getKeyUserItemCounter(userAddress, item), (getValueUserItemCounter(userAddress, item) + 1)), DataEntry(getKeyUserDocument(item), userDocument), DataEntry(getKeyUserCountry(item), userCountry), DataEntry(getKeyDiscount6User(item), userDiscount), DataEntry(getKeyDescuento6TokPrice(item), currentTokenPrice), DataEntry("Estado de su pedido, tokens", "¡Adquisición Confirmada!"), DataEntry(getKeyItemUserOrderQty(item), orderQty), DataEntry("Suma transmitida a la PreICO, wvs:", totalAmount), DataEntry(getKeySaldoTokenQtyStartEtapa(item), (getValueSaldoTokenQtyStartEtapa(item) + orderQty)), DataEntry("Saldo de Tokens Bit-CO2 en oferta, F1 PreICO:", ((FirstFaseQty - getValueSaldoTokenQtyStartEtapa(item)) - orderQty)), DataEntry("Saldo de Tokens Bit-CO2, PreICO Achuar-Kapawi:", ((startTotalQty - getValueSaldoTokenQtyStartEtapa(item)) - orderQty)), DataEntry(getKeyBalanceSupplier(supplier), (getValueBalanceSupplier(supplier) + pmt.amount)), DataEntry("Cta. Admin-GTS para Progr-Asoc11, blockchain:", "3NCiviLbsD1mM2RgQVDFoaEMYy15QbrHwB3")]), TransferSet([ScriptTransfer(addressFromStringValue(userAddress), (10000 * orderQty), BitCO2), ScriptTransfer(admN08AmazPjGTSasoc11W, ((95 * pmt.amount) / 100), unit)]))
196+ then throw("El monto del pago no puede ser mayor que la orden de compra del artículo.")
197+ else $Tuple2([StringEntry(getKeyProjectCategory(item), "Conservación Forestal"), StringEntry(getKeyProjectName(item), "Reserva Amazónica Achuar-Kapawi"), StringEntry(getKeyProjectCountry(item), "Ecuador"), StringEntry(getKeyProjectCode(item), "N08EC-01_ACH-KAPAWI_PREICOF1"), StringEntry(getKeyProjectPropietary(item), "Comunidad Achuar Kapawi"), StringEntry(getKeyProjectDev(supplier), "Fundación Alianza Ecológica NASEE 'FAEN'"), StringEntry(getKeyNomTokenPrice(item), "10.00 Euros"), IntegerEntry("tokens Bit-CO2 emitidos en F1/F2 PreICO, total ", startTotalQty), IntegerEntry("tokens Bit-CO2 en oferta F1 PreICO, unids ", FirstFaseQty), IntegerEntry("tokens Bit-CO2 en oferta/Intercambio, 90% F1 ", f1PjOfertaAsocGTS9X10), IntegerEntry("tokens Bit-CO2 de Apoyo Admin-Inicial, 10% F1 ", f1PjStartAdmFondsAsocGTS1X10), IntegerEntry("tokens Bit-CO2 en oferta F2 PreICO, unids ", SecondFaseQty), IntegerEntry(getKeyUserItemCounter(userAddress, item), (getValueUserItemCounter(userAddress, item) + 1)), StringEntry(getKeyUserCountry(item), userCountry), StringEntry(getKeyUserDocument(item), userDocument), IntegerEntry(getKeyDiscount6User(item), userDiscount), IntegerEntry(getKeyDescuento6TokPrice(item), currentTokenPrice), StringEntry("Estado de su pedido, tokens ", "¡Adquisición Confirmada!"), IntegerEntry(getKeyItemUserOrderQty(item), orderQty), IntegerEntry("Suma transmitida a la PreICO, wvs", totalAmount), IntegerEntry(getKeySaldoTokenQtyStartEtapa(item), (getValueSaldoTokenQtyStartEtapa(item) + orderQty)), IntegerEntry("Saldo de Bit-CO2 en oferta F1 PreICO ", ((FirstFaseQty - getValueSaldoTokenQtyStartEtapa(item)) - orderQty)), IntegerEntry("Saldo Total de Bit-CO2 en F1 PreICO ", ((startTotalQty - getValueSaldoTokenQtyStartEtapa(item)) - orderQty)), IntegerEntry("Saldo Total de Bit-CO2 en F2 PreICO ", SecondFaseQty), IntegerEntry(getKeyBalanceSupplier(supplier), (getValueBalanceSupplier(supplier) + pmt.amount)), ScriptTransfer(addressFromStringValue(userAddress), (10000 * orderQty), BitCO2), ScriptTransfer(admN08GTSasoc11W90, ((90 * pmt.amount) / 100), unit), ScriptTransfer(admN08ECGTSasoc11W10, ((10 * pmt.amount) / 100), unit)], unit)
200198 }
201199 }
202200 }
203201
204202
205203 @Verifier(tx)
206204 func verify () = match tx {
207205 case t: SetScriptTransaction =>
208- sigVerify(tx.bodyBytes, tx.proofs[0], OwnerPubKey)
209- case d: DataTransaction =>
210- true
211- case tx: TransferTransaction =>
212- true
206+ sigVerify(tx.bodyBytes, tx.proofs[0], fromBase58String("Fng6v4kqm1P6h6xF9hCvumcEKbjAKgpoiwaYa7VEkDoU"))
213207 case _ =>
214208 false
215209 }
216210

github/deemru/w8io/873ac7e 
89.53 ms