tx · A8x9rZyXp95QyYfHAvu9ewpFJU1fMKAB1Je8auYDMKni

3N6G8j53WGVsDVPR8R8GBxmsaqkML1ayNKV:  -0.01700000 Waves

2023.05.10 13:16 [2571656] smart account 3N6G8j53WGVsDVPR8R8GBxmsaqkML1ayNKV > SELF 0.00000000 Waves

{ "type": 13, "id": "A8x9rZyXp95QyYfHAvu9ewpFJU1fMKAB1Je8auYDMKni", "fee": 1700000, "feeAssetId": null, "timestamp": 1683713806954, "version": 2, "chainId": 84, "sender": "3N6G8j53WGVsDVPR8R8GBxmsaqkML1ayNKV", "senderPublicKey": "G8swj2SJhdPvP3eHnoPqp9DM2w2LQJABHJSY3ygtNSSo", "proofs": [ "4F2h3bu5BzuSH1LM8f3e9arivvcLvhoP7y8bufQzDZUrPkZquYAT5kyB8TJ4MPCLGXvb2ocmcf5VYVUrwPLMUeJV" ], "script": "base64:BgLeEggCEgUKAwgIBBIFCgMIGAESBwoFEQgYAQESBgoECAgICBIGCgQICAgCEgUKAwgIBBIGCgQICAEBEgQKAggYEgMKAQgSABIECgIICBIDCgEIEgQKAggIIglzZXBhcmF0b3IiDGtleVd4QXNzZXRJZCITa2V5QmFja2VuZFB1YmxpY0tleSIba2V5RXhpc3RzUmVmZXJyZXJUb1JlZmVycmFsIgtwcm9ncmFtTmFtZSIPcmVmZXJyZXJBZGRyZXNzIg9yZWZlcnJhbEFkZHJlc3MiEmtleUNsYWltZWRSZWZlcnJlciIOY2xhaW1lckFkZHJlc3MiEmtleUNsYWltZWRSZWZlcnJhbCIUa2V5VW5jbGFpbWVkUmVmZXJyZXIiFGtleVVuY2xhaW1lZFJlZmVycmFsIgtrZXlSZWZlcnJlciIOa2V5UHJvZ3JhbU5hbWUiFWtleVRvdGFsUmVmZXJyYWxDb3VudCIWa2V5QWN0aXZlUmVmZXJyYWxDb3VudCITa2V5SXNSZWZlcnJhbEFjdGl2ZSIWa2V5Q2xhaW1lZFRvdGFsQWRkcmVzcyIHYWRkcmVzcyIYa2V5VW5jbGFpbWVkVG90YWxBZGRyZXNzIg9rZXlDbGFpbWVkVG90YWwiD2tleVJld2FyZHNUb3RhbCIQa2V5UmV3YXJkQXNzZXRJZCITa2V5VHJlYXN1cnlDb250cmFjdCIZa2V5SW1wbGVtZW50YXRpb25Db250cmFjdCIWa2V5QWxsUmVmZXJyYWxQcm9ncmFtcyITa2V5TWFuYWdlclB1YmxpY0tleSIWa2V5TWFuYWdlclZhdWx0QWRkcmVzcyIcZ2V0TWFuYWdlclZhdWx0QWRkcmVzc09yVGhpcyIHJG1hdGNoMCIBcyIPa2V5Q2xhaW1IaXN0b3J5Igt1c2VyQWRkcmVzcyINdHJhbnNhY3Rpb25JZCIEdHlwZSISZm9ybWF0Q2xhaW1IaXN0b3J5IgZhbW91bnQiCHRocm93RXJyIgNtc2ciFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQiE21hbmFnZXJWYXVsdEFkZHJlc3MiC211c3RNYW5hZ2VyIgFpIgJwZCICcGsiGXVwZGF0ZUFsbFJlZmVycmFsUHJvZ3JhbXMiE2FsbFJlZmVycmFsUHJvZ3JhbXMiGnVwZGF0ZWRBbGxSZWZlcnJhbFByb2dyYW1zIhZuZXdBbGxSZWZlcnJhbFByb2dyYW1zIhhpc0ltcGxlbWVudGF0aW9uQ29udHJhY3QiEmNoZWNrUHJvZ3JhbUV4aXN0cyILJHQwNDc2NDU3MDEiDmNsYWltZXJDbGFpbWVkIhBjbGFpbWVyVW5jbGFpbWVkIgprZXlDbGFpbWVkIgxrZXlVbmNsYWltZWQiD2NsYWltSGlzdG9yeUtleSIMY2xhaW1lZFRvdGFsIhB0cmVhc3VyeUNvbnRyYWN0Ig1yZXdhcmRBc3NldElkIhNjbGFpbWVkVG90YWxBZGRyZXNzIhV1bmNsYWltZWRUb3RhbEFkZHJlc3MiDWNoZWNrQ2FuQ2xhaW0iEW5ld0NsYWltZXJDbGFpbWVkIg9uZXdDbGFpbWVkVG90YWwiFm5ld0NsYWltZWRUb3RhbEFkZHJlc3MiGG5ld1VuY2xhaW1lZFRvdGFsQWRkcmVzcyINYmFsYW5jZUJlZm9yZSIDcmVzIgxiYWxhbmNlQWZ0ZXIiC2JhbGFuY2VEaWZmIgxjaGVja0JhbGFuY2UiB2NsYWltZXIiDHByb2dyYW1OYW1lcyILY3VycmVudEl0ZXIiC2NoZWNrQ2FsbGVyIhBwcm9ncmFtVW5jbGFpbWVkIhFjbGFpbUJ1bGtJbnRlcm5hbCIRdW5jbGFpbWVkUmVmZXJyZXIiBWNsYWltIg5wYXltZW50QW1vdW50cyIRcmVmZXJyZXJBZGRyZXNzZXMiCXJlc0Ftb3VudCIOYXJnc0NvbXBhcmlzb24iBWNoZWNrIhFyZWZlcnJlclVuY2xhaW1lZCIMcmV3YXJkc1RvdGFsIhRuZXdSZWZlcnJlclVuY2xhaW1lZCIMbmV3UmVzQW1vdW50IgNpbnYiGnVwZGF0ZWRBbGxSZWZlcnJlclByb2dyYW1zIhZpbXBsZW1lbnRhdGlvbkNvbnRyYWN0IhBjaGVja1Byb2dyYW1OYW1lIhJwcm9ncmFtTmFtZUlzVmFsaWQiEGNoZWNrUmV3YXJkQXNzZXQiCXNpZ25hdHVyZSIgcGFpclJlZmVycmVyVG9SZWZlcnJhbEV4aXN0Q2hlY2siCW5vUmVmU2VsZiIEcGFpciIQYmFja2VuZFB1YmxpY0tleSIRdmFsaWRhdGVTaWduYXR1cmUiEnRvdGFsUmVmZXJyYWxDb3VudCIVbmV3VG90YWxSZWZlcnJhbENvdW50Ighpc0FjdGl2ZSIQaXNSZWZlcnJhbEFjdGl2ZSIGdXBkYXRlIhZuZXdBY3RpdmVSZWZlcnJhbENvdW50Ig5yZWZlcnJlclJld2FyZCIOcmVmZXJyYWxSZXdhcmQiDGNoZWNrUHJvZ3JhbSIWY2hlY2tSZWZlcnJlckluUHJvZ3JhbSIWY2hlY2tSZWZlcnJhbEluUHJvZ3JhbSIWdW5jbGFpbWVkVG90YWxSZWZlcnJlciIWdW5jbGFpbWVkVG90YWxSZWZlcnJhbCIRcmVmZXJyYWxVbmNsYWltZWQiGW5ld1VuY2xhaW1lZFRvdGFsUmVmZXJyZXIiGW5ld1VuY2xhaW1lZFRvdGFsUmVmZXJyYWwiFG5ld1JlZmVycmFsVW5jbGFpbWVkIgNtYXAiBWFjY3VtIgRuZXh0Igxhc3NldElkQ2hlY2siC2Ftb3VudENoZWNrIghwYXltZW50cyICJGwiAiRzIgUkYWNjMCIFJGYwXzEiAiRhIgIkaSIFJGYwXzIiAUAiDWNsYWltSW50ZXJuYWwiDWNhbGxlckFkZHJlc3MiEWNhbGxlclByb2dyYW1zU3RyIg5wcm9ncmFtc0V4aXN0cyIOY2FsbGVyUHJvZ3JhbXMiCWJ1bGtDbGFpbSIPY2xhaW1lZFJlZmVycmVyIg9jbGFpbWVkUmVmZXJyYWwiEXVuY2xhaW1lZFJlZmVycmFsIgJ0eCIGdmVyaWZ5Ig90YXJnZXRQdWJsaWNLZXkeAAFhAgJfXwEBYgAJALkJAgkAzAgCAgIlcwkAzAgCAgl3eEFzc2V0SWQFA25pbAUBYQABYwkAuQkCCQDMCAICAiVzCQDMCAICEGJhY2tlbmRQdWJsaWNLZXkFA25pbAUBYQEBZAMBZQFmAWcJALkJAgkAzAgCAgglcyVzJXMlcwkAzAgCAhhleGlzdHNSZWZlcnJlclRvUmVmZXJyYWwJAMwIAgUBZQkAzAgCBQFmCQDMCAIFAWcFA25pbAUBYQEBaAIBZQFpCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICD2NsYWltZWRSZWZlcnJlcgkAzAgCBQFlCQDMCAIFAWkFA25pbAUBYQEBagIBZQFpCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICD2NsYWltZWRSZWZlcnJhbAkAzAgCBQFlCQDMCAIFAWkFA25pbAUBYQEBawIBZQFpCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICEXVuY2xhaW1lZFJlZmVycmVyCQDMCAIFAWUJAMwIAgUBaQUDbmlsBQFhAQFsAgFlAWkJALkJAgkAzAgCAgYlcyVzJXMJAMwIAgIRdW5jbGFpbWVkUmVmZXJyYWwJAMwIAgUBZQkAzAgCBQFpBQNuaWwFAWEBAW0CAWUBZwkAuQkCCQDMCAICBiVzJXMlcwkAzAgCAghyZWZlcnJlcgkAzAgCBQFlCQDMCAIFAWcFA25pbAUBYQEBbgEBZQkAuQkCCQDMCAICBCVzJXMJAMwIAgILcHJvZ3JhbU5hbWUJAMwIAgUBZQUDbmlsBQFhAQFvAgFlAWYJALkJAgkAzAgCAgYlcyVzJXMJAMwIAgISdG90YWxSZWZlcnJhbENvdW50CQDMCAIFAWUJAMwIAgUBZgUDbmlsBQFhAQFwAgFlAWYJALkJAgkAzAgCAgYlcyVzJXMJAMwIAgITYWN0aXZlUmVmZXJyYWxDb3VudAkAzAgCBQFlCQDMCAIFAWYFA25pbAUBYQEBcQIBZQFnCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICDmFjdGl2ZVJlZmVycmFsCQDMCAIFAWUJAMwIAgUBZwUDbmlsBQFhAQFyAQFzCQC5CQIJAMwIAgIEJXMlcwkAzAgCAhNjbGFpbWVkVG90YWxBZGRyZXNzCQDMCAIFAXMFA25pbAUBYQEBdAEBcwkAuQkCCQDMCAICBCVzJXMJAMwIAgIVdW5jbGFpbWVkVG90YWxBZGRyZXNzCQDMCAIFAXMFA25pbAUBYQEBdQEBZQkAuQkCCQDMCAICBCVzJXMJAMwIAgIMY2xhaW1lZFRvdGFsCQDMCAIFAWUFA25pbAUBYQEBdgEBZQkAuQkCCQDMCAICBCVzJXMJAMwIAgIMcmV3YXJkc1RvdGFsCQDMCAIFAWUFA25pbAUBYQEBdwEBZQkAuQkCCQDMCAICBCVzJXMJAMwIAgINcmV3YXJkQXNzZXRJZAkAzAgCBQFlBQNuaWwFAWEBAXgBAWUJALkJAgkAzAgCAgQlcyVzCQDMCAICEHRyZWFzdXJ5Q29udHJhY3QJAMwIAgUBZQUDbmlsBQFhAQF5AQFlCQC5CQIJAMwIAgIEJXMlcwkAzAgCAhZpbXBsZW1lbnRhdGlvbkNvbnRyYWN0CQDMCAIFAWUFA25pbAUBYQEBegEBcwkAuQkCCQDMCAICBCVzJXMJAMwIAgITYWxsUmVmZXJyYWxQcm9ncmFtcwkAzAgCBQFzBQNuaWwFAWEBAUEAAhQlc19fbWFuYWdlclB1YmxpY0tleQEBQgACFyVzX19tYW5hZ2VyVmF1bHRBZGRyZXNzAQFDAAQBRAkAoggBCQEBQgADCQABAgUBRAIGU3RyaW5nBAFFBQFECQERQGV4dHJOYXRpdmUoMTA2MikBBQFFBQR0aGlzAQFGBAFlAUcBSAFJCQC5CQIJAMwIAgIKJXMlcyVzJXMlcwkAzAgCAgdoaXN0b3J5CQDMCAIFAUkJAMwIAgUBZQkAzAgCBQFHCQDMCAIFAUgFA25pbAUBYQEBSgEBSwkAuQkCCQDMCAICBiVkJWQlZAkAzAgCCQCkAwEIBQlsYXN0QmxvY2sGaGVpZ2h0CQDMCAIJAKQDAQgFCWxhc3RCbG9jawl0aW1lc3RhbXAJAMwIAgkApAMBBQFLBQNuaWwFAWEBAUwBAU0JAAIBCQC5CQIJAMwIAgIOcmVmZXJyYWwucmlkZToJAMwIAgUBTQUDbmlsAgEgAQFOAAQBTwkBAUMABAFECQCdCAIFAU8JAQFBAAMJAAECBQFEAgZTdHJpbmcEAUUFAUQJANkEAQUBRQMJAAECBQFEAgRVbml0BQR1bml0CQACAQILTWF0Y2ggZXJyb3IBAVABAVEEAVIJAQFMAQIRcGVybWlzc2lvbiBkZW5pZWQEAUQJAQFOAAMJAAECBQFEAgpCeXRlVmVjdG9yBAFTBQFEAwkAAAIIBQFRD2NhbGxlclB1YmxpY0tleQUBUwYFAVIDCQABAgUBRAIEVW5pdAMJAAACCAUBUQZjYWxsZXIFBHRoaXMGBQFSCQACAQILTWF0Y2ggZXJyb3IBAVQCAXMBZQQBVQkBC3ZhbHVlT3JFbHNlAgkAoggBCQEBegEFAXMCAAQBVgMJAQhjb250YWlucwIFAVUFAWUFA25pbAQBVwMJAAACBQFVAgAFAWUJALkJAgkAzAgCBQFVCQDMCAIFAWUFA25pbAUBYQkAzAgCCQELU3RyaW5nRW50cnkCCQEBegEFAXMFAVcFA25pbAUBVg0BUQENY2xhaW1JbnRlcm5hbAMBZQFpAVgEAVkDCQELdmFsdWVPckVsc2UCCQCgCAEJAQFuAQUBZQcGCQEBTAECFnByb2dyYW0gZG9lcyBub3QgZXhpc3QDCQAAAgUBWQUBWQQBWgMFAVgJAJcKBQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBagIFAWUFAWkAAAkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBbAIFAWUFAWkAAAkBAWoCBQFlBQFpCQEBbAIFAWUFAWkJAQFGBAUBZQUBaQkA2AQBCAUBUQ10cmFuc2FjdGlvbklkAg1jbGFpbVJlZmVycmFsCQCXCgUJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWgCBQFlBQFpAAAJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWsCBQFlBQFpAAAJAQFoAgUBZQUBaQkBAWsCBQFlBQFpCQEBRgQFAWUFAWkJANgEAQgFAVENdHJhbnNhY3Rpb25JZAINY2xhaW1SZWZlcnJlcgQCYWEIBQFaAl8xBAJhYggFAVoCXzIEAmFjCAUBWgJfMwQCYWQIBQFaAl80BAJhZQgFAVoCXzUEAmFmCQELdmFsdWVPckVsc2UCCQCfCAEJAQF1AQUBZQAABAJhZwkBBXZhbHVlAQkApggBCQEFdmFsdWUBCQCiCAEJAQF4AQUBZQQCYWgJANkEAQkBBXZhbHVlAQkAoggBCQEBdwEFAWUEAmFpCQELdmFsdWVPckVsc2UCCQCfCAEJAQFyAQUBaQAABAJhagkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBdAEFAWkAAAMDBQFYCQAAAgUCYWIAAAcJAJQKAgUDbmlsAAAEAmFrAwkAZgIFAmFiAAAGCQEBTAECEG5vdGhpbmcgdG8gY2xhaW0DCQAAAgUCYWsFAmFrBAJhbAkAZAIFAmFhBQJhYgQCYW0JAGQCBQJhZgUCYWIEAmFuCQBkAgUCYWkFAmFiBAJhbwkAZQIFAmFqBQJhYgQCYXAJAQV2YWx1ZQEJAPAHAgUEdGhpcwUCYWgDCQAAAgUCYXAFAmFwBAJhcQkA/AcEBQJhZwIWd2l0aGRyYXdSZWZlcnJhbFJld2FyZAkAzAgCBQJhYgUDbmlsBQNuaWwDCQAAAgUCYXEFAmFxBAJhcgkBBXZhbHVlAQkA8AcCBQR0aGlzBQJhaAMJAAACBQJhcgUCYXIEAmFzCQBlAgUCYXIFAmFwAwkAAAIFAmFzBQJhcwQCYXQDCQAAAgUCYXMFAmFiBgkBAUwBAilpbnN1ZmZpY2llbnQgYmFsYW5jZSBvbiByZWZlcnJhbCBjb250cmFjdAMJAAACBQJhdAUCYXQJAJQKAgkAzAgCCQEMSW50ZWdlckVudHJ5AgUCYWMFAmFsCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQJhZAAACQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBdQEFAWUFAmFtCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBcgEFAWkFAmFuCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBdAEFAWkFAmFvCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJARFAZXh0ck5hdGl2ZSgxMDYyKQEFAWkFAmFiBQJhaAkAzAgCCQELU3RyaW5nRW50cnkCBQJhZQkBAUoBBQJhYgUDbmlsBQJhYgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFRARFjbGFpbUJ1bGtJbnRlcm5hbAMCYXUCYXYCYXcEAmF4AwkAAAIIBQFRBmNhbGxlcgUEdGhpcwYJAQFMAQIRcGVybWlzc2lvbiBkZW5pZWQDCQAAAgUCYXgFAmF4AwkAAAIFAmF3CQCQAwEFAmF2BQNuaWwEAWUJAJEDAgUCYXYFAmF3BAJheQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBawIFAWUFAmF1AAAEAmFlCQEBRgQFAWUFAmF1CQDYBAEIBQFRDXRyYW5zYWN0aW9uSWQCCWNsYWltQnVsawQCYXoJAPwHBAUEdGhpcwIRY2xhaW1CdWxrSW50ZXJuYWwJAMwIAgUCYXUJAMwIAgUCYXYJAMwIAgkAZAIFAmF3AAEFA25pbAUDbmlsAwkAAAIFAmF6BQJhegQCYUEJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWsCBQFlBQJhdQAABAJhQgMJAGYCBQJhQQAACQD8BwQFBHRoaXMCDWNsYWltSW50ZXJuYWwJAMwIAgUBZQkAzAgCBQJhdQkAzAgCBwUDbmlsBQNuaWwFBHVuaXQDCQAAAgUCYUIFAmFCCQCUCgIFA25pbAkAzAgCBQJhegkAzAgCBQJhQgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAVEBH2luY1VuY2xhaW1lZFdpdGhQYXltZW50SW50ZXJuYWwFAmFDAWUCYUQCYXcCYUUEAmF4AwkAAAIIBQFRBmNhbGxlcgUEdGhpcwYJAQFMAQIRcGVybWlzc2lvbiBkZW5pZWQDCQAAAgUCYXgFAmF4BAJhRgkAAAIJAJADAQUCYUMJAJADAQUCYUQEAmFHAwUCYUYGCQEBTAECH2xpc3RzIGluIGFyZ3MgbXVzdCBiZSBzYW1lIHNpemUDCQAAAgUCYUcFAmFHAwkAAAIFAmF3CQCQAwEFAmFDCQCUCgIFA25pbAUCYUUEAWYJAJEDAgUCYUQFAmF3BAJhagkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBdAEFAWYAAAQCYUgJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWsCBQFlBQFmAAAEAmFJCQELdmFsdWVPckVsc2UCCQCfCAEJAQF2AQUBZQAABAJhbwkAZAIFAmFqCQCRAwIFAmFDBQJhdwQCYUoJAGQCBQJhSAkAkQMCBQJhQwUCYXcEAmFLCQBkAgUCYUUJAJEDAgUCYUMFAmF3BAJhTAkA/AcEBQR0aGlzAh9pbmNVbmNsYWltZWRXaXRoUGF5bWVudEludGVybmFsCQDMCAIFAmFDCQDMCAIFAWUJAMwIAgUCYUQJAMwIAgkAZAIFAmF3AAEJAMwIAgUCYUsFA25pbAUDbmlsAwkAAAIFAmFMBQJhTAQCYU0JAQFUAgUBZgUBZQkAlAoCCQDOCAIJAMwIAgkBDEludGVnZXJFbnRyeQIJAQF0AQUBZgUCYW8JAMwIAgkBDEludGVnZXJFbnRyeQIJAQFrAgUBZQUBZgUCYUoJAMwIAgkBDEludGVnZXJFbnRyeQIJAQF2AQUBZQkAZAIFAmFJCQCRAwIFAmFDBQJhdwUDbmlsBQJhTQUCYUwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BUQEVY3JlYXRlUmVmZXJyYWxQcm9ncmFtBAFlAmFnAmFOAmFoBAJheAkBAVABBQFRAwkAAAIFAmF4BQJheAQCYU8DCQAAAgkAoAgBCQEBbgEFAWUFBHVuaXQGCQEBTAECG3Byb2dyYW0gbmFtZSBhbHJlYWR5IGV4aXN0cwMJAAACBQJhTwUCYU8EAmFQAwkBASEBCQEIY29udGFpbnMCBQFlBQFhCQEBIQEJAQhjb250YWlucwIFAWUCASAHBAFZAwUCYVAGCQEBTAECFGludmFsaWQgcHJvZ3JhbSBuYW1lAwkAAAIFAVkFAVkEAmFRAwkBAiE9AgkA7AcBCQDZBAEFAmFoBQR1bml0BgkBAUwBAhdpbnZhbGlkIHJld2FyZCBhc3NldCBpZAMJAAACBQJhUQUCYVEJAJQKAgkAzAgCCQEMQm9vbGVhbkVudHJ5AgkBAW4BBQFlBgkAzAgCCQELU3RyaW5nRW50cnkCCQEBeAEFAWUFAmFnCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQF5AQUBZQUCYU4JAMwIAgkBC1N0cmluZ0VudHJ5AgkBAXcBBQFlBQJhaAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAXYBBQFlAAAFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFRAQpjcmVhdGVQYWlyBAFlAWYBZwJhUgQBWQMJAQt2YWx1ZU9yRWxzZQIJAKAIAQkBAW4BBQFlBwYJAQFMAQIWcHJvZ3JhbSBkb2VzIG5vdCBleGlzdAMJAAACBQFZBQFZBAJhUwMJAAACCQCgCAEJAQFkAwUBZQUBZgUBZwUEdW5pdAYJAQFMAQITcGFpciBhbHJlYWR5IGV4aXN0cwMJAAACBQJhUwUCYVMEAmFUAwkBAiE9AgUBZgUBZwYJAQFMAQIUY2Fubm90IHJlZmVyIHRvIHNlbGYDCQAAAgUCYVQFAmFUBAJhVQkAmwMBCQC5CQIJAMwIAgUBZQkAzAgCBQFmCQDMCAIFAWcFA25pbAIBOgQCYVYJANkEAQkBBXZhbHVlAQkAoggBBQFjBAJhVwMJAPQDAwUCYVUFAmFSBQJhVgYJAQFMAQINYmFkIHNpZ25hdHVyZQMJAAACBQJhVwUCYVcEAmFYCQELdmFsdWVPckVsc2UCCQCfCAEJAQFvAgUBZQUBZgAABAJhWQkAZAIFAmFYAAEEAmFNCQEBVAIFAWYFAWUEAVYJAQFUAgUBZwUBZQkAlAoCCQDOCAIJAM4IAgkAzAgCCQEMQm9vbGVhbkVudHJ5AgkBAWQDBQFlBQFmBQFnBgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAW8CBQFlBQFmBQJhWQkAzAgCCQELU3RyaW5nRW50cnkCCQEBbQIFAWUFAWcFAWYFA25pbAUCYU0FAVYFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BUQEWdXBkYXRlUmVmZXJyYWxBY3Rpdml0eQMBZQFnAmFaBAJhTgkBBXZhbHVlAQkAoggBCQEBeQEFAWUEAmJhCQECIT0CCQCgCAEJAQFxAgUBZQUBZwUEdW5pdAQBZgkBBXZhbHVlAQkAoggBCQEBbQIFAWUFAWcEAmF4AwkAAAIJAKUIAQgFAVEGY2FsbGVyBQJhTgYJAQFMAQIRcGVybWlzc2lvbiBkZW5pZWQDCQAAAgUCYXgFAmF4BAJiYgMJAAACBQJiYQUCYVoJAJQKAgUDbmlsBQR1bml0BAJiYgMJAAACBQJhWgYEAmJjCQBkAgkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBcAIFAWUFAWYAAAABCQCUCgIJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAQFxAgUBZQUBZwYJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFwAgUBZQUBZgUCYmMFA25pbAUEdW5pdAQCYmMJAGUCCQELdmFsdWVPckVsc2UCCQCfCAEJAQFwAgUBZQUBZgAAAAEJAJQKAgkAzAgCCQELRGVsZXRlRW50cnkBCQEBcQIFAWUFAWcJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFwAgUBZQUBZgUCYmMFA25pbAUEdW5pdAUCYmIFAmJiCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAVEBDGluY1VuY2xhaW1lZAQBZQFnAmJkAmJlBAJhTgkBBXZhbHVlAQkAoggBCQEBeQEFAWUEAWYJAQV2YWx1ZQEJAKIIAQkBAW0CBQFlBQFnBAJheAMJAAACCQClCAEIBQFRBmNhbGxlcgUCYU4GCQEBTAECEXBlcm1pc3Npb24gZGVuaWVkAwkAAAIFAmF4BQJheAQCYmYDCQAAAgUBZQIGd3hsb2NrBgkBAUwBAg9pbnZhbGlkIHByb2dyYW0DCQAAAgUCYmYFAmJmBAJiZwMJAQhjb250YWlucwIJAQt2YWx1ZU9yRWxzZQIJAKIIAQkBAXoBBQFmAgAFAWUGCQEBTAEJAKwCAgkArAICCQCsAgICGHJlZmVycmVyIG5vdCBpbiBwcm9ncmFtPQUBZQIGIGFkZHI9BQFmAwkAAAIFAmJnBQJiZwQCYmgDCQEIY29udGFpbnMCCQELdmFsdWVPckVsc2UCCQCiCAEJAQF6AQUBZwIABQFlBgkBAUwBCQCsAgIJAKwCAgkArAICAhhyZWZlcnJhbCBub3QgaW4gcHJvZ3JhbT0FAWUCBiBhZGRyPQUBZwMJAAACBQJiaAUCYmgEAmJpCQELdmFsdWVPckVsc2UCCQCfCAEJAQF0AQUBZgAABAJhSAkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBawIFAWUFAWYAAAQCYmoJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAXQBBQFnAAAEAmJrCQELdmFsdWVPckVsc2UCCQCfCAEJAQFsAgUBZQUBZwAABAJhSQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBdgEFAWUAAAQCYmwJAGQCBQJiaQUCYmQEAmFKCQBkAgUCYUgFAmJkBAJibQkAZAIFAmJqBQJiZQQCYm4JAGQCBQJiawUCYmUJAJQKAgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAXQBBQFmBQJibAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAXQBBQFnBQJibQkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAWsCBQFlBQFmBQJhSgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAWwCBQFlBQFnBQJibgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAXYBBQFlCQBkAgkAZAIFAmFJBQJiZAUCYmUFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFRARdpbmNVbmNsYWltZWRXaXRoUGF5bWVudAIBZQJhRAQCYmYDCQAAAgUBZQIJd3hTcG90RmVlBgkBAUwBAg9pbnZhbGlkIHByb2dyYW0DCQAAAgUCYmYFAmJmCgECYm8CAmJwAmJxBAJicgkAAAIJANgEAQkBBXZhbHVlAQgFAmJxB2Fzc2V0SWQJAQV2YWx1ZQEJAKIIAQkBAXcBBQFlBAJicwMFAmJyBgkBAUwBAhBpbnZhbGlkIGFzc2V0IGlkAwkAAAIFAmJzBQJicwkAzQgCBQJicAgFAmJxBmFtb3VudAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgQCYnQKAAJidQgFAVEIcGF5bWVudHMKAAJidgkAkAMBBQJidQoAAmJ3BQNuaWwKAQJieAICYnkCYnoDCQBnAgUCYnoFAmJ2BQJieQkBAmJvAgUCYnkJAJEDAgUCYnUFAmJ6CgECYkECAmJ5AmJ6AwkAZwIFAmJ6BQJidgUCYnkJAAIBAhRMaXN0IHNpemUgZXhjZWVkcyAxMAkBAmJBAgkBAmJ4AgkBAmJ4AgkBAmJ4AgkBAmJ4AgkBAmJ4AgkBAmJ4AgkBAmJ4AgkBAmJ4AgkBAmJ4AgkBAmJ4AgUCYncAAAABAAIAAwAEAAUABgAHAAgACQAKBAJhRQoAAmJCCQD8BwQFBHRoaXMCH2luY1VuY2xhaW1lZFdpdGhQYXltZW50SW50ZXJuYWwJAMwIAgUCYnQJAMwIAgUBZQkAzAgCBQJhRAkAzAgCAAAJAMwIAgAABQNuaWwFA25pbAMJAAECBQJiQgIDSW50BQJiQgkAAgEJAKwCAgkAAwEFAmJCAhggY291bGRuJ3QgYmUgY2FzdCB0byBJbnQDCQAAAgUCYUUFAmFFBAJhZwkBEUBleHRyTmF0aXZlKDEwNjIpAQkBBXZhbHVlAQkAoggBCQEBeAEFAWUEAmFoCQDZBAEJAQV2YWx1ZQEJAKIIAQkBAXcBBQFlCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFAmFnBQJhRQUCYWgFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFRAQVjbGFpbQEBZQQBWQMJAQt2YWx1ZU9yRWxzZQIJAKAIAQkBAW4BBQFlBwYJAQFMAQIWcHJvZ3JhbSBkb2VzIG5vdCBleGlzdAMJAAACBQFZBQFZBAFYCQAAAgkApQgBCAUBUQZjYWxsZXIJAQV2YWx1ZQEJAKIIAQkBAXkBBQFlBAFpAwUBWAkApQgBCAUBUQxvcmlnaW5DYWxsZXIJAKUIAQgFAVEGY2FsbGVyBAJiQwkA/AcEBQR0aGlzAg1jbGFpbUludGVybmFsCQDMCAIFAWUJAMwIAgUBaQkAzAgCBQFYBQNuaWwFA25pbAMJAAACBQJiQwUCYkMJAJQKAgUDbmlsBQJiQwkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFRAQljbGFpbUJ1bGsABAJiRAkApQgBCAUBUQZjYWxsZXIEAmJFCQCiCAEJAQF6AQkApQgBCAUBUQZjYWxsZXIEAmJGAwkBCWlzRGVmaW5lZAEFAmJFBgkBAUwBAhRubyByZWZlcnJhbCBwcm9ncmFtcwMJAAACBQJiRgUCYkYEAmJHCQC1CQIJAQV2YWx1ZQEFAmJFAgJfXwQCYkgJAPwHBAUEdGhpcwIRY2xhaW1CdWxrSW50ZXJuYWwJAMwIAgUCYkQJAMwIAgUCYkcJAMwIAgAABQNuaWwFA25pbAMJAAACBQJiSAUCYkgJAJQKAgUDbmlsBQJiSAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFRAQ1jbGFpbVJFQURPTkxZAgFlAUcEAmFhCQELdmFsdWVPckVsc2UCCQCfCAEJAQFoAgUBZQUBRwAABAJhYgkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBawIFAWUFAUcAAAkAlAoCBQNuaWwJAMwIAgUCYWIJAMwIAgUCYWEFA25pbAFRARFjbGFpbUJ1bGtSRUFET05MWQECYXUEAmFpCQELdmFsdWVPckVsc2UCCQCfCAEJAQFyAQUCYXUAAAQCYWoJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAXQBBQJhdQAACQCUCgIFA25pbAkAzAgCBQJhagkAzAgCBQJhaQUDbmlsAVEBDHNldFRvdGFsS2V5cwIBZQFzBAJiSQkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBaAIFAWUFAXMAAAQCYkoJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAWoCBQFlBQFzAAAEAmFBCQELdmFsdWVPckVsc2UCCQCfCAEJAQFrAgUBZQUBcwAABAJiSwkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBbAIFAWUFAXMAAAQCYWkJAGQCBQJiSQUCYkoEAmFqCQBkAgUCYUEFAmJLCQCUCgIJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFyAQUBcwUCYWkJAMwIAgkBDEludGVnZXJFbnRyeQIJAQF0AQUBcwUCYWoFA25pbAUEdW5pdAECYkwBAmJNAAQCYk4EAUQJAQFOAAMJAAECBQFEAgpCeXRlVmVjdG9yBAFTBQFEBQFTAwkAAQIFAUQCBFVuaXQIBQJiTA9zZW5kZXJQdWJsaWNLZXkJAAIBAgtNYXRjaCBlcnJvcgkA9AMDCAUCYkwJYm9keUJ5dGVzCQCRAwIIBQJiTAZwcm9vZnMAAAUCYk44C0QG", "height": 2571656, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6avgBrkSjVmTjA6vuNDMQP7TyUeeSVWT4hYJptRQpNPJ Next: none Diff:
OldNewDifferences
6868 func B () = "%s__managerVaultAddress"
6969
7070
71-func C () = addressFromStringValue(getStringValue(B()))
71+func C () = {
72+ let D = getString(B())
73+ if ($isInstanceOf(D, "String"))
74+ then {
75+ let E = D
76+ addressFromStringValue(E)
77+ }
78+ else this
79+ }
7280
7381
74-func D (e,E,F,G) = makeString(["%s%s%s%s%s", "history", G, e, E, F], a)
82+func F (e,G,H,I) = makeString(["%s%s%s%s%s", "history", I, e, G, H], a)
7583
7684
77-func H (I) = makeString(["%d%d%d", toString(lastBlock.height), toString(lastBlock.timestamp), toString(I)], a)
85+func J (K) = makeString(["%d%d%d", toString(lastBlock.height), toString(lastBlock.timestamp), toString(K)], a)
7886
7987
80-func J (K) = throw(makeString(["referral.ride:", K], " "))
88+func L (M) = throw(makeString(["referral.ride:", M], " "))
8189
8290
83-func L () = {
84- let M = C()
85- let N = getString(M, A())
86- if ($isInstanceOf(N, "String"))
91+func N () = {
92+ let O = C()
93+ let D = getString(O, A())
94+ if ($isInstanceOf(D, "String"))
8795 then {
88- let O = N
89- fromBase58String(O)
96+ let E = D
97+ fromBase58String(E)
9098 }
91- else if ($isInstanceOf(N, "Unit"))
99+ else if ($isInstanceOf(D, "Unit"))
92100 then unit
93101 else throw("Match error")
94102 }
95103
96104
97105 func P (Q) = {
98- let R = J("permission denied")
99- let N = L()
100- if ($isInstanceOf(N, "ByteVector"))
106+ let R = L("permission denied")
107+ let D = N()
108+ if ($isInstanceOf(D, "ByteVector"))
101109 then {
102- let S = N
110+ let S = D
103111 if ((Q.callerPublicKey == S))
104112 then true
105113 else R
106114 }
107- else if ($isInstanceOf(N, "Unit"))
115+ else if ($isInstanceOf(D, "Unit"))
108116 then if ((Q.caller == this))
109117 then true
110118 else R
130138 func claimInternal (e,i,X) = {
131139 let Y = if (valueOrElse(getBoolean(n(e)), false))
132140 then true
133- else J("program does not exist")
141+ else L("program does not exist")
134142 if ((Y == Y))
135143 then {
136144 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"))
145+ then $Tuple5(valueOrElse(getInteger(j(e, i)), 0), valueOrElse(getInteger(l(e, i)), 0), j(e, i), l(e, i), F(e, i, toBase58String(Q.transactionId), "claimReferral"))
146+ else $Tuple5(valueOrElse(getInteger(h(e, i)), 0), valueOrElse(getInteger(k(e, i)), 0), h(e, i), k(e, i), F(e, i, toBase58String(Q.transactionId), "claimReferrer"))
139147 let aa = Z._1
140148 let ab = Z._2
141149 let ac = Z._3
153161 else {
154162 let ak = if ((ab > 0))
155163 then true
156- else J("nothing to claim")
164+ else L("nothing to claim")
157165 if ((ak == ak))
158166 then {
159167 let al = (aa + ab)
174182 then {
175183 let at = if ((as == ab))
176184 then true
177- else J("insufficient balance on referral contract")
185+ else L("insufficient balance on referral contract")
178186 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)
187+ 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, J(ab))], ab)
180188 else throw("Strict value is not equal to itself.")
181189 }
182190 else throw("Strict value is not equal to itself.")
199207 func claimBulkInternal (au,av,aw) = {
200208 let ax = if ((Q.caller == this))
201209 then true
202- else J("permission denied")
210+ else L("permission denied")
203211 if ((ax == ax))
204212 then if ((aw == size(av)))
205213 then nil
206214 else {
207215 let e = av[aw]
208216 let ay = valueOrElse(getInteger(k(e, au)), 0)
209- let ae = D(e, au, toBase58String(Q.transactionId), "claimBulk")
217+ let ae = F(e, au, toBase58String(Q.transactionId), "claimBulk")
210218 let az = invoke(this, "claimBulkInternal", [au, av, (aw + 1)], nil)
211219 if ((az == az))
212220 then {
229237 func incUnclaimedWithPaymentInternal (aC,e,aD,aw,aE) = {
230238 let ax = if ((Q.caller == this))
231239 then true
232- else J("permission denied")
240+ else L("permission denied")
233241 if ((ax == ax))
234242 then {
235243 let aF = (size(aC) == size(aD))
236244 let aG = if (aF)
237245 then true
238- else J("lists in args must be same size")
246+ else L("lists in args must be same size")
239247 if ((aG == aG))
240248 then if ((aw == size(aC)))
241249 then $Tuple2(nil, aE)
269277 then {
270278 let aO = if ((getBoolean(n(e)) == unit))
271279 then true
272- else J("program name already exists")
280+ else L("program name already exists")
273281 if ((aO == aO))
274282 then {
275283 let aP = if (!(contains(e, a)))
277285 else false
278286 let Y = if (aP)
279287 then true
280- else J("invalid program name")
288+ else L("invalid program name")
281289 if ((Y == Y))
282290 then {
283291 let aQ = if ((assetInfo(fromBase58String(ah)) != unit))
284292 then true
285- else J("invalid reward asset id")
293+ else L("invalid reward asset id")
286294 if ((aQ == aQ))
287295 then $Tuple2([BooleanEntry(n(e), true), StringEntry(x(e), ag), StringEntry(y(e), aN), StringEntry(w(e), ah), IntegerEntry(v(e), 0)], unit)
288296 else throw("Strict value is not equal to itself.")
300308 func createPair (e,f,g,aR) = {
301309 let Y = if (valueOrElse(getBoolean(n(e)), false))
302310 then true
303- else J("program does not exist")
311+ else L("program does not exist")
304312 if ((Y == Y))
305313 then {
306314 let aS = if ((getBoolean(d(e, f, g)) == unit))
307315 then true
308- else J("pair already exists")
316+ else L("pair already exists")
309317 if ((aS == aS))
310318 then {
311319 let aT = if ((f != g))
312320 then true
313- else J("cannot refer to self")
321+ else L("cannot refer to self")
314322 if ((aT == aT))
315323 then {
316324 let aU = toBytes(makeString([e, f, g], ":"))
317325 let aV = fromBase58String(value(getString(c)))
318326 let aW = if (sigVerify(aU, aR, aV))
319327 then true
320- else J("bad signature")
328+ else L("bad signature")
321329 if ((aW == aW))
322330 then {
323331 let aX = valueOrElse(getInteger(o(e, f)), 0)
344352 let f = value(getString(m(e, g)))
345353 let ax = if ((toString(Q.caller) == aN))
346354 then true
347- else J("permission denied")
355+ else L("permission denied")
348356 if ((ax == ax))
349357 then {
350358 let bb = if ((ba == aZ))
374382 let f = value(getString(m(e, g)))
375383 let ax = if ((toString(Q.caller) == aN))
376384 then true
377- else J("permission denied")
385+ else L("permission denied")
378386 if ((ax == ax))
379387 then {
380388 let bf = if ((e == "wxlock"))
381389 then true
382- else J("invalid program")
390+ else L("invalid program")
383391 if ((bf == bf))
384392 then {
385393 let bg = if (contains(valueOrElse(getString(z(f)), ""), e))
386394 then true
387- else J(((("referrer not in program=" + e) + " addr=") + f))
395+ else L(((("referrer not in program=" + e) + " addr=") + f))
388396 if ((bg == bg))
389397 then {
390398 let bh = if (contains(valueOrElse(getString(z(g)), ""), e))
391399 then true
392- else J(((("referral not in program=" + e) + " addr=") + g))
400+ else L(((("referral not in program=" + e) + " addr=") + g))
393401 if ((bh == bh))
394402 then {
395403 let bi = valueOrElse(getInteger(t(f)), 0)
418426 func incUnclaimedWithPayment (e,aD) = {
419427 let bf = if ((e == "wxSpotFee"))
420428 then true
421- else J("invalid program")
429+ else L("invalid program")
422430 if ((bf == bf))
423431 then {
424432 func bo (bp,bq) = {
425433 let br = (toBase58String(value(bq.assetId)) == value(getString(w(e))))
426434 let bs = if (br)
427435 then true
428- else J("invalid asset id")
436+ else L("invalid asset id")
429437 if ((bs == bs))
430438 then (bp :+ bq.amount)
431439 else throw("Strict value is not equal to itself.")
468476 func claim (e) = {
469477 let Y = if (valueOrElse(getBoolean(n(e)), false))
470478 then true
471- else J("program does not exist")
479+ else L("program does not exist")
472480 if ((Y == Y))
473481 then {
474482 let X = (toString(Q.caller) == value(getString(y(e))))
491499 let bE = getString(z(toString(Q.caller)))
492500 let bF = if (isDefined(bE))
493501 then true
494- else J("no referral programs")
502+ else L("no referral programs")
495503 if ((bF == bF))
496504 then {
497505 let bG = split(value(bE), "__")
506514
507515
508516 @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)
517+func claimREADONLY (e,G) = {
518+ let aa = valueOrElse(getInteger(h(e, G)), 0)
519+ let ab = valueOrElse(getInteger(k(e, G)), 0)
512520 $Tuple2(nil, [ab, aa])
513521 }
514522
538546 @Verifier(bL)
539547 func bM () = {
540548 let bN = {
541- let N = L()
542- if ($isInstanceOf(N, "ByteVector"))
549+ let D = N()
550+ if ($isInstanceOf(D, "ByteVector"))
543551 then {
544- let S = N
552+ let S = D
545553 S
546554 }
547- else if ($isInstanceOf(N, "Unit"))
555+ else if ($isInstanceOf(D, "Unit"))
548556 then bL.senderPublicKey
549557 else throw("Match error")
550558 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 func b () = makeString(["%s", "wxAssetId"], a)
77
88
99 let c = makeString(["%s", "backendPublicKey"], a)
1010
1111 func d (e,f,g) = makeString(["%s%s%s%s", "existsReferrerToReferral", e, f, g], a)
1212
1313
1414 func h (e,i) = makeString(["%s%s%s", "claimedReferrer", e, i], a)
1515
1616
1717 func j (e,i) = makeString(["%s%s%s", "claimedReferral", e, i], a)
1818
1919
2020 func k (e,i) = makeString(["%s%s%s", "unclaimedReferrer", e, i], a)
2121
2222
2323 func l (e,i) = makeString(["%s%s%s", "unclaimedReferral", e, i], a)
2424
2525
2626 func m (e,g) = makeString(["%s%s%s", "referrer", e, g], a)
2727
2828
2929 func n (e) = makeString(["%s%s", "programName", e], a)
3030
3131
3232 func o (e,f) = makeString(["%s%s%s", "totalReferralCount", e, f], a)
3333
3434
3535 func p (e,f) = makeString(["%s%s%s", "activeReferralCount", e, f], a)
3636
3737
3838 func q (e,g) = makeString(["%s%s%s", "activeReferral", e, g], a)
3939
4040
4141 func r (s) = makeString(["%s%s", "claimedTotalAddress", s], a)
4242
4343
4444 func t (s) = makeString(["%s%s", "unclaimedTotalAddress", s], a)
4545
4646
4747 func u (e) = makeString(["%s%s", "claimedTotal", e], a)
4848
4949
5050 func v (e) = makeString(["%s%s", "rewardsTotal", e], a)
5151
5252
5353 func w (e) = makeString(["%s%s", "rewardAssetId", e], a)
5454
5555
5656 func x (e) = makeString(["%s%s", "treasuryContract", e], a)
5757
5858
5959 func y (e) = makeString(["%s%s", "implementationContract", e], a)
6060
6161
6262 func z (s) = makeString(["%s%s", "allReferralPrograms", s], a)
6363
6464
6565 func A () = "%s__managerPublicKey"
6666
6767
6868 func B () = "%s__managerVaultAddress"
6969
7070
71-func C () = addressFromStringValue(getStringValue(B()))
71+func C () = {
72+ let D = getString(B())
73+ if ($isInstanceOf(D, "String"))
74+ then {
75+ let E = D
76+ addressFromStringValue(E)
77+ }
78+ else this
79+ }
7280
7381
74-func D (e,E,F,G) = makeString(["%s%s%s%s%s", "history", G, e, E, F], a)
82+func F (e,G,H,I) = makeString(["%s%s%s%s%s", "history", I, e, G, H], a)
7583
7684
77-func H (I) = makeString(["%d%d%d", toString(lastBlock.height), toString(lastBlock.timestamp), toString(I)], a)
85+func J (K) = makeString(["%d%d%d", toString(lastBlock.height), toString(lastBlock.timestamp), toString(K)], a)
7886
7987
80-func J (K) = throw(makeString(["referral.ride:", K], " "))
88+func L (M) = throw(makeString(["referral.ride:", M], " "))
8189
8290
83-func L () = {
84- let M = C()
85- let N = getString(M, A())
86- if ($isInstanceOf(N, "String"))
91+func N () = {
92+ let O = C()
93+ let D = getString(O, A())
94+ if ($isInstanceOf(D, "String"))
8795 then {
88- let O = N
89- fromBase58String(O)
96+ let E = D
97+ fromBase58String(E)
9098 }
91- else if ($isInstanceOf(N, "Unit"))
99+ else if ($isInstanceOf(D, "Unit"))
92100 then unit
93101 else throw("Match error")
94102 }
95103
96104
97105 func P (Q) = {
98- let R = J("permission denied")
99- let N = L()
100- if ($isInstanceOf(N, "ByteVector"))
106+ let R = L("permission denied")
107+ let D = N()
108+ if ($isInstanceOf(D, "ByteVector"))
101109 then {
102- let S = N
110+ let S = D
103111 if ((Q.callerPublicKey == S))
104112 then true
105113 else R
106114 }
107- else if ($isInstanceOf(N, "Unit"))
115+ else if ($isInstanceOf(D, "Unit"))
108116 then if ((Q.caller == this))
109117 then true
110118 else R
111119 else throw("Match error")
112120 }
113121
114122
115123 func T (s,e) = {
116124 let U = valueOrElse(getString(z(s)), "")
117125 let V = if (contains(U, e))
118126 then nil
119127 else {
120128 let W = if ((U == ""))
121129 then e
122130 else makeString([U, e], a)
123131 [StringEntry(z(s), W)]
124132 }
125133 V
126134 }
127135
128136
129137 @Callable(Q)
130138 func claimInternal (e,i,X) = {
131139 let Y = if (valueOrElse(getBoolean(n(e)), false))
132140 then true
133- else J("program does not exist")
141+ else L("program does not exist")
134142 if ((Y == Y))
135143 then {
136144 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"))
145+ then $Tuple5(valueOrElse(getInteger(j(e, i)), 0), valueOrElse(getInteger(l(e, i)), 0), j(e, i), l(e, i), F(e, i, toBase58String(Q.transactionId), "claimReferral"))
146+ else $Tuple5(valueOrElse(getInteger(h(e, i)), 0), valueOrElse(getInteger(k(e, i)), 0), h(e, i), k(e, i), F(e, i, toBase58String(Q.transactionId), "claimReferrer"))
139147 let aa = Z._1
140148 let ab = Z._2
141149 let ac = Z._3
142150 let ad = Z._4
143151 let ae = Z._5
144152 let af = valueOrElse(getInteger(u(e)), 0)
145153 let ag = value(addressFromString(value(getString(x(e)))))
146154 let ah = fromBase58String(value(getString(w(e))))
147155 let ai = valueOrElse(getInteger(r(i)), 0)
148156 let aj = valueOrElse(getInteger(t(i)), 0)
149157 if (if (X)
150158 then (ab == 0)
151159 else false)
152160 then $Tuple2(nil, 0)
153161 else {
154162 let ak = if ((ab > 0))
155163 then true
156- else J("nothing to claim")
164+ else L("nothing to claim")
157165 if ((ak == ak))
158166 then {
159167 let al = (aa + ab)
160168 let am = (af + ab)
161169 let an = (ai + ab)
162170 let ao = (aj - ab)
163171 let ap = value(assetBalance(this, ah))
164172 if ((ap == ap))
165173 then {
166174 let aq = invoke(ag, "withdrawReferralReward", [ab], nil)
167175 if ((aq == aq))
168176 then {
169177 let ar = value(assetBalance(this, ah))
170178 if ((ar == ar))
171179 then {
172180 let as = (ar - ap)
173181 if ((as == as))
174182 then {
175183 let at = if ((as == ab))
176184 then true
177- else J("insufficient balance on referral contract")
185+ else L("insufficient balance on referral contract")
178186 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)
187+ 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, J(ab))], ab)
180188 else throw("Strict value is not equal to itself.")
181189 }
182190 else throw("Strict value is not equal to itself.")
183191 }
184192 else throw("Strict value is not equal to itself.")
185193 }
186194 else throw("Strict value is not equal to itself.")
187195 }
188196 else throw("Strict value is not equal to itself.")
189197 }
190198 else throw("Strict value is not equal to itself.")
191199 }
192200 }
193201 else throw("Strict value is not equal to itself.")
194202 }
195203
196204
197205
198206 @Callable(Q)
199207 func claimBulkInternal (au,av,aw) = {
200208 let ax = if ((Q.caller == this))
201209 then true
202- else J("permission denied")
210+ else L("permission denied")
203211 if ((ax == ax))
204212 then if ((aw == size(av)))
205213 then nil
206214 else {
207215 let e = av[aw]
208216 let ay = valueOrElse(getInteger(k(e, au)), 0)
209- let ae = D(e, au, toBase58String(Q.transactionId), "claimBulk")
217+ let ae = F(e, au, toBase58String(Q.transactionId), "claimBulk")
210218 let az = invoke(this, "claimBulkInternal", [au, av, (aw + 1)], nil)
211219 if ((az == az))
212220 then {
213221 let aA = valueOrElse(getInteger(k(e, au)), 0)
214222 let aB = if ((aA > 0))
215223 then invoke(this, "claimInternal", [e, au, false], nil)
216224 else unit
217225 if ((aB == aB))
218226 then $Tuple2(nil, [az, aB])
219227 else throw("Strict value is not equal to itself.")
220228 }
221229 else throw("Strict value is not equal to itself.")
222230 }
223231 else throw("Strict value is not equal to itself.")
224232 }
225233
226234
227235
228236 @Callable(Q)
229237 func incUnclaimedWithPaymentInternal (aC,e,aD,aw,aE) = {
230238 let ax = if ((Q.caller == this))
231239 then true
232- else J("permission denied")
240+ else L("permission denied")
233241 if ((ax == ax))
234242 then {
235243 let aF = (size(aC) == size(aD))
236244 let aG = if (aF)
237245 then true
238- else J("lists in args must be same size")
246+ else L("lists in args must be same size")
239247 if ((aG == aG))
240248 then if ((aw == size(aC)))
241249 then $Tuple2(nil, aE)
242250 else {
243251 let f = aD[aw]
244252 let aj = valueOrElse(getInteger(t(f)), 0)
245253 let aH = valueOrElse(getInteger(k(e, f)), 0)
246254 let aI = valueOrElse(getInteger(v(e)), 0)
247255 let ao = (aj + aC[aw])
248256 let aJ = (aH + aC[aw])
249257 let aK = (aE + aC[aw])
250258 let aL = invoke(this, "incUnclaimedWithPaymentInternal", [aC, e, aD, (aw + 1), aK], nil)
251259 if ((aL == aL))
252260 then {
253261 let aM = T(f, e)
254262 $Tuple2(([IntegerEntry(t(f), ao), IntegerEntry(k(e, f), aJ), IntegerEntry(v(e), (aI + aC[aw]))] ++ aM), aL)
255263 }
256264 else throw("Strict value is not equal to itself.")
257265 }
258266 else throw("Strict value is not equal to itself.")
259267 }
260268 else throw("Strict value is not equal to itself.")
261269 }
262270
263271
264272
265273 @Callable(Q)
266274 func createReferralProgram (e,ag,aN,ah) = {
267275 let ax = P(Q)
268276 if ((ax == ax))
269277 then {
270278 let aO = if ((getBoolean(n(e)) == unit))
271279 then true
272- else J("program name already exists")
280+ else L("program name already exists")
273281 if ((aO == aO))
274282 then {
275283 let aP = if (!(contains(e, a)))
276284 then !(contains(e, " "))
277285 else false
278286 let Y = if (aP)
279287 then true
280- else J("invalid program name")
288+ else L("invalid program name")
281289 if ((Y == Y))
282290 then {
283291 let aQ = if ((assetInfo(fromBase58String(ah)) != unit))
284292 then true
285- else J("invalid reward asset id")
293+ else L("invalid reward asset id")
286294 if ((aQ == aQ))
287295 then $Tuple2([BooleanEntry(n(e), true), StringEntry(x(e), ag), StringEntry(y(e), aN), StringEntry(w(e), ah), IntegerEntry(v(e), 0)], unit)
288296 else throw("Strict value is not equal to itself.")
289297 }
290298 else throw("Strict value is not equal to itself.")
291299 }
292300 else throw("Strict value is not equal to itself.")
293301 }
294302 else throw("Strict value is not equal to itself.")
295303 }
296304
297305
298306
299307 @Callable(Q)
300308 func createPair (e,f,g,aR) = {
301309 let Y = if (valueOrElse(getBoolean(n(e)), false))
302310 then true
303- else J("program does not exist")
311+ else L("program does not exist")
304312 if ((Y == Y))
305313 then {
306314 let aS = if ((getBoolean(d(e, f, g)) == unit))
307315 then true
308- else J("pair already exists")
316+ else L("pair already exists")
309317 if ((aS == aS))
310318 then {
311319 let aT = if ((f != g))
312320 then true
313- else J("cannot refer to self")
321+ else L("cannot refer to self")
314322 if ((aT == aT))
315323 then {
316324 let aU = toBytes(makeString([e, f, g], ":"))
317325 let aV = fromBase58String(value(getString(c)))
318326 let aW = if (sigVerify(aU, aR, aV))
319327 then true
320- else J("bad signature")
328+ else L("bad signature")
321329 if ((aW == aW))
322330 then {
323331 let aX = valueOrElse(getInteger(o(e, f)), 0)
324332 let aY = (aX + 1)
325333 let aM = T(f, e)
326334 let V = T(g, e)
327335 $Tuple2((([BooleanEntry(d(e, f, g), true), IntegerEntry(o(e, f), aY), StringEntry(m(e, g), f)] ++ aM) ++ V), unit)
328336 }
329337 else throw("Strict value is not equal to itself.")
330338 }
331339 else throw("Strict value is not equal to itself.")
332340 }
333341 else throw("Strict value is not equal to itself.")
334342 }
335343 else throw("Strict value is not equal to itself.")
336344 }
337345
338346
339347
340348 @Callable(Q)
341349 func updateReferralActivity (e,g,aZ) = {
342350 let aN = value(getString(y(e)))
343351 let ba = (getBoolean(q(e, g)) != unit)
344352 let f = value(getString(m(e, g)))
345353 let ax = if ((toString(Q.caller) == aN))
346354 then true
347- else J("permission denied")
355+ else L("permission denied")
348356 if ((ax == ax))
349357 then {
350358 let bb = if ((ba == aZ))
351359 then $Tuple2(nil, unit)
352360 else {
353361 let bb = if ((aZ == true))
354362 then {
355363 let bc = (valueOrElse(getInteger(p(e, f)), 0) + 1)
356364 $Tuple2([BooleanEntry(q(e, g), true), IntegerEntry(p(e, f), bc)], unit)
357365 }
358366 else {
359367 let bc = (valueOrElse(getInteger(p(e, f)), 0) - 1)
360368 $Tuple2([DeleteEntry(q(e, g)), IntegerEntry(p(e, f), bc)], unit)
361369 }
362370 bb
363371 }
364372 bb
365373 }
366374 else throw("Strict value is not equal to itself.")
367375 }
368376
369377
370378
371379 @Callable(Q)
372380 func incUnclaimed (e,g,bd,be) = {
373381 let aN = value(getString(y(e)))
374382 let f = value(getString(m(e, g)))
375383 let ax = if ((toString(Q.caller) == aN))
376384 then true
377- else J("permission denied")
385+ else L("permission denied")
378386 if ((ax == ax))
379387 then {
380388 let bf = if ((e == "wxlock"))
381389 then true
382- else J("invalid program")
390+ else L("invalid program")
383391 if ((bf == bf))
384392 then {
385393 let bg = if (contains(valueOrElse(getString(z(f)), ""), e))
386394 then true
387- else J(((("referrer not in program=" + e) + " addr=") + f))
395+ else L(((("referrer not in program=" + e) + " addr=") + f))
388396 if ((bg == bg))
389397 then {
390398 let bh = if (contains(valueOrElse(getString(z(g)), ""), e))
391399 then true
392- else J(((("referral not in program=" + e) + " addr=") + g))
400+ else L(((("referral not in program=" + e) + " addr=") + g))
393401 if ((bh == bh))
394402 then {
395403 let bi = valueOrElse(getInteger(t(f)), 0)
396404 let aH = valueOrElse(getInteger(k(e, f)), 0)
397405 let bj = valueOrElse(getInteger(t(g)), 0)
398406 let bk = valueOrElse(getInteger(l(e, g)), 0)
399407 let aI = valueOrElse(getInteger(v(e)), 0)
400408 let bl = (bi + bd)
401409 let aJ = (aH + bd)
402410 let bm = (bj + be)
403411 let bn = (bk + be)
404412 $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)
405413 }
406414 else throw("Strict value is not equal to itself.")
407415 }
408416 else throw("Strict value is not equal to itself.")
409417 }
410418 else throw("Strict value is not equal to itself.")
411419 }
412420 else throw("Strict value is not equal to itself.")
413421 }
414422
415423
416424
417425 @Callable(Q)
418426 func incUnclaimedWithPayment (e,aD) = {
419427 let bf = if ((e == "wxSpotFee"))
420428 then true
421- else J("invalid program")
429+ else L("invalid program")
422430 if ((bf == bf))
423431 then {
424432 func bo (bp,bq) = {
425433 let br = (toBase58String(value(bq.assetId)) == value(getString(w(e))))
426434 let bs = if (br)
427435 then true
428- else J("invalid asset id")
436+ else L("invalid asset id")
429437 if ((bs == bs))
430438 then (bp :+ bq.amount)
431439 else throw("Strict value is not equal to itself.")
432440 }
433441
434442 let bt = {
435443 let bu = Q.payments
436444 let bv = size(bu)
437445 let bw = nil
438446 func bx (by,bz) = if ((bz >= bv))
439447 then by
440448 else bo(by, bu[bz])
441449
442450 func bA (by,bz) = if ((bz >= bv))
443451 then by
444452 else throw("List size exceeds 10")
445453
446454 bA(bx(bx(bx(bx(bx(bx(bx(bx(bx(bx(bw, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
447455 }
448456 let aE = {
449457 let bB = invoke(this, "incUnclaimedWithPaymentInternal", [bt, e, aD, 0, 0], nil)
450458 if ($isInstanceOf(bB, "Int"))
451459 then bB
452460 else throw(($getType(bB) + " couldn't be cast to Int"))
453461 }
454462 if ((aE == aE))
455463 then {
456464 let ag = addressFromStringValue(value(getString(x(e))))
457465 let ah = fromBase58String(value(getString(w(e))))
458466 [ScriptTransfer(ag, aE, ah)]
459467 }
460468 else throw("Strict value is not equal to itself.")
461469 }
462470 else throw("Strict value is not equal to itself.")
463471 }
464472
465473
466474
467475 @Callable(Q)
468476 func claim (e) = {
469477 let Y = if (valueOrElse(getBoolean(n(e)), false))
470478 then true
471- else J("program does not exist")
479+ else L("program does not exist")
472480 if ((Y == Y))
473481 then {
474482 let X = (toString(Q.caller) == value(getString(y(e))))
475483 let i = if (X)
476484 then toString(Q.originCaller)
477485 else toString(Q.caller)
478486 let bC = invoke(this, "claimInternal", [e, i, X], nil)
479487 if ((bC == bC))
480488 then $Tuple2(nil, bC)
481489 else throw("Strict value is not equal to itself.")
482490 }
483491 else throw("Strict value is not equal to itself.")
484492 }
485493
486494
487495
488496 @Callable(Q)
489497 func claimBulk () = {
490498 let bD = toString(Q.caller)
491499 let bE = getString(z(toString(Q.caller)))
492500 let bF = if (isDefined(bE))
493501 then true
494- else J("no referral programs")
502+ else L("no referral programs")
495503 if ((bF == bF))
496504 then {
497505 let bG = split(value(bE), "__")
498506 let bH = invoke(this, "claimBulkInternal", [bD, bG, 0], nil)
499507 if ((bH == bH))
500508 then $Tuple2(nil, bH)
501509 else throw("Strict value is not equal to itself.")
502510 }
503511 else throw("Strict value is not equal to itself.")
504512 }
505513
506514
507515
508516 @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)
517+func claimREADONLY (e,G) = {
518+ let aa = valueOrElse(getInteger(h(e, G)), 0)
519+ let ab = valueOrElse(getInteger(k(e, G)), 0)
512520 $Tuple2(nil, [ab, aa])
513521 }
514522
515523
516524
517525 @Callable(Q)
518526 func claimBulkREADONLY (au) = {
519527 let ai = valueOrElse(getInteger(r(au)), 0)
520528 let aj = valueOrElse(getInteger(t(au)), 0)
521529 $Tuple2(nil, [aj, ai])
522530 }
523531
524532
525533
526534 @Callable(Q)
527535 func setTotalKeys (e,s) = {
528536 let bI = valueOrElse(getInteger(h(e, s)), 0)
529537 let bJ = valueOrElse(getInteger(j(e, s)), 0)
530538 let aA = valueOrElse(getInteger(k(e, s)), 0)
531539 let bK = valueOrElse(getInteger(l(e, s)), 0)
532540 let ai = (bI + bJ)
533541 let aj = (aA + bK)
534542 $Tuple2([IntegerEntry(r(s), ai), IntegerEntry(t(s), aj)], unit)
535543 }
536544
537545
538546 @Verifier(bL)
539547 func bM () = {
540548 let bN = {
541- let N = L()
542- if ($isInstanceOf(N, "ByteVector"))
549+ let D = N()
550+ if ($isInstanceOf(D, "ByteVector"))
543551 then {
544- let S = N
552+ let S = D
545553 S
546554 }
547- else if ($isInstanceOf(N, "Unit"))
555+ else if ($isInstanceOf(D, "Unit"))
548556 then bL.senderPublicKey
549557 else throw("Match error")
550558 }
551559 sigVerify(bL.bodyBytes, bL.proofs[0], bN)
552560 }
553561

github/deemru/w8io/873ac7e 
111.64 ms