tx · BrD3yKLCRSTm1M2QvaYNxdP5oXiDN4K79ZVw6yghUNrx

3MwukwUkp3PsyCrkjMgqiAnSfc1hBD5FQhH:  -0.02300000 Waves

2023.03.14 23:47 [2490219] smart account 3MwukwUkp3PsyCrkjMgqiAnSfc1hBD5FQhH > SELF 0.00000000 Waves

{ "type": 13, "id": "BrD3yKLCRSTm1M2QvaYNxdP5oXiDN4K79ZVw6yghUNrx", "fee": 2300000, "feeAssetId": null, "timestamp": 1678826875132, "version": 2, "chainId": 84, "sender": "3MwukwUkp3PsyCrkjMgqiAnSfc1hBD5FQhH", "senderPublicKey": "5JqBVJpMCyD7dJLJttqYjL6CmJc4zahBHSFjFb7qQTga", "proofs": [ "2bAPLWJbAcJgtnGxudWKZ7UWV5FfVXAhacvjUAoB5R2a52D8YzZZRKFGNXKsHQLLw2kJVAfnsahPHP87sTkt7mDY" ], "script": "base64:BgIhCAISBAoCAQESBgoECAgICBIDCgEYEgASAwoBCBIDCgEBRAADU0VQAgFfAA5fbWluTG9ja3BlcmlvZAABAA1fdW5pdERlY2ltYWxzAIDC1y8ADl9taW5Mb2NrQW1vdW50CQBoAgABBQ1fdW5pdERlY2ltYWxzAA5fbWF4TG9ja0Ftb3VudAkAaAIA6AcFDV91bml0RGVjaW1hbHMAA19EdACAuJkpAQRfUHB5AQpsb2NrUGVyaW9kCQBrAwUNX3VuaXREZWNpbWFscwDtAgUKbG9ja1BlcmlvZAANX2luY3JlbWVudFJlZgkAaAIAwIQ9BQ1fdW5pdERlY2ltYWxzAA5fcGVyY2VudGFnZUZlZQkAawMFDV91bml0RGVjaW1hbHMACgBkABpfcGVyY2VudGFnZVJlZHVjdGlvbkZhY3RvcgIpQ3VycmVudF9QZXJjZW50YWdlUmVkdWN0aW9uX0ZhY3Rvcl9Gb3JfTXIAA19NcgIMTWludGluZ19SYXRlAAxfc3Rhd0Fzc2V0SWQCDFN0YXdfQXNzZXRJZAAIX21hbmFnZXICB21hbmFnZXIABF9EZngCA0RmeAAVX2NpcmN1bGF0aW9uSW5jckluZGV4AhlDaXJjdWxhdGlvbkluY3JlbWVudEluZGV4AA5fbGVzc2VlQWRkcmVzcwIJTGVhc2VOb2RlABpfdXNlckVtaXNzaW9uQW1vdW50Q2xhaW1lZAIVRW1pc3Npb25BbW91bnRDbGFpbWVkABtfdXNlckNhbkNsYWltRW1pc3Npb25BbW91bnQCFkNhbkNsYWltRW1pc3Npb25BbW91bnQADF91c2VyQWRkcmVzcwINV2FsbGV0QWRkcmVzcwAUX3VzZXJMb2NhbEluZGV4Q291bnQCFFRvdGFsRW50cnlJbmRleENvdW50ABBfdXNlclRvdGFsTG9ja2VkAgtUb3RhbExvY2tlZAANX2xvY2tEdXJhdGlvbgIMTG9ja0R1cmF0aW9uAApfbG9ja0luZGV4Ag9HbG9iYWxMb2NrSW5kZXgAB19sb2NrSWQCDkxvY2tJZGVudGlmaWVyAAxfd2F2ZXNBbW91bnQCDUFtb3VudEluV2F2ZXMAC19zdGF3QW1vdW50AgxBbW91bnRJblN0YXcADV9zdGF3TFBBbW91bnQCDkFtb3VudEluU3Rhd0xQAAVfdHhJZAIEVFhJRAANX2xvY2tBdEhlaWdodAIMTG9ja0F0SGVpZ2h0ABRfbG9ja1BlcmlvZEluTWlsaVNlYwIUTG9jS1BlcmlvZEluTWlsbGlTZWMAEl90b3RhbFdhdmVzQ2xhaW1lZAIRVG90YWxXYXZlc0NsYWltZWQAD191c2VyTGVhc2VTdGF0ZQIKTGVhc2VTdGF0ZQAKX3RvdGFsU3RhdwIPVG90YWxTdGF3TWludGVkAA5fdG90YWxXYXZlc1JlZgIQVG90YWxXYXZlc0xvY2tlZAAMX3RvdGFsU3Rhd0xQAgtUb3RhbFN0YXdMUAARX2dsb2JhbEluZGV4Q291bnQCCkluZGV4Q291bnQBBV9nZXRJAQNrZXkJAJoIAgUEdGhpcwUDa2V5AQVfZ2V0UwEDa2V5CQCdCAIFBHRoaXMFA2tleQEFX2dldEIBA2tleQkAmwgCBQR0aGlzBQNrZXkBBl9nZXRCVgEDa2V5CQEFdmFsdWUBCQCbCAIFBHRoaXMFA2tleQEGX2dldElWAQNrZXkJAQV2YWx1ZQEJAJoIAgUEdGhpcwUDa2V5AQZfZ2V0U1YBA2tleQkBBXZhbHVlAQkAnQgCBQR0aGlzBQNrZXkBDF9zZXRQYXJhbVZhbAIDa2V5CmRlZmF1bHRWYWwEByRtYXRjaDAFCmRlZmF1bHRWYWwDCQABAgUHJG1hdGNoMAIGU3RyaW5nBApkZWZhdWx0VmFsBQckbWF0Y2gwAwkBCWlzRGVmaW5lZAEJAQVfZ2V0UwEFA2tleQkBBl9nZXRTVgEFA2tleQUKZGVmYXVsdFZhbAMJAAECBQckbWF0Y2gwAgNJbnQECmRlZmF1bHRWYWwFByRtYXRjaDADCQEJaXNEZWZpbmVkAQkBBV9nZXRJAQUDa2V5CQEGX2dldElWAQUDa2V5BQpkZWZhdWx0VmFsAwkAAQIFByRtYXRjaDACB0Jvb2xlYW4ECmRlZmF1bHRWYWwFByRtYXRjaDADCQEJaXNEZWZpbmVkAQkBBV9nZXRCAQUDa2V5CQEGX2dldEJWAQUDa2V5BQpkZWZhdWx0VmFsCQACAQkArAICAh12YWx1ZSB0eXBlIG5vdCBzdXBwb3J0ZWQgZm9yIAUDa2V5AQ9fdGhyb3dPclJldHVyblMCA3ZhbAVlcnJvcgQHJG1hdGNoMAUDdmFsAwkAAQIFByRtYXRjaDACBlN0cmluZwQDdmFsBQckbWF0Y2gwBQN2YWwJAAIBBQVlcnJvcgEPX3Rocm93T3JSZXR1cm5JAgN2YWwFZXJyb3IEByRtYXRjaDAFA3ZhbAMJAAECBQckbWF0Y2gwAgNJbnQEA3ZhbAUHJG1hdGNoMAUDdmFsCQACAQUFZXJyb3IBEl90aHJvd09yUmV0dXJuQm9vbAIDdmFsBWVycm9yBAckbWF0Y2gwBQN2YWwDCQABAgUHJG1hdGNoMAIHQm9vbGVhbgQDdmFsBQckbWF0Y2gwBQN2YWwJAAIBBQVlcnJvcgEJX3dyaXRlSW50AgNrZXkFdmFsdWUDCQBmAgAABQV2YWx1ZQkAAgEJAKwCAgkArAICCQCsAgICF3dyaXRpbmcgbmVnYXRpdmUgdmFsdWUgCQCkAwEFBXZhbHVlAgkgZm9yIGtleSAFA2tleQkBDEludGVnZXJFbnRyeQIFA2tleQUFdmFsdWUBCV93cml0ZVN0cgIDa2V5BXZhbHVlAwkAAAICASAFBXZhbHVlCQACAQkArAICAhh3cml0aW5nIGFuIGVtcHR5IHN0cmluZyAFBXZhbHVlCQELU3RyaW5nRW50cnkCBQNrZXkFBXZhbHVlAQhfdGhyb3dJZgIJY29uZGl0aW9uBWVycm9yAwUJY29uZGl0aW9uCQACAQUFZXJyb3IGARFfd3JpdGVHbG9iYWxQYXJhbQIDa2V5Bl92YWx1ZQQHJG1hdGNoMAUGX3ZhbHVlAwkAAQIFByRtYXRjaDACA0ludAQGX3ZhbHVlBQckbWF0Y2gwBAVlbnRyeQkAuQkCCQDMCAICAiVkCQDMCAIJAKQDAQUGX3ZhbHVlBQNuaWwFA1NFUAkBCV93cml0ZVN0cgIFA2tleQUFZW50cnkDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAZfdmFsdWUFByRtYXRjaDAEBWVudHJ5CQC5CQIJAMwIAgICJXMJAMwIAgUGX3ZhbHVlBQNuaWwFA1NFUAkBCV93cml0ZVN0cgIFA2tleQUFZW50cnkDCQABAgUHJG1hdGNoMAIHQm9vbGVhbgQGX3ZhbHVlBQckbWF0Y2gwBAVlbnRyeQkAuQkCCQDMCAICAiViCQDMCAIJAKUDAQUGX3ZhbHVlBQNuaWwFA1NFUAkBCV93cml0ZVN0cgIFA2tleQUFZW50cnkJAAIBAhJ0eXBlIG5vdCBzdXBwb3J0ZWQBDl9kYXlzVG9NaWxpU2VjAQRkYXlzBAVjaGVjawkBCF90aHJvd0lmAgkAZwIFBGRheXMAAAIVaW52YWxpZCBsb2NraW5nIGRheXMhAwkAAAIFBWNoZWNrBQVjaGVjawkAaAIFBGRheXMFA19EdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgERX3dyaXRlQ29uc3RTdHJpbmcCA2tleQV2YWx1ZQMJAQEhAQkBCWlzRGVmaW5lZAEJAQVfZ2V0UwEFA2tleQkBCV93cml0ZVN0cgIFA2tleQUFdmFsdWUJAAIBCQCsAgICG2VudHJ5IGFscmVhZHkgaW5pdGlhbGl6ZWQ6IAUDa2V5ARJfd3JpdGVDb25zdEludGVnZXICA2tleQV2YWx1ZQMJAQEhAQkBCWlzRGVmaW5lZAEJAQVfZ2V0UwEFA2tleQkBCV93cml0ZUludAIFA2tleQUFdmFsdWUJAAIBCQCsAgICHCBlbnRyeSBhbHJlYWR5IGluaXRpYWxpemVkOiAFA2tleQEMX29ubHlNYW5hZ2VyAQFpBAdtYW5hZ2VyCQEPX3Rocm93T3JSZXR1cm5TAgkBBV9nZXRTAQUIX21hbmFnZXICEW1hbmFnZXIgbm90IGZvdW5kAwkAAAIFB21hbmFnZXIFB21hbmFnZXIJAQhfdGhyb3dJZgIJAQIhPQIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwUHbWFuYWdlcgIWYWRkcmVzcyBub3QgYXV0aG9yaXplZAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgEEX2FicwEDdmFsAwkAZgIAAAUDdmFsCQEBLQEFA3ZhbAUDdmFsARBfdmFsaWRhdGVBZGRyZXNzAQdhZGRyZXNzBAckbWF0Y2gwBQdhZGRyZXNzAwkAAQIFByRtYXRjaDACBlN0cmluZwQHYWRkcmVzcwUHJG1hdGNoMAQIX2FkZHJlc3MJAKYIAQUHYWRkcmVzcwQHJG1hdGNoMQUIX2FkZHJlc3MDCQABAgUHJG1hdGNoMQIHQWRkcmVzcwQIX2FkZHJlc3MFByRtYXRjaDEGCQACAQIPaW52YWxpZCBhZGRyZXNzAwkAAQIFByRtYXRjaDACCkJ5dGVWZWN0b3IEB2FkZHJlc3MFByRtYXRjaDAECF9hZGRyZXNzCQCnCAEFB2FkZHJlc3MEByRtYXRjaDEFCF9hZGRyZXNzAwkAAQIFByRtYXRjaDECB0FkZHJlc3MECF9hZGRyZXNzBQckbWF0Y2gxBgkAAgECEmludmFsaWQgcHVibGljIGtleQkAAgECEmludmFsaWQgaW5wdXQgdHlwZQEOX3ZhbGlkYXRlQXNzZXQBB2Fzc2V0SUQEByRtYXRjaDAJAOwHAQkA2QQBBQdhc3NldElEAwkAAQIFByRtYXRjaDACBUFzc2V0BAVhc3NldAUHJG1hdGNoMAYJAAIBCQCsAgICEmludmFsaWQgYXNzZXQgaWQ6IAUHYXNzZXRJRAEKX2NvbXB1dGVNcgAEEGN1cnJlbnRDaXJjSW5kZXgJAQ9fdGhyb3dPclJldHVybkkCCQEFX2dldEkBBRVfY2lyY3VsYXRpb25JbmNySW5kZXgCJmluY3JlbWVudCBpbmRleCBub3QgcHJldmlvdXNseSBkZWZpbmVkAwkAAAIFEGN1cnJlbnRDaXJjSW5kZXgFEGN1cnJlbnRDaXJjSW5kZXgEC3N0YXdBc3NldElkCQEPX3Rocm93T3JSZXR1cm5TAgkBBV9nZXRTAQUMX3N0YXdBc3NldElkAh5hc3NldCBpZCBub3QgcHJldmlvdWx5IGRlZmluZWQDCQAAAgULc3Rhd0Fzc2V0SWQFC3N0YXdBc3NldElkBBVzdGF3Q2lyY3VsYXRpbmdTdXBwbHkEByRtYXRjaDAJAOwHAQkA2QQBBQtzdGF3QXNzZXRJZAMJAAECBQckbWF0Y2gwAgVBc3NldAQFYXNzZXQFByRtYXRjaDAIBQVhc3NldAhxdWFudGl0eQkAAgEJAKwCAgIUYXNzZXQgbm90IGZvdW5kIGZvciAFC3N0YXdBc3NldElkBA11bml0SW5jcmVtZW50CQBpAgkBBF9hYnMBCQBlAgUVc3Rhd0NpcmN1bGF0aW5nU3VwcGx5BQ1faW5jcmVtZW50UmVmBQ1faW5jcmVtZW50UmVmBBduZXdDaXJjdWxhdGlvbkluY3JJbmRleAMJAGYCBQ11bml0SW5jcmVtZW50BRBjdXJyZW50Q2lyY0luZGV4CQBkAgUNdW5pdEluY3JlbWVudAUQY3VycmVudENpcmNJbmRleAUQY3VycmVudENpcmNJbmRleAQJY3VycmVudE1yCQEPX3Rocm93T3JSZXR1cm5JAgUDX01yAiRtaW5pdGluZyByYXRlIG5vdCBwcmV2aW91c2x5IGRlZmluZWQDCQAAAgUXbmV3Q2lyY3VsYXRpb25JbmNySW5kZXgFEGN1cnJlbnRDaXJjSW5kZXgFCWN1cnJlbnRNcgQSbmV3cmVkdWN0aW9uRmFjdG9yCQBkAgkBD190aHJvd09yUmV0dXJuSQIFGl9wZXJjZW50YWdlUmVkdWN0aW9uRmFjdG9yAidyZWR1Y3Rpb24gZmFjdG9yIG5vdCBwcmV2aW91c2x5IGRlZmluZWQACgQMbmV3Q3VycmVudE1yCQBlAgUJY3VycmVudE1yCQBrAwUJY3VycmVudE1yBRJuZXdyZWR1Y3Rpb25GYWN0b3IAZAQGc3RvcmUxCQEJX3dyaXRlSW50AgUDX01yBQxuZXdDdXJyZW50TXIDCQAAAgUGc3RvcmUxBQZzdG9yZTEEBnN0b3JlMgkBCV93cml0ZUludAIFGl9wZXJjZW50YWdlUmVkdWN0aW9uRmFjdG9yBRJuZXdyZWR1Y3Rpb25GYWN0b3IDCQAAAgUGc3RvcmUyBQZzdG9yZTIEBnN0b3JlMwkBCV93cml0ZUludAIFFV9jaXJjdWxhdGlvbkluY3JJbmRleAUXbmV3Q2lyY3VsYXRpb25JbmNySW5kZXgDCQAAAgUGc3RvcmUzBQZzdG9yZTMFDG5ld0N1cnJlbnRNcgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgEWX2dldFJlZ2lzdHJ5RW50cnlWYWx1ZQEDa2V5BAlfcmF3VmFsdWUJAQ9fdGhyb3dPclJldHVyblMCCQEFX2dldFMBBQNrZXkCD2VudHJ5IG5vdCBmb3VuZAMJAAACBQlfcmF3VmFsdWUFCV9yYXdWYWx1ZQQBeAkAtQkCBQlfcmF3VmFsdWUFA1NFUAQPZm9ybWF0U3BlY2lmaWVyCQCyAgIJAJEDAgUBeAAAAAEEDF92YWx1ZVN0cmluZwkAkQMCBQF4CQBlAgkAkAMBBQF4AAEEBl92YWx1ZQMJAAACBQ9mb3JtYXRTcGVjaWZpZXICAXMFDF92YWx1ZVN0cmluZwMJAAACBQ9mb3JtYXRTcGVjaWZpZXICAWQJAQ1wYXJzZUludFZhbHVlAQUMX3ZhbHVlU3RyaW5nAwkAAAIFD2Zvcm1hdFNwZWNpZmllcgIBYgkA2QQBBQxfdmFsdWVTdHJpbmcJAAIBCQCsAgICI2NvdWxkIG5vdCBwYXJzZSByZWdpc3RyeSB2YWx1ZSBmb3IgBQNrZXkFBl92YWx1ZQkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgESX3VwZGF0ZUdsb2JhbEVudHJ5BAt3YXZlc0Ftb3VudApzdGF3QW1vdW50BnN0YXdQTAppbmRleENvdW50BBpfbmV3R2xvYmFsVG90YWxXYXZlc0FtdFJlZgkAZAIJAQ9fdGhyb3dPclJldHVybkkCCQEFX2dldEkBBQ5fdG90YWxXYXZlc1JlZgInZ2xvYmFsIHdhdmVzIHN1bSBub3QgcHJldmlvdXNseSBkZWZpbmVkBQt3YXZlc0Ftb3VudAQZX25ld0dsb2JhbFRvdGFsU3Rhd01pbnRlZAkAZAIJAQ9fdGhyb3dPclJldHVybkkCCQEFX2dldEkBBQpfdG90YWxTdGF3Aihnb2JhbCBzdGF3IG1pbnRlZCBub3QgcHJldmlvdXNseSBkZWZpbmVkBQpzdGF3QW1vdW50BBVfbmV3R2xvYmFsVG90YWxTdGF3UEwJAGQCCQEPX3Rocm93T3JSZXR1cm5JAgkBBV9nZXRJAQUMX3RvdGFsU3Rhd0xQAiRnbG9iYWwgc3Rhd1BMIG5vdCBwcmV2aW91c2x5IGRlZmluZWQFBnN0YXdQTAQTX25ld0dsb2JhSW5kZXhDb3VudAkAZAIJAQ9fdGhyb3dPclJldHVybkkCCQEFX2dldEkBBRFfZ2xvYmFsSW5kZXhDb3VudAIpZ2xvYmFsIGluZGV4IGNvdW50IG5vdCBwcmV2aW91c2x5IGRlZmluZWQFCmluZGV4Q291bnQJAMwIAgkBCV93cml0ZUludAIFDl90b3RhbFdhdmVzUmVmBRpfbmV3R2xvYmFsVG90YWxXYXZlc0FtdFJlZgkAzAgCCQEJX3dyaXRlSW50AgUKX3RvdGFsU3RhdwUZX25ld0dsb2JhbFRvdGFsU3Rhd01pbnRlZAkAzAgCCQEJX3dyaXRlSW50AgUMX3RvdGFsU3Rhd0xQBRVfbmV3R2xvYmFsVG90YWxTdGF3UEwJAMwIAgkBCV93cml0ZUludAIFEV9nbG9iYWxJbmRleENvdW50BRNfbmV3R2xvYmFJbmRleENvdW50BQNuaWwBEl9yZWdpc3RlclVzZXJFbnRyeQ0NdHJhbnNhY3Rpb25JRAt1c2VyQWRkcmVzcwxsb2NrRHVyYXRpb24SbG9ja0R1cmF0aW9uSW5NaWxpCWxvY2tJbmRleAt3YXZlc0Ftb3VudApzdGF3QW1vdW50DHN0YXdMUEFtb3VudAxsb2NrQXRIZWlnaHQGbG9ja0lkC3RvdGFsTG9ja2VkD2xvY2FsSW5kZXhDb3VudApsZWFzZVN0YXRlBAhfdHhJZEtleQkAuQkCCQDMCAIFC3VzZXJBZGRyZXNzCQDMCAIFDXRyYW5zYWN0aW9uSUQJAMwIAgUFX3R4SWQFA25pbAUDU0VQBBBfbG9ja0R1cmF0aW9uS2V5CQC5CQIJAMwIAgULdXNlckFkZHJlc3MJAMwIAgUNdHJhbnNhY3Rpb25JRAkAzAgCBQ1fbG9ja0R1cmF0aW9uBQNuaWwFA1NFUAQNX2xvY2tJbmRleEtleQkAuQkCCQDMCAIFC3VzZXJBZGRyZXNzCQDMCAIFDXRyYW5zYWN0aW9uSUQJAMwIAgUKX2xvY2tJbmRleAUDbmlsBQNTRVAED193YXZlc0Ftb3VudEtleQkAuQkCCQDMCAIFC3VzZXJBZGRyZXNzCQDMCAIFDXRyYW5zYWN0aW9uSUQJAMwIAgUMX3dhdmVzQW1vdW50BQNuaWwFA1NFUAQOX3N0YXdBbW91bnRLZXkJALkJAgkAzAgCBQt1c2VyQWRkcmVzcwkAzAgCBQ10cmFuc2FjdGlvbklECQDMCAIFC19zdGF3QW1vdW50BQNuaWwFA1NFUAQQX3N0YXdMUEFtb3VudEtleQkAuQkCCQDMCAIFC3VzZXJBZGRyZXNzCQDMCAIFDXRyYW5zYWN0aW9uSUQJAMwIAgUNX3N0YXdMUEFtb3VudAUDbmlsBQNTRVAEEF9sb2NrQXRIZWlnaHRLZXkJALkJAgkAzAgCBQt1c2VyQWRkcmVzcwkAzAgCBQ10cmFuc2FjdGlvbklECQDMCAIFDV9sb2NrQXRIZWlnaHQFA25pbAUDU0VQBApfbG9ja0lkS2V5CQC5CQIJAMwIAgULdXNlckFkZHJlc3MJAMwIAgUNdHJhbnNhY3Rpb25JRAkAzAgCBQdfbG9ja0lkBQNuaWwFA1NFUAQPX3RvdGFsTG9ja2VkS2V5CQC5CQIJAMwIAgULdXNlckFkZHJlc3MJAMwIAgUQX3VzZXJUb3RhbExvY2tlZAUDbmlsBQNTRVAEEl9sb2NhbExvY2tJbmRleEtleQkAuQkCCQDMCAIFC3VzZXJBZGRyZXNzCQDMCAIFFF91c2VyTG9jYWxJbmRleENvdW50BQNuaWwFA1NFUAQXX2xvY2tQZXJpb2RJbk1pbGlTZWNLZXkJALkJAgkAzAgCBQt1c2VyQWRkcmVzcwkAzAgCBQ10cmFuc2FjdGlvbklECQDMCAIFFF9sb2NrUGVyaW9kSW5NaWxpU2VjBQNuaWwFA1NFUAQVX3RvdGFsV2F2ZXNDbGFpbWVkS2V5CQC5CQIJAMwIAgULdXNlckFkZHJlc3MJAMwIAgUNdHJhbnNhY3Rpb25JRAkAzAgCBRJfdG90YWxXYXZlc0NsYWltZWQFA25pbAUDU0VQBBJfdXNlckxlYXNlU3RhdGVLZXkJALkJAgkAzAgCBQt1c2VyQWRkcmVzcwkAzAgCBQ10cmFuc2FjdGlvbklECQDMCAIFD191c2VyTGVhc2VTdGF0ZQUDbmlsBQNTRVAECnRyeElkRW50cnkJALkJAgkAzAgCAgIlcwkAzAgCBQ10cmFuc2FjdGlvbklEBQNuaWwFA1NFUAQRbG9ja0R1cmF0aW9uRW50cnkJALkJAgkAzAgCAgIlZAkAzAgCCQCkAwEFDGxvY2tEdXJhdGlvbgUDbmlsBQNTRVAEDmxvY2tJbmRleEVudHJ5CQC5CQIJAMwIAgICJWQJAMwIAgkApAMBBQlsb2NrSW5kZXgFA25pbAUDU0VQBBB3YXZlc0Ftb3VudEVudHJ5CQC5CQIJAMwIAgICJWQJAMwIAgkApAMBBQt3YXZlc0Ftb3VudAUDbmlsBQNTRVAED3N0YXdBbW91bnRFbnRyeQkAuQkCCQDMCAICAiVkCQDMCAIJAKQDAQUKc3Rhd0Ftb3VudAUDbmlsBQNTRVAEEXN0YXdMUEFtb3VudEVudHJ5CQC5CQIJAMwIAgICJWQJAMwIAgkApAMBBQxzdGF3TFBBbW91bnQFA25pbAUDU0VQBBFsb2NrQXRIZWlnaHRFbnRyeQkAuQkCCQDMCAICAiVkCQDMCAIJAKQDAQUMbG9ja0F0SGVpZ2h0BQNuaWwFA1NFUAQLbG9ja0lkRW50cnkJALkJAgkAzAgCAgIlYgkAzAgCBQZsb2NrSWQFA25pbAUDU0VQBBB0b3RhbExvY2tlZEVudHJ5CQC5CQIJAMwIAgICJWQJAMwIAgkApAMBBQt0b3RhbExvY2tlZAUDbmlsBQNTRVAEE3VzZXJMb2NhbEluZGV4RW50cnkJALkJAgkAzAgCAgIlZAkAzAgCCQCkAwEFD2xvY2FsSW5kZXhDb3VudAUDbmlsBQNTRVAEGGxvY2tQZXJpb2RJbk1pbGlTZWNFbnRyeQkAuQkCCQDMCAICAiVkCQDMCAIJAKQDAQUSbG9ja0R1cmF0aW9uSW5NaWxpBQNuaWwFA1NFUAQWdG90YWxXYXZlc0NsYWltZWRFbnRyeQkAuQkCCQDMCAICAiVkCQDMCAIJAKQDAQAABQNuaWwFA1NFUAQTdXNlckxlYXNlU3RhdGVFbnRyeQkAuQkCCQDMCAICAiVzCQDMCAIFCmxlYXNlU3RhdGUFA25pbAUDU0VQCQDMCAIJARFfd3JpdGVDb25zdFN0cmluZwIFCF90eElkS2V5BQp0cnhJZEVudHJ5CQDMCAIJARFfd3JpdGVDb25zdFN0cmluZwIFDV9sb2NrSW5kZXhLZXkFDmxvY2tJbmRleEVudHJ5CQDMCAIJAQlfd3JpdGVTdHICBRJfbG9jYWxMb2NrSW5kZXhLZXkFE3VzZXJMb2NhbEluZGV4RW50cnkJAMwIAgkBCV93cml0ZVN0cgIFD190b3RhbExvY2tlZEtleQUQdG90YWxMb2NrZWRFbnRyeQkAzAgCCQERX3dyaXRlQ29uc3RTdHJpbmcCBRBfbG9ja0R1cmF0aW9uS2V5BRFsb2NrRHVyYXRpb25FbnRyeQkAzAgCCQERX3dyaXRlQ29uc3RTdHJpbmcCBRdfbG9ja1BlcmlvZEluTWlsaVNlY0tleQUYbG9ja1BlcmlvZEluTWlsaVNlY0VudHJ5CQDMCAIJARFfd3JpdGVDb25zdFN0cmluZwIFD193YXZlc0Ftb3VudEtleQUQd2F2ZXNBbW91bnRFbnRyeQkAzAgCCQERX3dyaXRlQ29uc3RTdHJpbmcCBQ5fc3Rhd0Ftb3VudEtleQUPc3Rhd0Ftb3VudEVudHJ5CQDMCAIJAQlfd3JpdGVTdHICBRBfc3Rhd0xQQW1vdW50S2V5BRFzdGF3TFBBbW91bnRFbnRyeQkAzAgCCQEJX3dyaXRlU3RyAgUVX3RvdGFsV2F2ZXNDbGFpbWVkS2V5BRZ0b3RhbFdhdmVzQ2xhaW1lZEVudHJ5CQDMCAIJARFfd3JpdGVDb25zdFN0cmluZwIFEF9sb2NrQXRIZWlnaHRLZXkFEWxvY2tBdEhlaWdodEVudHJ5CQDMCAIJARFfd3JpdGVDb25zdFN0cmluZwIFCl9sb2NrSWRLZXkFC2xvY2tJZEVudHJ5CQDMCAIJAQlfd3JpdGVTdHICBRJfdXNlckxlYXNlU3RhdGVLZXkFE3VzZXJMZWFzZVN0YXRlRW50cnkFA25pbAEHX3N0YXdNRgIKbG9ja1BlcmlvZA9jb2xsYXRlcmFsV2F2ZXMEC19hZGp1c3RlZE1yCQEKX2NvbXB1dGVNcgAJAGgCCQBrAwUNX3VuaXREZWNpbWFscwkAaAIFA19EdAULX2FkanVzdGVkTXIJAQRfUHB5AQUKbG9ja1BlcmlvZAUPY29sbGF0ZXJhbFdhdmVzARJfZW1pc3Npb25SYXRlV2F2ZXMCCmxvY2tQZXJpb2QKY29sbGF0ZXJhbAQPZXh0ZW5zaW9uRmFjdG9yCQBrAwUKbG9ja1BlcmlvZAAPAAoJAGgCCQBpAgUKY29sbGF0ZXJhbAkAZQIJAGgCBQpsb2NrUGVyaW9kBQ9leHRlbnNpb25GYWN0b3IFCmxvY2tQZXJpb2QFA19EdAEQX2luY3JUb3RhbFN0YXdMUAEGYW1vdW50BAlvbGRTdGF3TFAJAQ9fdGhyb3dPclJldHVybkkCCQEFX2dldEkBBQxfdG90YWxTdGF3TFACIGNvdWxkIG5vdCBnZXQgdGhlIHJ1bm5pbmcgU3Rhd0xQCQDMCAIJAQlfd3JpdGVJbnQCBQxfdG90YWxTdGF3TFAJAGQCBQlvbGRTdGF3TFAFBmFtb3VudAUDbmlsARBfZGVjclRvdGFsU3Rhd0xQAQZhbW91bnQECW9sZFN0YXdMUAkBD190aHJvd09yUmV0dXJuSQIJAQVfZ2V0SQEFDF90b3RhbFN0YXdMUAIgY291bGQgbm90IGdldCB0aGUgcnVubmluZyBTdGF3TFAJAMwIAgkBCV93cml0ZUludAIFDF90b3RhbFN0YXdMUAkAZQIFCW9sZFN0YXdMUAUGYW1vdW50BQNuaWwBEl9pbmNyVG90YWxXYXZlc1JlZgEGYW1vdW50BAtvbGRXYXZlc1JlZgkBD190aHJvd09yUmV0dXJuSQIJAQVfZ2V0SQEFDl90b3RhbFdhdmVzUmVmAiBjb3VsZCBub3QgZ2V0IHRvdGFsIGxvY2tlZCB3YXZlcwkAzAgCCQEJX3dyaXRlSW50AgUOX3RvdGFsV2F2ZXNSZWYJAGQCBQtvbGRXYXZlc1JlZgUGYW1vdW50BQNuaWwBEl9kZWNyVG90YWxXYXZlc1JlZgEGYW1vdW50BAtvbGRXYXZlc1JlZgkBD190aHJvd09yUmV0dXJuSQIJAQVfZ2V0SQEFDl90b3RhbFdhdmVzUmVmAiBjb3VsZCBub3QgZ2V0IHRvdGFsIGxvY2tlZCB3YXZlcwkAzAgCCQEJX3dyaXRlSW50AgUOX3RvdGFsV2F2ZXNSZWYJAGUCBQtvbGRXYXZlc1JlZgUGYW1vdW50BQNuaWwBEF9nZXROZXdUaW1lU3RhbXABC2Jsb2NrSGVpZ2h0BAR0aW1lBAckbWF0Y2gwCQDtBwEFC2Jsb2NrSGVpZ2h0AwkAAQIFByRtYXRjaDACCUJsb2NrSW5mbwQIdGltZUluZm8FByRtYXRjaDAIBQh0aW1lSW5mbwl0aW1lc3RhbXAJAAIBAhRjb3VubGQgZ2V0IHRpbWVzdGFtcAUEdGltZQYBaQELZ2V0RW1pc3Npb24CCmxvY2tQZXJpb2QKY29sbGF0ZXJhbAQGY2hlY2sxCQEMX29ubHlNYW5hZ2VyAQUBaQMJAAACBQZjaGVjazEFBmNoZWNrMQkAlAoCBQNuaWwJARJfZW1pc3Npb25SYXRlV2F2ZXMCBQpsb2NrUGVyaW9kBQpjb2xsYXRlcmFsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBBGluaXQEB21hbmFnZXIDZGZ4B2Fzc2V0SUQJbGVhc2VOb2RlBBRtYW5hZ2VyQWxyZWFkeUV4aXN0cwMJAQlpc0RlZmluZWQBCQEFX2dldFMBBQhfbWFuYWdlcgkBDF9vbmx5TWFuYWdlcgEFAWkGAwkAAAIFFG1hbmFnZXJBbHJlYWR5RXhpc3RzBRRtYW5hZ2VyQWxyZWFkeUV4aXN0cwQGY2hlY2sxCQEQX3ZhbGlkYXRlQWRkcmVzcwEFB21hbmFnZXIDCQAAAgUGY2hlY2sxBQZjaGVjazEEBmNoZWNrMgkBEF92YWxpZGF0ZUFkZHJlc3MBBQNkZngDCQAAAgUGY2hlY2syBQZjaGVjazIEBmNoZWNrMwkBEF92YWxpZGF0ZUFkZHJlc3MBBQlsZWFzZU5vZGUDCQAAAgUGY2hlY2szBQZjaGVjazMEBmNoZWNrNAkBDl92YWxpZGF0ZUFzc2V0AQUHYXNzZXRJRAMJAAACBQZjaGVjazQFBmNoZWNrNAQQY2lyY3VsYXRpb25JbmRleAkBDF9zZXRQYXJhbVZhbAIFFV9jaXJjdWxhdGlvbkluY3JJbmRleAAABBdwZXJjZW50YWdlUmVkdWN0aW9uSW5NcgkBDF9zZXRQYXJhbVZhbAIFGl9wZXJjZW50YWdlUmVkdWN0aW9uRmFjdG9yAAAEAk1yCQEMX3NldFBhcmFtVmFsAgUDX01yBQ1fdW5pdERlY2ltYWxzBA90b3RhbFN0YXdNaW50ZWQJAQxfc2V0UGFyYW1WYWwCBQpfdG90YWxTdGF3AAAEGHRvdGFsU3Rhd0xQSW5DaXJjdWxhdGlvbgkBDF9zZXRQYXJhbVZhbAIFDF90b3RhbFN0YXdMUAAABBBnbG9iYWxJbmRleENvdW50CQEMX3NldFBhcmFtVmFsAgURX2dsb2JhbEluZGV4Q291bnQAAAQNdG90YWxXYXZlc1JlZgkBDF9zZXRQYXJhbVZhbAIFDl90b3RhbFdhdmVzUmVmAAAJAMwIAgkBEV93cml0ZUdsb2JhbFBhcmFtAgUIX21hbmFnZXIFB21hbmFnZXIJAMwIAgkBEV93cml0ZUdsb2JhbFBhcmFtAgUEX0RmeAUDZGZ4CQDMCAIJARFfd3JpdGVHbG9iYWxQYXJhbQIFDF9zdGF3QXNzZXRJZAUHYXNzZXRJRAkAzAgCCQERX3dyaXRlR2xvYmFsUGFyYW0CBQ5fbGVzc2VlQWRkcmVzcwUJbGVhc2VOb2RlCQDMCAIJARFfd3JpdGVHbG9iYWxQYXJhbQIFFV9jaXJjdWxhdGlvbkluY3JJbmRleAUQY2lyY3VsYXRpb25JbmRleAkAzAgCCQERX3dyaXRlR2xvYmFsUGFyYW0CBQNfTXIFAk1yCQDMCAIJARFfd3JpdGVHbG9iYWxQYXJhbQIFGl9wZXJjZW50YWdlUmVkdWN0aW9uRmFjdG9yBRdwZXJjZW50YWdlUmVkdWN0aW9uSW5NcgkAzAgCCQERX3dyaXRlR2xvYmFsUGFyYW0CBQ5fdG90YWxXYXZlc1JlZgUNdG90YWxXYXZlc1JlZgkAzAgCCQERX3dyaXRlR2xvYmFsUGFyYW0CBQxfdG90YWxTdGF3TFAFGHRvdGFsU3Rhd0xQSW5DaXJjdWxhdGlvbgkAzAgCCQERX3dyaXRlR2xvYmFsUGFyYW0CBQpfdG90YWxTdGF3BQ90b3RhbFN0YXdNaW50ZWQFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpARJtb2RpZnlHbG9iYWxQYXJhbXMBA3ZhbAQGY2hlY2sxCQEMX29ubHlNYW5hZ2VyAQUBaQMJAAACBQZjaGVjazEFBmNoZWNrMQQGY2hlY2syCQEIX3Rocm93SWYCCQAAAgkAkAMBBQN2YWwAAgIiW2dsb2JhbF9rZXksIHZhbHVlXSBwYWlycyBleHBlY3RlZAMJAAACBQZjaGVjazIFBmNoZWNrMgQDa2V5CQCRAwIFA3ZhbAAABAd2YWxUeXBlCQC2CQEJAJEDAgUDdmFsAAEEByRtYXRjaDAFB3ZhbFR5cGUDCQABAgUHJG1hdGNoMAIDSW50BAF4BQckbWF0Y2gwBAt2YWxpZGF0ZUtleQkBCF90aHJvd0lmAgkAAAIJAQVfZ2V0UwEFA2tleQUEdW5pdAkArAICCQCsAgICBGtleSAFA2tleQIPIG5vdCByZWNvZ25pemVkAwkAAAIFC3ZhbGlkYXRlS2V5BQt2YWxpZGF0ZUtleQkAzAgCCQERX3dyaXRlR2xvYmFsUGFyYW0CBQNrZXkFAXgFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgMJAAECBQckbWF0Y2gwAgRVbml0BAF4BQckbWF0Y2gwBAt2YWxpZGF0ZUtleQkBCF90aHJvd0lmAgkAAAIJAQVfZ2V0UwEFA2tleQUEdW5pdAkArAICCQCsAgICBGtleSAFA2tleQIPIG5vdCByZWNvZ25pemVkAwkAAAIFC3ZhbGlkYXRlS2V5BQt2YWxpZGF0ZUtleQQLc3RyaW5nVmFsdWUJAJEDAgUDdmFsAAEECnJlZkFkZHJlc3MJARZfZ2V0UmVnaXN0cnlFbnRyeVZhbHVlAQIIX21hbmFnZXIEBmNoZWNrNAQHJG1hdGNoMQUKcmVmQWRkcmVzcwMJAAECBQckbWF0Y2gxAgZTdHJpbmcEB3N0clR5cGUFByRtYXRjaDEDCQAAAgkAsQIBBQdzdHJUeXBlCQCxAgEFC3N0cmluZ1ZhbHVlCQEQX3ZhbGlkYXRlQWRkcmVzcwEFC3N0cmluZ1ZhbHVlCQEOX3ZhbGlkYXRlQXNzZXQBBQtzdHJpbmdWYWx1ZQkAAgECGHZhbHVlIHR5cGUgbm90IHN1cHBvcnRlZAMJAAACBQZjaGVjazQFBmNoZWNrNAkAzAgCCQERX3dyaXRlR2xvYmFsUGFyYW0CBQNrZXkFC3N0cmluZ1ZhbHVlBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBCQCsAgICEWZhaWxlZCB0byBtb2RpZnkgCQCRAwIFA3ZhbAAACQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBCnJldm9rZUxvY2sABAZjaGVjazEJAQxfb25seU1hbmFnZXIBBQFpAwkAAAIFBmNoZWNrMQUGY2hlY2sxBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEFY2xhaW0BDXRyYW5zYWN0aW9uSUQEDWNhbGxlckFkZHJlc3MJANgEAQgIBQFpBmNhbGxlcgVieXRlcwQNY29sbGF0ZXJhbEtleQkAuQkCCQDMCAIFDWNhbGxlckFkZHJlc3MJAMwIAgUNdHJhbnNhY3Rpb25JRAkAzAgCBQxfd2F2ZXNBbW91bnQFA25pbAUDU0VQBA1sb2NrcGVyaW9kS2V5CQC5CQIJAMwIAgUNY2FsbGVyQWRkcmVzcwkAzAgCBQ10cmFuc2FjdGlvbklECQDMCAIFDV9sb2NrRHVyYXRpb24FA25pbAUDU0VQBAlsb2NrSWRLZXkJALkJAgkAzAgCBQ1jYWxsZXJBZGRyZXNzCQDMCAIFDXRyYW5zYWN0aW9uSUQJAMwIAgUHX2xvY2tJZAUDbmlsBQNTRVAEE2xvY2twZXJpb2RJbk1pbGlLZXkJALkJAgkAzAgCBQ1jYWxsZXJBZGRyZXNzCQDMCAIFDXRyYW5zYWN0aW9uSUQJAMwIAgUUX2xvY2tQZXJpb2RJbk1pbGlTZWMFA25pbAUDU0VQBBR0b3RhbFdhdmVzQ2xhaW1lZEtleQkAuQkCCQDMCAIFDWNhbGxlckFkZHJlc3MJAMwIAgUNdHJhbnNhY3Rpb25JRAkAzAgCBRJfdG90YWxXYXZlc0NsYWltZWQFA25pbAUDU0VQBA9zdGF3TFBBbW91bnRLZXkJALkJAgkAzAgCBQ1jYWxsZXJBZGRyZXNzCQDMCAIFDXRyYW5zYWN0aW9uSUQJAMwIAgUNX3N0YXdMUEFtb3VudAUDbmlsBQNTRVAEDndhdmVzQW1vdW50S2V5CQC5CQIJAMwIAgUNY2FsbGVyQWRkcmVzcwkAzAgCBQ10cmFuc2FjdGlvbklECQDMCAIFDF93YXZlc0Ftb3VudAUDbmlsBQNTRVAEF3VzZXJUb3RhbFdhdmVzTG9ja2VkS2V5CQC5CQIJAMwIAgUNY2FsbGVyQWRkcmVzcwkAzAgCBRBfdXNlclRvdGFsTG9ja2VkBQNuaWwFA1NFUAQRdXNlckxlYXNlU3RhdGVLZXkJALkJAgkAzAgCBQ1jYWxsZXJBZGRyZXNzCQDMCAIFDXRyYW5zYWN0aW9uSUQJAMwIAgUPX3VzZXJMZWFzZVN0YXRlBQNuaWwFA1NFUAQNbGVhc2VTdGF0ZUtleQkAuQkCCQDMCAIFDWNhbGxlckFkZHJlc3MJAMwIAgUNdHJhbnNhY3Rpb25JRAkAzAgCBQ9fdXNlckxlYXNlU3RhdGUFA25pbAUDU0VQBA5nbG9iYWxXYXZlc1JlZgkBBl9nZXRJVgEFDl90b3RhbFdhdmVzUmVmAwkAAAIFDmdsb2JhbFdhdmVzUmVmBQ5nbG9iYWxXYXZlc1JlZgQMZ2xvYmFsU3Rhd1BMCQEGX2dldElWAQUMX3RvdGFsU3Rhd0xQAwkAAAIFDGdsb2JhbFN0YXdQTAUMZ2xvYmFsU3Rhd1BMBAZsb2NrSWQEByRtYXRjaDAJARZfZ2V0UmVnaXN0cnlFbnRyeVZhbHVlAQUJbG9ja0lkS2V5AwkAAQIFByRtYXRjaDACCkJ5dGVWZWN0b3IEAXQFByRtYXRjaDAFAXQJAAIBAhZmYWlsZWQgdG8gZ2V0IGxlYXNlIGlkAwkAAAIFBmxvY2tJZAUGbG9ja0lkBBR1c2VyVG90YWxXYXZlc0xvY2tlZAQHJG1hdGNoMAkBFl9nZXRSZWdpc3RyeUVudHJ5VmFsdWUBBRd1c2VyVG90YWxXYXZlc0xvY2tlZEtleQMJAAECBQckbWF0Y2gwAgNJbnQEAXQFByRtYXRjaDAFAXQJAAIBAjBmYWlsZWQgdG8gZ2V0IHRvdGFsIHdhdmVzIGxvY2tlZCBieSB0aGlzIGFkZHJlc3MDCQAAAgUUdXNlclRvdGFsV2F2ZXNMb2NrZWQFFHVzZXJUb3RhbFdhdmVzTG9ja2VkBAt3YXZlc0Ftb3VudAQHJG1hdGNoMAkBFl9nZXRSZWdpc3RyeUVudHJ5VmFsdWUBBQ53YXZlc0Ftb3VudEtleQMJAAECBQckbWF0Y2gwAgNJbnQEAXQFByRtYXRjaDAFAXQJAAIBAiBmYWlsZWQgdG8gZ2V0IHRvdGFsIHdhdmVzIGxvY2tlZAMJAAACBQt3YXZlc0Ftb3VudAULd2F2ZXNBbW91bnQEEXRvdGFsV2F2ZXNDbGFpbWVkBAckbWF0Y2gwCQEWX2dldFJlZ2lzdHJ5RW50cnlWYWx1ZQEFFHRvdGFsV2F2ZXNDbGFpbWVkS2V5AwkAAQIFByRtYXRjaDACA0ludAQBdAUHJG1hdGNoMAUBdAkAAgECIWZhaWxlZCB0byBnZXQgdG90YWwgd2F2ZXMgY2xhaW1lZAMJAAACBRF0b3RhbFdhdmVzQ2xhaW1lZAURdG90YWxXYXZlc0NsYWltZWQEDHN0YXdMUEFtb3VudAQHJG1hdGNoMAkBFl9nZXRSZWdpc3RyeUVudHJ5VmFsdWUBBQ9zdGF3TFBBbW91bnRLZXkDCQABAgUHJG1hdGNoMAIDSW50BAF0BQckbWF0Y2gwBQF0CQACAQIUZmFpbGVkIHRvIGdldCBzdGF3UEwDCQAAAgUMc3Rhd0xQQW1vdW50BQxzdGF3TFBBbW91bnQEEGxvY2tQZXJpb2RJbk1pbGkEByRtYXRjaDAJARZfZ2V0UmVnaXN0cnlFbnRyeVZhbHVlAQUTbG9ja3BlcmlvZEluTWlsaUtleQMJAAECBQckbWF0Y2gwAgNJbnQEAXQFByRtYXRjaDAFAXQJAAIBAiJmYWlsZWQgdG8gZ2V0IGxvY2sgcGVyaW9kIHRpbWVzcGFtAwkAAAIFEGxvY2tQZXJpb2RJbk1pbGkFEGxvY2tQZXJpb2RJbk1pbGkEEGN1cnJlbnRUaW1lU3RhbXAEByRtYXRjaDAJARBfZ2V0TmV3VGltZVN0YW1wAQUGaGVpZ2h0AwkAAQIFByRtYXRjaDACA0ludAQBdAUHJG1hdGNoMAUBdAkAAgECH2ZhaWxlZCB0byBnZXQgY3VycmVudCB0aW1lc3RhbXADCQAAAgUQY3VycmVudFRpbWVTdGFtcAUQY3VycmVudFRpbWVTdGFtcAQKY29sbGF0ZXJhbAQHJG1hdGNoMAkBFl9nZXRSZWdpc3RyeUVudHJ5VmFsdWUBBQ1jb2xsYXRlcmFsS2V5AwkAAQIFByRtYXRjaDACA0ludAQBdAUHJG1hdGNoMAUBdAkAAgECGGZhaWxlZCB0byBnZXQgY29sbGF0ZXJhbAMJAAACBQpjb2xsYXRlcmFsBQpjb2xsYXRlcmFsBApsb2NrUGVyaW9kBAckbWF0Y2gwCQEWX2dldFJlZ2lzdHJ5RW50cnlWYWx1ZQEFDWxvY2twZXJpb2RLZXkDCQABAgUHJG1hdGNoMAIDSW50BAF0BQckbWF0Y2gwBQF0CQACAQIYZmFpbGVkIHRvIGdldCBsb2NrUGVyaW9kAwkAAAIFCmxvY2tQZXJpb2QFCmxvY2tQZXJpb2QEEWN1cnJlbnRMZWFzZVN0YXRlBAckbWF0Y2gwCQEWX2dldFJlZ2lzdHJ5RW50cnlWYWx1ZQEFEXVzZXJMZWFzZVN0YXRlS2V5AwkAAQIFByRtYXRjaDACBlN0cmluZwQBdAUHJG1hdGNoMAUBdAkAAgECGWZhaWxlZCB0byBnZXQgbGVhc2Ugc3RhdGUDCQAAAgURY3VycmVudExlYXNlU3RhdGUFEWN1cnJlbnRMZWFzZVN0YXRlBApsZWFzZVN0YXRlBAckbWF0Y2gwCQEWX2dldFJlZ2lzdHJ5RW50cnlWYWx1ZQEFDWxlYXNlU3RhdGVLZXkDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAF0BQckbWF0Y2gwBQF0CQACAQIiZmFpbGVkIHRvIGdldCBsZWFzZSBzdGF0ZSBmb3IgdXNlcgMJAAACBQpsZWFzZVN0YXRlBQpsZWFzZVN0YXRlBAZjaGVjazEJAQhfdGhyb3dJZgIJAGYCBRBsb2NrUGVyaW9kSW5NaWxpBRBjdXJyZW50VGltZVN0YW1wAipsb2NrIHBlcmlvZCBmb3IgdGhpcyBlbnRyeSBoYXMgbm90IGVsYXBzZWQDCQAAAgUGY2hlY2sxBQZjaGVjazEEC2xlYXNlQWN0aW9uAwkAAAIFEWN1cnJlbnRMZWFzZVN0YXRlAgZsZWFzZWQJAJQKAgkBC0xlYXNlQ2FuY2VsAQUGbG9ja0lkCQEJX3dyaXRlU3RyAgURdXNlckxlYXNlU3RhdGVLZXkCCWNhbmNlbGxlZAkAlAoCCQEJX3dyaXRlU3RyAgURdXNlckxlYXNlU3RhdGVLZXkCCWNhbmNlbGxlZAkBCV93cml0ZVN0cgIFEXVzZXJMZWFzZVN0YXRlS2V5AgljYW5jZWxsZWQDCQAAAgULbGVhc2VBY3Rpb24FC2xlYXNlQWN0aW9uBAZjaGVjazIJAQhfdGhyb3dJZgIDCQAAAgAABQt3YXZlc0Ftb3VudAYJAAACAAAFDHN0YXdMUEFtb3VudAIhYWxsIGNsYWltcyBleGhhdXN0ZWQgZm9yIHRoaXMgdHJ4AwkAAAIFBmNoZWNrMgUGY2hlY2syBBJlbWlzc2lvblZhbHVlUGVyRFQJAGgCCQESX2VtaXNzaW9uUmF0ZVdhdmVzAgUKbG9ja1BlcmlvZAUKY29sbGF0ZXJhbAUDX0R0BAtjbGFpbUFjdGlvbgQNdGltZVN0YW1wRGlmZgkAZQIFEGN1cnJlbnRUaW1lU3RhbXAFEGxvY2tQZXJpb2RJbk1pbGkEGmRheXNBZnRlckxvY2tQZXJpb2RFbGFzcGVkCQBpAgUNdGltZVN0YW1wRGlmZgUDX0R0AwkAAAIFGmRheXNBZnRlckxvY2tQZXJpb2RFbGFzcGVkAAAJAAIBAiJsZXNzIHRoYW4gMjRocnMgYmVmb3JlIGZpcnN0IGNsYWltAwkBAiE9AgkAagIFDXRpbWVTdGFtcERpZmYFA19EdAAACQACAQI0YWxyZWFkeSBjbGFpbWVkIG9yIGxlc3MgdGhhbiAyNGhycyBiZWZvcmUgbmV4dCBjbGFpbQMJAGYCBRpkYXlzQWZ0ZXJMb2NrUGVyaW9kRWxhc3BlZAUKbG9ja1BlcmlvZAkAAgECFGFsbCBjbGFpbXMgZXhoYXVzdGVkBBR0b3RhbEFtb3VudENsYWltYWJsZQkAaAIFGmRheXNBZnRlckxvY2tQZXJpb2RFbGFzcGVkBRJlbWlzc2lvblZhbHVlUGVyRFQECGNoZWNrM18xCQEIX3Rocm93SWYCCQAAAgUUdG90YWxBbW91bnRDbGFpbWFibGUFEXRvdGFsV2F2ZXNDbGFpbWVkAhxjYW4gb25seSBjbGFpbSBvbmNlIGluIDI0aHJzAwkAAAIFCGNoZWNrM18xBQhjaGVjazNfMQQIY2hlY2szXzIJAQhfdGhyb3dJZgIJAGYCCQBkAgUUdG90YWxBbW91bnRDbGFpbWFibGUFEXRvdGFsV2F2ZXNDbGFpbWVkBQt3YXZlc0Ftb3VudAIUYWxsIGNsYWltcyBleGhhdXN0ZWQDCQAAAgUIY2hlY2szXzIFCGNoZWNrM18yBBFjbGFpbUFtb3VudFRvU2VuZAMJAAACBRpkYXlzQWZ0ZXJMb2NrUGVyaW9kRWxhc3BlZAABBRR0b3RhbEFtb3VudENsYWltYWJsZQkAZQIFFHRvdGFsQW1vdW50Q2xhaW1hYmxlBRF0b3RhbFdhdmVzQ2xhaW1lZAQSbmV3VG90YWxXYXZlc0NsYWltBRR0b3RhbEFtb3VudENsYWltYWJsZQQObmV3V2F2ZXNBbW91bnQDCQAAAgUaZGF5c0FmdGVyTG9ja1BlcmlvZEVsYXNwZWQAAQkAZQIFC3dhdmVzQW1vdW50BRR0b3RhbEFtb3VudENsYWltYWJsZQkAZQIFC3dhdmVzQW1vdW50CQBlAgUUdG90YWxBbW91bnRDbGFpbWFibGUFEXRvdGFsV2F2ZXNDbGFpbWVkBA9uZXdTdGF3TFBBbW91bnQDCQAAAgUaZGF5c0FmdGVyTG9ja1BlcmlvZEVsYXNwZWQAAQkAZQIFDHN0YXdMUEFtb3VudAUUdG90YWxBbW91bnRDbGFpbWFibGUJAGUCBQxzdGF3TFBBbW91bnQJAGUCBRR0b3RhbEFtb3VudENsYWltYWJsZQURdG90YWxXYXZlc0NsYWltZWQEEG5ld0dsb2JhbFdhdmVSZWYJAGUCBQ5nbG9iYWxXYXZlc1JlZgUObmV3V2F2ZXNBbW91bnQED25ld0dsb2JhbFN0YXdQTAkAZQIFDGdsb2JhbFN0YXdQTAUPbmV3U3Rhd0xQQW1vdW50BBduZXdVc2VyVG90YWxXYXZlc0xvY2tlZAkAZQIFFHVzZXJUb3RhbFdhdmVzTG9ja2VkBRFjbGFpbUFtb3VudFRvU2VuZAQQd2F2ZXNBbW91bnRFbnRyeQkAuQkCCQDMCAICAiVkCQDMCAIJAKQDAQUObmV3V2F2ZXNBbW91bnQFA25pbAUDU0VQBBFzdGF3TFBBbW91bnRFbnRyeQkAuQkCCQDMCAICAiVkCQDMCAIJAKQDAQUPbmV3U3Rhd0xQQW1vdW50BQNuaWwFA1NFUAQWdG90YWxXYXZlc0NsYWltZWRFbnRyeQkAuQkCCQDMCAICAiVkCQDMCAIJAKQDAQUSbmV3VG90YWxXYXZlc0NsYWltBQNuaWwFA1NFUAQcbmV3VXNlclRvdGFsV2F2ZXNMb2NrZWRFbnRyeQkAuQkCCQDMCAICAiVkCQDMCAIJAKQDAQUXbmV3VXNlclRvdGFsV2F2ZXNMb2NrZWQFA25pbAUDU0VQCQDMCAIIBQtsZWFzZUFjdGlvbgJfMQkAzAgCCAULbGVhc2VBY3Rpb24CXzIJAMwIAgkBCV93cml0ZVN0cgIFDndhdmVzQW1vdW50S2V5BRB3YXZlc0Ftb3VudEVudHJ5CQDMCAIJAQlfd3JpdGVTdHICBQ9zdGF3TFBBbW91bnRLZXkFEXN0YXdMUEFtb3VudEVudHJ5CQDMCAIJAQlfd3JpdGVTdHICBRR0b3RhbFdhdmVzQ2xhaW1lZEtleQUWdG90YWxXYXZlc0NsYWltZWRFbnRyeQkAzAgCCQEJX3dyaXRlU3RyAgUXdXNlclRvdGFsV2F2ZXNMb2NrZWRLZXkFHG5ld1VzZXJUb3RhbFdhdmVzTG9ja2VkRW50cnkJAMwIAgkBCV93cml0ZUludAIFDl90b3RhbFdhdmVzUmVmBRBuZXdHbG9iYWxXYXZlUmVmCQDMCAIJAQlfd3JpdGVJbnQCBQxfdG90YWxTdGF3TFAFD25ld0dsb2JhbFN0YXdQTAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEICAUBaQZjYWxsZXIFYnl0ZXMFEWNsYWltQW1vdW50VG9TZW5kBQR1bml0BQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4DCQAAAgULY2xhaW1BY3Rpb24FC2NsYWltQWN0aW9uBQtjbGFpbUFjdGlvbgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQhtaW50U3RhdwEKbG9ja1BlcmlvZAQNY2FsbGVyQWRkcmVzcwkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzBAV0cnhJRAkA2AQBCAUBaQ10cmFuc2FjdGlvbklkBAZjaGVjazEJAQhfdGhyb3dJZgIJAQIhPQIAAQkAkAMBCAUBaQhwYXltZW50cwIUbm8gcGF5bWVudHMgYXR0YWNoZWQDCQAAAgUGY2hlY2sxBQZjaGVjazEEBmNoZWNrMgMJAQlpc0RlZmluZWQBCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQJAAIBAhRvbmx5IHdhdmVzIHN1cHBvcnRlZAYDCQAAAgUGY2hlY2syBQZjaGVjazIEDWFtb3VudEluV2F2ZXMICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAZjaGVjazMDAwkAZgIFDl9taW5Mb2NrQW1vdW50BQ1hbW91bnRJbldhdmVzBgkAZgIFDWFtb3VudEluV2F2ZXMFDl9tYXhMb2NrQW1vdW50CQACAQIeYW1vdW50IHRvIGxvY2sgaXMgb3V0IG9mIHJhbmdlBgMJAAACBQZjaGVjazMFBmNoZWNrMwQGY2hlY2s0AwkAZgIFDl9taW5Mb2NrcGVyaW9kBQpsb2NrUGVyaW9kCQACAQIebWluaW11bSBvZiAxNCBkYXlzIGxvY2sgcGVyaW9kBgMJAAACBQZjaGVjazQFBmNoZWNrNAQNdG90YWxTdGF3TWludAkBB19zdGF3TUYCBQpsb2NrUGVyaW9kBQ1hbW91bnRJbldhdmVzBAZzdGF3UEwFDWFtb3VudEluV2F2ZXMEA2ZlZQkAawMFDXRvdGFsU3Rhd01pbnQACgBkBBF1c2VyR2V0U3Rhd0Ftb3VudAkAZQIFDXRvdGFsU3Rhd01pbnQFA2ZlZQQTbG9ja1BlcmlvZFRvTWlsaXNlYwkAZAIJARBfZ2V0TmV3VGltZVN0YW1wAQUGaGVpZ2h0CQEOX2RheXNUb01pbGlTZWMBBQpsb2NrUGVyaW9kAwkAAAIFE2xvY2tQZXJpb2RUb01pbGlzZWMFE2xvY2tQZXJpb2RUb01pbGlzZWMECW5ld19pbmRleAkAZAIJAQ9fdGhyb3dPclJldHVybkkCCQEFX2dldEkBBRFfZ2xvYmFsSW5kZXhDb3VudAIjZ2xvYmFsIGluZGV4IG5vdCBwcmV2aW91c2x5IGRlZmluZWQAAQMJAAACBQluZXdfaW5kZXgFCW5ld19pbmRleAQKYWRkcmVzc0ZlZQkBB0FkZHJlc3MBCQDZBAEJAQ9fdGhyb3dPclJldHVyblMCCQEFX2dldFMBBQRfRGZ4AhpkZnggbm90IHByZXZpb3VzbHkgZGVmaW5lZAMJAAACBQphZGRyZXNzRmVlBQphZGRyZXNzRmVlBAtzdGF3QXNzZXRJZAkA2QQBCQEPX3Rocm93T3JSZXR1cm5TAgkBBV9nZXRTAQUMX3N0YXdBc3NldElkAh9hc3NldCBpZCBub3QgcHJldmlvdXNseSBkZWZpbmVkAwkAAAIFC3N0YXdBc3NldElkBQtzdGF3QXNzZXRJZAQGbGVzc2VlCQEHQWRkcmVzcwEJANkEAQkBD190aHJvd09yUmV0dXJuUwIJAQVfZ2V0UwEFDl9sZXNzZWVBZGRyZXNzAiFsZWFzZSBub2RlIG5vdCBwcmV2aW91c2x5IGRlZmluZWQDCQAAAgUGbGVzc2VlBQZsZXNzZWUEEHVzZXJMb2NrSW5kZXhLZXkJALkJAgkAzAgCBQ1jYWxsZXJBZGRyZXNzCQDMCAIFFF91c2VyTG9jYWxJbmRleENvdW50BQNuaWwFA1NFUAQSdXNlclRvdGFsTG9ja2VkS2V5CQC5CQIJAMwIAgUNY2FsbGVyQWRkcmVzcwkAzAgCBRBfdXNlclRvdGFsTG9ja2VkBQNuaWwFA1NFUAQOdXNlckluZGV4Q291bnQEByRtYXRjaDAJARZfZ2V0UmVnaXN0cnlFbnRyeVZhbHVlAQUQdXNlckxvY2tJbmRleEtleQMJAAECBQckbWF0Y2gwAgNJbnQEAXgFByRtYXRjaDAJAGQCBQF4AAEAAAMJAAACBQ51c2VySW5kZXhDb3VudAUOdXNlckluZGV4Q291bnQED3VzZXJUb3RhbExvY2tlZAQHJG1hdGNoMAkBFl9nZXRSZWdpc3RyeUVudHJ5VmFsdWUBBRJ1c2VyVG90YWxMb2NrZWRLZXkDCQABAgUHJG1hdGNoMAIDSW50BAF4BQckbWF0Y2gwCQBkAgUBeAUNYW1vdW50SW5XYXZlcwUNYW1vdW50SW5XYXZlcwMJAAACBQ91c2VyVG90YWxMb2NrZWQFD3VzZXJUb3RhbExvY2tlZAQIbGVhc2VPdXQJAMQIAgUGbGVzc2VlBQ1hbW91bnRJbldhdmVzAwkAAAIFCGxlYXNlT3V0BQhsZWFzZU91dAQKbGVhc2VJZFN0cgkA2AQBCQC5CAEFCGxlYXNlT3V0AwkAAAIFCmxlYXNlSWRTdHIFCmxlYXNlSWRTdHIJAM4IAgkAzggCCQDMCAIFCGxlYXNlT3V0CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFCmFkZHJlc3NGZWUFA2ZlZQULc3Rhd0Fzc2V0SWQJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCAgFAWkGY2FsbGVyBWJ5dGVzBRF1c2VyR2V0U3Rhd0Ftb3VudAULc3Rhd0Fzc2V0SWQFA25pbAkBEl9yZWdpc3RlclVzZXJFbnRyeQ0FBXRyeElEBQ1jYWxsZXJBZGRyZXNzBQpsb2NrUGVyaW9kBRNsb2NrUGVyaW9kVG9NaWxpc2VjBQluZXdfaW5kZXgFDWFtb3VudEluV2F2ZXMFEXVzZXJHZXRTdGF3QW1vdW50BQZzdGF3UEwFBmhlaWdodAUKbGVhc2VJZFN0cgUPdXNlclRvdGFsTG9ja2VkBQ51c2VySW5kZXhDb3VudAIGbGVhc2VkCQESX3VwZGF0ZUdsb2JhbEVudHJ5BAUNYW1vdW50SW5XYXZlcwUNdG90YWxTdGF3TWludAUGc3Rhd1BMBQluZXdfaW5kZXgJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4AJxJXkQ==", "height": 2490219, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CEAU4AETXpN3kKocb6qY3BTECyLTM9JC17jHvzNbSvhf Next: 3F7vGhAhryCexmY6UEx2JvptGAn2849TUBDXxUjqV8Az Diff:
OldNewDifferences
252252 }
253253
254254
255-func av () = {
256- let aw = Y(L(p), "increment index not previously defined")
257- if ((aw == aw))
255+func av (aw) = {
256+ let U = assetInfo(fromBase58String(aw))
257+ if ($isInstanceOf(U, "Asset"))
258258 then {
259- let ax = V(N(m), "asset id not previouly defined")
260- if ((ax == ax))
259+ let ax = U
260+ true
261+ }
262+ else throw(("invalid asset id: " + aw))
263+ }
264+
265+
266+func ay () = {
267+ let az = Y(L(p), "increment index not previously defined")
268+ if ((az == az))
269+ then {
270+ let aA = V(N(m), "asset id not previouly defined")
271+ if ((aA == aA))
261272 then {
262- let ay = {
263- let U = assetInfo(fromBase58String(ax))
273+ let aB = {
274+ let U = assetInfo(fromBase58String(aA))
264275 if ($isInstanceOf(U, "Asset"))
265276 then {
266- let az = U
267- az.quantity
277+ let ax = U
278+ ax.quantity
268279 }
269- else throw(("asset not found for " + ax))
280+ else throw(("asset not found for " + aA))
270281 }
271- let aA = (aq((ay - i)) / i)
272- let aB = if ((aA > aw))
273- then (aA + aw)
274- else aw
275- let aC = Y(l, "miniting rate not previously defined")
276- if ((aB == aw))
277- then aC
282+ let aC = (aq((aB - i)) / i)
283+ let aD = if ((aC > az))
284+ then (aC + az)
285+ else az
286+ let aE = Y(l, "miniting rate not previously defined")
287+ if ((aD == az))
288+ then aE
278289 else {
279- let aD = (Y(k, "reduction factor not previously defined") + 10)
280- let aE = (aC - fraction(aC, aD, 100))
281- let aF = aa(l, aE)
282- if ((aF == aF))
290+ let aF = (Y(k, "reduction factor not previously defined") + 10)
291+ let aG = (aE - fraction(aE, aF, 100))
292+ let aH = aa(l, aG)
293+ if ((aH == aH))
283294 then {
284- let aG = aa(k, aD)
285- if ((aG == aG))
295+ let aI = aa(k, aF)
296+ if ((aI == aI))
286297 then {
287- let aH = aa(p, aB)
288- if ((aH == aH))
289- then aE
298+ let aJ = aa(p, aD)
299+ if ((aJ == aJ))
300+ then aG
290301 else throw("Strict value is not equal to itself.")
291302 }
292303 else throw("Strict value is not equal to itself.")
300311 }
301312
302313
303-func aI (M) = {
304- let aJ = V(N(M), "entry not found")
305- if ((aJ == aJ))
314+func aK (M) = {
315+ let aL = V(N(M), "entry not found")
316+ if ((aL == aL))
306317 then {
307- let aK = split(aJ, a)
308- let aL = takeRight(aK[0], 1)
309- let aM = aK[(size(aK) - 1)]
310- let ag = if ((aL == "s"))
311- then aM
312- else if ((aL == "d"))
313- then parseIntValue(aM)
314- else if ((aL == "b"))
315- then fromBase58String(aM)
318+ let aM = split(aL, a)
319+ let aN = takeRight(aM[0], 1)
320+ let aO = aM[(size(aM) - 1)]
321+ let ag = if ((aN == "s"))
322+ then aO
323+ else if ((aN == "d"))
324+ then parseIntValue(aO)
325+ else if ((aN == "b"))
326+ then fromBase58String(aO)
316327 else throw(("could not parse registry value for " + M))
317328 ag
318329 }
320331 }
321332
322333
323-func aN (aO,aP,aQ,aR) = {
324- let aS = (Y(L(I), "global waves sum not previously defined") + aO)
325- let aT = (Y(L(H), "gobal staw minted not previously defined") + aP)
326- let aU = (Y(L(J), "global stawPL not previously defined") + aQ)
327- let aV = (Y(L(K), "global index count not previously defined") + aR)
328-[aa(I, aS), aa(H, aT), aa(J, aU), aa(K, aV)]
334+func aP (aQ,aR,aS,aT) = {
335+ let aU = (Y(L(I), "global waves sum not previously defined") + aQ)
336+ let aV = (Y(L(H), "gobal staw minted not previously defined") + aR)
337+ let aW = (Y(L(J), "global stawPL not previously defined") + aS)
338+ let aX = (Y(L(K), "global index count not previously defined") + aT)
339+[aa(I, aU), aa(H, aV), aa(J, aW), aa(K, aX)]
329340 }
330341
331342
332-func aW (aX,aY,aZ,ba,bb,aO,aP,bc,bd,be,bf,bg,bh) = {
333- let bi = makeString([aY, aX, C], a)
334- let bj = makeString([aY, aX, w], a)
335- let bk = makeString([aY, aX, x], a)
336- let bl = makeString([aY, aX, z], a)
337- let bm = makeString([aY, aX, A], a)
338- let bn = makeString([aY, aX, B], a)
339- let bo = makeString([aY, aX, D], a)
340- let bp = makeString([aY, aX, y], a)
341- let bq = makeString([aY, v], a)
342- let br = makeString([aY, u], a)
343- let bs = makeString([aY, aX, E], a)
344- let bt = makeString([aY, aX, F], a)
345- let bu = makeString([aY, aX, G], a)
346- let bv = makeString(["%s", aX], a)
347- let bw = makeString(["%d", toString(aZ)], a)
348- let bx = makeString(["%d", toString(bb)], a)
349- let by = makeString(["%d", toString(aO)], a)
350- let bz = makeString(["%d", toString(aP)], a)
351- let bA = makeString(["%d", toString(bc)], a)
352- let bB = makeString(["%d", toString(bd)], a)
353- let bC = makeString(["%b", be], a)
343+func aY (aZ,ba,bb,bc,bd,aQ,aR,be,bf,bg,bh,bi,bj) = {
344+ let bk = makeString([ba, aZ, C], a)
345+ let bl = makeString([ba, aZ, w], a)
346+ let bm = makeString([ba, aZ, x], a)
347+ let bn = makeString([ba, aZ, z], a)
348+ let bo = makeString([ba, aZ, A], a)
349+ let bp = makeString([ba, aZ, B], a)
350+ let bq = makeString([ba, aZ, D], a)
351+ let br = makeString([ba, aZ, y], a)
352+ let bs = makeString([ba, v], a)
353+ let bt = makeString([ba, u], a)
354+ let bu = makeString([ba, aZ, E], a)
355+ let bv = makeString([ba, aZ, F], a)
356+ let bw = makeString([ba, aZ, G], a)
357+ let bx = makeString(["%s", aZ], a)
358+ let by = makeString(["%d", toString(bb)], a)
359+ let bz = makeString(["%d", toString(bd)], a)
360+ let bA = makeString(["%d", toString(aQ)], a)
361+ let bB = makeString(["%d", toString(aR)], a)
362+ let bC = makeString(["%d", toString(be)], a)
354363 let bD = makeString(["%d", toString(bf)], a)
355- let bE = makeString(["%d", toString(bg)], a)
356- let bF = makeString(["%d", toString(ba)], a)
357- let bG = makeString(["%d", toString(0)], a)
358- let bH = makeString(["%s", bh], a)
359-[al(bi, bv), al(bk, bx), ac(br, bE), ac(bq, bD), al(bj, bw), al(bs, bF), al(bl, by), al(bm, bz), ac(bn, bA), ac(bt, bG), al(bo, bB), al(bp, bC), ac(bu, bH)]
364+ let bE = makeString(["%b", bg], a)
365+ let bF = makeString(["%d", toString(bh)], a)
366+ let bG = makeString(["%d", toString(bi)], a)
367+ let bH = makeString(["%d", toString(bc)], a)
368+ let bI = makeString(["%d", toString(0)], a)
369+ let bJ = makeString(["%s", bj], a)
370+[al(bk, bx), al(bm, bz), ac(bt, bG), ac(bs, bF), al(bl, by), al(bu, bH), al(bn, bA), al(bo, bB), ac(bp, bC), ac(bv, bI), al(bq, bD), al(br, bE), ac(bw, bJ)]
360371 }
361372
362373
363-func bI (h,bJ) = {
364- let bK = av()
365- (fraction(c, (f * bK), g(h)) * bJ)
374+func bK (h,bL) = {
375+ let bM = ay()
376+ (fraction(c, (f * bM), g(h)) * bL)
366377 }
367378
368379
369-func bL (h,bM) = {
370- let bN = fraction(h, 15, 10)
371- ((bM / ((h * bN) - h)) * f)
380+func bN (h,bO) = {
381+ let bP = fraction(h, 15, 10)
382+ ((bO / ((h * bP) - h)) * f)
372383 }
373384
374385
375-func bO (bP) = {
376- let bQ = Y(L(J), "could not get the running StawLP")
377-[aa(J, (bQ + bP))]
386+func bQ (bR) = {
387+ let bS = Y(L(J), "could not get the running StawLP")
388+[aa(J, (bS + bR))]
378389 }
379390
380391
381-func bR (bP) = {
382- let bQ = Y(L(J), "could not get the running StawLP")
383-[aa(J, (bQ - bP))]
392+func bT (bR) = {
393+ let bS = Y(L(J), "could not get the running StawLP")
394+[aa(J, (bS - bR))]
384395 }
385396
386397
387-func bS (bP) = {
388- let bT = Y(L(I), "could not get total locked waves")
389-[aa(I, (bT + bP))]
398+func bU (bR) = {
399+ let bV = Y(L(I), "could not get total locked waves")
400+[aa(I, (bV + bR))]
390401 }
391402
392403
393-func bU (bP) = {
394- let bT = Y(L(I), "could not get total locked waves")
395-[aa(I, (bT - bP))]
404+func bW (bR) = {
405+ let bV = Y(L(I), "could not get total locked waves")
406+[aa(I, (bV - bR))]
396407 }
397408
398409
399-func bV (bW) = {
400- let bX = {
401- let U = blockInfoByHeight(bW)
410+func bX (bY) = {
411+ let bZ = {
412+ let U = blockInfoByHeight(bY)
402413 if ($isInstanceOf(U, "BlockInfo"))
403414 then {
404- let bY = U
405- bY.timestamp
415+ let ca = U
416+ ca.timestamp
406417 }
407418 else throw("counld get timestamp")
408419 }
409- bX
420+ bZ
410421 }
411422
412423
413424 @Callable(ao)
414-func getEmission (h,bM) = {
415- let bZ = an(ao)
416- if ((bZ == bZ))
417- then $Tuple2(nil, bL(h, bM))
425+func getEmission (h,bO) = {
426+ let cb = an(ao)
427+ if ((cb == cb))
428+ then $Tuple2(nil, bN(h, bO))
418429 else throw("Strict value is not equal to itself.")
419430 }
420431
421432
422433
423434 @Callable(ao)
424-func init (ap,ca,cb,cc) = {
425- let cd = if (isDefined(N(n)))
435+func init (ap,cc,aw,cd) = {
436+ let ce = if (isDefined(N(n)))
426437 then an(ao)
427438 else true
428- if ((cd == cd))
439+ if ((ce == ce))
429440 then {
430- let bZ = ar(ap)
431- if ((bZ == bZ))
441+ let cb = ar(ap)
442+ if ((cb == cb))
432443 then {
433- let ce = ar(ca)
434- if ((ce == ce))
444+ let cf = ar(cc)
445+ if ((cf == cf))
435446 then {
436- let cf = ar(cc)
437- if ((cf == cf))
447+ let cg = ar(cd)
448+ if ((cg == cg))
438449 then {
439- let cg = S(p, 0)
440- let ch = S(k, 0)
441- let ci = S(l, c)
442- let cj = S(H, 0)
443- let ck = S(J, 0)
444- let cl = S(K, 0)
445- let cm = S(I, 0)
446-[af(n, ap), af(o, ca), af(m, cb), af(q, cc), af(p, cg), af(l, ci), af(k, ch), af(I, cm), af(J, ck), af(H, cj)]
450+ let ch = av(aw)
451+ if ((ch == ch))
452+ then {
453+ let ci = S(p, 0)
454+ let cj = S(k, 0)
455+ let ck = S(l, c)
456+ let cl = S(H, 0)
457+ let cm = S(J, 0)
458+ let cn = S(K, 0)
459+ let co = S(I, 0)
460+[af(n, ap), af(o, cc), af(m, aw), af(q, cd), af(p, ci), af(l, ck), af(k, cj), af(I, co), af(J, cm), af(H, cl)]
461+ }
462+ else throw("Strict value is not equal to itself.")
447463 }
448464 else throw("Strict value is not equal to itself.")
449465 }
458474
459475 @Callable(ao)
460476 func modifyGlobalParams (W) = {
461- let bZ = an(ao)
462- if ((bZ == bZ))
477+ let cb = an(ao)
478+ if ((cb == cb))
463479 then {
464- let ce = ad((size(W) == 2), "[global_key, value] pairs expected")
465- if ((ce == ce))
480+ let cf = ad((size(W) == 2), "[global_key, value] pairs expected")
481+ if ((cf == cf))
466482 then {
467483 let M = W[0]
468- let cn = parseInt(W[1])
469- let U = cn
484+ let cp = parseInt(W[1])
485+ let U = cp
470486 if ($isInstanceOf(U, "Int"))
471487 then {
472- let aK = U
473- let co = ad((N(M) == unit), (("key " + M) + " not recognized"))
474- if ((co == co))
475- then [af(M, aK)]
488+ let aM = U
489+ let cq = ad((N(M) == unit), (("key " + M) + " not recognized"))
490+ if ((cq == cq))
491+ then [af(M, aM)]
476492 else throw("Strict value is not equal to itself.")
477493 }
478494 else if ($isInstanceOf(U, "Unit"))
479495 then {
480- let aK = U
481- let co = ad((N(M) == unit), (("key " + M) + " not recognized"))
482- if ((co == co))
496+ let aM = U
497+ let cq = ad((N(M) == unit), (("key " + M) + " not recognized"))
498+ if ((cq == cq))
483499 then {
484- let cp = ar(W[1])
485- if ((cp == cp))
486- then [af(M, W[1])]
500+ let cr = W[1]
501+ let cs = aK("_manager")
502+ let ch = {
503+ let au = cs
504+ if ($isInstanceOf(au, "String"))
505+ then {
506+ let ct = au
507+ if ((size(ct) == size(cr)))
508+ then ar(cr)
509+ else av(cr)
510+ }
511+ else throw("value type not supported")
512+ }
513+ if ((ch == ch))
514+ then [af(M, cr)]
487515 else throw("Strict value is not equal to itself.")
488516 }
489517 else throw("Strict value is not equal to itself.")
490518 }
491- else $Tuple2(nil, true)
519+ else throw(("failed to modify " + W[0]))
492520 }
493521 else throw("Strict value is not equal to itself.")
494522 }
499527
500528 @Callable(ao)
501529 func revokeLock () = {
502- let bZ = an(ao)
503- if ((bZ == bZ))
530+ let cb = an(ao)
531+ if ((cb == cb))
504532 then nil
505533 else throw("Strict value is not equal to itself.")
506534 }
508536
509537
510538 @Callable(ao)
511-func claim (aX) = {
512- let cq = toBase58String(ao.caller.bytes)
513- let cr = makeString([cq, aX, z], a)
514- let cs = makeString([cq, aX, w], a)
515- let ct = makeString([cq, aX, y], a)
516- let cu = makeString([cq, aX, E], a)
517- let cv = makeString([cq, aX, F], a)
518- let cw = makeString([cq, aX, B], a)
519- let cx = makeString([cq, aX, z], a)
520- let cy = makeString([cq, v], a)
521- let cz = makeString([cq, aX, G], a)
522- let cA = makeString([cq, aX, G], a)
523- let cB = Q(I)
524- if ((cB == cB))
539+func claim (aZ) = {
540+ let cu = toBase58String(ao.caller.bytes)
541+ let cv = makeString([cu, aZ, z], a)
542+ let cw = makeString([cu, aZ, w], a)
543+ let cx = makeString([cu, aZ, y], a)
544+ let cy = makeString([cu, aZ, E], a)
545+ let cz = makeString([cu, aZ, F], a)
546+ let cA = makeString([cu, aZ, B], a)
547+ let cB = makeString([cu, aZ, z], a)
548+ let cC = makeString([cu, v], a)
549+ let cD = makeString([cu, aZ, G], a)
550+ let cE = makeString([cu, aZ, G], a)
551+ let cF = Q(I)
552+ if ((cF == cF))
525553 then {
526- let cC = Q(J)
527- if ((cC == cC))
554+ let cG = Q(J)
555+ if ((cG == cG))
528556 then {
529- let be = {
530- let U = aI(ct)
557+ let bg = {
558+ let U = aK(cx)
531559 if ($isInstanceOf(U, "ByteVector"))
532560 then {
533- let cD = U
534- cD
561+ let cH = U
562+ cH
535563 }
536564 else throw("failed to get lease id")
537565 }
538- if ((be == be))
566+ if ((bg == bg))
539567 then {
540- let cE = {
541- let U = aI(cy)
568+ let cI = {
569+ let U = aK(cC)
542570 if ($isInstanceOf(U, "Int"))
543571 then {
544- let cD = U
545- cD
572+ let cH = U
573+ cH
546574 }
547575 else throw("failed to get total waves locked by this address")
548576 }
549- if ((cE == cE))
577+ if ((cI == cI))
550578 then {
551- let aO = {
552- let U = aI(cx)
579+ let aQ = {
580+ let U = aK(cB)
553581 if ($isInstanceOf(U, "Int"))
554582 then {
555- let cD = U
556- cD
583+ let cH = U
584+ cH
557585 }
558586 else throw("failed to get total waves locked")
559587 }
560- if ((aO == aO))
588+ if ((aQ == aQ))
561589 then {
562- let cF = {
563- let U = aI(cv)
590+ let cJ = {
591+ let U = aK(cz)
564592 if ($isInstanceOf(U, "Int"))
565593 then {
566- let cD = U
567- cD
594+ let cH = U
595+ cH
568596 }
569597 else throw("failed to get total waves claimed")
570598 }
571- if ((cF == cF))
599+ if ((cJ == cJ))
572600 then {
573- let bc = {
574- let U = aI(cw)
601+ let be = {
602+ let U = aK(cA)
575603 if ($isInstanceOf(U, "Int"))
576604 then {
577- let cD = U
578- cD
605+ let cH = U
606+ cH
579607 }
580608 else throw("failed to get stawPL")
581609 }
582- if ((bc == bc))
610+ if ((be == be))
583611 then {
584- let cG = {
585- let U = aI(cu)
612+ let cK = {
613+ let U = aK(cy)
586614 if ($isInstanceOf(U, "Int"))
587615 then {
588- let cD = U
589- cD
616+ let cH = U
617+ cH
590618 }
591619 else throw("failed to get lock period timespam")
592620 }
593- if ((cG == cG))
621+ if ((cK == cK))
594622 then {
595- let cH = {
596- let U = bV(height)
623+ let cL = {
624+ let U = bX(height)
597625 if ($isInstanceOf(U, "Int"))
598626 then {
599- let cD = U
600- cD
627+ let cH = U
628+ cH
601629 }
602630 else throw("failed to get current timestamp")
603631 }
604- if ((cH == cH))
632+ if ((cL == cL))
605633 then {
606- let bM = {
607- let U = aI(cr)
634+ let bO = {
635+ let U = aK(cv)
608636 if ($isInstanceOf(U, "Int"))
609637 then {
610- let cD = U
611- cD
638+ let cH = U
639+ cH
612640 }
613641 else throw("failed to get collateral")
614642 }
615- if ((bM == bM))
643+ if ((bO == bO))
616644 then {
617645 let h = {
618- let U = aI(cs)
646+ let U = aK(cw)
619647 if ($isInstanceOf(U, "Int"))
620648 then {
621- let cD = U
622- cD
649+ let cH = U
650+ cH
623651 }
624652 else throw("failed to get lockPeriod")
625653 }
626654 if ((h == h))
627655 then {
628- let cI = {
629- let U = aI(cz)
656+ let cM = {
657+ let U = aK(cD)
630658 if ($isInstanceOf(U, "String"))
631659 then {
632- let cD = U
633- cD
660+ let cH = U
661+ cH
634662 }
635663 else throw("failed to get lease state")
636664 }
637- if ((cI == cI))
665+ if ((cM == cM))
638666 then {
639- let bh = {
640- let U = aI(cA)
667+ let bj = {
668+ let U = aK(cE)
641669 if ($isInstanceOf(U, "String"))
642670 then {
643- let cD = U
644- cD
671+ let cH = U
672+ cH
645673 }
646674 else throw("failed to get lease state for user")
647675 }
648- if ((bh == bh))
676+ if ((bj == bj))
649677 then {
650- let bZ = ad((cG > cH), "lock period for this entry has not elapsed")
651- if ((bZ == bZ))
678+ let cb = ad((cK > cL), "lock period for this entry has not elapsed")
679+ if ((cb == cb))
652680 then {
653- let cJ = if ((cI == "leased"))
654- then $Tuple2(LeaseCancel(be), ac(cz, "cancelled"))
655- else $Tuple2(ac(cz, "cancelled"), ac(cz, "cancelled"))
656- if ((cJ == cJ))
681+ let cN = if ((cM == "leased"))
682+ then $Tuple2(LeaseCancel(bg), ac(cD, "cancelled"))
683+ else $Tuple2(ac(cD, "cancelled"), ac(cD, "cancelled"))
684+ if ((cN == cN))
657685 then {
658- let ce = ad(if ((0 == aO))
686+ let cf = ad(if ((0 == aQ))
659687 then true
660- else (0 == bc), "all claims exhausted for this trx")
661- if ((ce == ce))
688+ else (0 == be), "all claims exhausted for this trx")
689+ if ((cf == cf))
662690 then {
663- let cK = (bL(h, bM) * f)
664- let cL = {
665- let cM = (cH - cG)
666- let cN = (cM / f)
667- if ((cN == 0))
691+ let cO = (bN(h, bO) * f)
692+ let cP = {
693+ let cQ = (cL - cK)
694+ let cR = (cQ / f)
695+ if ((cR == 0))
668696 then throw("less than 24hrs before first claim")
669- else if (((cM % f) != 0))
697+ else if (((cQ % f) != 0))
670698 then throw("already claimed or less than 24hrs before next claim")
671- else if ((cN > h))
699+ else if ((cR > h))
672700 then throw("all claims exhausted")
673701 else {
674- let cO = (cN * cK)
675- let cP = ad((cO == cF), "can only claim once in 24hrs")
676- if ((cP == cP))
702+ let cS = (cR * cO)
703+ let cT = ad((cS == cJ), "can only claim once in 24hrs")
704+ if ((cT == cT))
677705 then {
678- let cQ = ad(((cO + cF) > aO), "all claims exhausted")
679- if ((cQ == cQ))
706+ let cU = ad(((cS + cJ) > aQ), "all claims exhausted")
707+ if ((cU == cU))
680708 then {
681- let cR = if ((cN == 1))
682- then cO
683- else (cO - cF)
684- let cS = cO
685- let cT = if ((cN == 1))
686- then (aO - cO)
687- else (aO - (cO - cF))
688- let cU = if ((cN == 1))
689- then (bc - cO)
690- else (bc - (cO - cF))
691- let cV = (cB - cT)
692- let cW = (cC - cU)
693- let cX = (cE - cR)
694- let by = makeString(["%d", toString(cT)], a)
695- let bA = makeString(["%d", toString(cU)], a)
696- let bG = makeString(["%d", toString(cS)], a)
697- let cY = makeString(["%d", toString(cX)], a)
698-[cJ._1, cJ._2, ac(cx, by), ac(cw, bA), ac(cv, bG), ac(cy, cY), aa(I, cV), aa(J, cW), ScriptTransfer(Address(ao.caller.bytes), cR, unit)]
709+ let cV = if ((cR == 1))
710+ then cS
711+ else (cS - cJ)
712+ let cW = cS
713+ let cX = if ((cR == 1))
714+ then (aQ - cS)
715+ else (aQ - (cS - cJ))
716+ let cY = if ((cR == 1))
717+ then (be - cS)
718+ else (be - (cS - cJ))
719+ let cZ = (cF - cX)
720+ let da = (cG - cY)
721+ let db = (cI - cV)
722+ let bA = makeString(["%d", toString(cX)], a)
723+ let bC = makeString(["%d", toString(cY)], a)
724+ let bI = makeString(["%d", toString(cW)], a)
725+ let dc = makeString(["%d", toString(db)], a)
726+[cN._1, cN._2, ac(cB, bA), ac(cA, bC), ac(cz, bI), ac(cC, dc), aa(I, cZ), aa(J, da), ScriptTransfer(Address(ao.caller.bytes), cV, unit)]
699727 }
700728 else throw("Strict value is not equal to itself.")
701729 }
702730 else throw("Strict value is not equal to itself.")
703731 }
704732 }
705- if ((cL == cL))
706- then cL
733+ if ((cP == cP))
734+ then cP
707735 else throw("Strict value is not equal to itself.")
708736 }
709737 else throw("Strict value is not equal to itself.")
743771
744772 @Callable(ao)
745773 func mintStaw (h) = {
746- let cq = toBase58String(ao.caller.bytes)
747- let cZ = toBase58String(ao.transactionId)
748- let bZ = ad((1 != size(ao.payments)), "no payments attached")
749- if ((bZ == bZ))
774+ let cu = toBase58String(ao.caller.bytes)
775+ let dd = toBase58String(ao.transactionId)
776+ let cb = ad((1 != size(ao.payments)), "no payments attached")
777+ if ((cb == cb))
750778 then {
751- let ce = if (isDefined(ao.payments[0].assetId))
779+ let cf = if (isDefined(ao.payments[0].assetId))
752780 then throw("only waves supported")
753781 else true
754- if ((ce == ce))
782+ if ((cf == cf))
755783 then {
756- let da = ao.payments[0].amount
757- let cf = if (if ((d > da))
784+ let de = ao.payments[0].amount
785+ let cg = if (if ((d > de))
758786 then true
759- else (da > e))
787+ else (de > e))
760788 then throw("amount to lock is out of range")
761789 else true
762- if ((cf == cf))
790+ if ((cg == cg))
763791 then {
764- let db = if ((b > h))
792+ let ch = if ((b > h))
765793 then throw("minimum of 14 days lock period")
766794 else true
767- if ((db == db))
795+ if ((ch == ch))
768796 then {
769- let dc = bI(h, da)
770- let aQ = da
771- let dd = fraction(dc, 10, 100)
772- let de = (dc - dd)
773- let df = (bV(height) + ai(h))
774- if ((df == df))
797+ let df = bK(h, de)
798+ let aS = de
799+ let dg = fraction(df, 10, 100)
800+ let dh = (df - dg)
801+ let di = (bX(height) + ai(h))
802+ if ((di == di))
775803 then {
776- let dg = (Y(L(K), "global index not previously defined") + 1)
777- if ((dg == dg))
804+ let dj = (Y(L(K), "global index not previously defined") + 1)
805+ if ((dj == dj))
778806 then {
779- let dh = Address(fromBase58String(V(N(o), "dfx not previously defined")))
780- if ((dh == dh))
807+ let dk = Address(fromBase58String(V(N(o), "dfx not previously defined")))
808+ if ((dk == dk))
781809 then {
782- let ax = fromBase58String(V(N(m), "asset id not previously defined"))
783- if ((ax == ax))
810+ let aA = fromBase58String(V(N(m), "asset id not previously defined"))
811+ if ((aA == aA))
784812 then {
785- let di = Address(fromBase58String(V(N(q), "lease node not previously defined")))
786- if ((di == di))
813+ let dl = Address(fromBase58String(V(N(q), "lease node not previously defined")))
814+ if ((dl == dl))
787815 then {
788- let dj = makeString([cq, u], a)
789- let dk = makeString([cq, v], a)
790- let dl = {
791- let U = aI(dj)
816+ let dm = makeString([cu, u], a)
817+ let dn = makeString([cu, v], a)
818+ let do = {
819+ let U = aK(dm)
792820 if ($isInstanceOf(U, "Int"))
793821 then {
794- let aK = U
795- (aK + 1)
822+ let aM = U
823+ (aM + 1)
796824 }
797825 else 0
798826 }
799- if ((dl == dl))
827+ if ((do == do))
800828 then {
801- let dm = {
802- let U = aI(dk)
829+ let dp = {
830+ let U = aK(dn)
803831 if ($isInstanceOf(U, "Int"))
804832 then {
805- let aK = U
806- (aK + da)
833+ let aM = U
834+ (aM + de)
807835 }
808- else da
836+ else de
809837 }
810- if ((dm == dm))
838+ if ((dp == dp))
811839 then {
812- let dn = Lease(di, da)
813- if ((dn == dn))
840+ let dq = Lease(dl, de)
841+ if ((dq == dq))
814842 then {
815- let do = toBase58String(calculateLeaseId(dn))
816- if ((do == do))
817- then (([dn, ScriptTransfer(dh, dd, ax), ScriptTransfer(Address(ao.caller.bytes), de, ax)] ++ aW(cZ, cq, h, df, dg, da, de, aQ, height, do, dm, dl, "leased")) ++ aN(da, dc, aQ, dg))
843+ let dr = toBase58String(calculateLeaseId(dq))
844+ if ((dr == dr))
845+ then (([dq, ScriptTransfer(dk, dg, aA), ScriptTransfer(Address(ao.caller.bytes), dh, aA)] ++ aY(dd, cu, h, di, dj, de, dh, aS, height, dr, dp, do, "leased")) ++ aP(de, df, aS, dj))
818846 else throw("Strict value is not equal to itself.")
819847 }
820848 else throw("Strict value is not equal to itself.")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "_"
55
66 let b = 1
77
88 let c = 100000000
99
1010 let d = (1 * c)
1111
1212 let e = (1000 * c)
1313
1414 let f = 86400000
1515
1616 func g (h) = fraction(c, 365, h)
1717
1818
1919 let i = (1000000 * c)
2020
2121 let j = fraction(c, 10, 100)
2222
2323 let k = "Current_PercentageReduction_Factor_For_Mr"
2424
2525 let l = "Minting_Rate"
2626
2727 let m = "Staw_AssetId"
2828
2929 let n = "manager"
3030
3131 let o = "Dfx"
3232
3333 let p = "CirculationIncrementIndex"
3434
3535 let q = "LeaseNode"
3636
3737 let r = "EmissionAmountClaimed"
3838
3939 let s = "CanClaimEmissionAmount"
4040
4141 let t = "WalletAddress"
4242
4343 let u = "TotalEntryIndexCount"
4444
4545 let v = "TotalLocked"
4646
4747 let w = "LockDuration"
4848
4949 let x = "GlobalLockIndex"
5050
5151 let y = "LockIdentifier"
5252
5353 let z = "AmountInWaves"
5454
5555 let A = "AmountInStaw"
5656
5757 let B = "AmountInStawLP"
5858
5959 let C = "TXID"
6060
6161 let D = "LockAtHeight"
6262
6363 let E = "LocKPeriodInMilliSec"
6464
6565 let F = "TotalWavesClaimed"
6666
6767 let G = "LeaseState"
6868
6969 let H = "TotalStawMinted"
7070
7171 let I = "TotalWavesLocked"
7272
7373 let J = "TotalStawLP"
7474
7575 let K = "IndexCount"
7676
7777 func L (M) = getInteger(this, M)
7878
7979
8080 func N (M) = getString(this, M)
8181
8282
8383 func O (M) = getBoolean(this, M)
8484
8585
8686 func P (M) = value(getBoolean(this, M))
8787
8888
8989 func Q (M) = value(getInteger(this, M))
9090
9191
9292 func R (M) = value(getString(this, M))
9393
9494
9595 func S (M,T) = {
9696 let U = T
9797 if ($isInstanceOf(U, "String"))
9898 then {
9999 let T = U
100100 if (isDefined(N(M)))
101101 then R(M)
102102 else T
103103 }
104104 else if ($isInstanceOf(U, "Int"))
105105 then {
106106 let T = U
107107 if (isDefined(L(M)))
108108 then Q(M)
109109 else T
110110 }
111111 else if ($isInstanceOf(U, "Boolean"))
112112 then {
113113 let T = U
114114 if (isDefined(O(M)))
115115 then P(M)
116116 else T
117117 }
118118 else throw(("value type not supported for " + M))
119119 }
120120
121121
122122 func V (W,X) = {
123123 let U = W
124124 if ($isInstanceOf(U, "String"))
125125 then {
126126 let W = U
127127 W
128128 }
129129 else throw(X)
130130 }
131131
132132
133133 func Y (W,X) = {
134134 let U = W
135135 if ($isInstanceOf(U, "Int"))
136136 then {
137137 let W = U
138138 W
139139 }
140140 else throw(X)
141141 }
142142
143143
144144 func Z (W,X) = {
145145 let U = W
146146 if ($isInstanceOf(U, "Boolean"))
147147 then {
148148 let W = U
149149 W
150150 }
151151 else throw(X)
152152 }
153153
154154
155155 func aa (M,ab) = if ((0 > ab))
156156 then throw(((("writing negative value " + toString(ab)) + " for key ") + M))
157157 else IntegerEntry(M, ab)
158158
159159
160160 func ac (M,ab) = if ((" " == ab))
161161 then throw(("writing an empty string " + ab))
162162 else StringEntry(M, ab)
163163
164164
165165 func ad (ae,X) = if (ae)
166166 then throw(X)
167167 else true
168168
169169
170170 func af (M,ag) = {
171171 let U = ag
172172 if ($isInstanceOf(U, "Int"))
173173 then {
174174 let ag = U
175175 let ah = makeString(["%d", toString(ag)], a)
176176 ac(M, ah)
177177 }
178178 else if ($isInstanceOf(U, "String"))
179179 then {
180180 let ag = U
181181 let ah = makeString(["%s", ag], a)
182182 ac(M, ah)
183183 }
184184 else if ($isInstanceOf(U, "Boolean"))
185185 then {
186186 let ag = U
187187 let ah = makeString(["%b", toString(ag)], a)
188188 ac(M, ah)
189189 }
190190 else throw("type not supported")
191191 }
192192
193193
194194 func ai (aj) = {
195195 let ak = ad((aj >= 0), "invalid locking days!")
196196 if ((ak == ak))
197197 then (aj * f)
198198 else throw("Strict value is not equal to itself.")
199199 }
200200
201201
202202 func al (M,ab) = if (!(isDefined(N(M))))
203203 then ac(M, ab)
204204 else throw(("entry already initialized: " + M))
205205
206206
207207 func am (M,ab) = if (!(isDefined(N(M))))
208208 then aa(M, ab)
209209 else throw((" entry already initialized: " + M))
210210
211211
212212 func an (ao) = {
213213 let ap = V(N(n), "manager not found")
214214 if ((ap == ap))
215215 then ad((toBase58String(ao.caller.bytes) != ap), "address not authorized")
216216 else throw("Strict value is not equal to itself.")
217217 }
218218
219219
220220 func aq (W) = if ((0 > W))
221221 then -(W)
222222 else W
223223
224224
225225 func ar (as) = {
226226 let U = as
227227 if ($isInstanceOf(U, "String"))
228228 then {
229229 let as = U
230230 let at = addressFromString(as)
231231 let au = at
232232 if ($isInstanceOf(au, "Address"))
233233 then {
234234 let at = au
235235 true
236236 }
237237 else throw("invalid address")
238238 }
239239 else if ($isInstanceOf(U, "ByteVector"))
240240 then {
241241 let as = U
242242 let at = addressFromPublicKey(as)
243243 let au = at
244244 if ($isInstanceOf(au, "Address"))
245245 then {
246246 let at = au
247247 true
248248 }
249249 else throw("invalid public key")
250250 }
251251 else throw("invalid input type")
252252 }
253253
254254
255-func av () = {
256- let aw = Y(L(p), "increment index not previously defined")
257- if ((aw == aw))
255+func av (aw) = {
256+ let U = assetInfo(fromBase58String(aw))
257+ if ($isInstanceOf(U, "Asset"))
258258 then {
259- let ax = V(N(m), "asset id not previouly defined")
260- if ((ax == ax))
259+ let ax = U
260+ true
261+ }
262+ else throw(("invalid asset id: " + aw))
263+ }
264+
265+
266+func ay () = {
267+ let az = Y(L(p), "increment index not previously defined")
268+ if ((az == az))
269+ then {
270+ let aA = V(N(m), "asset id not previouly defined")
271+ if ((aA == aA))
261272 then {
262- let ay = {
263- let U = assetInfo(fromBase58String(ax))
273+ let aB = {
274+ let U = assetInfo(fromBase58String(aA))
264275 if ($isInstanceOf(U, "Asset"))
265276 then {
266- let az = U
267- az.quantity
277+ let ax = U
278+ ax.quantity
268279 }
269- else throw(("asset not found for " + ax))
280+ else throw(("asset not found for " + aA))
270281 }
271- let aA = (aq((ay - i)) / i)
272- let aB = if ((aA > aw))
273- then (aA + aw)
274- else aw
275- let aC = Y(l, "miniting rate not previously defined")
276- if ((aB == aw))
277- then aC
282+ let aC = (aq((aB - i)) / i)
283+ let aD = if ((aC > az))
284+ then (aC + az)
285+ else az
286+ let aE = Y(l, "miniting rate not previously defined")
287+ if ((aD == az))
288+ then aE
278289 else {
279- let aD = (Y(k, "reduction factor not previously defined") + 10)
280- let aE = (aC - fraction(aC, aD, 100))
281- let aF = aa(l, aE)
282- if ((aF == aF))
290+ let aF = (Y(k, "reduction factor not previously defined") + 10)
291+ let aG = (aE - fraction(aE, aF, 100))
292+ let aH = aa(l, aG)
293+ if ((aH == aH))
283294 then {
284- let aG = aa(k, aD)
285- if ((aG == aG))
295+ let aI = aa(k, aF)
296+ if ((aI == aI))
286297 then {
287- let aH = aa(p, aB)
288- if ((aH == aH))
289- then aE
298+ let aJ = aa(p, aD)
299+ if ((aJ == aJ))
300+ then aG
290301 else throw("Strict value is not equal to itself.")
291302 }
292303 else throw("Strict value is not equal to itself.")
293304 }
294305 else throw("Strict value is not equal to itself.")
295306 }
296307 }
297308 else throw("Strict value is not equal to itself.")
298309 }
299310 else throw("Strict value is not equal to itself.")
300311 }
301312
302313
303-func aI (M) = {
304- let aJ = V(N(M), "entry not found")
305- if ((aJ == aJ))
314+func aK (M) = {
315+ let aL = V(N(M), "entry not found")
316+ if ((aL == aL))
306317 then {
307- let aK = split(aJ, a)
308- let aL = takeRight(aK[0], 1)
309- let aM = aK[(size(aK) - 1)]
310- let ag = if ((aL == "s"))
311- then aM
312- else if ((aL == "d"))
313- then parseIntValue(aM)
314- else if ((aL == "b"))
315- then fromBase58String(aM)
318+ let aM = split(aL, a)
319+ let aN = takeRight(aM[0], 1)
320+ let aO = aM[(size(aM) - 1)]
321+ let ag = if ((aN == "s"))
322+ then aO
323+ else if ((aN == "d"))
324+ then parseIntValue(aO)
325+ else if ((aN == "b"))
326+ then fromBase58String(aO)
316327 else throw(("could not parse registry value for " + M))
317328 ag
318329 }
319330 else throw("Strict value is not equal to itself.")
320331 }
321332
322333
323-func aN (aO,aP,aQ,aR) = {
324- let aS = (Y(L(I), "global waves sum not previously defined") + aO)
325- let aT = (Y(L(H), "gobal staw minted not previously defined") + aP)
326- let aU = (Y(L(J), "global stawPL not previously defined") + aQ)
327- let aV = (Y(L(K), "global index count not previously defined") + aR)
328-[aa(I, aS), aa(H, aT), aa(J, aU), aa(K, aV)]
334+func aP (aQ,aR,aS,aT) = {
335+ let aU = (Y(L(I), "global waves sum not previously defined") + aQ)
336+ let aV = (Y(L(H), "gobal staw minted not previously defined") + aR)
337+ let aW = (Y(L(J), "global stawPL not previously defined") + aS)
338+ let aX = (Y(L(K), "global index count not previously defined") + aT)
339+[aa(I, aU), aa(H, aV), aa(J, aW), aa(K, aX)]
329340 }
330341
331342
332-func aW (aX,aY,aZ,ba,bb,aO,aP,bc,bd,be,bf,bg,bh) = {
333- let bi = makeString([aY, aX, C], a)
334- let bj = makeString([aY, aX, w], a)
335- let bk = makeString([aY, aX, x], a)
336- let bl = makeString([aY, aX, z], a)
337- let bm = makeString([aY, aX, A], a)
338- let bn = makeString([aY, aX, B], a)
339- let bo = makeString([aY, aX, D], a)
340- let bp = makeString([aY, aX, y], a)
341- let bq = makeString([aY, v], a)
342- let br = makeString([aY, u], a)
343- let bs = makeString([aY, aX, E], a)
344- let bt = makeString([aY, aX, F], a)
345- let bu = makeString([aY, aX, G], a)
346- let bv = makeString(["%s", aX], a)
347- let bw = makeString(["%d", toString(aZ)], a)
348- let bx = makeString(["%d", toString(bb)], a)
349- let by = makeString(["%d", toString(aO)], a)
350- let bz = makeString(["%d", toString(aP)], a)
351- let bA = makeString(["%d", toString(bc)], a)
352- let bB = makeString(["%d", toString(bd)], a)
353- let bC = makeString(["%b", be], a)
343+func aY (aZ,ba,bb,bc,bd,aQ,aR,be,bf,bg,bh,bi,bj) = {
344+ let bk = makeString([ba, aZ, C], a)
345+ let bl = makeString([ba, aZ, w], a)
346+ let bm = makeString([ba, aZ, x], a)
347+ let bn = makeString([ba, aZ, z], a)
348+ let bo = makeString([ba, aZ, A], a)
349+ let bp = makeString([ba, aZ, B], a)
350+ let bq = makeString([ba, aZ, D], a)
351+ let br = makeString([ba, aZ, y], a)
352+ let bs = makeString([ba, v], a)
353+ let bt = makeString([ba, u], a)
354+ let bu = makeString([ba, aZ, E], a)
355+ let bv = makeString([ba, aZ, F], a)
356+ let bw = makeString([ba, aZ, G], a)
357+ let bx = makeString(["%s", aZ], a)
358+ let by = makeString(["%d", toString(bb)], a)
359+ let bz = makeString(["%d", toString(bd)], a)
360+ let bA = makeString(["%d", toString(aQ)], a)
361+ let bB = makeString(["%d", toString(aR)], a)
362+ let bC = makeString(["%d", toString(be)], a)
354363 let bD = makeString(["%d", toString(bf)], a)
355- let bE = makeString(["%d", toString(bg)], a)
356- let bF = makeString(["%d", toString(ba)], a)
357- let bG = makeString(["%d", toString(0)], a)
358- let bH = makeString(["%s", bh], a)
359-[al(bi, bv), al(bk, bx), ac(br, bE), ac(bq, bD), al(bj, bw), al(bs, bF), al(bl, by), al(bm, bz), ac(bn, bA), ac(bt, bG), al(bo, bB), al(bp, bC), ac(bu, bH)]
364+ let bE = makeString(["%b", bg], a)
365+ let bF = makeString(["%d", toString(bh)], a)
366+ let bG = makeString(["%d", toString(bi)], a)
367+ let bH = makeString(["%d", toString(bc)], a)
368+ let bI = makeString(["%d", toString(0)], a)
369+ let bJ = makeString(["%s", bj], a)
370+[al(bk, bx), al(bm, bz), ac(bt, bG), ac(bs, bF), al(bl, by), al(bu, bH), al(bn, bA), al(bo, bB), ac(bp, bC), ac(bv, bI), al(bq, bD), al(br, bE), ac(bw, bJ)]
360371 }
361372
362373
363-func bI (h,bJ) = {
364- let bK = av()
365- (fraction(c, (f * bK), g(h)) * bJ)
374+func bK (h,bL) = {
375+ let bM = ay()
376+ (fraction(c, (f * bM), g(h)) * bL)
366377 }
367378
368379
369-func bL (h,bM) = {
370- let bN = fraction(h, 15, 10)
371- ((bM / ((h * bN) - h)) * f)
380+func bN (h,bO) = {
381+ let bP = fraction(h, 15, 10)
382+ ((bO / ((h * bP) - h)) * f)
372383 }
373384
374385
375-func bO (bP) = {
376- let bQ = Y(L(J), "could not get the running StawLP")
377-[aa(J, (bQ + bP))]
386+func bQ (bR) = {
387+ let bS = Y(L(J), "could not get the running StawLP")
388+[aa(J, (bS + bR))]
378389 }
379390
380391
381-func bR (bP) = {
382- let bQ = Y(L(J), "could not get the running StawLP")
383-[aa(J, (bQ - bP))]
392+func bT (bR) = {
393+ let bS = Y(L(J), "could not get the running StawLP")
394+[aa(J, (bS - bR))]
384395 }
385396
386397
387-func bS (bP) = {
388- let bT = Y(L(I), "could not get total locked waves")
389-[aa(I, (bT + bP))]
398+func bU (bR) = {
399+ let bV = Y(L(I), "could not get total locked waves")
400+[aa(I, (bV + bR))]
390401 }
391402
392403
393-func bU (bP) = {
394- let bT = Y(L(I), "could not get total locked waves")
395-[aa(I, (bT - bP))]
404+func bW (bR) = {
405+ let bV = Y(L(I), "could not get total locked waves")
406+[aa(I, (bV - bR))]
396407 }
397408
398409
399-func bV (bW) = {
400- let bX = {
401- let U = blockInfoByHeight(bW)
410+func bX (bY) = {
411+ let bZ = {
412+ let U = blockInfoByHeight(bY)
402413 if ($isInstanceOf(U, "BlockInfo"))
403414 then {
404- let bY = U
405- bY.timestamp
415+ let ca = U
416+ ca.timestamp
406417 }
407418 else throw("counld get timestamp")
408419 }
409- bX
420+ bZ
410421 }
411422
412423
413424 @Callable(ao)
414-func getEmission (h,bM) = {
415- let bZ = an(ao)
416- if ((bZ == bZ))
417- then $Tuple2(nil, bL(h, bM))
425+func getEmission (h,bO) = {
426+ let cb = an(ao)
427+ if ((cb == cb))
428+ then $Tuple2(nil, bN(h, bO))
418429 else throw("Strict value is not equal to itself.")
419430 }
420431
421432
422433
423434 @Callable(ao)
424-func init (ap,ca,cb,cc) = {
425- let cd = if (isDefined(N(n)))
435+func init (ap,cc,aw,cd) = {
436+ let ce = if (isDefined(N(n)))
426437 then an(ao)
427438 else true
428- if ((cd == cd))
439+ if ((ce == ce))
429440 then {
430- let bZ = ar(ap)
431- if ((bZ == bZ))
441+ let cb = ar(ap)
442+ if ((cb == cb))
432443 then {
433- let ce = ar(ca)
434- if ((ce == ce))
444+ let cf = ar(cc)
445+ if ((cf == cf))
435446 then {
436- let cf = ar(cc)
437- if ((cf == cf))
447+ let cg = ar(cd)
448+ if ((cg == cg))
438449 then {
439- let cg = S(p, 0)
440- let ch = S(k, 0)
441- let ci = S(l, c)
442- let cj = S(H, 0)
443- let ck = S(J, 0)
444- let cl = S(K, 0)
445- let cm = S(I, 0)
446-[af(n, ap), af(o, ca), af(m, cb), af(q, cc), af(p, cg), af(l, ci), af(k, ch), af(I, cm), af(J, ck), af(H, cj)]
450+ let ch = av(aw)
451+ if ((ch == ch))
452+ then {
453+ let ci = S(p, 0)
454+ let cj = S(k, 0)
455+ let ck = S(l, c)
456+ let cl = S(H, 0)
457+ let cm = S(J, 0)
458+ let cn = S(K, 0)
459+ let co = S(I, 0)
460+[af(n, ap), af(o, cc), af(m, aw), af(q, cd), af(p, ci), af(l, ck), af(k, cj), af(I, co), af(J, cm), af(H, cl)]
461+ }
462+ else throw("Strict value is not equal to itself.")
447463 }
448464 else throw("Strict value is not equal to itself.")
449465 }
450466 else throw("Strict value is not equal to itself.")
451467 }
452468 else throw("Strict value is not equal to itself.")
453469 }
454470 else throw("Strict value is not equal to itself.")
455471 }
456472
457473
458474
459475 @Callable(ao)
460476 func modifyGlobalParams (W) = {
461- let bZ = an(ao)
462- if ((bZ == bZ))
477+ let cb = an(ao)
478+ if ((cb == cb))
463479 then {
464- let ce = ad((size(W) == 2), "[global_key, value] pairs expected")
465- if ((ce == ce))
480+ let cf = ad((size(W) == 2), "[global_key, value] pairs expected")
481+ if ((cf == cf))
466482 then {
467483 let M = W[0]
468- let cn = parseInt(W[1])
469- let U = cn
484+ let cp = parseInt(W[1])
485+ let U = cp
470486 if ($isInstanceOf(U, "Int"))
471487 then {
472- let aK = U
473- let co = ad((N(M) == unit), (("key " + M) + " not recognized"))
474- if ((co == co))
475- then [af(M, aK)]
488+ let aM = U
489+ let cq = ad((N(M) == unit), (("key " + M) + " not recognized"))
490+ if ((cq == cq))
491+ then [af(M, aM)]
476492 else throw("Strict value is not equal to itself.")
477493 }
478494 else if ($isInstanceOf(U, "Unit"))
479495 then {
480- let aK = U
481- let co = ad((N(M) == unit), (("key " + M) + " not recognized"))
482- if ((co == co))
496+ let aM = U
497+ let cq = ad((N(M) == unit), (("key " + M) + " not recognized"))
498+ if ((cq == cq))
483499 then {
484- let cp = ar(W[1])
485- if ((cp == cp))
486- then [af(M, W[1])]
500+ let cr = W[1]
501+ let cs = aK("_manager")
502+ let ch = {
503+ let au = cs
504+ if ($isInstanceOf(au, "String"))
505+ then {
506+ let ct = au
507+ if ((size(ct) == size(cr)))
508+ then ar(cr)
509+ else av(cr)
510+ }
511+ else throw("value type not supported")
512+ }
513+ if ((ch == ch))
514+ then [af(M, cr)]
487515 else throw("Strict value is not equal to itself.")
488516 }
489517 else throw("Strict value is not equal to itself.")
490518 }
491- else $Tuple2(nil, true)
519+ else throw(("failed to modify " + W[0]))
492520 }
493521 else throw("Strict value is not equal to itself.")
494522 }
495523 else throw("Strict value is not equal to itself.")
496524 }
497525
498526
499527
500528 @Callable(ao)
501529 func revokeLock () = {
502- let bZ = an(ao)
503- if ((bZ == bZ))
530+ let cb = an(ao)
531+ if ((cb == cb))
504532 then nil
505533 else throw("Strict value is not equal to itself.")
506534 }
507535
508536
509537
510538 @Callable(ao)
511-func claim (aX) = {
512- let cq = toBase58String(ao.caller.bytes)
513- let cr = makeString([cq, aX, z], a)
514- let cs = makeString([cq, aX, w], a)
515- let ct = makeString([cq, aX, y], a)
516- let cu = makeString([cq, aX, E], a)
517- let cv = makeString([cq, aX, F], a)
518- let cw = makeString([cq, aX, B], a)
519- let cx = makeString([cq, aX, z], a)
520- let cy = makeString([cq, v], a)
521- let cz = makeString([cq, aX, G], a)
522- let cA = makeString([cq, aX, G], a)
523- let cB = Q(I)
524- if ((cB == cB))
539+func claim (aZ) = {
540+ let cu = toBase58String(ao.caller.bytes)
541+ let cv = makeString([cu, aZ, z], a)
542+ let cw = makeString([cu, aZ, w], a)
543+ let cx = makeString([cu, aZ, y], a)
544+ let cy = makeString([cu, aZ, E], a)
545+ let cz = makeString([cu, aZ, F], a)
546+ let cA = makeString([cu, aZ, B], a)
547+ let cB = makeString([cu, aZ, z], a)
548+ let cC = makeString([cu, v], a)
549+ let cD = makeString([cu, aZ, G], a)
550+ let cE = makeString([cu, aZ, G], a)
551+ let cF = Q(I)
552+ if ((cF == cF))
525553 then {
526- let cC = Q(J)
527- if ((cC == cC))
554+ let cG = Q(J)
555+ if ((cG == cG))
528556 then {
529- let be = {
530- let U = aI(ct)
557+ let bg = {
558+ let U = aK(cx)
531559 if ($isInstanceOf(U, "ByteVector"))
532560 then {
533- let cD = U
534- cD
561+ let cH = U
562+ cH
535563 }
536564 else throw("failed to get lease id")
537565 }
538- if ((be == be))
566+ if ((bg == bg))
539567 then {
540- let cE = {
541- let U = aI(cy)
568+ let cI = {
569+ let U = aK(cC)
542570 if ($isInstanceOf(U, "Int"))
543571 then {
544- let cD = U
545- cD
572+ let cH = U
573+ cH
546574 }
547575 else throw("failed to get total waves locked by this address")
548576 }
549- if ((cE == cE))
577+ if ((cI == cI))
550578 then {
551- let aO = {
552- let U = aI(cx)
579+ let aQ = {
580+ let U = aK(cB)
553581 if ($isInstanceOf(U, "Int"))
554582 then {
555- let cD = U
556- cD
583+ let cH = U
584+ cH
557585 }
558586 else throw("failed to get total waves locked")
559587 }
560- if ((aO == aO))
588+ if ((aQ == aQ))
561589 then {
562- let cF = {
563- let U = aI(cv)
590+ let cJ = {
591+ let U = aK(cz)
564592 if ($isInstanceOf(U, "Int"))
565593 then {
566- let cD = U
567- cD
594+ let cH = U
595+ cH
568596 }
569597 else throw("failed to get total waves claimed")
570598 }
571- if ((cF == cF))
599+ if ((cJ == cJ))
572600 then {
573- let bc = {
574- let U = aI(cw)
601+ let be = {
602+ let U = aK(cA)
575603 if ($isInstanceOf(U, "Int"))
576604 then {
577- let cD = U
578- cD
605+ let cH = U
606+ cH
579607 }
580608 else throw("failed to get stawPL")
581609 }
582- if ((bc == bc))
610+ if ((be == be))
583611 then {
584- let cG = {
585- let U = aI(cu)
612+ let cK = {
613+ let U = aK(cy)
586614 if ($isInstanceOf(U, "Int"))
587615 then {
588- let cD = U
589- cD
616+ let cH = U
617+ cH
590618 }
591619 else throw("failed to get lock period timespam")
592620 }
593- if ((cG == cG))
621+ if ((cK == cK))
594622 then {
595- let cH = {
596- let U = bV(height)
623+ let cL = {
624+ let U = bX(height)
597625 if ($isInstanceOf(U, "Int"))
598626 then {
599- let cD = U
600- cD
627+ let cH = U
628+ cH
601629 }
602630 else throw("failed to get current timestamp")
603631 }
604- if ((cH == cH))
632+ if ((cL == cL))
605633 then {
606- let bM = {
607- let U = aI(cr)
634+ let bO = {
635+ let U = aK(cv)
608636 if ($isInstanceOf(U, "Int"))
609637 then {
610- let cD = U
611- cD
638+ let cH = U
639+ cH
612640 }
613641 else throw("failed to get collateral")
614642 }
615- if ((bM == bM))
643+ if ((bO == bO))
616644 then {
617645 let h = {
618- let U = aI(cs)
646+ let U = aK(cw)
619647 if ($isInstanceOf(U, "Int"))
620648 then {
621- let cD = U
622- cD
649+ let cH = U
650+ cH
623651 }
624652 else throw("failed to get lockPeriod")
625653 }
626654 if ((h == h))
627655 then {
628- let cI = {
629- let U = aI(cz)
656+ let cM = {
657+ let U = aK(cD)
630658 if ($isInstanceOf(U, "String"))
631659 then {
632- let cD = U
633- cD
660+ let cH = U
661+ cH
634662 }
635663 else throw("failed to get lease state")
636664 }
637- if ((cI == cI))
665+ if ((cM == cM))
638666 then {
639- let bh = {
640- let U = aI(cA)
667+ let bj = {
668+ let U = aK(cE)
641669 if ($isInstanceOf(U, "String"))
642670 then {
643- let cD = U
644- cD
671+ let cH = U
672+ cH
645673 }
646674 else throw("failed to get lease state for user")
647675 }
648- if ((bh == bh))
676+ if ((bj == bj))
649677 then {
650- let bZ = ad((cG > cH), "lock period for this entry has not elapsed")
651- if ((bZ == bZ))
678+ let cb = ad((cK > cL), "lock period for this entry has not elapsed")
679+ if ((cb == cb))
652680 then {
653- let cJ = if ((cI == "leased"))
654- then $Tuple2(LeaseCancel(be), ac(cz, "cancelled"))
655- else $Tuple2(ac(cz, "cancelled"), ac(cz, "cancelled"))
656- if ((cJ == cJ))
681+ let cN = if ((cM == "leased"))
682+ then $Tuple2(LeaseCancel(bg), ac(cD, "cancelled"))
683+ else $Tuple2(ac(cD, "cancelled"), ac(cD, "cancelled"))
684+ if ((cN == cN))
657685 then {
658- let ce = ad(if ((0 == aO))
686+ let cf = ad(if ((0 == aQ))
659687 then true
660- else (0 == bc), "all claims exhausted for this trx")
661- if ((ce == ce))
688+ else (0 == be), "all claims exhausted for this trx")
689+ if ((cf == cf))
662690 then {
663- let cK = (bL(h, bM) * f)
664- let cL = {
665- let cM = (cH - cG)
666- let cN = (cM / f)
667- if ((cN == 0))
691+ let cO = (bN(h, bO) * f)
692+ let cP = {
693+ let cQ = (cL - cK)
694+ let cR = (cQ / f)
695+ if ((cR == 0))
668696 then throw("less than 24hrs before first claim")
669- else if (((cM % f) != 0))
697+ else if (((cQ % f) != 0))
670698 then throw("already claimed or less than 24hrs before next claim")
671- else if ((cN > h))
699+ else if ((cR > h))
672700 then throw("all claims exhausted")
673701 else {
674- let cO = (cN * cK)
675- let cP = ad((cO == cF), "can only claim once in 24hrs")
676- if ((cP == cP))
702+ let cS = (cR * cO)
703+ let cT = ad((cS == cJ), "can only claim once in 24hrs")
704+ if ((cT == cT))
677705 then {
678- let cQ = ad(((cO + cF) > aO), "all claims exhausted")
679- if ((cQ == cQ))
706+ let cU = ad(((cS + cJ) > aQ), "all claims exhausted")
707+ if ((cU == cU))
680708 then {
681- let cR = if ((cN == 1))
682- then cO
683- else (cO - cF)
684- let cS = cO
685- let cT = if ((cN == 1))
686- then (aO - cO)
687- else (aO - (cO - cF))
688- let cU = if ((cN == 1))
689- then (bc - cO)
690- else (bc - (cO - cF))
691- let cV = (cB - cT)
692- let cW = (cC - cU)
693- let cX = (cE - cR)
694- let by = makeString(["%d", toString(cT)], a)
695- let bA = makeString(["%d", toString(cU)], a)
696- let bG = makeString(["%d", toString(cS)], a)
697- let cY = makeString(["%d", toString(cX)], a)
698-[cJ._1, cJ._2, ac(cx, by), ac(cw, bA), ac(cv, bG), ac(cy, cY), aa(I, cV), aa(J, cW), ScriptTransfer(Address(ao.caller.bytes), cR, unit)]
709+ let cV = if ((cR == 1))
710+ then cS
711+ else (cS - cJ)
712+ let cW = cS
713+ let cX = if ((cR == 1))
714+ then (aQ - cS)
715+ else (aQ - (cS - cJ))
716+ let cY = if ((cR == 1))
717+ then (be - cS)
718+ else (be - (cS - cJ))
719+ let cZ = (cF - cX)
720+ let da = (cG - cY)
721+ let db = (cI - cV)
722+ let bA = makeString(["%d", toString(cX)], a)
723+ let bC = makeString(["%d", toString(cY)], a)
724+ let bI = makeString(["%d", toString(cW)], a)
725+ let dc = makeString(["%d", toString(db)], a)
726+[cN._1, cN._2, ac(cB, bA), ac(cA, bC), ac(cz, bI), ac(cC, dc), aa(I, cZ), aa(J, da), ScriptTransfer(Address(ao.caller.bytes), cV, unit)]
699727 }
700728 else throw("Strict value is not equal to itself.")
701729 }
702730 else throw("Strict value is not equal to itself.")
703731 }
704732 }
705- if ((cL == cL))
706- then cL
733+ if ((cP == cP))
734+ then cP
707735 else throw("Strict value is not equal to itself.")
708736 }
709737 else throw("Strict value is not equal to itself.")
710738 }
711739 else throw("Strict value is not equal to itself.")
712740 }
713741 else throw("Strict value is not equal to itself.")
714742 }
715743 else throw("Strict value is not equal to itself.")
716744 }
717745 else throw("Strict value is not equal to itself.")
718746 }
719747 else throw("Strict value is not equal to itself.")
720748 }
721749 else throw("Strict value is not equal to itself.")
722750 }
723751 else throw("Strict value is not equal to itself.")
724752 }
725753 else throw("Strict value is not equal to itself.")
726754 }
727755 else throw("Strict value is not equal to itself.")
728756 }
729757 else throw("Strict value is not equal to itself.")
730758 }
731759 else throw("Strict value is not equal to itself.")
732760 }
733761 else throw("Strict value is not equal to itself.")
734762 }
735763 else throw("Strict value is not equal to itself.")
736764 }
737765 else throw("Strict value is not equal to itself.")
738766 }
739767 else throw("Strict value is not equal to itself.")
740768 }
741769
742770
743771
744772 @Callable(ao)
745773 func mintStaw (h) = {
746- let cq = toBase58String(ao.caller.bytes)
747- let cZ = toBase58String(ao.transactionId)
748- let bZ = ad((1 != size(ao.payments)), "no payments attached")
749- if ((bZ == bZ))
774+ let cu = toBase58String(ao.caller.bytes)
775+ let dd = toBase58String(ao.transactionId)
776+ let cb = ad((1 != size(ao.payments)), "no payments attached")
777+ if ((cb == cb))
750778 then {
751- let ce = if (isDefined(ao.payments[0].assetId))
779+ let cf = if (isDefined(ao.payments[0].assetId))
752780 then throw("only waves supported")
753781 else true
754- if ((ce == ce))
782+ if ((cf == cf))
755783 then {
756- let da = ao.payments[0].amount
757- let cf = if (if ((d > da))
784+ let de = ao.payments[0].amount
785+ let cg = if (if ((d > de))
758786 then true
759- else (da > e))
787+ else (de > e))
760788 then throw("amount to lock is out of range")
761789 else true
762- if ((cf == cf))
790+ if ((cg == cg))
763791 then {
764- let db = if ((b > h))
792+ let ch = if ((b > h))
765793 then throw("minimum of 14 days lock period")
766794 else true
767- if ((db == db))
795+ if ((ch == ch))
768796 then {
769- let dc = bI(h, da)
770- let aQ = da
771- let dd = fraction(dc, 10, 100)
772- let de = (dc - dd)
773- let df = (bV(height) + ai(h))
774- if ((df == df))
797+ let df = bK(h, de)
798+ let aS = de
799+ let dg = fraction(df, 10, 100)
800+ let dh = (df - dg)
801+ let di = (bX(height) + ai(h))
802+ if ((di == di))
775803 then {
776- let dg = (Y(L(K), "global index not previously defined") + 1)
777- if ((dg == dg))
804+ let dj = (Y(L(K), "global index not previously defined") + 1)
805+ if ((dj == dj))
778806 then {
779- let dh = Address(fromBase58String(V(N(o), "dfx not previously defined")))
780- if ((dh == dh))
807+ let dk = Address(fromBase58String(V(N(o), "dfx not previously defined")))
808+ if ((dk == dk))
781809 then {
782- let ax = fromBase58String(V(N(m), "asset id not previously defined"))
783- if ((ax == ax))
810+ let aA = fromBase58String(V(N(m), "asset id not previously defined"))
811+ if ((aA == aA))
784812 then {
785- let di = Address(fromBase58String(V(N(q), "lease node not previously defined")))
786- if ((di == di))
813+ let dl = Address(fromBase58String(V(N(q), "lease node not previously defined")))
814+ if ((dl == dl))
787815 then {
788- let dj = makeString([cq, u], a)
789- let dk = makeString([cq, v], a)
790- let dl = {
791- let U = aI(dj)
816+ let dm = makeString([cu, u], a)
817+ let dn = makeString([cu, v], a)
818+ let do = {
819+ let U = aK(dm)
792820 if ($isInstanceOf(U, "Int"))
793821 then {
794- let aK = U
795- (aK + 1)
822+ let aM = U
823+ (aM + 1)
796824 }
797825 else 0
798826 }
799- if ((dl == dl))
827+ if ((do == do))
800828 then {
801- let dm = {
802- let U = aI(dk)
829+ let dp = {
830+ let U = aK(dn)
803831 if ($isInstanceOf(U, "Int"))
804832 then {
805- let aK = U
806- (aK + da)
833+ let aM = U
834+ (aM + de)
807835 }
808- else da
836+ else de
809837 }
810- if ((dm == dm))
838+ if ((dp == dp))
811839 then {
812- let dn = Lease(di, da)
813- if ((dn == dn))
840+ let dq = Lease(dl, de)
841+ if ((dq == dq))
814842 then {
815- let do = toBase58String(calculateLeaseId(dn))
816- if ((do == do))
817- then (([dn, ScriptTransfer(dh, dd, ax), ScriptTransfer(Address(ao.caller.bytes), de, ax)] ++ aW(cZ, cq, h, df, dg, da, de, aQ, height, do, dm, dl, "leased")) ++ aN(da, dc, aQ, dg))
843+ let dr = toBase58String(calculateLeaseId(dq))
844+ if ((dr == dr))
845+ then (([dq, ScriptTransfer(dk, dg, aA), ScriptTransfer(Address(ao.caller.bytes), dh, aA)] ++ aY(dd, cu, h, di, dj, de, dh, aS, height, dr, dp, do, "leased")) ++ aP(de, df, aS, dj))
818846 else throw("Strict value is not equal to itself.")
819847 }
820848 else throw("Strict value is not equal to itself.")
821849 }
822850 else throw("Strict value is not equal to itself.")
823851 }
824852 else throw("Strict value is not equal to itself.")
825853 }
826854 else throw("Strict value is not equal to itself.")
827855 }
828856 else throw("Strict value is not equal to itself.")
829857 }
830858 else throw("Strict value is not equal to itself.")
831859 }
832860 else throw("Strict value is not equal to itself.")
833861 }
834862 else throw("Strict value is not equal to itself.")
835863 }
836864 else throw("Strict value is not equal to itself.")
837865 }
838866 else throw("Strict value is not equal to itself.")
839867 }
840868 else throw("Strict value is not equal to itself.")
841869 }
842870 else throw("Strict value is not equal to itself.")
843871 }
844872
845873

github/deemru/w8io/169f3d6 
488.56 ms