tx · 8yJhF9Enckqu4ie7wDNFyPLp5hNeLknkLhRAhgtwQVCJ

3PCxF4JryswYYp9mpUtE725wjTgvpBmp3M9:  -0.01200000 Waves

2024.01.10 13:33 [3991109] smart account 3PCxF4JryswYYp9mpUtE725wjTgvpBmp3M9 > SELF 0.00000000 Waves

{ "type": 13, "id": "8yJhF9Enckqu4ie7wDNFyPLp5hNeLknkLhRAhgtwQVCJ", "fee": 1200000, "feeAssetId": null, "timestamp": 1704882844733, "version": 2, "chainId": 87, "sender": "3PCxF4JryswYYp9mpUtE725wjTgvpBmp3M9", "senderPublicKey": "ABaPDrNzForWeg3KKG9KFKPWxuihEJxK9fjZ9nDfvE26", "proofs": [ "3n6RfGUh8VUzGPan2yMxMizPJ94tBRMsE2sbdH8jJ68CtyS7zTpg7YFqvVRHLbygeoTzf82r2KYtnw2LTfDVbrA8" ], "script": "base64:BgIgCAISABIAEgMKAQgSABIDCgEIEgASAwoBCBIAEgMKAQgVAQ10cnlHZXRJbnRlZ2VyAgdhZGRyZXNzA2tleQQHJG1hdGNoMAkAmggCBQdhZGRyZXNzBQNrZXkDCQABAgUHJG1hdGNoMAIDSW50BAFiBQckbWF0Y2gwBQFiAAABDHRyeUdldFN0cmluZwIHYWRkcmVzcwNrZXkEByRtYXRjaDAJAJ0IAgUHYWRkcmVzcwUDa2V5AwkAAQIFByRtYXRjaDACBlN0cmluZwQBYgUHJG1hdGNoMAUBYgIAAAJkOACAwtcvAAdwb29sQkJCARoBV1Luk1YUTX4HjNKFD+Z+XFc3fhyf7zyCHQAGQkJCc3RyCQDYBAEFB3Bvb2xCQkIADXB1enpsZVN0YWtpbmcJAQdBZGRyZXNzAQEaAVeUaIz57qK5qp/W9Y68qY9nGpwG9BYpibsAB2J1cm54dG4BICRPdXlqfjM5uPsM/4SpcVxeyi3eM6DEXWn56kQR7ExUAAV3YXZlcwEEE6vZMwAJd2hpcmxwb29sASBZ443cwrUjukoU3MTQrxQJ5mTmBL4lBgsmTuVQbZdZxwAGcHV6emxlASDxGv4l/vaZOPRpKsTf4RLWR7LGyg66Nwmvd20fjqLlYwAEcm9tZQEgi1+UAYTDZcEkNI7/G/xwkTFIaskx6qjLk/P5nzRECM8AFmtleUFkZHJlc3Nlc1JlZ2lzdGVyZWQCFEFkZHJlc3NlcyByZWdpc3RlcmVkAAlhZGRyZXNzZXMJALMCAgkBDHRyeUdldFN0cmluZwIFBHRoaXMFFmtleUFkZHJlc3Nlc1JlZ2lzdGVyZWQAAQAQa2V5QnVybnh0bkFtb3VudAIWQlVSTi1YVE4gdG90YWwgcmV3YXJkcwANa2V5Um9tZUFtb3VudAISUk9NRSB0b3RhbCByZXdhcmRzAA9rZXlQdXp6bGVBbW91bnQCFFBVWlpMRSB0b3RhbCByZXdhcmRzAA5rZXlXYXZlc0Ftb3VudAITV0FWRVMgdG90YWwgcmV3YXJkcwASa2V5V2hpcmxwb29sQW1vdW50AhdXSElSTFBPT0wgdG90YWwgcmV3YXJkcwAQa2V5VG90YWxORlRwb3dlcgIPVG90YWwgTkZUIHBvd2VyAAdXRlNsaXN0CQDMCAICLEducHk1blZhalBQM1hRUVZ4ckhib01Bc1h0am55V0F4eWJNRGRLcmJyOHNECQDMCAICLEJUOVE0bVFkUVFtZWkycjVZTk1CTWFzWkJRajdteU5haXo2UUhiYTVjUFhTCQDMCAICLEJNdmt5RnRQVm1GYXRwRlI5UVZGS1I1TVlUY1pWVFkyVlV3RloyNXZyQUFjBQNuaWwAB0JCQmxpc3QJAMwIAgIsQ3VCWWhqRmE4alZIalJ4VEpaa1RTSEVVRDhKMlZOYmNkSlhwMzlINHpCTlQFA25pbAkBaQERY2xhaW1JbnZlc3RQdXp6bGUAAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIcYWNjZXNzIG9ubHkgYnkgcHJvamVjdCBvd25lcgQTcHV6emxlQmFsYW5jZUJlZm9yZQkA8AcCBQR0aGlzBQZwdXp6bGUDCQAAAgUTcHV6emxlQmFsYW5jZUJlZm9yZQUTcHV6emxlQmFsYW5jZUJlZm9yZQQRcm9tZUJhbGFuY2VCZWZvcmUJAPAHAgUEdGhpcwUEcm9tZQMJAAACBRFyb21lQmFsYW5jZUJlZm9yZQURcm9tZUJhbGFuY2VCZWZvcmUEEmNsYWltUHV6emxlU3Rha2luZwkA/AcEBQ1wdXp6bGVTdGFraW5nAgtjbGFpbVJld2FyZAUDbmlsBQNuaWwDCQAAAgUSY2xhaW1QdXp6bGVTdGFraW5nBRJjbGFpbVB1enpsZVN0YWtpbmcED3Bvb2xPbmVUb2tlbkludgkA/AcECQEHQWRkcmVzcwEBGgFX/SXDvU5hlEHvul4SY4/FOW9JtYg69eltAiFnZW5lcmF0ZUluZGV4V2l0aE9uZVRva2VuQW5kU3Rha2UJAMwIAgUGQkJCc3RyBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBnB1enpsZQkA8AcCBQR0aGlzBQZwdXp6bGUFA25pbAMJAAACBQ9wb29sT25lVG9rZW5JbnYFD3Bvb2xPbmVUb2tlbkludgQScHV6emxlQmFsYW5jZUFmdGVyCQDwBwIFBHRoaXMFBnB1enpsZQQQcm9tZUJhbGFuY2VBZnRlcgkA8AcCBQR0aGlzBQRyb21lCQDMCAIJAQxJbnRlZ2VyRW50cnkCAhVBY3RpdmF0ZWQgYmxvY2toZWlnaHQFBmhlaWdodAkAzAgCCQEMSW50ZWdlckVudHJ5AgUQa2V5QnVybnh0bkFtb3VudAkA8AcCBQR0aGlzBQdidXJueHRuCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQ1rZXlSb21lQW1vdW50CQBlAgUQcm9tZUJhbGFuY2VBZnRlcgURcm9tZUJhbGFuY2VCZWZvcmUJAMwIAgkBDEludGVnZXJFbnRyeQIFDmtleVdhdmVzQW1vdW50CQBlAgkA8AcCBQR0aGlzBQV3YXZlcwUCZDgJAMwIAgkBDEludGVnZXJFbnRyeQIFEmtleVdoaXJscG9vbEFtb3VudAkA8AcCBQR0aGlzBQl3aGlybHBvb2wFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQdpbnZva2VyAAMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkAAgECHGFjY2VzcyBvbmx5IGJ5IHByb2plY3Qgb3duZXIEBGxpc3QJALwJAgUJYWRkcmVzc2VzAgEsCgEBcgIFYWNjdW0HYWRkcmVzcwkA/AcEBQR0aGlzAhFkaXN0cmlidXRlUmV3YXJkcwkAzAgCBQdhZGRyZXNzBQNuaWwFA25pbAQHaW52b2tlcgoAAiRsBQRsaXN0CgACJHMJAJADAQUCJGwKAAUkYWNjMAUDbmlsCgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQFyAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhVMaXN0IHNpemUgZXhjZWVkcyAxMDAJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJ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JGYxXzECCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECBQUkYWNjMAAAAAEAAgADAAQABQAGAAcACAAJAAoDCQAAAgkAZAIFCHNoYXJlV0ZTBQhzaGFyZUJCQgAABARsaXN0CQC8CQIJAQx0cnlHZXRTdHJpbmcCBQR0aGlzBQlhZGRyZXNzZXMCASwECm5vTkZUaW5kZXgJAQV2YWx1ZQEJAM8IAgUEbGlzdAUHYWRkcmVzcwQObGlzdE1pbnVzTm9ORlQJANEIAgUEbGlzdAUKbm9ORlRpbmRleAQNbWludXNOb05GVHN0cgkAuQkCBQ5saXN0TWludXNOb05GVAIBLAkAzAgCCQELU3RyaW5nRW50cnkCBRZrZXlBZGRyZXNzZXNSZWdpc3RlcmVkBQ1taW51c05vTkZUc3RyBQNuaWwEDWFtb3VudEJ1cm54dG4JAGsDCQENdHJ5R2V0SW50ZWdlcgIFBHRoaXMFEGtleUJ1cm54dG5BbW91bnQJAGQCBQhzaGFyZVdGUwkAaAIFCHNoYXJlQkJCAAoJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwUQa2V5VG90YWxORlRwb3dlcgQPYW1vdW50V2hpcmxwb29sCQBrAwkBDXRyeUdldEludGVnZXICBQR0aGlzBRJrZXlXaGlybHBvb2xBbW91bnQJAGQCBQhzaGFyZVdGUwkAaAIFCHNoYXJlQkJCAAoJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwUQa2V5VG90YWxORlRwb3dlcgQLYW1vdW50V2F2ZXMJAGsDCQENdHJ5R2V0SW50ZWdlcgIFBHRoaXMFDmtleVdhdmVzQW1vdW50CQBkAgUIc2hhcmVXRlMJAGgCBQhzaGFyZUJCQgAKCQENdHJ5R2V0SW50ZWdlcgIFBHRoaXMFEGtleVRvdGFsTkZUcG93ZXIECmFtb3VudFJvbWUJAGsDCQENdHJ5R2V0SW50ZWdlcgIFBHRoaXMFDWtleVJvbWVBbW91bnQJAGQCBQhzaGFyZVdGUwkAaAIFCHNoYXJlQkJCAAoJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwUQa2V5VG90YWxORlRwb3dlcgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQERQGV4dHJOYXRpdmUoMTA2MikBBQdhZGRyZXNzBQ1hbW91bnRCdXJueHRuBQdidXJueHRuCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJARFAZXh0ck5hdGl2ZSgxMDYyKQEFB2FkZHJlc3MFD2Ftb3VudFdoaXJscG9vbAUJd2hpcmxwb29sCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJARFAZXh0ck5hdGl2ZSgxMDYyKQEFB2FkZHJlc3MFC2Ftb3VudFdhdmVzBQV3YXZlcwkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQERQGV4dHJOYXRpdmUoMTA2MikBBQdhZGRyZXNzBQphbW91bnRSb21lBQRyb21lBQNuaWwBaQEIcmVnaXN0ZXIAAwkBCGNvbnRhaW5zAgkBDHRyeUdldFN0cmluZwIFBHRoaXMFFmtleUFkZHJlc3Nlc1JlZ2lzdGVyZWQJAKUIAQgFAWkGY2FsbGVyCQACAQISYWxyZWFkeSByZWdpc3RlcmVkCQDMCAIJAQtTdHJpbmdFbnRyeQIFFmtleUFkZHJlc3Nlc1JlZ2lzdGVyZWQJAKwCAgkArAICCQEMdHJ5R2V0U3RyaW5nAgUEdGhpcwUWa2V5QWRkcmVzc2VzUmVnaXN0ZXJlZAkApQgBCAUBaQZjYWxsZXICASwFA25pbAFpARByZWdpc3Rlck1hbnVhbGx5AQdhZGRyZXNzAwkBCGNvbnRhaW5zAgkBDHRyeUdldFN0cmluZwIFBHRoaXMFFmtleUFkZHJlc3Nlc1JlZ2lzdGVyZWQFB2FkZHJlc3MJAAIBAhJhbHJlYWR5IHJlZ2lzdGVyZWQDCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAhxhY2Nlc3Mgb25seSBieSBwcm9qZWN0IG93bmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIFFmtleUFkZHJlc3Nlc1JlZ2lzdGVyZWQJAKwCAgkArAICCQEMdHJ5R2V0U3RyaW5nAgUEdGhpcwUWa2V5QWRkcmVzc2VzUmVnaXN0ZXJlZAUHYWRkcmVzcwIBLAUDbmlsAWkBCGludm9rZXIyAAQEbGlzdAkAvAkCBQlhZGRyZXNzZXMCASwKAQFyAgVhY2N1bQdhZGRyZXNzCQD8BwQFBHRoaXMCDWNvdW50TkZUcG93ZXIJAMwIAgUHYWRkcmVzcwUDbmlsBQNuaWwEB2lu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cmVzcwkA2QQBBQNCQkIECHNoYXJlQkJCCgACJGwFB0JCQmxpc3QKAAIkcwkAkAMBBQIkbAoABSRhY2MwAAAKAQUkZjFfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBCWZvbGRGdW5jQgIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMV8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQIUTGlzdCBzaXplIGV4Y2VlZHMgMTAJAQUkZjFfMgIJAQUkZjFfMQIJAQUkZjFfMQIJAQUkZjFfMQIJAQUkZjFfMQIJAQUkZjFfMQIJAQUkZjFfMQIJAQUkZjFfMQIJAQUkZjFfMQIJAQUkZjFfMQIJAQUkZjFfMQIFBSRhY2MwAAAAAQACAAMABAAFAAYABwAIAAkACgkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQdhZGRyZXNzAgRfV0ZTBQhzaGFyZVdGUwkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQdhZGRyZXNzAgRfQkJCCQBoAgUIc2hhcmVCQkIACgkAzAgCCQEMSW50ZWdlckVudHJ5AgUQa2V5VG90YWxORlRwb3dlcgkAZAIJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwUQa2V5VG90YWxORlRwb3dlcgkAZAIFCHNoYXJlV0ZTCQBoAgUIc2hhcmVCQkIACgUDbmlsAWkBCWJ5QW55Ym9keQADCQBmAgkAZAIJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMCFUFjdGl2YXRlZCBibG9ja2hlaWdodAkAaAIAHgCgCwUGaGVpZ2h0CQACAQkArAICAhZXYWl0IHRpbGwgYmxvY2toZWlnaHQ6CQCkAwEJAGQCCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAhVBY3RpdmF0ZWQgYmxvY2toZWlnaHQJAGgCAB4AoAsEE3B1enpsZUJhbGFuY2VCZWZvcmUJAPAHAgUEdGhpcwUGcHV6emxlAwkAAAIFE3B1enpsZUJhbGFuY2VCZWZvcmUFE3B1enpsZUJhbGFuY2VCZWZvcmUEEXJvbWVCYWxhbmNlQmVmb3JlCQDwBwIFBHRoaXMFBHJvbWUDCQAAAgURcm9tZUJhbGFuY2VCZWZvcmUFEXJvbWVCYWxhbmNlQmVmb3JlBBJjbGFpbVB1enpsZVN0YWtpbmcJAPwHBAUNcHV6emxlU3Rha2luZwILY2xhaW1SZXdhcmQFA25pbAUDbmlsAwkAAAIFEmNsYWltUHV6emxlU3Rha2luZwUSY2xhaW1QdXp6bGVTdGFraW5nBAhjbGFpbUludgkA/AcECQEHQWRkcmVzcwEFB3Bvb2xCQkICEWNsYWltSW5kZXhSZXdhcmRzBQNuaWwFA25pbAMJAAACBQhjbGFpbUludgUIY2xhaW1JbnYEEnB1enpsZUJhbGFuY2VBZnRlcgkA8AcCBQR0aGlzBQZwdXp6bGUEEHJvbWVCYWxhbmNlQWZ0ZXIJAPAHAgUEdGhpcwUEcm9tZQkAzAgCCQEMSW50ZWdlckVudHJ5AgUQa2V5QnVybnh0bkFtb3VudAkA8AcCBQR0aGlzBQdidXJueHRuCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQ1rZXlSb21lQW1vdW50CQBlAgUQcm9tZUJhbGFuY2VBZnRlcgURcm9tZUJhbGFuY2VCZWZvcmUJAMwIAgkBDEludGVnZXJFbnRyeQIFD2tleVB1enpsZUFtb3VudAkAZQIFEnB1enpsZUJhbGFuY2VBZnRlcgUTcHV6emxlQmFsYW5jZUJlZm9yZQkAzAgCCQEMSW50ZWdlckVudHJ5AgUOa2V5V2F2ZXNBbW91bnQJAGUCCQDwBwIFBHRoaXMFBXdhdmVzBQJkOAkAzAgCCQEMSW50ZWdlckVudHJ5AgUSa2V5V2hpcmxwb29sQW1vdW50CQDwBwIFBHRoaXMFCXdoaXJscG9vbAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBGmRpc3RyaWJ1dGVSZXdhcmRzQnlBbnlib2R5AQdhZGRyZXNzAwkAZgIJAGQCCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAhVBY3RpdmF0ZWQgYmxvY2toZWlnaHQJAGgCAB4AoAsFBmhlaWdodAkAAgEJAKwCAgIWV2FpdCB0aWxsIGJsb2NraGVpZ2h0OgkApAMBCQBkAgkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwIVQWN0aXZhdGVkIGJsb2NraGVpZ2h0CQBoAgAeAKALCgEIZm9sZEZ1bmMCA2FjYwNXRlMJAGQCBQNhY2MJAPAHAgkBEUBleHRyTmF0aXZlKDEwNjIpAQUHYWRkcmVzcwkA2QQBBQNXRlMECHNoYXJlV0ZTCgACJGwFB1dGU2xpc3QKAAIkcwkAkAMBBQIkbAoABSRhY2MwAAAKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBCGZvbGRGdW5jAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhRMaXN0IHNpemUgZXhjZWVkcyAxMAkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgACQAKCgEJZm9sZEZ1bmNCAgNhY2MDQkJCCQBkAgUDYWNjCQDwBwIJARFAZXh0ck5hdGl2ZSgxMDYyKQEFB2FkZHJlc3MJANkEAQUDQkJCBAhzaGFyZUJCQgoAAiRsBQdCQkJsaXN0CgACJHMJAJADAQUCJGwKAAUkYWNjMAAACgEFJGYxXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQlmb2xkRnVuY0ICBQIkYQkAkQMCBQIkbAUCJGkKAQUkZjFfMgICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkAAgECFExpc3Qgc2l6ZSBleGNlZWRzIDEwCQEFJGYxXzICCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECCQEFJGYxXzECBQUkYWNjMAAAAAEAAgADAAQABQAGAAcACAAJAAoDCQAAAgkAZAIFCHNoYXJlV0ZTBQhzaGFyZUJCQgAABARsaXN0CQC8CQIJAQx0cnlHZXRTdHJpbmcCBQR0aGlzBQlhZGRyZXNzZXMCASwECm5vTkZUaW5kZXgJAQV2YWx1ZQEJAM8IAgUEbGlzdAUHYWRkcmVzcwQObGlzdE1pbnVzTm9ORlQJANEIAgUEbGlzdAUKbm9ORlRpbmRleAQNbWludXNOb05GVHN0cgkAuQkCBQ5saXN0TWludXNOb05GVAIBLAkAzAgCCQELU3RyaW5nRW50cnkCBRZrZXlBZGRyZXNzZXNSZWdpc3RlcmVkBQ1taW51c05vTkZUc3RyBQNuaWwEDWFtb3VudEJ1cm54dG4JAGsDCQENdHJ5R2V0SW50ZWdlcgIFBHRoaXMFEGtleUJ1cm54dG5BbW91bnQJAGQCBQhzaGFyZVdGUwkAaAIFCHNoYXJlQkJCAAoJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwUQa2V5VG90YWxORlRwb3dlcgQPYW1vdW50V2hpcmxwb29sCQBrAwkBDXRyeUdldEludGVnZXICBQR0aGlzBRJrZXlXaGlybHBvb2xBbW91bnQJAGQCBQhzaGFyZVdGUwkAaAIFCHNoYXJlQkJCAAoJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwUQa2V5VG90YWxORlRwb3dlcgQLYW1vdW50V2F2ZXMJAGsDCQENdHJ5R2V0SW50ZWdlcgIFBHRoaXMFDmtleVdhdmVzQW1vdW50CQBkAgUIc2hhcmVXRlMJAGgCBQhzaGFyZUJCQgAKCQENdHJ5R2V0SW50ZWdlcgIFBHRoaXMFEGtleVRvdGFsTkZUcG93ZXIECmFtb3VudFJvbWUJAGsDCQENdHJ5R2V0SW50ZWdlcgIFBHRoaXMFDWtleVJvbWVBbW91bnQJAGQCBQhzaGFyZVdGUwkAaAIFCHNoYXJlQkJCAAoJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwUQa2V5VG90YWxORlRwb3dlcgQMYW1vdW50UHV6emxlCQBrAwkBDXRyeUdldEludGVnZXICBQR0aGlzBQ9rZXlQdXp6bGVBbW91bnQJAGQCBQhzaGFyZVdGUwkAaAIFCHNoYXJlQkJCAAoJAQ10cnlHZXRJbnRlZ2VyAgUEdGhpcwUQa2V5VG90YWxORlRwb3dlcgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQERQGV4dHJOYXRpdmUoMTA2MikBBQdhZGRyZXNzBQ1hbW91bnRCdXJueHRuBQdidXJueHRuCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJARFAZXh0ck5hdGl2ZSgxMDYyKQEFB2FkZHJlc3MFD2Ftb3VudFdoaXJscG9vbAUJd2hpcmxwb29sCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJARFAZXh0ck5hdGl2ZSgxMDYyKQEFB2FkZHJlc3MFC2Ftb3VudFdhdmVzBQV3YXZlcwkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQERQGV4dHJOYXRpdmUoMTA2MikBBQdhZGRyZXNzBQphbW91bnRSb21lBQRyb21lCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJARFAZXh0ck5hdGl2ZSgxMDYyKQEFB2FkZHJlc3MFDGFtb3VudFB1enpsZQUGcHV6emxlBQNuaWwAOQzQDw==", "height": 3991109, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 99RPjSw6t7wYwwUeZTCSnBFii99xDpE6Q5si4stjhkh8 Next: GL3o82LFKchtZV9ijxXRSS7vRttypux655Bsr7jAKBha Diff:
OldNewDifferences
9090 func invoker () = if ((i.caller != this))
9191 then throw("access only by project owner")
9292 else {
93- let list = split_4C(tryGetString(this, addresses), ",")
93+ let list = split_4C(addresses, ",")
9494 func r (accum,address) = invoke(this, "distributeRewards", [address], nil)
9595
9696 let invoker = {
187187
188188 @Callable(i)
189189 func invoker2 () = {
190- let list = split_4C(tryGetString(this, addresses), ",")
190+ let list = split_4C(addresses, ",")
191191 func r (accum,address) = invoke(this, "countNFTpower", [address], nil)
192192
193193 let invoker = {
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func tryGetInteger (address,key) = match getInteger(address, key) {
55 case b: Int =>
66 b
77 case _ =>
88 0
99 }
1010
1111
1212 func tryGetString (address,key) = match getString(address, key) {
1313 case b: String =>
1414 b
1515 case _ =>
1616 ""
1717 }
1818
1919
2020 let d8 = 100000000
2121
2222 let poolBBB = base58'3P9VPwVfNj3dDevQZt1Z951A4K57cmQmCgk'
2323
2424 let BBBstr = toBase58String(poolBBB)
2525
2626 let puzzleStaking = Address(base58'3PFTbywqxtFfukX3HyT881g4iW5K4QL3FAS')
2727
2828 let burnxtn = base58'3SjxA2YLdfF9fTRbzLm9xFn27C6MW34W1YsdJ6Axefns'
2929
3030 let waves = base58'WAVES'
3131
3232 let whirlpool = base58'73tY3E6Gd5AWYmsuq8m8Kek7KnJNAYyS3GoveTbc6jCi'
3333
3434 let puzzle = base58'HEB8Qaw9xrWpWs8tHsiATYGBWDBtP2S7kcPALrMu43AS'
3535
3636 let rome = base58'AP4Cb5xLYGH6ZigHreCZHoXpQTWDkPsG2BHqfDUx6taJ'
3737
3838 let keyAddressesRegistered = "Addresses registered"
3939
4040 let addresses = dropRight(tryGetString(this, keyAddressesRegistered), 1)
4141
4242 let keyBurnxtnAmount = "BURN-XTN total rewards"
4343
4444 let keyRomeAmount = "ROME total rewards"
4545
4646 let keyPuzzleAmount = "PUZZLE total rewards"
4747
4848 let keyWavesAmount = "WAVES total rewards"
4949
5050 let keyWhirlpoolAmount = "WHIRLPOOL total rewards"
5151
5252 let keyTotalNFTpower = "Total NFT power"
5353
5454 let WFSlist = ["Gnpy5nVajPP3XQQVxrHboMAsXtjnyWAxybMDdKrbr8sD", "BT9Q4mQdQQmei2r5YNMBMasZBQj7myNaiz6QHba5cPXS", "BMvkyFtPVmFatpFR9QVFKR5MYTcZVTY2VUwFZ25vrAAc"]
5555
5656 let BBBlist = ["CuBYhjFa8jVHjRxTJZkTSHEUD8J2VNbcdJXp39H4zBNT"]
5757
5858 @Callable(i)
5959 func claimInvestPuzzle () = if ((i.caller != this))
6060 then throw("access only by project owner")
6161 else {
6262 let puzzleBalanceBefore = assetBalance(this, puzzle)
6363 if ((puzzleBalanceBefore == puzzleBalanceBefore))
6464 then {
6565 let romeBalanceBefore = assetBalance(this, rome)
6666 if ((romeBalanceBefore == romeBalanceBefore))
6767 then {
6868 let claimPuzzleStaking = invoke(puzzleStaking, "claimReward", nil, nil)
6969 if ((claimPuzzleStaking == claimPuzzleStaking))
7070 then {
7171 let poolOneTokenInv = invoke(Address(base58'3PR1Qvi9mHT35SwWEkLSqqE2L8thiPLdVWU'), "generateIndexWithOneTokenAndStake", [BBBstr], [AttachedPayment(puzzle, assetBalance(this, puzzle))])
7272 if ((poolOneTokenInv == poolOneTokenInv))
7373 then {
7474 let puzzleBalanceAfter = assetBalance(this, puzzle)
7575 let romeBalanceAfter = assetBalance(this, rome)
7676 [IntegerEntry("Activated blockheight", height), IntegerEntry(keyBurnxtnAmount, assetBalance(this, burnxtn)), IntegerEntry(keyRomeAmount, (romeBalanceAfter - romeBalanceBefore)), IntegerEntry(keyWavesAmount, (assetBalance(this, waves) - d8)), IntegerEntry(keyWhirlpoolAmount, assetBalance(this, whirlpool))]
7777 }
7878 else throw("Strict value is not equal to itself.")
7979 }
8080 else throw("Strict value is not equal to itself.")
8181 }
8282 else throw("Strict value is not equal to itself.")
8383 }
8484 else throw("Strict value is not equal to itself.")
8585 }
8686
8787
8888
8989 @Callable(i)
9090 func invoker () = if ((i.caller != this))
9191 then throw("access only by project owner")
9292 else {
93- let list = split_4C(tryGetString(this, addresses), ",")
93+ let list = split_4C(addresses, ",")
9494 func r (accum,address) = invoke(this, "distributeRewards", [address], nil)
9595
9696 let invoker = {
9797 let $l = list
9898 let $s = size($l)
9999 let $acc0 = nil
100100 func $f0_1 ($a,$i) = if (($i >= $s))
101101 then $a
102102 else r($a, $l[$i])
103103
104104 func $f0_2 ($a,$i) = if (($i >= $s))
105105 then $a
106106 else throw("List size exceeds 100")
107107
108108 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
109109 }
110110 if ((invoker == invoker))
111111 then nil
112112 else throw("Strict value is not equal to itself.")
113113 }
114114
115115
116116
117117 @Callable(i)
118118 func distributeRewards (address) = if ((i.caller != this))
119119 then throw("access only by project owner")
120120 else {
121121 func foldFunc (acc,WFS) = (acc + assetBalance(addressFromStringValue(address), fromBase58String(WFS)))
122122
123123 let shareWFS = {
124124 let $l = WFSlist
125125 let $s = size($l)
126126 let $acc0 = 0
127127 func $f0_1 ($a,$i) = if (($i >= $s))
128128 then $a
129129 else foldFunc($a, $l[$i])
130130
131131 func $f0_2 ($a,$i) = if (($i >= $s))
132132 then $a
133133 else throw("List size exceeds 10")
134134
135135 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
136136 }
137137 func foldFuncB (acc,BBB) = (acc + assetBalance(addressFromStringValue(address), fromBase58String(BBB)))
138138
139139 let shareBBB = {
140140 let $l = BBBlist
141141 let $s = size($l)
142142 let $acc0 = 0
143143 func $f1_1 ($a,$i) = if (($i >= $s))
144144 then $a
145145 else foldFuncB($a, $l[$i])
146146
147147 func $f1_2 ($a,$i) = if (($i >= $s))
148148 then $a
149149 else throw("List size exceeds 10")
150150
151151 $f1_2($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
152152 }
153153 if (((shareWFS + shareBBB) == 0))
154154 then {
155155 let list = split_4C(tryGetString(this, addresses), ",")
156156 let noNFTindex = value(indexOf(list, address))
157157 let listMinusNoNFT = removeByIndex(list, noNFTindex)
158158 let minusNoNFTstr = makeString(listMinusNoNFT, ",")
159159 [StringEntry(keyAddressesRegistered, minusNoNFTstr)]
160160 }
161161 else {
162162 let amountBurnxtn = fraction(tryGetInteger(this, keyBurnxtnAmount), (shareWFS + (shareBBB * 10)), tryGetInteger(this, keyTotalNFTpower))
163163 let amountWhirlpool = fraction(tryGetInteger(this, keyWhirlpoolAmount), (shareWFS + (shareBBB * 10)), tryGetInteger(this, keyTotalNFTpower))
164164 let amountWaves = fraction(tryGetInteger(this, keyWavesAmount), (shareWFS + (shareBBB * 10)), tryGetInteger(this, keyTotalNFTpower))
165165 let amountRome = fraction(tryGetInteger(this, keyRomeAmount), (shareWFS + (shareBBB * 10)), tryGetInteger(this, keyTotalNFTpower))
166166 [ScriptTransfer(addressFromStringValue(address), amountBurnxtn, burnxtn), ScriptTransfer(addressFromStringValue(address), amountWhirlpool, whirlpool), ScriptTransfer(addressFromStringValue(address), amountWaves, waves), ScriptTransfer(addressFromStringValue(address), amountRome, rome)]
167167 }
168168 }
169169
170170
171171
172172 @Callable(i)
173173 func register () = if (contains(tryGetString(this, keyAddressesRegistered), toString(i.caller)))
174174 then throw("already registered")
175175 else [StringEntry(keyAddressesRegistered, ((tryGetString(this, keyAddressesRegistered) + toString(i.caller)) + ","))]
176176
177177
178178
179179 @Callable(i)
180180 func registerManually (address) = if (contains(tryGetString(this, keyAddressesRegistered), address))
181181 then throw("already registered")
182182 else if ((i.caller != this))
183183 then throw("access only by project owner")
184184 else [StringEntry(keyAddressesRegistered, ((tryGetString(this, keyAddressesRegistered) + address) + ","))]
185185
186186
187187
188188 @Callable(i)
189189 func invoker2 () = {
190- let list = split_4C(tryGetString(this, addresses), ",")
190+ let list = split_4C(addresses, ",")
191191 func r (accum,address) = invoke(this, "countNFTpower", [address], nil)
192192
193193 let invoker = {
194194 let $l = list
195195 let $s = size($l)
196196 let $acc0 = nil
197197 func $f0_1 ($a,$i) = if (($i >= $s))
198198 then $a
199199 else r($a, $l[$i])
200200
201201 func $f0_2 ($a,$i) = if (($i >= $s))
202202 then $a
203203 else throw("List size exceeds 100")
204204
205205 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
206206 }
207207 if ((invoker == invoker))
208208 then nil
209209 else throw("Strict value is not equal to itself.")
210210 }
211211
212212
213213
214214 @Callable(i)
215215 func countNFTpower (address) = {
216216 func foldFunc (acc,WFS) = (acc + assetBalance(addressFromStringValue(address), fromBase58String(WFS)))
217217
218218 let shareWFS = {
219219 let $l = WFSlist
220220 let $s = size($l)
221221 let $acc0 = 0
222222 func $f0_1 ($a,$i) = if (($i >= $s))
223223 then $a
224224 else foldFunc($a, $l[$i])
225225
226226 func $f0_2 ($a,$i) = if (($i >= $s))
227227 then $a
228228 else throw("List size exceeds 10")
229229
230230 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
231231 }
232232 func foldFuncB (acc,BBB) = (acc + assetBalance(addressFromStringValue(address), fromBase58String(BBB)))
233233
234234 let shareBBB = {
235235 let $l = BBBlist
236236 let $s = size($l)
237237 let $acc0 = 0
238238 func $f1_1 ($a,$i) = if (($i >= $s))
239239 then $a
240240 else foldFuncB($a, $l[$i])
241241
242242 func $f1_2 ($a,$i) = if (($i >= $s))
243243 then $a
244244 else throw("List size exceeds 10")
245245
246246 $f1_2($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
247247 }
248248 [IntegerEntry((address + "_WFS"), shareWFS), IntegerEntry((address + "_BBB"), (shareBBB * 10)), IntegerEntry(keyTotalNFTpower, (tryGetInteger(this, keyTotalNFTpower) + (shareWFS + (shareBBB * 10))))]
249249 }
250250
251251
252252
253253 @Callable(i)
254254 func byAnybody () = if (((getIntegerValue(this, "Activated blockheight") + (30 * 1440)) > height))
255255 then throw(("Wait till blockheight:" + toString((getIntegerValue(this, "Activated blockheight") + (30 * 1440)))))
256256 else {
257257 let puzzleBalanceBefore = assetBalance(this, puzzle)
258258 if ((puzzleBalanceBefore == puzzleBalanceBefore))
259259 then {
260260 let romeBalanceBefore = assetBalance(this, rome)
261261 if ((romeBalanceBefore == romeBalanceBefore))
262262 then {
263263 let claimPuzzleStaking = invoke(puzzleStaking, "claimReward", nil, nil)
264264 if ((claimPuzzleStaking == claimPuzzleStaking))
265265 then {
266266 let claimInv = invoke(Address(poolBBB), "claimIndexRewards", nil, nil)
267267 if ((claimInv == claimInv))
268268 then {
269269 let puzzleBalanceAfter = assetBalance(this, puzzle)
270270 let romeBalanceAfter = assetBalance(this, rome)
271271 [IntegerEntry(keyBurnxtnAmount, assetBalance(this, burnxtn)), IntegerEntry(keyRomeAmount, (romeBalanceAfter - romeBalanceBefore)), IntegerEntry(keyPuzzleAmount, (puzzleBalanceAfter - puzzleBalanceBefore)), IntegerEntry(keyWavesAmount, (assetBalance(this, waves) - d8)), IntegerEntry(keyWhirlpoolAmount, assetBalance(this, whirlpool))]
272272 }
273273 else throw("Strict value is not equal to itself.")
274274 }
275275 else throw("Strict value is not equal to itself.")
276276 }
277277 else throw("Strict value is not equal to itself.")
278278 }
279279 else throw("Strict value is not equal to itself.")
280280 }
281281
282282
283283
284284 @Callable(i)
285285 func distributeRewardsByAnybody (address) = if (((getIntegerValue(this, "Activated blockheight") + (30 * 1440)) > height))
286286 then throw(("Wait till blockheight:" + toString((getIntegerValue(this, "Activated blockheight") + (30 * 1440)))))
287287 else {
288288 func foldFunc (acc,WFS) = (acc + assetBalance(addressFromStringValue(address), fromBase58String(WFS)))
289289
290290 let shareWFS = {
291291 let $l = WFSlist
292292 let $s = size($l)
293293 let $acc0 = 0
294294 func $f0_1 ($a,$i) = if (($i >= $s))
295295 then $a
296296 else foldFunc($a, $l[$i])
297297
298298 func $f0_2 ($a,$i) = if (($i >= $s))
299299 then $a
300300 else throw("List size exceeds 10")
301301
302302 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
303303 }
304304 func foldFuncB (acc,BBB) = (acc + assetBalance(addressFromStringValue(address), fromBase58String(BBB)))
305305
306306 let shareBBB = {
307307 let $l = BBBlist
308308 let $s = size($l)
309309 let $acc0 = 0
310310 func $f1_1 ($a,$i) = if (($i >= $s))
311311 then $a
312312 else foldFuncB($a, $l[$i])
313313
314314 func $f1_2 ($a,$i) = if (($i >= $s))
315315 then $a
316316 else throw("List size exceeds 10")
317317
318318 $f1_2($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($f1_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
319319 }
320320 if (((shareWFS + shareBBB) == 0))
321321 then {
322322 let list = split_4C(tryGetString(this, addresses), ",")
323323 let noNFTindex = value(indexOf(list, address))
324324 let listMinusNoNFT = removeByIndex(list, noNFTindex)
325325 let minusNoNFTstr = makeString(listMinusNoNFT, ",")
326326 [StringEntry(keyAddressesRegistered, minusNoNFTstr)]
327327 }
328328 else {
329329 let amountBurnxtn = fraction(tryGetInteger(this, keyBurnxtnAmount), (shareWFS + (shareBBB * 10)), tryGetInteger(this, keyTotalNFTpower))
330330 let amountWhirlpool = fraction(tryGetInteger(this, keyWhirlpoolAmount), (shareWFS + (shareBBB * 10)), tryGetInteger(this, keyTotalNFTpower))
331331 let amountWaves = fraction(tryGetInteger(this, keyWavesAmount), (shareWFS + (shareBBB * 10)), tryGetInteger(this, keyTotalNFTpower))
332332 let amountRome = fraction(tryGetInteger(this, keyRomeAmount), (shareWFS + (shareBBB * 10)), tryGetInteger(this, keyTotalNFTpower))
333333 let amountPuzzle = fraction(tryGetInteger(this, keyPuzzleAmount), (shareWFS + (shareBBB * 10)), tryGetInteger(this, keyTotalNFTpower))
334334 [ScriptTransfer(addressFromStringValue(address), amountBurnxtn, burnxtn), ScriptTransfer(addressFromStringValue(address), amountWhirlpool, whirlpool), ScriptTransfer(addressFromStringValue(address), amountWaves, waves), ScriptTransfer(addressFromStringValue(address), amountRome, rome), ScriptTransfer(addressFromStringValue(address), amountPuzzle, puzzle)]
335335 }
336336 }
337337
338338

github/deemru/w8io/0e76f2f 
61.17 ms