tx · 6avgBrkSjVmTjA6vuNDMQP7TyUeeSVWT4hYJptRQpNPJ

3N6G8j53WGVsDVPR8R8GBxmsaqkML1ayNKV:  -0.01700000 Waves

2023.05.04 11:35 [2562780] smart account 3N6G8j53WGVsDVPR8R8GBxmsaqkML1ayNKV > SELF 0.00000000 Waves

{ "type": 13, "id": "6avgBrkSjVmTjA6vuNDMQP7TyUeeSVWT4hYJptRQpNPJ", "fee": 1700000, "feeAssetId": null, "timestamp": 1683189410718, "version": 2, "chainId": 84, "sender": "3N6G8j53WGVsDVPR8R8GBxmsaqkML1ayNKV", "senderPublicKey": "G8swj2SJhdPvP3eHnoPqp9DM2w2LQJABHJSY3ygtNSSo", "proofs": [ "2H84xvvKnw44Lym7G4SeFtoaBrqBo9kTCDaH5tubjXK3rZN9S88NRHGa8LrN76B6eDLqvr7PBLVxctPpqqmfpsi6" ], "script": "base64:BgLZEggCEgUKAwgIBBIFCgMIGAESBwoFEQgYAQESBgoECAgICBIGCgQICAgCEgUKAwgIBBIGCgQICAEBEgQKAggYEgMKAQgSABIECgIICBIDCgEIEgQKAggIIglzZXBhcmF0b3IiDGtleVd4QXNzZXRJZCITa2V5QmFja2VuZFB1YmxpY0tleSIba2V5RXhpc3RzUmVmZXJyZXJUb1JlZmVycmFsIgtwcm9ncmFtTmFtZSIPcmVmZXJyZXJBZGRyZXNzIg9yZWZlcnJhbEFkZHJlc3MiEmtleUNsYWltZWRSZWZlcnJlciIOY2xhaW1lckFkZHJlc3MiEmtleUNsYWltZWRSZWZlcnJhbCIUa2V5VW5jbGFpbWVkUmVmZXJyZXIiFGtleVVuY2xhaW1lZFJlZmVycmFsIgtrZXlSZWZlcnJlciIOa2V5UHJvZ3JhbU5hbWUiFWtleVRvdGFsUmVmZXJyYWxDb3VudCIWa2V5QWN0aXZlUmVmZXJyYWxDb3VudCITa2V5SXNSZWZlcnJhbEFjdGl2ZSIWa2V5Q2xhaW1lZFRvdGFsQWRkcmVzcyIHYWRkcmVzcyIYa2V5VW5jbGFpbWVkVG90YWxBZGRyZXNzIg9rZXlDbGFpbWVkVG90YWwiD2tleVJld2FyZHNUb3RhbCIQa2V5UmV3YXJkQXNzZXRJZCITa2V5VHJlYXN1cnlDb250cmFjdCIZa2V5SW1wbGVtZW50YXRpb25Db250cmFjdCIWa2V5QWxsUmVmZXJyYWxQcm9ncmFtcyITa2V5TWFuYWdlclB1YmxpY0tleSIWa2V5TWFuYWdlclZhdWx0QWRkcmVzcyIXZ2V0TWFuYWdlckFkZHJlc3NPckZhaWwiD2tleUNsYWltSGlzdG9yeSILdXNlckFkZHJlc3MiDXRyYW5zYWN0aW9uSWQiBHR5cGUiEmZvcm1hdENsYWltSGlzdG9yeSIGYW1vdW50Igh0aHJvd0VyciIDbXNnIhZtYW5hZ2VyUHVibGljS2V5T3JVbml0IhNtYW5hZ2VyVmF1bHRBZGRyZXNzIgckbWF0Y2gwIgFzIgttdXN0TWFuYWdlciIBaSICcGQiAnBrIhl1cGRhdGVBbGxSZWZlcnJhbFByb2dyYW1zIhNhbGxSZWZlcnJhbFByb2dyYW1zIhp1cGRhdGVkQWxsUmVmZXJyYWxQcm9ncmFtcyIWbmV3QWxsUmVmZXJyYWxQcm9ncmFtcyIYaXNJbXBsZW1lbnRhdGlvbkNvbnRyYWN0IhJjaGVja1Byb2dyYW1FeGlzdHMiCyR0MDQ3MDA1NjM3Ig5jbGFpbWVyQ2xhaW1lZCIQY2xhaW1lclVuY2xhaW1lZCIKa2V5Q2xhaW1lZCIMa2V5VW5jbGFpbWVkIg9jbGFpbUhpc3RvcnlLZXkiDGNsYWltZWRUb3RhbCIQdHJlYXN1cnlDb250cmFjdCINcmV3YXJkQXNzZXRJZCITY2xhaW1lZFRvdGFsQWRkcmVzcyIVdW5jbGFpbWVkVG90YWxBZGRyZXNzIg1jaGVja0NhbkNsYWltIhFuZXdDbGFpbWVyQ2xhaW1lZCIPbmV3Q2xhaW1lZFRvdGFsIhZuZXdDbGFpbWVkVG90YWxBZGRyZXNzIhhuZXdVbmNsYWltZWRUb3RhbEFkZHJlc3MiDWJhbGFuY2VCZWZvcmUiA3JlcyIMYmFsYW5jZUFmdGVyIgtiYWxhbmNlRGlmZiIMY2hlY2tCYWxhbmNlIgdjbGFpbWVyIgxwcm9ncmFtTmFtZXMiC2N1cnJlbnRJdGVyIgtjaGVja0NhbGxlciIQcHJvZ3JhbVVuY2xhaW1lZCIRY2xhaW1CdWxrSW50ZXJuYWwiEXVuY2xhaW1lZFJlZmVycmVyIgVjbGFpbSIOcGF5bWVudEFtb3VudHMiEXJlZmVycmVyQWRkcmVzc2VzIglyZXNBbW91bnQiDmFyZ3NDb21wYXJpc29uIgVjaGVjayIRcmVmZXJyZXJVbmNsYWltZWQiDHJld2FyZHNUb3RhbCIUbmV3UmVmZXJyZXJVbmNsYWltZWQiDG5ld1Jlc0Ftb3VudCIDaW52Ihp1cGRhdGVkQWxsUmVmZXJyZXJQcm9ncmFtcyIWaW1wbGVtZW50YXRpb25Db250cmFjdCIQY2hlY2tQcm9ncmFtTmFtZSIScHJvZ3JhbU5hbWVJc1ZhbGlkIhBjaGVja1Jld2FyZEFzc2V0IglzaWduYXR1cmUiIHBhaXJSZWZlcnJlclRvUmVmZXJyYWxFeGlzdENoZWNrIglub1JlZlNlbGYiBHBhaXIiEGJhY2tlbmRQdWJsaWNLZXkiEXZhbGlkYXRlU2lnbmF0dXJlIhJ0b3RhbFJlZmVycmFsQ291bnQiFW5ld1RvdGFsUmVmZXJyYWxDb3VudCIIaXNBY3RpdmUiEGlzUmVmZXJyYWxBY3RpdmUiBnVwZGF0ZSIWbmV3QWN0aXZlUmVmZXJyYWxDb3VudCIOcmVmZXJyZXJSZXdhcmQiDnJlZmVycmFsUmV3YXJkIgxjaGVja1Byb2dyYW0iFmNoZWNrUmVmZXJyZXJJblByb2dyYW0iFmNoZWNrUmVmZXJyYWxJblByb2dyYW0iFnVuY2xhaW1lZFRvdGFsUmVmZXJyZXIiFnVuY2xhaW1lZFRvdGFsUmVmZXJyYWwiEXJlZmVycmFsVW5jbGFpbWVkIhluZXdVbmNsYWltZWRUb3RhbFJlZmVycmVyIhluZXdVbmNsYWltZWRUb3RhbFJlZmVycmFsIhRuZXdSZWZlcnJhbFVuY2xhaW1lZCIDbWFwIgVhY2N1bSIEbmV4dCIMYXNzZXRJZENoZWNrIgthbW91bnRDaGVjayIIcGF5bWVudHMiAiRsIgIkcyIFJGFjYzAiBSRmMF8xIgIkYSICJGkiBSRmMF8yIgFAIg1jbGFpbUludGVybmFsIg1jYWxsZXJBZGRyZXNzIhFjYWxsZXJQcm9ncmFtc1N0ciIOcHJvZ3JhbXNFeGlzdHMiDmNhbGxlclByb2dyYW1zIglidWxrQ2xhaW0iD2NsYWltZWRSZWZlcnJlciIPY2xhaW1lZFJlZmVycmFsIhF1bmNsYWltZWRSZWZlcnJhbCICdHgiBnZlcmlmeSIPdGFyZ2V0UHVibGljS2V5HgABYQICX18BAWIACQC5CQIJAMwIAgICJXMJAMwIAgIJd3hBc3NldElkBQNuaWwFAWEAAWMJALkJAgkAzAgCAgIlcwkAzAgCAhBiYWNrZW5kUHVibGljS2V5BQNuaWwFAWEBAWQDAWUBZgFnCQC5CQIJAMwIAgIIJXMlcyVzJXMJAMwIAgIYZXhpc3RzUmVmZXJyZXJUb1JlZmVycmFsCQDMCAIFAWUJAMwIAgUBZgkAzAgCBQFnBQNuaWwFAWEBAWgCAWUBaQkAuQkCCQDMCAICBiVzJXMlcwkAzAgCAg9jbGFpbWVkUmVmZXJyZXIJAMwIAgUBZQkAzAgCBQFpBQNuaWwFAWEBAWoCAWUBaQkAuQkCCQDMCAICBiVzJXMlcwkAzAgCAg9jbGFpbWVkUmVmZXJyYWwJAMwIAgUBZQkAzAgCBQFpBQNuaWwFAWEBAWsCAWUBaQkAuQkCCQDMCAICBiVzJXMlcwkAzAgCAhF1bmNsYWltZWRSZWZlcnJlcgkAzAgCBQFlCQDMCAIFAWkFA25pbAUBYQEBbAIBZQFpCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICEXVuY2xhaW1lZFJlZmVycmFsCQDMCAIFAWUJAMwIAgUBaQUDbmlsBQFhAQFtAgFlAWcJALkJAgkAzAgCAgYlcyVzJXMJAMwIAgIIcmVmZXJyZXIJAMwIAgUBZQkAzAgCBQFnBQNuaWwFAWEBAW4BAWUJALkJAgkAzAgCAgQlcyVzCQDMCAICC3Byb2dyYW1OYW1lCQDMCAIFAWUFA25pbAUBYQEBbwIBZQFmCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICEnRvdGFsUmVmZXJyYWxDb3VudAkAzAgCBQFlCQDMCAIFAWYFA25pbAUBYQEBcAIBZQFmCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICE2FjdGl2ZVJlZmVycmFsQ291bnQJAMwIAgUBZQkAzAgCBQFmBQNuaWwFAWEBAXECAWUBZwkAuQkCCQDMCAICBiVzJXMlcwkAzAgCAg5hY3RpdmVSZWZlcnJhbAkAzAgCBQFlCQDMCAIFAWcFA25pbAUBYQEBcgEBcwkAuQkCCQDMCAICBCVzJXMJAMwIAgITY2xhaW1lZFRvdGFsQWRkcmVzcwkAzAgCBQFzBQNuaWwFAWEBAXQBAXMJALkJAgkAzAgCAgQlcyVzCQDMCAICFXVuY2xhaW1lZFRvdGFsQWRkcmVzcwkAzAgCBQFzBQNuaWwFAWEBAXUBAWUJALkJAgkAzAgCAgQlcyVzCQDMCAICDGNsYWltZWRUb3RhbAkAzAgCBQFlBQNuaWwFAWEBAXYBAWUJALkJAgkAzAgCAgQlcyVzCQDMCAICDHJld2FyZHNUb3RhbAkAzAgCBQFlBQNuaWwFAWEBAXcBAWUJALkJAgkAzAgCAgQlcyVzCQDMCAICDXJld2FyZEFzc2V0SWQJAMwIAgUBZQUDbmlsBQFhAQF4AQFlCQC5CQIJAMwIAgIEJXMlcwkAzAgCAhB0cmVhc3VyeUNvbnRyYWN0CQDMCAIFAWUFA25pbAUBYQEBeQEBZQkAuQkCCQDMCAICBCVzJXMJAMwIAgIWaW1wbGVtZW50YXRpb25Db250cmFjdAkAzAgCBQFlBQNuaWwFAWEBAXoBAXMJALkJAgkAzAgCAgQlcyVzCQDMCAICE2FsbFJlZmVycmFsUHJvZ3JhbXMJAMwIAgUBcwUDbmlsBQFhAQFBAAIUJXNfX21hbmFnZXJQdWJsaWNLZXkBAUIAAhclc19fbWFuYWdlclZhdWx0QWRkcmVzcwEBQwAJARFAZXh0ck5hdGl2ZSgxMDYyKQEJARFAZXh0ck5hdGl2ZSgxMDU4KQEJAQFCAAEBRAQBZQFFAUYBRwkAuQkCCQDMCAICCiVzJXMlcyVzJXMJAMwIAgIHaGlzdG9yeQkAzAgCBQFHCQDMCAIFAWUJAMwIAgUBRQkAzAgCBQFGBQNuaWwFAWEBAUgBAUkJALkJAgkAzAgCAgYlZCVkJWQJAMwIAgkApAMBCAUJbGFzdEJsb2NrBmhlaWdodAkAzAgCCQCkAwEIBQlsYXN0QmxvY2sJdGltZXN0YW1wCQDMCAIJAKQDAQUBSQUDbmlsBQFhAQFKAQFLCQACAQkAuQkCCQDMCAICDnJlZmVycmFsLnJpZGU6CQDMCAIFAUsFA25pbAIBIAEBTAAEAU0JAQFDAAQBTgkAnQgCBQFNCQEBQQADCQABAgUBTgIGU3RyaW5nBAFPBQFOCQDZBAEFAU8DCQABAgUBTgIEVW5pdAUEdW5pdAkAAgECC01hdGNoIGVycm9yAQFQAQFRBAFSCQEBSgECEXBlcm1pc3Npb24gZGVuaWVkBAFOCQEBTAADCQABAgUBTgIKQnl0ZVZlY3RvcgQBUwUBTgMJAAACCAUBUQ9jYWxsZXJQdWJsaWNLZXkFAVMGBQFSAwkAAQIFAU4CBFVuaXQDCQAAAggFAVEGY2FsbGVyBQR0aGlzBgUBUgkAAgECC01hdGNoIGVycm9yAQFUAgFzAWUEAVUJAQt2YWx1ZU9yRWxzZQIJAKIIAQkBAXoBBQFzAgAEAVYDCQEIY29udGFpbnMCBQFVBQFlBQNuaWwEAVcDCQAAAgUBVQIABQFlCQC5CQIJAMwIAgUBVQkAzAgCBQFlBQNuaWwFAWEJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAXoBBQFzBQFXBQNuaWwFAVYNAVEBDWNsYWltSW50ZXJuYWwDAWUBaQFYBAFZAwkBC3ZhbHVlT3JFbHNlAgkAoAgBCQEBbgEFAWUHBgkBAUoBAhZwcm9ncmFtIGRvZXMgbm90IGV4aXN0AwkAAAIFAVkFAVkEAVoDBQFYCQCXCgUJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWoCBQFlBQFpAAAJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWwCBQFlBQFpAAAJAQFqAgUBZQUBaQkBAWwCBQFlBQFpCQEBRAQFAWUFAWkJANgEAQgFAVENdHJhbnNhY3Rpb25JZAINY2xhaW1SZWZlcnJhbAkAlwoFCQELdmFsdWVPckVsc2UCCQCfCAEJAQFoAgUBZQUBaQAACQELdmFsdWVPckVsc2UCCQCfCAEJAQFrAgUBZQUBaQAACQEBaAIFAWUFAWkJAQFrAgUBZQUBaQkBAUQEBQFlBQFpCQDYBAEIBQFRDXRyYW5zYWN0aW9uSWQCDWNsYWltUmVmZXJyZXIEAmFhCAUBWgJfMQQCYWIIBQFaAl8yBAJhYwgFAVoCXzMEAmFkCAUBWgJfNAQCYWUIBQFaAl81BAJhZgkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBdQEFAWUAAAQCYWcJAQV2YWx1ZQEJAKYIAQkBBXZhbHVlAQkAoggBCQEBeAEFAWUEAmFoCQDZBAEJAQV2YWx1ZQEJAKIIAQkBAXcBBQFlBAJhaQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBcgEFAWkAAAQCYWoJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAXQBBQFpAAADAwUBWAkAAAIFAmFiAAAHCQCUCgIFA25pbAAABAJhawMJAGYCBQJhYgAABgkBAUoBAhBub3RoaW5nIHRvIGNsYWltAwkAAAIFAmFrBQJhawQCYWwJAGQCBQJhYQUCYWIEAmFtCQBkAgUCYWYFAmFiBAJhbgkAZAIFAmFpBQJhYgQCYW8JAGUCBQJhagUCYWIEAmFwCQEFdmFsdWUBCQDwBwIFBHRoaXMFAmFoAwkAAAIFAmFwBQJhcAQCYXEJAPwHBAUCYWcCFndpdGhkcmF3UmVmZXJyYWxSZXdhcmQJAMwIAgUCYWIFA25pbAUDbmlsAwkAAAIFAmFxBQJhcQQCYXIJAQV2YWx1ZQEJAPAHAgUEdGhpcwUCYWgDCQAAAgUCYXIFAmFyBAJhcwkAZQIFAmFyBQJhcAMJAAACBQJhcwUCYXMEAmF0AwkAAAIFAmFzBQJhYgYJAQFKAQIpaW5zdWZmaWNpZW50IGJhbGFuY2Ugb24gcmVmZXJyYWwgY29udHJhY3QDCQAAAgUCYXQFAmF0CQCUCgIJAMwIAgkBDEludGVnZXJFbnRyeQIFAmFjBQJhbAkAzAgCCQEMSW50ZWdlckVudHJ5AgUCYWQAAAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAXUBBQFlBQJhbQkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAXIBBQFpBQJhbgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAXQBBQFpBQJhbwkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQERQGV4dHJOYXRpdmUoMTA2MikBBQFpBQJhYgUCYWgJAMwIAgkBC1N0cmluZ0VudHJ5AgUCYWUJAQFIAQUCYWIFA25pbAUCYWIJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BUQERY2xhaW1CdWxrSW50ZXJuYWwDAmF1AmF2AmF3BAJheAMJAAACCAUBUQZjYWxsZXIFBHRoaXMGCQEBSgECEXBlcm1pc3Npb24gZGVuaWVkAwkAAAIFAmF4BQJheAMJAAACBQJhdwkAkAMBBQJhdgUDbmlsBAFlCQCRAwIFAmF2BQJhdwQCYXkJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWsCBQFlBQJhdQAABAJhZQkBAUQEBQFlBQJhdQkA2AQBCAUBUQ10cmFuc2FjdGlvbklkAgljbGFpbUJ1bGsEAmF6CQD8BwQFBHRoaXMCEWNsYWltQnVsa0ludGVybmFsCQDMCAIFAmF1CQDMCAIFAmF2CQDMCAIJAGQCBQJhdwABBQNuaWwFA25pbAMJAAACBQJhegUCYXoEAmFBCQELdmFsdWVPckVsc2UCCQCfCAEJAQFrAgUBZQUCYXUAAAQCYUIDCQBmAgUCYUEAAAkA/AcEBQR0aGlzAg1jbGFpbUludGVybmFsCQDMCAIFAWUJAMwIAgUCYXUJAMwIAgcFA25pbAUDbmlsBQR1bml0AwkAAAIFAmFCBQJhQgkAlAoCBQNuaWwJAMwIAgUCYXoJAMwIAgUCYUIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFRAR9pbmNVbmNsYWltZWRXaXRoUGF5bWVudEludGVybmFsBQJhQwFlAmFEAmF3AmFFBAJheAMJAAACCAUBUQZjYWxsZXIFBHRoaXMGCQEBSgECEXBlcm1pc3Npb24gZGVuaWVkAwkAAAIFAmF4BQJheAQCYUYJAAACCQCQAwEFAmFDCQCQAwEFAmFEBAJhRwMFAmFGBgkBAUoBAh9saXN0cyBpbiBhcmdzIG11c3QgYmUgc2FtZSBzaXplAwkAAAIFAmFHBQJhRwMJAAACBQJhdwkAkAMBBQJhQwkAlAoCBQNuaWwFAmFFBAFmCQCRAwIFAmFEBQJhdwQCYWoJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAXQBBQFmAAAEAmFICQELdmFsdWVPckVsc2UCCQCfCAEJAQFrAgUBZQUBZgAABAJhSQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBdgEFAWUAAAQCYW8JAGQCBQJhagkAkQMCBQJhQwUCYXcEAmFKCQBkAgUCYUgJAJEDAgUCYUMFAmF3BAJhSwkAZAIFAmFFCQCRAwIFAmFDBQJhdwQCYUwJAPwHBAUEdGhpcwIfaW5jVW5jbGFpbWVkV2l0aFBheW1lbnRJbnRlcm5hbAkAzAgCBQJhQwkAzAgCBQFlCQDMCAIFAmFECQDMCAIJAGQCBQJhdwABCQDMCAIFAmFLBQNuaWwFA25pbAMJAAACBQJhTAUCYUwEAmFNCQEBVAIFAWYFAWUJAJQKAgkAzggCCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBdAEFAWYFAmFvCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBawIFAWUFAWYFAmFKCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBdgEFAWUJAGQCBQJhSQkAkQMCBQJhQwUCYXcFA25pbAUCYU0FAmFMCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAVEBFWNyZWF0ZVJlZmVycmFsUHJvZ3JhbQQBZQJhZwJhTgJhaAQCYXgJAQFQAQUBUQMJAAACBQJheAUCYXgEAmFPAwkAAAIJAKAIAQkBAW4BBQFlBQR1bml0BgkBAUoBAhtwcm9ncmFtIG5hbWUgYWxyZWFkeSBleGlzdHMDCQAAAgUCYU8FAmFPBAJhUAMJAQEhAQkBCGNvbnRhaW5zAgUBZQUBYQkBASEBCQEIY29udGFpbnMCBQFlAgEgBwQBWQMFAmFQBgkBAUoBAhRpbnZhbGlkIHByb2dyYW0gbmFtZQMJAAACBQFZBQFZBAJhUQMJAQIhPQIJAOwHAQkA2QQBBQJhaAUEdW5pdAYJAQFKAQIXaW52YWxpZCByZXdhcmQgYXNzZXQgaWQDCQAAAgUCYVEFAmFRCQCUCgIJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAQFuAQUBZQYJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAXgBBQFlBQJhZwkAzAgCCQELU3RyaW5nRW50cnkCCQEBeQEFAWUFAmFOCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQF3AQUBZQUCYWgJAMwIAgkBDEludGVnZXJFbnRyeQIJAQF2AQUBZQAABQNuaWwFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BUQEKY3JlYXRlUGFpcgQBZQFmAWcCYVIEAVkDCQELdmFsdWVPckVsc2UCCQCgCAEJAQFuAQUBZQcGCQEBSgECFnByb2dyYW0gZG9lcyBub3QgZXhpc3QDCQAAAgUBWQUBWQQCYVMDCQAAAgkAoAgBCQEBZAMFAWUFAWYFAWcFBHVuaXQGCQEBSgECE3BhaXIgYWxyZWFkeSBleGlzdHMDCQAAAgUCYVMFAmFTBAJhVAMJAQIhPQIFAWYFAWcGCQEBSgECFGNhbm5vdCByZWZlciB0byBzZWxmAwkAAAIFAmFUBQJhVAQCYVUJAJsDAQkAuQkCCQDMCAIFAWUJAMwIAgUBZgkAzAgCBQFnBQNuaWwCAToEAmFWCQDZBAEJAQV2YWx1ZQEJAKIIAQUBYwQCYVcDCQD0AwMFAmFVBQJhUgUCYVYGCQEBSgECDWJhZCBzaWduYXR1cmUDCQAAAgUCYVcFAmFXBAJhWAkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBbwIFAWUFAWYAAAQCYVkJAGQCBQJhWAABBAJhTQkBAVQCBQFmBQFlBAFWCQEBVAIFAWcFAWUJAJQKAgkAzggCCQDOCAIJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAQFkAwUBZQUBZgUBZwYJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFvAgUBZQUBZgUCYVkJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAW0CBQFlBQFnBQFmBQNuaWwFAmFNBQFWBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAVEBFnVwZGF0ZVJlZmVycmFsQWN0aXZpdHkDAWUBZwJhWgQCYU4JAQV2YWx1ZQEJAKIIAQkBAXkBBQFlBAJiYQkBAiE9AgkAoAgBCQEBcQIFAWUFAWcFBHVuaXQEAWYJAQV2YWx1ZQEJAKIIAQkBAW0CBQFlBQFnBAJheAMJAAACCQClCAEIBQFRBmNhbGxlcgUCYU4GCQEBSgECEXBlcm1pc3Npb24gZGVuaWVkAwkAAAIFAmF4BQJheAQCYmIDCQAAAgUCYmEFAmFaCQCUCgIFA25pbAUEdW5pdAQCYmIDCQAAAgUCYVoGBAJiYwkAZAIJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAXACBQFlBQFmAAAAAQkAlAoCCQDMCAIJAQxCb29sZWFuRW50cnkCCQEBcQIFAWUFAWcGCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBcAIFAWUFAWYFAmJjBQNuaWwFBHVuaXQEAmJjCQBlAgkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBcAIFAWUFAWYAAAABCQCUCgIJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAXECBQFlBQFnCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBcAIFAWUFAWYFAmJjBQNuaWwFBHVuaXQFAmJiBQJiYgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFRAQxpbmNVbmNsYWltZWQEAWUBZwJiZAJiZQQCYU4JAQV2YWx1ZQEJAKIIAQkBAXkBBQFlBAFmCQEFdmFsdWUBCQCiCAEJAQFtAgUBZQUBZwQCYXgDCQAAAgkApQgBCAUBUQZjYWxsZXIFAmFOBgkBAUoBAhFwZXJtaXNzaW9uIGRlbmllZAMJAAACBQJheAUCYXgEAmJmAwkAAAIFAWUCBnd4bG9jawYJAQFKAQIPaW52YWxpZCBwcm9ncmFtAwkAAAIFAmJmBQJiZgQCYmcDCQEIY29udGFpbnMCCQELdmFsdWVPckVsc2UCCQCiCAEJAQF6AQUBZgIABQFlBgkBAUoBCQCsAgIJAKwCAgkArAICAhhyZWZlcnJlciBub3QgaW4gcHJvZ3JhbT0FAWUCBiBhZGRyPQUBZgMJAAACBQJiZwUCYmcEAmJoAwkBCGNvbnRhaW5zAgkBC3ZhbHVlT3JFbHNlAgkAoggBCQEBegEFAWcCAAUBZQYJAQFKAQkArAICCQCsAgIJAKwCAgIYcmVmZXJyYWwgbm90IGluIHByb2dyYW09BQFlAgYgYWRkcj0FAWcDCQAAAgUCYmgFAmJoBAJiaQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBdAEFAWYAAAQCYUgJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWsCBQFlBQFmAAAEAmJqCQELdmFsdWVPckVsc2UCCQCfCAEJAQF0AQUBZwAABAJiawkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBbAIFAWUFAWcAAAQCYUkJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAXYBBQFlAAAEAmJsCQBkAgUCYmkFAmJkBAJhSgkAZAIFAmFIBQJiZAQCYm0JAGQCBQJiagUCYmUEAmJuCQBkAgUCYmsFAmJlCQCUCgIJAMwIAgkBDEludGVnZXJFbnRyeQIJAQF0AQUBZgUCYmwJAMwIAgkBDEludGVnZXJFbnRyeQIJAQF0AQUBZwUCYm0JAMwIAgkBDEludGVnZXJFbnRyeQIJAQFrAgUBZQUBZgUCYUoJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFsAgUBZQUBZwUCYm4JAMwIAgkBDEludGVnZXJFbnRyeQIJAQF2AQUBZQkAZAIJAGQCBQJhSQUCYmQFAmJlBQNuaWwFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BUQEXaW5jVW5jbGFpbWVkV2l0aFBheW1lbnQCAWUCYUQEAmJmAwkAAAIFAWUCCXd4U3BvdEZlZQYJAQFKAQIPaW52YWxpZCBwcm9ncmFtAwkAAAIFAmJmBQJiZgoBAmJvAgJicAJicQQCYnIJAAACCQDYBAEJAQV2YWx1ZQEIBQJicQdhc3NldElkCQEFdmFsdWUBCQCiCAEJAQF3AQUBZQQCYnMDBQJicgYJAQFKAQIQaW52YWxpZCBhc3NldCBpZAMJAAACBQJicwUCYnMJAM0IAgUCYnAIBQJicQZhbW91bnQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4EAmJ0CgACYnUIBQFRCHBheW1lbnRzCgACYnYJAJADAQUCYnUKAAJidwUDbmlsCgECYngCAmJ5AmJ6AwkAZwIFAmJ6BQJidgUCYnkJAQJibwIFAmJ5CQCRAwIFAmJ1BQJiegoBAmJBAgJieQJiegMJAGcCBQJiegUCYnYFAmJ5CQACAQIUTGlzdCBzaXplIGV4Y2VlZHMgMTAJAQJiQQIJAQJieAIJAQJieAIJAQJieAIJAQJieAIJAQJieAIJAQJieAIJAQJieAIJAQJieAIJAQJieAIJAQJieAIFAmJ3AAAAAQACAAMABAAFAAYABwAIAAkACgQCYUUKAAJiQgkA/AcEBQR0aGlzAh9pbmNVbmNsYWltZWRXaXRoUGF5bWVudEludGVybmFsCQDMCAIFAmJ0CQDMCAIFAWUJAMwIAgUCYUQJAMwIAgAACQDMCAIAAAUDbmlsBQNuaWwDCQABAgUCYkICA0ludAUCYkIJAAIBCQCsAgIJAAMBBQJiQgIYIGNvdWxkbid0IGJlIGNhc3QgdG8gSW50AwkAAAIFAmFFBQJhRQQCYWcJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQV2YWx1ZQEJAKIIAQkBAXgBBQFlBAJhaAkA2QQBCQEFdmFsdWUBCQCiCAEJAQF3AQUBZQkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQJhZwUCYUUFAmFoBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BUQEFY2xhaW0BAWUEAVkDCQELdmFsdWVPckVsc2UCCQCgCAEJAQFuAQUBZQcGCQEBSgECFnByb2dyYW0gZG9lcyBub3QgZXhpc3QDCQAAAgUBWQUBWQQBWAkAAAIJAKUIAQgFAVEGY2FsbGVyCQEFdmFsdWUBCQCiCAEJAQF5AQUBZQQBaQMFAVgJAKUIAQgFAVEMb3JpZ2luQ2FsbGVyCQClCAEIBQFRBmNhbGxlcgQCYkMJAPwHBAUEdGhpcwINY2xhaW1JbnRlcm5hbAkAzAgCBQFlCQDMCAIFAWkJAMwIAgUBWAUDbmlsBQNuaWwDCQAAAgUCYkMFAmJDCQCUCgIFA25pbAUCYkMJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BUQEJY2xhaW1CdWxrAAQCYkQJAKUIAQgFAVEGY2FsbGVyBAJiRQkAoggBCQEBegEJAKUIAQgFAVEGY2FsbGVyBAJiRgMJAQlpc0RlZmluZWQBBQJiRQYJAQFKAQIUbm8gcmVmZXJyYWwgcHJvZ3JhbXMDCQAAAgUCYkYFAmJGBAJiRwkAtQkCCQEFdmFsdWUBBQJiRQICX18EAmJICQD8BwQFBHRoaXMCEWNsYWltQnVsa0ludGVybmFsCQDMCAIFAmJECQDMCAIFAmJHCQDMCAIAAAUDbmlsBQNuaWwDCQAAAgUCYkgFAmJICQCUCgIFA25pbAUCYkgJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BUQENY2xhaW1SRUFET05MWQIBZQFFBAJhYQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBaAIFAWUFAUUAAAQCYWIJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWsCBQFlBQFFAAAJAJQKAgUDbmlsCQDMCAIFAmFiCQDMCAIFAmFhBQNuaWwBUQERY2xhaW1CdWxrUkVBRE9OTFkBAmF1BAJhaQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBcgEFAmF1AAAEAmFqCQELdmFsdWVPckVsc2UCCQCfCAEJAQF0AQUCYXUAAAkAlAoCBQNuaWwJAMwIAgUCYWoJAMwIAgUCYWkFA25pbAFRAQxzZXRUb3RhbEtleXMCAWUBcwQCYkkJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWgCBQFlBQFzAAAEAmJKCQELdmFsdWVPckVsc2UCCQCfCAEJAQFqAgUBZQUBcwAABAJhQQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBawIFAWUFAXMAAAQCYksJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWwCBQFlBQFzAAAEAmFpCQBkAgUCYkkFAmJKBAJhagkAZAIFAmFBBQJiSwkAlAoCCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBcgEFAXMFAmFpCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBdAEFAXMFAmFqBQNuaWwFBHVuaXQBAmJMAQJiTQAEAmJOBAFOCQEBTAADCQABAgUBTgIKQnl0ZVZlY3RvcgQBUwUBTgUBUwMJAAECBQFOAgRVbml0CAUCYkwPc2VuZGVyUHVibGljS2V5CQACAQILTWF0Y2ggZXJyb3IJAPQDAwgFAmJMCWJvZHlCeXRlcwkAkQMCCAUCYkwGcHJvb2ZzAAAFAmJOgQYUSg==", "height": 2562780, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: A8x9rZyXp95QyYfHAvu9ewpFJU1fMKAB1Je8auYDMKni Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 6 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let a = "__"
5+
6+func b () = makeString(["%s", "wxAssetId"], a)
7+
8+
9+let c = makeString(["%s", "backendPublicKey"], a)
10+
11+func d (e,f,g) = makeString(["%s%s%s%s", "existsReferrerToReferral", e, f, g], a)
12+
13+
14+func h (e,i) = makeString(["%s%s%s", "claimedReferrer", e, i], a)
15+
16+
17+func j (e,i) = makeString(["%s%s%s", "claimedReferral", e, i], a)
18+
19+
20+func k (e,i) = makeString(["%s%s%s", "unclaimedReferrer", e, i], a)
21+
22+
23+func l (e,i) = makeString(["%s%s%s", "unclaimedReferral", e, i], a)
24+
25+
26+func m (e,g) = makeString(["%s%s%s", "referrer", e, g], a)
27+
28+
29+func n (e) = makeString(["%s%s", "programName", e], a)
30+
31+
32+func o (e,f) = makeString(["%s%s%s", "totalReferralCount", e, f], a)
33+
34+
35+func p (e,f) = makeString(["%s%s%s", "activeReferralCount", e, f], a)
36+
37+
38+func q (e,g) = makeString(["%s%s%s", "activeReferral", e, g], a)
39+
40+
41+func r (s) = makeString(["%s%s", "claimedTotalAddress", s], a)
42+
43+
44+func t (s) = makeString(["%s%s", "unclaimedTotalAddress", s], a)
45+
46+
47+func u (e) = makeString(["%s%s", "claimedTotal", e], a)
48+
49+
50+func v (e) = makeString(["%s%s", "rewardsTotal", e], a)
51+
52+
53+func w (e) = makeString(["%s%s", "rewardAssetId", e], a)
54+
55+
56+func x (e) = makeString(["%s%s", "treasuryContract", e], a)
57+
58+
59+func y (e) = makeString(["%s%s", "implementationContract", e], a)
60+
61+
62+func z (s) = makeString(["%s%s", "allReferralPrograms", s], a)
63+
64+
65+func A () = "%s__managerPublicKey"
66+
67+
68+func B () = "%s__managerVaultAddress"
69+
70+
71+func C () = addressFromStringValue(getStringValue(B()))
72+
73+
74+func D (e,E,F,G) = makeString(["%s%s%s%s%s", "history", G, e, E, F], a)
75+
76+
77+func H (I) = makeString(["%d%d%d", toString(lastBlock.height), toString(lastBlock.timestamp), toString(I)], a)
78+
79+
80+func J (K) = throw(makeString(["referral.ride:", K], " "))
81+
82+
83+func L () = {
84+ let M = C()
85+ let N = getString(M, A())
86+ if ($isInstanceOf(N, "String"))
87+ then {
88+ let O = N
89+ fromBase58String(O)
90+ }
91+ else if ($isInstanceOf(N, "Unit"))
92+ then unit
93+ else throw("Match error")
94+ }
95+
96+
97+func P (Q) = {
98+ let R = J("permission denied")
99+ let N = L()
100+ if ($isInstanceOf(N, "ByteVector"))
101+ then {
102+ let S = N
103+ if ((Q.callerPublicKey == S))
104+ then true
105+ else R
106+ }
107+ else if ($isInstanceOf(N, "Unit"))
108+ then if ((Q.caller == this))
109+ then true
110+ else R
111+ else throw("Match error")
112+ }
113+
114+
115+func T (s,e) = {
116+ let U = valueOrElse(getString(z(s)), "")
117+ let V = if (contains(U, e))
118+ then nil
119+ else {
120+ let W = if ((U == ""))
121+ then e
122+ else makeString([U, e], a)
123+[StringEntry(z(s), W)]
124+ }
125+ V
126+ }
127+
128+
129+@Callable(Q)
130+func claimInternal (e,i,X) = {
131+ let Y = if (valueOrElse(getBoolean(n(e)), false))
132+ then true
133+ else J("program does not exist")
134+ if ((Y == Y))
135+ then {
136+ let Z = if (X)
137+ then $Tuple5(valueOrElse(getInteger(j(e, i)), 0), valueOrElse(getInteger(l(e, i)), 0), j(e, i), l(e, i), D(e, i, toBase58String(Q.transactionId), "claimReferral"))
138+ else $Tuple5(valueOrElse(getInteger(h(e, i)), 0), valueOrElse(getInteger(k(e, i)), 0), h(e, i), k(e, i), D(e, i, toBase58String(Q.transactionId), "claimReferrer"))
139+ let aa = Z._1
140+ let ab = Z._2
141+ let ac = Z._3
142+ let ad = Z._4
143+ let ae = Z._5
144+ let af = valueOrElse(getInteger(u(e)), 0)
145+ let ag = value(addressFromString(value(getString(x(e)))))
146+ let ah = fromBase58String(value(getString(w(e))))
147+ let ai = valueOrElse(getInteger(r(i)), 0)
148+ let aj = valueOrElse(getInteger(t(i)), 0)
149+ if (if (X)
150+ then (ab == 0)
151+ else false)
152+ then $Tuple2(nil, 0)
153+ else {
154+ let ak = if ((ab > 0))
155+ then true
156+ else J("nothing to claim")
157+ if ((ak == ak))
158+ then {
159+ let al = (aa + ab)
160+ let am = (af + ab)
161+ let an = (ai + ab)
162+ let ao = (aj - ab)
163+ let ap = value(assetBalance(this, ah))
164+ if ((ap == ap))
165+ then {
166+ let aq = invoke(ag, "withdrawReferralReward", [ab], nil)
167+ if ((aq == aq))
168+ then {
169+ let ar = value(assetBalance(this, ah))
170+ if ((ar == ar))
171+ then {
172+ let as = (ar - ap)
173+ if ((as == as))
174+ then {
175+ let at = if ((as == ab))
176+ then true
177+ else J("insufficient balance on referral contract")
178+ if ((at == at))
179+ then $Tuple2([IntegerEntry(ac, al), IntegerEntry(ad, 0), IntegerEntry(u(e), am), IntegerEntry(r(i), an), IntegerEntry(t(i), ao), ScriptTransfer(addressFromStringValue(i), ab, ah), StringEntry(ae, H(ab))], ab)
180+ else throw("Strict value is not equal to itself.")
181+ }
182+ else throw("Strict value is not equal to itself.")
183+ }
184+ else throw("Strict value is not equal to itself.")
185+ }
186+ else throw("Strict value is not equal to itself.")
187+ }
188+ else throw("Strict value is not equal to itself.")
189+ }
190+ else throw("Strict value is not equal to itself.")
191+ }
192+ }
193+ else throw("Strict value is not equal to itself.")
194+ }
195+
196+
197+
198+@Callable(Q)
199+func claimBulkInternal (au,av,aw) = {
200+ let ax = if ((Q.caller == this))
201+ then true
202+ else J("permission denied")
203+ if ((ax == ax))
204+ then if ((aw == size(av)))
205+ then nil
206+ else {
207+ let e = av[aw]
208+ let ay = valueOrElse(getInteger(k(e, au)), 0)
209+ let ae = D(e, au, toBase58String(Q.transactionId), "claimBulk")
210+ let az = invoke(this, "claimBulkInternal", [au, av, (aw + 1)], nil)
211+ if ((az == az))
212+ then {
213+ let aA = valueOrElse(getInteger(k(e, au)), 0)
214+ let aB = if ((aA > 0))
215+ then invoke(this, "claimInternal", [e, au, false], nil)
216+ else unit
217+ if ((aB == aB))
218+ then $Tuple2(nil, [az, aB])
219+ else throw("Strict value is not equal to itself.")
220+ }
221+ else throw("Strict value is not equal to itself.")
222+ }
223+ else throw("Strict value is not equal to itself.")
224+ }
225+
226+
227+
228+@Callable(Q)
229+func incUnclaimedWithPaymentInternal (aC,e,aD,aw,aE) = {
230+ let ax = if ((Q.caller == this))
231+ then true
232+ else J("permission denied")
233+ if ((ax == ax))
234+ then {
235+ let aF = (size(aC) == size(aD))
236+ let aG = if (aF)
237+ then true
238+ else J("lists in args must be same size")
239+ if ((aG == aG))
240+ then if ((aw == size(aC)))
241+ then $Tuple2(nil, aE)
242+ else {
243+ let f = aD[aw]
244+ let aj = valueOrElse(getInteger(t(f)), 0)
245+ let aH = valueOrElse(getInteger(k(e, f)), 0)
246+ let aI = valueOrElse(getInteger(v(e)), 0)
247+ let ao = (aj + aC[aw])
248+ let aJ = (aH + aC[aw])
249+ let aK = (aE + aC[aw])
250+ let aL = invoke(this, "incUnclaimedWithPaymentInternal", [aC, e, aD, (aw + 1), aK], nil)
251+ if ((aL == aL))
252+ then {
253+ let aM = T(f, e)
254+ $Tuple2(([IntegerEntry(t(f), ao), IntegerEntry(k(e, f), aJ), IntegerEntry(v(e), (aI + aC[aw]))] ++ aM), aL)
255+ }
256+ else throw("Strict value is not equal to itself.")
257+ }
258+ else throw("Strict value is not equal to itself.")
259+ }
260+ else throw("Strict value is not equal to itself.")
261+ }
262+
263+
264+
265+@Callable(Q)
266+func createReferralProgram (e,ag,aN,ah) = {
267+ let ax = P(Q)
268+ if ((ax == ax))
269+ then {
270+ let aO = if ((getBoolean(n(e)) == unit))
271+ then true
272+ else J("program name already exists")
273+ if ((aO == aO))
274+ then {
275+ let aP = if (!(contains(e, a)))
276+ then !(contains(e, " "))
277+ else false
278+ let Y = if (aP)
279+ then true
280+ else J("invalid program name")
281+ if ((Y == Y))
282+ then {
283+ let aQ = if ((assetInfo(fromBase58String(ah)) != unit))
284+ then true
285+ else J("invalid reward asset id")
286+ if ((aQ == aQ))
287+ then $Tuple2([BooleanEntry(n(e), true), StringEntry(x(e), ag), StringEntry(y(e), aN), StringEntry(w(e), ah), IntegerEntry(v(e), 0)], unit)
288+ else throw("Strict value is not equal to itself.")
289+ }
290+ else throw("Strict value is not equal to itself.")
291+ }
292+ else throw("Strict value is not equal to itself.")
293+ }
294+ else throw("Strict value is not equal to itself.")
295+ }
296+
297+
298+
299+@Callable(Q)
300+func createPair (e,f,g,aR) = {
301+ let Y = if (valueOrElse(getBoolean(n(e)), false))
302+ then true
303+ else J("program does not exist")
304+ if ((Y == Y))
305+ then {
306+ let aS = if ((getBoolean(d(e, f, g)) == unit))
307+ then true
308+ else J("pair already exists")
309+ if ((aS == aS))
310+ then {
311+ let aT = if ((f != g))
312+ then true
313+ else J("cannot refer to self")
314+ if ((aT == aT))
315+ then {
316+ let aU = toBytes(makeString([e, f, g], ":"))
317+ let aV = fromBase58String(value(getString(c)))
318+ let aW = if (sigVerify(aU, aR, aV))
319+ then true
320+ else J("bad signature")
321+ if ((aW == aW))
322+ then {
323+ let aX = valueOrElse(getInteger(o(e, f)), 0)
324+ let aY = (aX + 1)
325+ let aM = T(f, e)
326+ let V = T(g, e)
327+ $Tuple2((([BooleanEntry(d(e, f, g), true), IntegerEntry(o(e, f), aY), StringEntry(m(e, g), f)] ++ aM) ++ V), unit)
328+ }
329+ else throw("Strict value is not equal to itself.")
330+ }
331+ else throw("Strict value is not equal to itself.")
332+ }
333+ else throw("Strict value is not equal to itself.")
334+ }
335+ else throw("Strict value is not equal to itself.")
336+ }
337+
338+
339+
340+@Callable(Q)
341+func updateReferralActivity (e,g,aZ) = {
342+ let aN = value(getString(y(e)))
343+ let ba = (getBoolean(q(e, g)) != unit)
344+ let f = value(getString(m(e, g)))
345+ let ax = if ((toString(Q.caller) == aN))
346+ then true
347+ else J("permission denied")
348+ if ((ax == ax))
349+ then {
350+ let bb = if ((ba == aZ))
351+ then $Tuple2(nil, unit)
352+ else {
353+ let bb = if ((aZ == true))
354+ then {
355+ let bc = (valueOrElse(getInteger(p(e, f)), 0) + 1)
356+ $Tuple2([BooleanEntry(q(e, g), true), IntegerEntry(p(e, f), bc)], unit)
357+ }
358+ else {
359+ let bc = (valueOrElse(getInteger(p(e, f)), 0) - 1)
360+ $Tuple2([DeleteEntry(q(e, g)), IntegerEntry(p(e, f), bc)], unit)
361+ }
362+ bb
363+ }
364+ bb
365+ }
366+ else throw("Strict value is not equal to itself.")
367+ }
368+
369+
370+
371+@Callable(Q)
372+func incUnclaimed (e,g,bd,be) = {
373+ let aN = value(getString(y(e)))
374+ let f = value(getString(m(e, g)))
375+ let ax = if ((toString(Q.caller) == aN))
376+ then true
377+ else J("permission denied")
378+ if ((ax == ax))
379+ then {
380+ let bf = if ((e == "wxlock"))
381+ then true
382+ else J("invalid program")
383+ if ((bf == bf))
384+ then {
385+ let bg = if (contains(valueOrElse(getString(z(f)), ""), e))
386+ then true
387+ else J(((("referrer not in program=" + e) + " addr=") + f))
388+ if ((bg == bg))
389+ then {
390+ let bh = if (contains(valueOrElse(getString(z(g)), ""), e))
391+ then true
392+ else J(((("referral not in program=" + e) + " addr=") + g))
393+ if ((bh == bh))
394+ then {
395+ let bi = valueOrElse(getInteger(t(f)), 0)
396+ let aH = valueOrElse(getInteger(k(e, f)), 0)
397+ let bj = valueOrElse(getInteger(t(g)), 0)
398+ let bk = valueOrElse(getInteger(l(e, g)), 0)
399+ let aI = valueOrElse(getInteger(v(e)), 0)
400+ let bl = (bi + bd)
401+ let aJ = (aH + bd)
402+ let bm = (bj + be)
403+ let bn = (bk + be)
404+ $Tuple2([IntegerEntry(t(f), bl), IntegerEntry(t(g), bm), IntegerEntry(k(e, f), aJ), IntegerEntry(l(e, g), bn), IntegerEntry(v(e), ((aI + bd) + be))], unit)
405+ }
406+ else throw("Strict value is not equal to itself.")
407+ }
408+ else throw("Strict value is not equal to itself.")
409+ }
410+ else throw("Strict value is not equal to itself.")
411+ }
412+ else throw("Strict value is not equal to itself.")
413+ }
414+
415+
416+
417+@Callable(Q)
418+func incUnclaimedWithPayment (e,aD) = {
419+ let bf = if ((e == "wxSpotFee"))
420+ then true
421+ else J("invalid program")
422+ if ((bf == bf))
423+ then {
424+ func bo (bp,bq) = {
425+ let br = (toBase58String(value(bq.assetId)) == value(getString(w(e))))
426+ let bs = if (br)
427+ then true
428+ else J("invalid asset id")
429+ if ((bs == bs))
430+ then (bp :+ bq.amount)
431+ else throw("Strict value is not equal to itself.")
432+ }
433+
434+ let bt = {
435+ let bu = Q.payments
436+ let bv = size(bu)
437+ let bw = nil
438+ func bx (by,bz) = if ((bz >= bv))
439+ then by
440+ else bo(by, bu[bz])
441+
442+ func bA (by,bz) = if ((bz >= bv))
443+ then by
444+ else throw("List size exceeds 10")
445+
446+ bA(bx(bx(bx(bx(bx(bx(bx(bx(bx(bx(bw, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
447+ }
448+ let aE = {
449+ let bB = invoke(this, "incUnclaimedWithPaymentInternal", [bt, e, aD, 0, 0], nil)
450+ if ($isInstanceOf(bB, "Int"))
451+ then bB
452+ else throw(($getType(bB) + " couldn't be cast to Int"))
453+ }
454+ if ((aE == aE))
455+ then {
456+ let ag = addressFromStringValue(value(getString(x(e))))
457+ let ah = fromBase58String(value(getString(w(e))))
458+[ScriptTransfer(ag, aE, ah)]
459+ }
460+ else throw("Strict value is not equal to itself.")
461+ }
462+ else throw("Strict value is not equal to itself.")
463+ }
464+
465+
466+
467+@Callable(Q)
468+func claim (e) = {
469+ let Y = if (valueOrElse(getBoolean(n(e)), false))
470+ then true
471+ else J("program does not exist")
472+ if ((Y == Y))
473+ then {
474+ let X = (toString(Q.caller) == value(getString(y(e))))
475+ let i = if (X)
476+ then toString(Q.originCaller)
477+ else toString(Q.caller)
478+ let bC = invoke(this, "claimInternal", [e, i, X], nil)
479+ if ((bC == bC))
480+ then $Tuple2(nil, bC)
481+ else throw("Strict value is not equal to itself.")
482+ }
483+ else throw("Strict value is not equal to itself.")
484+ }
485+
486+
487+
488+@Callable(Q)
489+func claimBulk () = {
490+ let bD = toString(Q.caller)
491+ let bE = getString(z(toString(Q.caller)))
492+ let bF = if (isDefined(bE))
493+ then true
494+ else J("no referral programs")
495+ if ((bF == bF))
496+ then {
497+ let bG = split(value(bE), "__")
498+ let bH = invoke(this, "claimBulkInternal", [bD, bG, 0], nil)
499+ if ((bH == bH))
500+ then $Tuple2(nil, bH)
501+ else throw("Strict value is not equal to itself.")
502+ }
503+ else throw("Strict value is not equal to itself.")
504+ }
505+
506+
507+
508+@Callable(Q)
509+func claimREADONLY (e,E) = {
510+ let aa = valueOrElse(getInteger(h(e, E)), 0)
511+ let ab = valueOrElse(getInteger(k(e, E)), 0)
512+ $Tuple2(nil, [ab, aa])
513+ }
514+
515+
516+
517+@Callable(Q)
518+func claimBulkREADONLY (au) = {
519+ let ai = valueOrElse(getInteger(r(au)), 0)
520+ let aj = valueOrElse(getInteger(t(au)), 0)
521+ $Tuple2(nil, [aj, ai])
522+ }
523+
524+
525+
526+@Callable(Q)
527+func setTotalKeys (e,s) = {
528+ let bI = valueOrElse(getInteger(h(e, s)), 0)
529+ let bJ = valueOrElse(getInteger(j(e, s)), 0)
530+ let aA = valueOrElse(getInteger(k(e, s)), 0)
531+ let bK = valueOrElse(getInteger(l(e, s)), 0)
532+ let ai = (bI + bJ)
533+ let aj = (aA + bK)
534+ $Tuple2([IntegerEntry(r(s), ai), IntegerEntry(t(s), aj)], unit)
535+ }
536+
537+
538+@Verifier(bL)
539+func bM () = {
540+ let bN = {
541+ let N = L()
542+ if ($isInstanceOf(N, "ByteVector"))
543+ then {
544+ let S = N
545+ S
546+ }
547+ else if ($isInstanceOf(N, "Unit"))
548+ then bL.senderPublicKey
549+ else throw("Match error")
550+ }
551+ sigVerify(bL.bodyBytes, bL.proofs[0], bN)
552+ }
553+

github/deemru/w8io/169f3d6 
33.03 ms