tx · 3rumRM2sxAoLHRrmj6QFirWw72dUrnBugoEkG5231xGq

3N4ziXSMRverXyxHDUKKMR9MHXnB3TyU3Yh:  -0.01000000 Waves

2023.05.17 11:13 [2581693] smart account 3N4ziXSMRverXyxHDUKKMR9MHXnB3TyU3Yh > SELF 0.00000000 Waves

{ "type": 13, "id": "3rumRM2sxAoLHRrmj6QFirWw72dUrnBugoEkG5231xGq", "fee": 1000000, "feeAssetId": null, "timestamp": 1684311215271, "version": 2, "chainId": 84, "sender": "3N4ziXSMRverXyxHDUKKMR9MHXnB3TyU3Yh", "senderPublicKey": "EU9obW1yVhR8qug3EmXPeew3DMagvJFQzY5Ku8bmcsU7", "proofs": [ "4BKV5F5aVBiZtFqNcfBkw7bPdFGyrGPEUSFTH8MbhkQNQrL2ZPtUP7o5CPDDQZ4TjmxAHnxah6qfLfnrzSQtKqrB" ], "script": "base64:BgIbCAISBwoFCAgBAQESABIDCgEBEgASAwoBARIAGgAJc2VwYXJhdG9yAgJfXwAOa2V5RXBvY2hMZW5ndGgJALkJAgkAzAgCAgIlcwkAzAgCAgtlcG9jaExlbmd0aAUDbmlsBQlzZXBhcmF0b3IAE2tleUVtaXNzaW9uQ29udHJhY3QJALkJAgkAzAgCAgIlcwkAzAgCAhBlbWlzc2lvbkNvbnRyYWN0BQNuaWwFCXNlcGFyYXRvcgATa2V5Qm9vc3RpbmdDb250cmFjdAkAuQkCCQDMCAICAiVzCQDMCAICEGJvb3N0aW5nQ29udHJhY3QFA25pbAUJc2VwYXJhdG9yAAxrZXlUaHJlc2hvbGQJALkJAgkAzAgCAgIlcwkAzAgCAg92b3RpbmdUaHJlc2hvbGQFA25pbAUJc2VwYXJhdG9yAA9rZXlSYXRlUGVyQmxvY2sJALkJAgkAzAgCAgQlcyVzCQDMCAICDHJhdGVQZXJCbG9jawkAzAgCAgdjdXJyZW50BQNuaWwFCXNlcGFyYXRvcgASa2V5UmF0ZVBlckJsb2NrTWF4CQC5CQIJAMwIAgIEJXMlcwkAzAgCAg9yYXRlUGVyQmxvY2tNYXgJAMwIAgIHY3VycmVudAUDbmlsBQlzZXBhcmF0b3IAEWtleVJhdGVDaGFuZ2VTdGVwCQC5CQIJAMwIAgICJXMJAMwIAgIOcmF0ZUNoYW5nZVN0ZXAFA25pbAUJc2VwYXJhdG9yAQ9nZXRTdHJpbmdPckZhaWwBA2tleQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIFBHRoaXMFA2tleQkArAICBQNrZXkCDyBpcyBub3QgZGVmaW5lZAEMZ2V0SW50T3JGYWlsAQNrZXkJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAmggCBQR0aGlzBQNrZXkJAKwCAgUDa2V5Ag8gaXMgbm90IGRlZmluZWQBDmtleVN0YXJ0SGVpZ2h0AAkAuQkCCQDMCAICAiVzCQDMCAICC3N0YXJ0SGVpZ2h0BQNuaWwFCXNlcGFyYXRvcgEPa2V5Vm90aW5nUmVzdWx0AAkAuQkCCQDMCAICAiVzCQDMCAICDHZvdGluZ1Jlc3VsdAUDbmlsBQlzZXBhcmF0b3IBCnRvdGFsVm90ZXMDDXRvdGFsSW5jcmVhc2UJdG90YWxOb25lDXRvdGFsRGVjcmVhc2UJALkJAgkAzAgCAgYlZCVkJWQJAMwIAgUNdG90YWxJbmNyZWFzZQkAzAgCBQl0b3RhbE5vbmUJAMwIAgUNdG90YWxEZWNyZWFzZQUDbmlsBQlzZXBhcmF0b3IBB2tleVZvdGUBDHZvdGVyQWRkcmVzcwkAuQkCCQDMCAICBCVzJXMJAMwIAgIEdm90ZQkAzAgCBQx2b3RlckFkZHJlc3MFA25pbAUJc2VwYXJhdG9yAQxrZXlWb3RlVmFsdWUCCWd3eEFtb3VudAR2b3RlBANrZXkDCQAAAgUEdm90ZQABCQC5CQIJAMwIAgIEJWQlcwkAzAgCBQlnd3hBbW91bnQJAMwIAgIIaW5jcmVhc2UFA25pbAUJc2VwYXJhdG9yAwkAAAIFBHZvdGUA////////////AQkAuQkCCQDMCAICBCVkJXMJAMwIAgUJZ3d4QW1vdW50CQDMCAICCGRlY3JlYXNlBQNuaWwFCXNlcGFyYXRvcgkAuQkCCQDMCAICBCVkJXMJAMwIAgUJZ3d4QW1vdW50CQDMCAICBG5vbmUFA25pbAUJc2VwYXJhdG9yBQNrZXkAEGJvb3N0aW5nQ29udHJhY3QJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQ9nZXRTdHJpbmdPckZhaWwBBRNrZXlCb29zdGluZ0NvbnRyYWN0ABBlbWlzc2lvbkNvbnRyYWN0CQERQGV4dHJOYXRpdmUoMTA2MikBCQEPZ2V0U3RyaW5nT3JGYWlsAQUTa2V5RW1pc3Npb25Db250cmFjdAETa2V5TWFuYWdlclB1YmxpY0tleQACFCVzX19tYW5hZ2VyUHVibGljS2V5ARZrZXlNYW5hZ2VyVmF1bHRBZGRyZXNzAAIXJXNfX21hbmFnZXJWYXVsdEFkZHJlc3MBHGdldE1hbmFnZXJWYXVsdEFkZHJlc3NPclRoaXMABAckbWF0Y2gwCQCiCAEJARZrZXlNYW5hZ2VyVmF1bHRBZGRyZXNzAAMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAXMFByRtYXRjaDAJARFAZXh0ck5hdGl2ZSgxMDYyKQEFAXMFBHRoaXMBFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQABBNtYW5hZ2VyVmF1bHRBZGRyZXNzCQEcZ2V0TWFuYWdlclZhdWx0QWRkcmVzc09yVGhpcwAEByRtYXRjaDAJAJ0IAgUTbWFuYWdlclZhdWx0QWRkcmVzcwkBE2tleU1hbmFnZXJQdWJsaWNLZXkAAwkAAQIFByRtYXRjaDACBlN0cmluZwQBcwUHJG1hdGNoMAkA2QQBBQFzAwkAAQIFByRtYXRjaDACBFVuaXQFBHVuaXQJAAIBAgtNYXRjaCBlcnJvcgEJaXNNYW5hZ2VyAQFpBAckbWF0Y2gwCQEWbWFuYWdlclB1YmxpY0tleU9yVW5pdAADCQABAgUHJG1hdGNoMAIKQnl0ZVZlY3RvcgQCcGsFByRtYXRjaDAJAAACCAUBaQ9jYWxsZXJQdWJsaWNLZXkFAnBrAwkAAQIFByRtYXRjaDACBFVuaXQJAAACCAUBaQZjYWxsZXIFBHRoaXMJAAIBAgtNYXRjaCBlcnJvcgELbXVzdE1hbmFnZXIBAWkDCQEJaXNNYW5hZ2VyAQUBaQYJAAIBAhFwZXJtaXNzaW9uIGRlbmllZAEFYXNJbnQBA3ZhbAQHJG1hdGNoMAUDdmFsAwkAAQIFByRtYXRjaDACA0ludAQGdmFsSW50BQckbWF0Y2gwBQZ2YWxJbnQJAAIBAhtmYWlsZWQgdG8gY2FzdCBpbnRvIEludGVnZXIBC2NhbGNOZXdSYXRlAw9yYXRlUGVyQmxvY2tNYXgMcmF0ZVBlckJsb2NrCmNoYW5nZVN0ZXAECm1heEFsbG93ZWQJAGsDAGQFD3JhdGVQZXJCbG9ja01heAB4BA1pbmNyZWFzZWRSYXRlCQCXAwEJAMwIAgkAawMJAGQCAGQFCmNoYW5nZVN0ZXAFDHJhdGVQZXJCbG9jawBkCQDMCAIFCm1heEFsbG93ZWQFA25pbAQNZGVjcmVhc2VkUmF0ZQkAlgMBCQDMCAIJAGsDCQBlAgBkBQpjaGFuZ2VTdGVwBQxyYXRlUGVyQmxvY2sAZAkAzAgCAAAFA25pbAkAlQoDBQ1pbmNyZWFzZWRSYXRlBQxyYXRlUGVyQmxvY2sFDWRlY3JlYXNlZFJhdGUBHGdldFJhdGVDaGFuZ2VBbW91bnRzSU5URVJOQUwABA9yYXRlUGVyQmxvY2tNYXgJARFAZXh0ck5hdGl2ZSgxMDUwKQIFEGVtaXNzaW9uQ29udHJhY3QFEmtleVJhdGVQZXJCbG9ja01heAQMcmF0ZVBlckJsb2NrCQERQGV4dHJOYXRpdmUoMTA1MCkCBRBlbWlzc2lvbkNvbnRyYWN0BQ9rZXlSYXRlUGVyQmxvY2sEDnJhdGVDaGFuZ2VTdGVwCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzBRFrZXlSYXRlQ2hhbmdlU3RlcAkBC2NhbGNOZXdSYXRlAwUPcmF0ZVBlckJsb2NrTWF4BQxyYXRlUGVyQmxvY2sFDnJhdGVDaGFuZ2VTdGVwBgFpAQtjb25zdHJ1Y3RvcgUTYm9vc3RpbmdDb250cmFjdFBybRNlbWlzc2lvbkNvbnRyYWN0UHJtEXZvdGluZ0R1cmF0aW9uUHJtCXRocmVzaG9sZA5yYXRlQ2hhbmdlU3RlcAQGY2hlY2tzCQDMCAIDCQEJaXNEZWZpbmVkAQkApggBBRNib29zdGluZ0NvbnRyYWN0UHJtBgkAAgECIUludmFsaWQgYm9vc3RpbmcgY29udHJhY3QgYWRkcmVzcwkAzAgCAwkBCWlzRGVmaW5lZAEJAKYIAQUTZW1pc3Npb25Db250cmFjdFBybQYJAAIBAiFJbnZhbGlkIGVtaXNzaW9uIGNvbnRyYWN0IGFkZHJlc3MJAMwIAgMJAGYCBRF2b3RpbmdEdXJhdGlvblBybQAABgkAAgECF0ludmFsaWQgdm90aW5nIGR1cmF0aW9uCQDMCAIDCQBmAgUJdGhyZXNob2xkAAAGCQACAQIRaW52YWxpZCB0aHJlc2hvbGQJAMwIAgMJAGYCBQ5yYXRlQ2hhbmdlU3RlcAAABgkAAgECFmludmFsaWQgcmF0ZUNoYW5nZVN0ZXAFA25pbAMJAAACBQZjaGVja3MFBmNoZWNrcwkAlAoCCQDMCAIJAQtTdHJpbmdFbnRyeQIFE2tleUJvb3N0aW5nQ29udHJhY3QFE2Jvb3N0aW5nQ29udHJhY3RQcm0JAMwIAgkBC1N0cmluZ0VudHJ5AgUTa2V5RW1pc3Npb25Db250cmFjdAUTZW1pc3Npb25Db250cmFjdFBybQkAzAgCCQEMSW50ZWdlckVudHJ5AgUOa2V5RXBvY2hMZW5ndGgFEXZvdGluZ0R1cmF0aW9uUHJtCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQxrZXlUaHJlc2hvbGQFCXRocmVzaG9sZAkAzAgCCQEMSW50ZWdlckVudHJ5AgURa2V5UmF0ZUNoYW5nZVN0ZXAFDnJhdGVDaGFuZ2VTdGVwCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEOa2V5U3RhcnRIZWlnaHQABQZoZWlnaHQJAMwIAgkBC1N0cmluZ0VudHJ5AgkBD2tleVZvdGluZ1Jlc3VsdAAJAQp0b3RhbFZvdGVzAwIBMAIBMAIBMAUDbmlsBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBHGdldFJhdGVDaGFuZ2VBbW91bnRzUkVBRE9OTFkACQCUCgIFA25pbAkBHGdldFJhdGVDaGFuZ2VBbW91bnRzSU5URVJOQUwAAWkBBHZvdGUBB2luRmF2b3IEEnZvdGluZ0ZpbmlzaEhlaWdodAkAZAIJAQV2YWx1ZQEJAJ8IAQkBDmtleVN0YXJ0SGVpZ2h0AAkBBXZhbHVlAQkAnwgBBQ5rZXlFcG9jaExlbmd0aAQGY2hlY2tzCQDMCAIDCQBmAgUSdm90aW5nRmluaXNoSGVpZ2h0BQZoZWlnaHQGCQACAQIQdG9vIGxhdGUgdG8gdm90ZQkAzAgCAwkBD2NvbnRhaW5zRWxlbWVudAIJAMwIAgABCQDMCAIAAAkAzAgCAP///////////wEFA25pbAUHaW5GYXZvcgYJAAIBAhJub3QgdmFsaWQgYXJndW1lbnQFA25pbAMJAAACBQZjaGVja3MFBmNoZWNrcwQJZ3d4QW1vdW50CQD8BwQFEGJvb3N0aW5nQ29udHJhY3QCIGdldFVzZXJHd3hBbW91bnRBdEhlaWdodFJFQURPTkxZCQDMCAIJAKUIAQgFAWkGY2FsbGVyCQDMCAIFEnZvdGluZ0ZpbmlzaEhlaWdodAUDbmlsBQNuaWwEB25vdFplcm8DCQBmAgkBBWFzSW50AQUJZ3d4QW1vdW50AAAGCQACAQISeW91IGRvbid0IGhhdmUgZ3d4AwkAAAIFB25vdFplcm8FB25vdFplcm8EBHZvdGUEByRtYXRjaDAJAKIIAQkBB2tleVZvdGUBCQClCAEIBQFpBmNhbGxlcgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAXMFByRtYXRjaDAEBHZvdGUJALUJAgUBcwUJc2VwYXJhdG9yBAl2b3RlVmFsdWUJAJEDAgUEdm90ZQABBAh2b3RlVHlwZQkAkQMCBQR2b3RlAAIEEWlzVm90ZVR5cGVTaW1pbGFyAwMDCQAAAgUIdm90ZVR5cGUCCGluY3JlYXNlCQAAAgUHaW5GYXZvcgABBwYDCQAAAgUIdm90ZVR5cGUCCGRlY3JlYXNlCQAAAgUHaW5GYXZvcgD///////////8BBwYDCQAAAgUIdm90ZVR5cGUCBG5vbmUJAAACBQdpbkZhdm9yAAAHBBJpc1ZvdGVWYWx1ZVNpbWlsYXIDBRFpc1ZvdGVUeXBlU2ltaWxhcgkAAAIJAQVhc0ludAEFCWd3eEFtb3VudAkBDXBhcnNlSW50VmFsdWUBBQl2b3RlVmFsdWUHBBBpc05ld1ZvdGVTaW1pbGFyAwMFEWlzVm90ZVR5cGVTaW1pbGFyBRJpc1ZvdGVWYWx1ZVNpbWlsYXIHCQACAQIReW91IGFscmVhZHkgdm90ZWQJAPwHBAUEdGhpcwIKY2FuY2VsVm90ZQUDbmlsBQNuaWwFEGlzTmV3Vm90ZVNpbWlsYXIDCQABAgUHJG1hdGNoMAIEVW5pdAQBdQUHJG1hdGNoMAUBdQkAAgECC01hdGNoIGVycm9yAwkAAAIFBHZvdGUFBHZvdGUEDHZvdGluZ1Jlc3VsdAkAtQkCCQEFdmFsdWUBCQCiCAEJAQ9rZXlWb3RpbmdSZXN1bHQABQlzZXBhcmF0b3IED3ZvdGVzVG9JbmNyZWFzZQkAkQMCBQx2b3RpbmdSZXN1bHQAAQQLdm90ZXNUb05vbmUJAJEDAgUMdm90aW5nUmVzdWx0AAIED3ZvdGVzVG9EZWNyZWFzZQkAkQMCBQx2b3RpbmdSZXN1bHQAAwQbbmV3UG9zaXRpdmVBbmROZWdhdGl2ZVZvdGVzAwkAAAIFB2luRmF2b3IAAQQQbmV3UG9zaXRpdmVWb3RlcwkAZAIJAQ1wYXJzZUludFZhbHVlAQUPdm90ZXNUb0luY3JlYXNlCQEFYXNJbnQBBQlnd3hBbW91bnQJAMwIAgkApAMBBRBuZXdQb3NpdGl2ZVZvdGVzCQDMCAIFC3ZvdGVzVG9Ob25lCQDMCAIFD3ZvdGVzVG9EZWNyZWFzZQUDbmlsAwkAAAIFB2luRmF2b3IA////////////AQQQbmV3TmVnYXRpdmVWb3RlcwkAZAIJAQ1wYXJzZUludFZhbHVlAQULdm90ZXNUb05vbmUJAQVhc0ludAEFCWd3eEFtb3VudAkAzAgCBQ92b3Rlc1RvSW5jcmVhc2UJAMwIAgULdm90ZXNUb05vbmUJAMwIAgkApAMBBRBuZXdOZWdhdGl2ZVZvdGVzBQNuaWwEDG5ld05vbmVWb3RlcwkAZAIJAQ1wYXJzZUludFZhbHVlAQULdm90ZXNUb05vbmUJAQVhc0ludAEFCWd3eEFtb3VudAkAzAgCBQ92b3Rlc1RvSW5jcmVhc2UJAMwIAgkApAMBBQxuZXdOb25lVm90ZXMJAMwIAgUPdm90ZXNUb0RlY3JlYXNlBQNuaWwEB3ZvdGVLZXkJAQdrZXlWb3RlAQkApQgBCAUBaQZjYWxsZXIECXZvdGVWYWx1ZQkBDGtleVZvdGVWYWx1ZQIJAKQDAQkBBWFzSW50AQUJZ3d4QW1vdW50BQdpbkZhdm9yCQCUCgIJAMwIAgkBC1N0cmluZ0VudHJ5AgkBD2tleVZvdGluZ1Jlc3VsdAAJAQp0b3RhbFZvdGVzAwkAkQMCBRtuZXdQb3NpdGl2ZUFuZE5lZ2F0aXZlVm90ZXMAAAkAkQMCBRtuZXdQb3NpdGl2ZUFuZE5lZ2F0aXZlVm90ZXMAAQkAkQMCBRtuZXdQb3NpdGl2ZUFuZE5lZ2F0aXZlVm90ZXMAAgkAzAgCCQELU3RyaW5nRW50cnkCBQd2b3RlS2V5BQl2b3RlVmFsdWUFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQpjYW5jZWxWb3RlAAQLdXNlckFkZHJlc3MDCQAAAggFAWkGY2FsbGVyBQR0aGlzCQClCAEIBQFpDG9yaWdpbkNhbGxlcgkApQgBCAUBaQZjYWxsZXIEBmNoZWNrcwkAzAgCAwkBCWlzRGVmaW5lZAEJAKIIAQkBD2tleVZvdGluZ1Jlc3VsdAAGCQACAQIHbm8gdm90ZQUDbmlsAwkAAAIFBmNoZWNrcwUGY2hlY2tzBAR2b3RlCQC1CQIJAQV2YWx1ZQEJAKIIAQkBB2tleVZvdGUBBQt1c2VyQWRkcmVzcwUJc2VwYXJhdG9yBAl2b3RlVmFsdWUJAJEDAgUEdm90ZQABBAh2b3RlVHlwZQkAkQMCBQR2b3RlAAIEDHZvdGluZ1Jlc3VsdAkAtQkCCQEFdmFsdWUBCQCiCAEJAQ9rZXlWb3RpbmdSZXN1bHQABQlzZXBhcmF0b3IED3ZvdGVzVG9JbmNyZWFzZQkAkQMCBQx2b3RpbmdSZXN1bHQAAQQLdm90ZXNUb05vbmUJAJEDAgUMdm90aW5nUmVzdWx0AAIED3ZvdGVzVG9EZWNyZWFzZQkAkQMCBQx2b3RpbmdSZXN1bHQAAwQHYWN0aW9ucwMJAAACBQh2b3RlVHlwZQIIaW5jcmVhc2UEEG5ld0luY3JlYXNlVm90ZXMJAGUCCQENcGFyc2VJbnRWYWx1ZQEFD3ZvdGVzVG9JbmNyZWFzZQkBDXBhcnNlSW50VmFsdWUBBQl2b3RlVmFsdWUJAJQKAgkAzAgCCQELU3RyaW5nRW50cnkCCQEPa2V5Vm90aW5nUmVzdWx0AAkBCnRvdGFsVm90ZXMDCQCkAwEFEG5ld0luY3JlYXNlVm90ZXMFC3ZvdGVzVG9Ob25lBQ92b3Rlc1RvRGVjcmVhc2UJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBB2tleVZvdGUBBQt1c2VyQWRkcmVzcwUDbmlsBQR1bml0AwkAAAIFCHZvdGVUeXBlAghkZWNyZWFzZQQQbmV3RGVjcmVhc2VWb3RlcwkAZQIJAQ1wYXJzZUludFZhbHVlAQUPdm90ZXNUb0RlY3JlYXNlCQENcGFyc2VJbnRWYWx1ZQEFCXZvdGVWYWx1ZQkAlAoCCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQ9rZXlWb3RpbmdSZXN1bHQACQEKdG90YWxWb3RlcwMFD3ZvdGVzVG9JbmNyZWFzZQULdm90ZXNUb05vbmUJAKQDAQUQbmV3RGVjcmVhc2VWb3RlcwkAzAgCCQELRGVsZXRlRW50cnkBCQEHa2V5Vm90ZQEFC3VzZXJBZGRyZXNzBQNuaWwFBHVuaXQEDG5ld05vbmVWb3RlcwkAZQIJAQ1wYXJzZUludFZhbHVlAQULdm90ZXNUb05vbmUJAQ1wYXJzZUludFZhbHVlAQUJdm90ZVZhbHVlCQCUCgIJAMwIAgkBC1N0cmluZ0VudHJ5AgkBD2tleVZvdGluZ1Jlc3VsdAAJAQp0b3RhbFZvdGVzAwUPdm90ZXNUb0luY3JlYXNlCQCkAwEFDG5ld05vbmVWb3RlcwUPdm90ZXNUb0RlY3JlYXNlCQDMCAIJAQtEZWxldGVFbnRyeQEJAQdrZXlWb3RlAQULdXNlckFkZHJlc3MFA25pbAUEdW5pdAUHYWN0aW9ucwkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQxzZXRUaHJlc2hvbGQBDG5ld1RocmVzaG9sZAQGY2hlY2tzCQDMCAIJAQttdXN0TWFuYWdlcgEFAWkJAMwIAgMJAGYCBQxuZXdUaHJlc2hvbGQAAAYJAAIBAhFpbnZhbGlkIHRocmVzaG9sZAUDbmlsAwkAAAIFBmNoZWNrcwUGY2hlY2tzCQCUCgIJAMwIAgkBDEludGVnZXJFbnRyeQIFDGtleVRocmVzaG9sZAUMbmV3VGhyZXNob2xkBQNuaWwFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEIZmluYWxpemUABBJ2b3RpbmdGaW5pc2hIZWlnaHQJAGQCCQEFdmFsdWUBCQCfCAEJAQ5rZXlTdGFydEhlaWdodAAJAQV2YWx1ZQEJAJ8IAQUOa2V5RXBvY2hMZW5ndGgEBmNoZWNrcwkAzAgCAwkAZwIFBmhlaWdodAUSdm90aW5nRmluaXNoSGVpZ2h0BgkAAgECImluc3VmZmljaWVudCBoZWlnaHQgZm9yIGNvbXBsZXRpb24FA25pbAMJAAACBQZjaGVja3MFBmNoZWNrcwQMdm90aW5nUmVzdWx0CQC1CQIJAQV2YWx1ZQEJAKIIAQkBD2tleVZvdGluZ1Jlc3VsdAAFCXNlcGFyYXRvcgQPdm90ZXNUb0luY3JlYXNlCQENcGFyc2VJbnRWYWx1ZQEJAJEDAgUMdm90aW5nUmVzdWx0AAEEC3ZvdGVzVG9Ob25lCQENcGFyc2VJbnRWYWx1ZQEJAJEDAgUMdm90aW5nUmVzdWx0AAIED3ZvdGVzVG9EZWNyZWFzZQkBDXBhcnNlSW50VmFsdWUBCQCRAwIFDHZvdGluZ1Jlc3VsdAADBAhhbGxWb3RlcwkAZAIJAGQCBQ92b3Rlc1RvSW5jcmVhc2UFC3ZvdGVzVG9Ob25lBQ92b3Rlc1RvRGVjcmVhc2UECXRocmVzaG9sZAkBDGdldEludE9yRmFpbAEFDGtleVRocmVzaG9sZAQLJHQwODgwOTg4ODkJARxnZXRSYXRlQ2hhbmdlQW1vdW50c0lOVEVSTkFMAAQNaW5jcmVhc2VkUmF0ZQgFCyR0MDg4MDk4ODg5Al8xBAtjdXJyZW50UmF0ZQgFCyR0MDg4MDk4ODg5Al8yBA1kZWNyZWFzZWRSYXRlCAULJHQwODgwOTg4ODkCXzMECXZvdGVzTGlzdAkAzAgCBQ92b3Rlc1RvSW5jcmVhc2UJAMwIAgULdm90ZXNUb05vbmUJAMwIAgUPdm90ZXNUb0RlY3JlYXNlBQNuaWwEB2FjdGlvbnMDCQBmAgUJdGhyZXNob2xkBQhhbGxWb3RlcwUDbmlsAwkAAAIFC3ZvdGVzVG9Ob25lCQCWAwEFCXZvdGVzTGlzdAkAzAgCCQELU3RyaW5nRW50cnkCAgNmb28CBE5PTkUFA25pbAMJAAACBQ92b3Rlc1RvSW5jcmVhc2UJAJYDAQUJdm90ZXNMaXN0CQDMCAIJAQtTdHJpbmdFbnRyeQICA2ZvbwIDSU5DBQNuaWwJAMwIAgkBC1N0cmluZ0VudHJ5AgIDZm9vAgNERUMFA25pbAUHYWN0aW9ucwkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAJwDcT", "height": 2581693, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: DpmvtTasrt98ejUqEgP7ocHmstWxCAMJf5kLLgK9RQnz Next: 6HAYEmA4ZGBVsGuw6R1KU3YyEyXRLTfK1G5S5TnkVVtM Diff:
OldNewDifferences
117117 }
118118
119119
120+func T () = {
121+ let N = getIntegerValue(x, g)
122+ let O = getIntegerValue(x, f)
123+ let U = getIntegerValue(this, h)
124+ M(N, O, U)
125+ }
126+
127+
120128 @Callable(G)
121-func constructor (T,U,V,W,X) = {
122- let Y = [if (isDefined(addressFromString(T)))
129+func constructor (V,W,X,Y,U) = {
130+ let Z = [if (isDefined(addressFromString(V)))
123131 then true
124- else throw("Invalid boosting contract address"), if (isDefined(addressFromString(U)))
132+ else throw("Invalid boosting contract address"), if (isDefined(addressFromString(W)))
125133 then true
126- else throw("Invalid emission contract address"), if ((V > 0))
134+ else throw("Invalid emission contract address"), if ((X > 0))
127135 then true
128- else throw("Invalid voting duration"), if ((W > 0))
136+ else throw("Invalid voting duration"), if ((Y > 0))
129137 then true
130- else throw("invalid threshold"), if ((X > 0))
138+ else throw("invalid threshold"), if ((U > 0))
131139 then true
132140 else throw("invalid rateChangeStep")]
133- if ((Y == Y))
134- then $Tuple2([StringEntry(d, T), StringEntry(c, U), IntegerEntry(b, V), IntegerEntry(e, W), IntegerEntry(h, X), IntegerEntry(l(), height), StringEntry(m(), n("0", "0", "0"))], unit)
141+ if ((Z == Z))
142+ then $Tuple2([StringEntry(d, V), StringEntry(c, W), IntegerEntry(b, X), IntegerEntry(e, Y), IntegerEntry(h, U), IntegerEntry(l(), height), StringEntry(m(), n("0", "0", "0"))], unit)
135143 else throw("Strict value is not equal to itself.")
136144 }
137145
138146
139147
140148 @Callable(G)
141-func getRateChangeAmountsREADONLY () = {
142- let N = getIntegerValue(x, g)
143- let O = getIntegerValue(x, f)
144- let X = getIntegerValue(this, h)
145- $Tuple2(nil, M(N, O, X))
146- }
149+func getRateChangeAmountsREADONLY () = $Tuple2(nil, T())
147150
148151
149152
150153 @Callable(G)
151-func vote (Z) = {
152- let aa = (value(getInteger(l())) + value(getInteger(b)))
153- let Y = [if ((aa > height))
154+func vote (aa) = {
155+ let ab = (value(getInteger(l())) + value(getInteger(b)))
156+ let Z = [if ((ab > height))
154157 then true
155- else throw("too late to vote"), if (containsElement([1, 0, -1], Z))
158+ else throw("too late to vote"), if (containsElement([1, 0, -1], aa))
156159 then true
157160 else throw("not valid argument")]
158- if ((Y == Y))
161+ if ((Z == Z))
159162 then {
160- let u = invoke(w, "getUserGwxAmountAtHeightREADONLY", [toString(G.caller), aa], nil)
161- let ab = if ((J(u) > 0))
163+ let u = invoke(w, "getUserGwxAmountAtHeightREADONLY", [toString(G.caller), ab], nil)
164+ let ac = if ((J(u) > 0))
162165 then true
163166 else throw("you don't have gwx")
164- if ((ab == ab))
167+ if ((ac == ac))
165168 then {
166169 let v = {
167170 let B = getString(r(toString(G.caller)))
169172 then {
170173 let C = B
171174 let v = split(C, a)
172- let ac = v[1]
173- let ad = v[2]
174- let ae = if (if (if ((ad == "increase"))
175- then (Z == 1)
175+ let ad = v[1]
176+ let ae = v[2]
177+ let af = if (if (if ((ae == "increase"))
178+ then (aa == 1)
176179 else false)
177180 then true
178- else if ((ad == "decrease"))
179- then (Z == -1)
181+ else if ((ae == "decrease"))
182+ then (aa == -1)
180183 else false)
181184 then true
182- else if ((ad == "none"))
183- then (Z == 0)
185+ else if ((ae == "none"))
186+ then (aa == 0)
184187 else false
185- let af = if (ae)
186- then (J(u) == parseIntValue(ac))
188+ let ag = if (af)
189+ then (J(u) == parseIntValue(ad))
187190 else false
188- let ag = if (if (ae)
189- then af
191+ let ah = if (if (af)
192+ then ag
190193 else false)
191194 then throw("you already voted")
192195 else invoke(this, "cancelVote", nil, nil)
193- ag
196+ ah
194197 }
195198 else if ($isInstanceOf(B, "Unit"))
196199 then {
197- let ah = B
198- ah
200+ let ai = B
201+ ai
199202 }
200203 else throw("Match error")
201204 }
202205 if ((v == v))
203206 then {
204- let ai = split(value(getString(m())), a)
205- let aj = ai[1]
206- let ak = ai[2]
207- let al = ai[3]
208- let am = if ((Z == 1))
207+ let aj = split(value(getString(m())), a)
208+ let ak = aj[1]
209+ let al = aj[2]
210+ let am = aj[3]
211+ let an = if ((aa == 1))
209212 then {
210- let an = (parseIntValue(aj) + J(u))
211-[toString(an), ak, al]
213+ let ao = (parseIntValue(ak) + J(u))
214+[toString(ao), al, am]
212215 }
213- else if ((Z == -1))
216+ else if ((aa == -1))
214217 then {
215- let ao = (parseIntValue(ak) + J(u))
216-[aj, ak, toString(ao)]
218+ let ap = (parseIntValue(al) + J(u))
219+[ak, al, toString(ap)]
217220 }
218221 else {
219- let ap = (parseIntValue(ak) + J(u))
220-[aj, toString(ap), al]
222+ let aq = (parseIntValue(al) + J(u))
223+[ak, toString(aq), am]
221224 }
222- let aq = r(toString(G.caller))
223- let ac = t(toString(J(u)), Z)
224- $Tuple2([StringEntry(m(), n(am[0], am[1], am[2])), StringEntry(aq, ac)], unit)
225+ let ar = r(toString(G.caller))
226+ let ad = t(toString(J(u)), aa)
227+ $Tuple2([StringEntry(m(), n(an[0], an[1], an[2])), StringEntry(ar, ad)], unit)
225228 }
226229 else throw("Strict value is not equal to itself.")
227230 }
234237
235238 @Callable(G)
236239 func cancelVote () = {
237- let ar = if ((G.caller == this))
240+ let as = if ((G.caller == this))
238241 then toString(G.originCaller)
239242 else toString(G.caller)
240- let Y = [if (isDefined(getString(m())))
243+ let Z = [if (isDefined(getString(m())))
241244 then true
242245 else throw("no vote")]
243- if ((Y == Y))
246+ if ((Z == Z))
244247 then {
245- let v = split(value(getString(r(ar))), a)
246- let ac = v[1]
247- let ad = v[2]
248- let ai = split(value(getString(m())), a)
249- let aj = ai[1]
250- let ak = ai[2]
251- let al = ai[3]
252- let as = if ((ad == "increase"))
248+ let v = split(value(getString(r(as))), a)
249+ let ad = v[1]
250+ let ae = v[2]
251+ let aj = split(value(getString(m())), a)
252+ let ak = aj[1]
253+ let al = aj[2]
254+ let am = aj[3]
255+ let at = if ((ae == "increase"))
253256 then {
254- let at = (parseIntValue(aj) - parseIntValue(ac))
255- $Tuple2([StringEntry(m(), n(toString(at), ak, al)), DeleteEntry(r(ar))], unit)
257+ let au = (parseIntValue(ak) - parseIntValue(ad))
258+ $Tuple2([StringEntry(m(), n(toString(au), al, am)), DeleteEntry(r(as))], unit)
256259 }
257- else if ((ad == "decrease"))
260+ else if ((ae == "decrease"))
258261 then {
259- let au = (parseIntValue(al) - parseIntValue(ac))
260- $Tuple2([StringEntry(m(), n(aj, ak, toString(au))), DeleteEntry(r(ar))], unit)
262+ let av = (parseIntValue(am) - parseIntValue(ad))
263+ $Tuple2([StringEntry(m(), n(ak, al, toString(av))), DeleteEntry(r(as))], unit)
261264 }
262265 else {
263- let ap = (parseIntValue(ak) - parseIntValue(ac))
264- $Tuple2([StringEntry(m(), n(aj, toString(ap), al)), DeleteEntry(r(ar))], unit)
266+ let aq = (parseIntValue(al) - parseIntValue(ad))
267+ $Tuple2([StringEntry(m(), n(ak, toString(aq), am)), DeleteEntry(r(as))], unit)
265268 }
266- as
269+ at
267270 }
268271 else throw("Strict value is not equal to itself.")
269272 }
271274
272275
273276 @Callable(G)
274-func setThreshold (av) = {
275- let Y = [I(G), if ((av > 0))
277+func setThreshold (aw) = {
278+ let Z = [I(G), if ((aw > 0))
276279 then true
277280 else throw("invalid threshold")]
278- if ((Y == Y))
279- then $Tuple2([IntegerEntry(e, av)], unit)
281+ if ((Z == Z))
282+ then $Tuple2([IntegerEntry(e, aw)], unit)
280283 else throw("Strict value is not equal to itself.")
281284 }
282285
284287
285288 @Callable(G)
286289 func finalize () = {
287- let aa = (value(getInteger(l())) + value(getInteger(b)))
288- let Y = [if ((height >= aa))
290+ let ab = (value(getInteger(l())) + value(getInteger(b)))
291+ let Z = [if ((height >= ab))
289292 then true
290293 else throw("insufficient height for completion")]
291- if ((Y == Y))
294+ if ((Z == Z))
292295 then {
293- let ai = split(value(getString(m())), a)
294- let aj = parseIntValue(ai[1])
295- let ak = parseIntValue(ai[2])
296- let al = parseIntValue(ai[3])
297- let aw = ((aj + ak) + al)
298- let W = k(e)
299- let as = if (if ((aw >= W))
300- then true
301- else false)
296+ let aj = split(value(getString(m())), a)
297+ let ak = parseIntValue(aj[1])
298+ let al = parseIntValue(aj[2])
299+ let am = parseIntValue(aj[3])
300+ let ax = ((ak + al) + am)
301+ let Y = k(e)
302+ let ay = T()
303+ let R = ay._1
304+ let az = ay._2
305+ let S = ay._3
306+ let aA = [ak, al, am]
307+ let at = if ((Y > ax))
302308 then nil
303- else nil
304- as
309+ else if ((al == max(aA)))
310+ then [StringEntry("foo", "NONE")]
311+ else if ((ak == max(aA)))
312+ then [StringEntry("foo", "INC")]
313+ else [StringEntry("foo", "DEC")]
314+ at
305315 }
306316 else throw("Strict value is not equal to itself.")
307317 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 let b = makeString(["%s", "epochLength"], a)
77
88 let c = makeString(["%s", "emissionContract"], a)
99
1010 let d = makeString(["%s", "boostingContract"], a)
1111
1212 let e = makeString(["%s", "votingThreshold"], a)
1313
1414 let f = makeString(["%s%s", "ratePerBlock", "current"], a)
1515
1616 let g = makeString(["%s%s", "ratePerBlockMax", "current"], a)
1717
1818 let h = makeString(["%s", "rateChangeStep"], a)
1919
2020 func i (j) = valueOrErrorMessage(getString(this, j), (j + " is not defined"))
2121
2222
2323 func k (j) = valueOrErrorMessage(getInteger(this, j), (j + " is not defined"))
2424
2525
2626 func l () = makeString(["%s", "startHeight"], a)
2727
2828
2929 func m () = makeString(["%s", "votingResult"], a)
3030
3131
3232 func n (o,p,q) = makeString(["%d%d%d", o, p, q], a)
3333
3434
3535 func r (s) = makeString(["%s%s", "vote", s], a)
3636
3737
3838 func t (u,v) = {
3939 let j = if ((v == 1))
4040 then makeString(["%d%s", u, "increase"], a)
4141 else if ((v == -1))
4242 then makeString(["%d%s", u, "decrease"], a)
4343 else makeString(["%d%s", u, "none"], a)
4444 j
4545 }
4646
4747
4848 let w = addressFromStringValue(i(d))
4949
5050 let x = addressFromStringValue(i(c))
5151
5252 func y () = "%s__managerPublicKey"
5353
5454
5555 func z () = "%s__managerVaultAddress"
5656
5757
5858 func A () = {
5959 let B = getString(z())
6060 if ($isInstanceOf(B, "String"))
6161 then {
6262 let C = B
6363 addressFromStringValue(C)
6464 }
6565 else this
6666 }
6767
6868
6969 func D () = {
7070 let E = A()
7171 let B = getString(E, y())
7272 if ($isInstanceOf(B, "String"))
7373 then {
7474 let C = B
7575 fromBase58String(C)
7676 }
7777 else if ($isInstanceOf(B, "Unit"))
7878 then unit
7979 else throw("Match error")
8080 }
8181
8282
8383 func F (G) = {
8484 let B = D()
8585 if ($isInstanceOf(B, "ByteVector"))
8686 then {
8787 let H = B
8888 (G.callerPublicKey == H)
8989 }
9090 else if ($isInstanceOf(B, "Unit"))
9191 then (G.caller == this)
9292 else throw("Match error")
9393 }
9494
9595
9696 func I (G) = if (F(G))
9797 then true
9898 else throw("permission denied")
9999
100100
101101 func J (K) = {
102102 let B = K
103103 if ($isInstanceOf(B, "Int"))
104104 then {
105105 let L = B
106106 L
107107 }
108108 else throw("failed to cast into Integer")
109109 }
110110
111111
112112 func M (N,O,P) = {
113113 let Q = fraction(100, N, 120)
114114 let R = min([fraction((100 + P), O, 100), Q])
115115 let S = max([fraction((100 - P), O, 100), 0])
116116 $Tuple3(R, O, S)
117117 }
118118
119119
120+func T () = {
121+ let N = getIntegerValue(x, g)
122+ let O = getIntegerValue(x, f)
123+ let U = getIntegerValue(this, h)
124+ M(N, O, U)
125+ }
126+
127+
120128 @Callable(G)
121-func constructor (T,U,V,W,X) = {
122- let Y = [if (isDefined(addressFromString(T)))
129+func constructor (V,W,X,Y,U) = {
130+ let Z = [if (isDefined(addressFromString(V)))
123131 then true
124- else throw("Invalid boosting contract address"), if (isDefined(addressFromString(U)))
132+ else throw("Invalid boosting contract address"), if (isDefined(addressFromString(W)))
125133 then true
126- else throw("Invalid emission contract address"), if ((V > 0))
134+ else throw("Invalid emission contract address"), if ((X > 0))
127135 then true
128- else throw("Invalid voting duration"), if ((W > 0))
136+ else throw("Invalid voting duration"), if ((Y > 0))
129137 then true
130- else throw("invalid threshold"), if ((X > 0))
138+ else throw("invalid threshold"), if ((U > 0))
131139 then true
132140 else throw("invalid rateChangeStep")]
133- if ((Y == Y))
134- then $Tuple2([StringEntry(d, T), StringEntry(c, U), IntegerEntry(b, V), IntegerEntry(e, W), IntegerEntry(h, X), IntegerEntry(l(), height), StringEntry(m(), n("0", "0", "0"))], unit)
141+ if ((Z == Z))
142+ then $Tuple2([StringEntry(d, V), StringEntry(c, W), IntegerEntry(b, X), IntegerEntry(e, Y), IntegerEntry(h, U), IntegerEntry(l(), height), StringEntry(m(), n("0", "0", "0"))], unit)
135143 else throw("Strict value is not equal to itself.")
136144 }
137145
138146
139147
140148 @Callable(G)
141-func getRateChangeAmountsREADONLY () = {
142- let N = getIntegerValue(x, g)
143- let O = getIntegerValue(x, f)
144- let X = getIntegerValue(this, h)
145- $Tuple2(nil, M(N, O, X))
146- }
149+func getRateChangeAmountsREADONLY () = $Tuple2(nil, T())
147150
148151
149152
150153 @Callable(G)
151-func vote (Z) = {
152- let aa = (value(getInteger(l())) + value(getInteger(b)))
153- let Y = [if ((aa > height))
154+func vote (aa) = {
155+ let ab = (value(getInteger(l())) + value(getInteger(b)))
156+ let Z = [if ((ab > height))
154157 then true
155- else throw("too late to vote"), if (containsElement([1, 0, -1], Z))
158+ else throw("too late to vote"), if (containsElement([1, 0, -1], aa))
156159 then true
157160 else throw("not valid argument")]
158- if ((Y == Y))
161+ if ((Z == Z))
159162 then {
160- let u = invoke(w, "getUserGwxAmountAtHeightREADONLY", [toString(G.caller), aa], nil)
161- let ab = if ((J(u) > 0))
163+ let u = invoke(w, "getUserGwxAmountAtHeightREADONLY", [toString(G.caller), ab], nil)
164+ let ac = if ((J(u) > 0))
162165 then true
163166 else throw("you don't have gwx")
164- if ((ab == ab))
167+ if ((ac == ac))
165168 then {
166169 let v = {
167170 let B = getString(r(toString(G.caller)))
168171 if ($isInstanceOf(B, "String"))
169172 then {
170173 let C = B
171174 let v = split(C, a)
172- let ac = v[1]
173- let ad = v[2]
174- let ae = if (if (if ((ad == "increase"))
175- then (Z == 1)
175+ let ad = v[1]
176+ let ae = v[2]
177+ let af = if (if (if ((ae == "increase"))
178+ then (aa == 1)
176179 else false)
177180 then true
178- else if ((ad == "decrease"))
179- then (Z == -1)
181+ else if ((ae == "decrease"))
182+ then (aa == -1)
180183 else false)
181184 then true
182- else if ((ad == "none"))
183- then (Z == 0)
185+ else if ((ae == "none"))
186+ then (aa == 0)
184187 else false
185- let af = if (ae)
186- then (J(u) == parseIntValue(ac))
188+ let ag = if (af)
189+ then (J(u) == parseIntValue(ad))
187190 else false
188- let ag = if (if (ae)
189- then af
191+ let ah = if (if (af)
192+ then ag
190193 else false)
191194 then throw("you already voted")
192195 else invoke(this, "cancelVote", nil, nil)
193- ag
196+ ah
194197 }
195198 else if ($isInstanceOf(B, "Unit"))
196199 then {
197- let ah = B
198- ah
200+ let ai = B
201+ ai
199202 }
200203 else throw("Match error")
201204 }
202205 if ((v == v))
203206 then {
204- let ai = split(value(getString(m())), a)
205- let aj = ai[1]
206- let ak = ai[2]
207- let al = ai[3]
208- let am = if ((Z == 1))
207+ let aj = split(value(getString(m())), a)
208+ let ak = aj[1]
209+ let al = aj[2]
210+ let am = aj[3]
211+ let an = if ((aa == 1))
209212 then {
210- let an = (parseIntValue(aj) + J(u))
211-[toString(an), ak, al]
213+ let ao = (parseIntValue(ak) + J(u))
214+[toString(ao), al, am]
212215 }
213- else if ((Z == -1))
216+ else if ((aa == -1))
214217 then {
215- let ao = (parseIntValue(ak) + J(u))
216-[aj, ak, toString(ao)]
218+ let ap = (parseIntValue(al) + J(u))
219+[ak, al, toString(ap)]
217220 }
218221 else {
219- let ap = (parseIntValue(ak) + J(u))
220-[aj, toString(ap), al]
222+ let aq = (parseIntValue(al) + J(u))
223+[ak, toString(aq), am]
221224 }
222- let aq = r(toString(G.caller))
223- let ac = t(toString(J(u)), Z)
224- $Tuple2([StringEntry(m(), n(am[0], am[1], am[2])), StringEntry(aq, ac)], unit)
225+ let ar = r(toString(G.caller))
226+ let ad = t(toString(J(u)), aa)
227+ $Tuple2([StringEntry(m(), n(an[0], an[1], an[2])), StringEntry(ar, ad)], unit)
225228 }
226229 else throw("Strict value is not equal to itself.")
227230 }
228231 else throw("Strict value is not equal to itself.")
229232 }
230233 else throw("Strict value is not equal to itself.")
231234 }
232235
233236
234237
235238 @Callable(G)
236239 func cancelVote () = {
237- let ar = if ((G.caller == this))
240+ let as = if ((G.caller == this))
238241 then toString(G.originCaller)
239242 else toString(G.caller)
240- let Y = [if (isDefined(getString(m())))
243+ let Z = [if (isDefined(getString(m())))
241244 then true
242245 else throw("no vote")]
243- if ((Y == Y))
246+ if ((Z == Z))
244247 then {
245- let v = split(value(getString(r(ar))), a)
246- let ac = v[1]
247- let ad = v[2]
248- let ai = split(value(getString(m())), a)
249- let aj = ai[1]
250- let ak = ai[2]
251- let al = ai[3]
252- let as = if ((ad == "increase"))
248+ let v = split(value(getString(r(as))), a)
249+ let ad = v[1]
250+ let ae = v[2]
251+ let aj = split(value(getString(m())), a)
252+ let ak = aj[1]
253+ let al = aj[2]
254+ let am = aj[3]
255+ let at = if ((ae == "increase"))
253256 then {
254- let at = (parseIntValue(aj) - parseIntValue(ac))
255- $Tuple2([StringEntry(m(), n(toString(at), ak, al)), DeleteEntry(r(ar))], unit)
257+ let au = (parseIntValue(ak) - parseIntValue(ad))
258+ $Tuple2([StringEntry(m(), n(toString(au), al, am)), DeleteEntry(r(as))], unit)
256259 }
257- else if ((ad == "decrease"))
260+ else if ((ae == "decrease"))
258261 then {
259- let au = (parseIntValue(al) - parseIntValue(ac))
260- $Tuple2([StringEntry(m(), n(aj, ak, toString(au))), DeleteEntry(r(ar))], unit)
262+ let av = (parseIntValue(am) - parseIntValue(ad))
263+ $Tuple2([StringEntry(m(), n(ak, al, toString(av))), DeleteEntry(r(as))], unit)
261264 }
262265 else {
263- let ap = (parseIntValue(ak) - parseIntValue(ac))
264- $Tuple2([StringEntry(m(), n(aj, toString(ap), al)), DeleteEntry(r(ar))], unit)
266+ let aq = (parseIntValue(al) - parseIntValue(ad))
267+ $Tuple2([StringEntry(m(), n(ak, toString(aq), am)), DeleteEntry(r(as))], unit)
265268 }
266- as
269+ at
267270 }
268271 else throw("Strict value is not equal to itself.")
269272 }
270273
271274
272275
273276 @Callable(G)
274-func setThreshold (av) = {
275- let Y = [I(G), if ((av > 0))
277+func setThreshold (aw) = {
278+ let Z = [I(G), if ((aw > 0))
276279 then true
277280 else throw("invalid threshold")]
278- if ((Y == Y))
279- then $Tuple2([IntegerEntry(e, av)], unit)
281+ if ((Z == Z))
282+ then $Tuple2([IntegerEntry(e, aw)], unit)
280283 else throw("Strict value is not equal to itself.")
281284 }
282285
283286
284287
285288 @Callable(G)
286289 func finalize () = {
287- let aa = (value(getInteger(l())) + value(getInteger(b)))
288- let Y = [if ((height >= aa))
290+ let ab = (value(getInteger(l())) + value(getInteger(b)))
291+ let Z = [if ((height >= ab))
289292 then true
290293 else throw("insufficient height for completion")]
291- if ((Y == Y))
294+ if ((Z == Z))
292295 then {
293- let ai = split(value(getString(m())), a)
294- let aj = parseIntValue(ai[1])
295- let ak = parseIntValue(ai[2])
296- let al = parseIntValue(ai[3])
297- let aw = ((aj + ak) + al)
298- let W = k(e)
299- let as = if (if ((aw >= W))
300- then true
301- else false)
296+ let aj = split(value(getString(m())), a)
297+ let ak = parseIntValue(aj[1])
298+ let al = parseIntValue(aj[2])
299+ let am = parseIntValue(aj[3])
300+ let ax = ((ak + al) + am)
301+ let Y = k(e)
302+ let ay = T()
303+ let R = ay._1
304+ let az = ay._2
305+ let S = ay._3
306+ let aA = [ak, al, am]
307+ let at = if ((Y > ax))
302308 then nil
303- else nil
304- as
309+ else if ((al == max(aA)))
310+ then [StringEntry("foo", "NONE")]
311+ else if ((ak == max(aA)))
312+ then [StringEntry("foo", "INC")]
313+ else [StringEntry("foo", "DEC")]
314+ at
305315 }
306316 else throw("Strict value is not equal to itself.")
307317 }
308318
309319

github/deemru/w8io/873ac7e 
72.99 ms