tx · 2CnYtxPqng4vNmoKR4rg5rUvp5QAuY3Nm467ebYV9eWN

3P5Bfd58PPfNvBM2Hy8QfbcDqMeNtzg7KfP:  -0.01400000 Waves

2019.10.26 15:23 [1767308] smart account 3P5Bfd58PPfNvBM2Hy8QfbcDqMeNtzg7KfP > SELF 0.00000000 Waves

{ "type": 13, "id": "2CnYtxPqng4vNmoKR4rg5rUvp5QAuY3Nm467ebYV9eWN", "fee": 1400000, "feeAssetId": null, "timestamp": 1572092659477, "version": 1, "sender": "3P5Bfd58PPfNvBM2Hy8QfbcDqMeNtzg7KfP", "senderPublicKey": "GqXuX2WHNr3WUqTaeH2YCySFY45NAJoE9RmY9bEWkzh", "proofs": [ "4ehSFMoAU1jy5akEAjBbLuqTApj9BEyQvs2YkYnxtdn41zaJiHBYdbxCZMAZf7eBDGEb8m6byikVLmkfv5nSTKHU" ], "script": "base64:AAIDAAAAAAAAAA4IARIDCgEBEgASAwoBCAAAAEIBAAAADmdldE51bWJlckJ5S2V5AAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAABAAAADmdldFN0cmluZ0J5S2V5AAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWECAAAAAAEAAAAMZ2V0Qm9vbEJ5S2V5AAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQbAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAdCb29sZWFuBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhBwEAAAAYZ2V0TnVtYmVyQnlBZGRyZXNzQW5kS2V5AAAAAgAAAAdhZGRyZXNzAAAAA2tleQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAdhZGRyZXNzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAEAAAAYZ2V0U3RyaW5nQnlBZGRyZXNzQW5kS2V5AAAAAgAAAAdhZGRyZXNzAAAAA2tleQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAdhZGRyZXNzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQIAAAAAAQAAAAVpc0ludAAAAAEAAAADdmFsBAAAAAckbWF0Y2gwBQAAAAN2YWwDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAYHAQAAABZkcm9wRWxlbWVudEluSnNvbkFycmF5AAAAAgAAAAVhcnJheQAAAAdlbGVtZW50BAAAAAxzcGxpdGVkQXJyYXkJAAS1AAAAAgUAAAAFYXJyYXkFAAAAB2VsZW1lbnQDCQAAAAAAAAIJAAEvAAAAAgkAAZEAAAACBQAAAAxzcGxpdGVkQXJyYXkAAAAAAAAAAAEAAAAAAAAAAAECAAAAASwJAAEsAAAAAgkAAZEAAAACBQAAAAxzcGxpdGVkQXJyYXkAAAAAAAAAAAAJAAEwAAAAAgkAAZEAAAACBQAAAAxzcGxpdGVkQXJyYXkAAAAAAAAAAAEAAAAAAAAAAAEJAAEsAAAAAgkBAAAACWRyb3BSaWdodAAAAAIJAAGRAAAAAgUAAAAMc3BsaXRlZEFycmF5AAAAAAAAAAAAAAAAAAAAAAABCQABkQAAAAIFAAAADHNwbGl0ZWRBcnJheQAAAAAAAAAAAQEAAAAWY29udmVydEpzb25BcnJheVRvTGlzdAAAAAEAAAAJanNvbkFycmF5CQAEtQAAAAIFAAAACWpzb25BcnJheQIAAAABLAAAAAAFQkxPQ0sCAAAABWJsb2NrAAAAAAdVTkJMT0NLAgAAAAd1bmJsb2NrAAAAAAZVUERBVEUCAAAABnVwZGF0ZQAAAAAKT3JhY2xlc0tleQIAAAAHb3JhY2xlcwAAAAAJQWRtaW5zS2V5AgAAAAZhZG1pbnMAAAAAD1ZvdGVJbnRlcnZhbEtleQIAAAANdm90ZV9pbnRlcnZhbAAAAAAUQ29lZmZpY2llbnRPcmFjbGVLZXkCAAAAEmNvZWZmaWNpZW50X29yYWNsZQAAAAATQ29lZmZpY2llbnRBZG1pbktleQIAAAARY29lZmZpY2llbnRfYWRtaW4AAAAAF1NjcmlwdFVwZGF0ZUludGVydmFsS2V5AgAAABZzY3JpcHRfdXBkYXRlX2ludGVydmFsAAAAABRQcm92aWRpbmdJbnRlcnZhbEtleQIAAAAScHJvdmlkaW5nX2ludGVydmFsAAAAAAhQcmljZUtleQIAAAAFcHJpY2UAAAAADlByaWNlT2Zmc2V0S2V5AgAAAAxwcmljZV9vZmZzZXQAAAAAEUlzUHJpY2VQZW5kaW5nS2V5AgAAABBpc19wZW5kaW5nX3ByaWNlAAAAAAxJc0Jsb2NrZWRLZXkCAAAACmlzX2Jsb2NrZWQAAAAAEk9yYWNsZUlzUHJvdmlkZUtleQIAAAASb3JhY2xlX2lzX3Byb3ZpZGVfAAAAABVPcmFjbGVQcm92aWRlUHJpY2VLZXkCAAAAFW9yYWNsZV9wcmljZV9wcm92aWRlXwAAAAAMQWRtaW5Wb3RlS2V5AgAAAAthZG1pbl92b3RlXwAAAAAJQWN0aW9uS2V5AgAAAAZhY3Rpb24AAAAAF0Jsb2NrRXhwaXJlUHJvdmlkaW5nS2V5AgAAABZwcm92aWRpbmdfZXhwaXJlX2Jsb2NrAAAAABJCbGFja1N3YXJtUHJpY2VLZXkCAAAAEWJsYWNrX3N3YXJtX3ByaWNlAAAAABJCbG9ja0V4cGlyZVZvdGVLZXkCAAAAEXZvdGVfZXhwaXJlX2Jsb2NrAAAAABRTY3JpcHRVcGRhdGVCbG9ja0tleQIAAAATc2NyaXB0X3VwZGF0ZV9ibG9jawAAAAANUHJpY2VJbmRleEtleQIAAAALcHJpY2VfaW5kZXgBAAAAFWdldE9yYWNsZUlzUHJvdmlkZUtleQAAAAEAAAAFb3duZXIJAAEsAAAAAgUAAAAST3JhY2xlSXNQcm92aWRlS2V5BQAAAAVvd25lcgEAAAAYZ2V0T3JhY2xlUHJvdmlkZVByaWNlS2V5AAAAAQAAAAVvd25lcgkAASwAAAACBQAAABVPcmFjbGVQcm92aWRlUHJpY2VLZXkFAAAABW93bmVyAQAAAA9nZXRBZG1pblZvdGVLZXkAAAABAAAABW93bmVyCQABLAAAAAIFAAAADEFkbWluVm90ZUtleQUAAAAFb3duZXIBAAAAFWdldEFkbWluVm90ZUFjdGlvbktleQAAAAEAAAAFb3duZXIJAAEsAAAAAgkAASwAAAACCQEAAAAPZ2V0QWRtaW5Wb3RlS2V5AAAAAQUAAAAFb3duZXICAAAAAV8FAAAACUFjdGlvbktleQEAAAAVZ2V0QmxhY2tTd2FybVByaWNlS2V5AAAAAQAAAAVibG9jawkAASwAAAACCQABLAAAAAIFAAAAEkJsYWNrU3dhcm1QcmljZUtleQIAAAABXwkAAaQAAAABBQAAAAVibG9jawEAAAASZ2V0UHJpY2VIaXN0b3J5S2V5AAAAAQAAAAVibG9jawkAASwAAAACCQABLAAAAAIFAAAACFByaWNlS2V5AgAAAAFfCQABpAAAAAEFAAAABWJsb2NrAQAAABhnZXRIZWlnaHRQcmljZUJ5SW5kZXhLZXkAAAABAAAABWluZGV4CQABLAAAAAIJAAEsAAAAAgUAAAANUHJpY2VJbmRleEtleQIAAAABXwkAAaQAAAABBQAAAAVpbmRleAAAAAAFcHJpY2UJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEFAAAACFByaWNlS2V5AAAAAApwcmljZUluZGV4CQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAAA1QcmljZUluZGV4S2V5AAAAABFwcm92aWRpbmdJbnRlcnZhbAkBAAAADmdldE51bWJlckJ5S2V5AAAAAQUAAAAUUHJvdmlkaW5nSW50ZXJ2YWxLZXkAAAAAFGJsb2NrRXhwaXJlUHJvdmlkaW5nCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAABdCbG9ja0V4cGlyZVByb3ZpZGluZ0tleQAAAAAPYmxvY2tFeHBpcmVWb3RlCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAABJCbG9ja0V4cGlyZVZvdGVLZXkAAAAAEXNjcmlwdFVwZGF0ZUJsb2NrCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAABRTY3JpcHRVcGRhdGVCbG9ja0tleQAAAAAUc2NyaXB0VXBkYXRlSW50ZXJ2YWwJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEFAAAAF1NjcmlwdFVwZGF0ZUludGVydmFsS2V5AAAAAA5pc1ByaWNlUGVuZGluZwkBAAAADGdldEJvb2xCeUtleQAAAAEFAAAAEUlzUHJpY2VQZW5kaW5nS2V5AAAAAAlpc0Jsb2NrZWQJAQAAAAxnZXRCb29sQnlLZXkAAAABBQAAAAxJc0Jsb2NrZWRLZXkAAAAAFGJmdENvZWZmaWNpZW50T3JhY2xlCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAABRDb2VmZmljaWVudE9yYWNsZUtleQAAAAATYmZ0Q29lZmZpY2llbnRBZG1pbgkBAAAADmdldE51bWJlckJ5S2V5AAAAAQUAAAATQ29lZmZpY2llbnRBZG1pbktleQAAAAAScGVyY2VudFByaWNlT2Zmc2V0CQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAAA5QcmljZU9mZnNldEtleQAAAAAMdm90ZUludGVydmFsCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAAA9Wb3RlSW50ZXJ2YWxLZXkAAAAAB29yYWNsZXMJAQAAAA5nZXRTdHJpbmdCeUtleQAAAAEFAAAACk9yYWNsZXNLZXkAAAAABmFkbWlucwkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQUAAAAJQWRtaW5zS2V5AAAAAAtvcmFjbGVzTGlzdAkBAAAAFmNvbnZlcnRKc29uQXJyYXlUb0xpc3QAAAABBQAAAAdvcmFjbGVzAAAAAAphZG1pbnNMaXN0CQEAAAAWY29udmVydEpzb25BcnJheVRvTGlzdAAAAAEFAAAABmFkbWlucwEAAAASZ2V0QWRtaW5Wb3RlQWN0aW9uAAAAAQAAAAVvd25lcgkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQkBAAAAFWdldEFkbWluVm90ZUFjdGlvbktleQAAAAEFAAAABW93bmVyAQAAAA9pc09yYWNsZVByb3ZpZGUAAAABAAAABW93bmVyCQEAAAAMZ2V0Qm9vbEJ5S2V5AAAAAQkBAAAAFWdldE9yYWNsZUlzUHJvdmlkZUtleQAAAAEFAAAABW93bmVyAQAAABJpc09yYWNsZVByb3ZpZGVJbnQAAAABAAAABW93bmVyAwkBAAAAD2lzT3JhY2xlUHJvdmlkZQAAAAEFAAAABW93bmVyAAAAAAAAAAABAAAAAAAAAAAAAQAAABVnZXRPcmFjbGVQcm92aWRlUHJpY2UAAAABAAAABW93bmVyCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAYZ2V0T3JhY2xlUHJvdmlkZVByaWNlS2V5AAAAAQUAAAAFb3duZXIBAAAACGlzT3JhY2xlAAAAAQAAAAdhZGRyZXNzBAAAAAckbWF0Y2gwCQAEswAAAAIFAAAAB29yYWNsZXMFAAAAB2FkZHJlc3MDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAYHAQAAAAdpc0FkbWluAAAAAQAAAAdhZGRyZXNzBAAAAAckbWF0Y2gwCQAEswAAAAIFAAAABmFkbWlucwUAAAAHYWRkcmVzcwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BgcBAAAADnN1bU9yYWNsZVByaWNlAAAAAgAAAARiYXNlAAAAB2FkZHJlc3MJAABkAAAAAgUAAAAEYmFzZQkAAGgAAAACCQEAAAAVZ2V0T3JhY2xlUHJvdmlkZVByaWNlAAAAAQUAAAAHYWRkcmVzcwkBAAAAEmlzT3JhY2xlUHJvdmlkZUludAAAAAEFAAAAB2FkZHJlc3MBAAAAGGZpbHRlckFkbWluc1ZvdGVCeUFjdGlvbgAAAAMAAAAGcmVzdWx0AAAAB2FkZHJlc3MAAAAGYWN0aW9uCQAETAAAAAIFAAAAB2FkZHJlc3MFAAAABnJlc3VsdAEAAAAdZmlsdGVyQWRtaW5zVm90ZUJ5QmxvY2tBY3Rpb24AAAACAAAABnJlc3VsdAAAAAdhZGRyZXNzCQEAAAAYZmlsdGVyQWRtaW5zVm90ZUJ5QWN0aW9uAAAAAwUAAAAGcmVzdWx0BQAAAAdhZGRyZXNzBQAAAAVCTE9DSwEAAAAfZmlsdGVyQWRtaW5zVm90ZUJ5VW5ibG9ja0FjdGlvbgAAAAIAAAAGcmVzdWx0AAAAB2FkZHJlc3MJAQAAABhmaWx0ZXJBZG1pbnNWb3RlQnlBY3Rpb24AAAADBQAAAAZyZXN1bHQFAAAAB2FkZHJlc3MFAAAAB1VOQkxPQ0sBAAAAHmZpbHRlckFkbWluc1ZvdGVCeVVwZGF0ZUFjdGlvbgAAAAIAAAAGcmVzdWx0AAAAB2FkZHJlc3MJAQAAABhmaWx0ZXJBZG1pbnNWb3RlQnlBY3Rpb24AAAADBQAAAAZyZXN1bHQFAAAAB2FkZHJlc3MFAAAABlVQREFURQAAAAMAAAABaQEAAAAPc2V0Q3VycmVudFByaWNlAAAAAQAAAAhuZXdQcmljZQQAAAAHYWNjb3VudAkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAE2lzT3JhY2xlUHJvdmlkZUxpc3QJAARMAAAAAgkBAAAAD2lzT3JhY2xlUHJvdmlkZQAAAAEJAAGRAAAAAgUAAAALb3JhY2xlc0xpc3QAAAAAAAAAAAAJAARMAAAAAgkBAAAAD2lzT3JhY2xlUHJvdmlkZQAAAAEJAAGRAAAAAgUAAAALb3JhY2xlc0xpc3QAAAAAAAAAAAEJAARMAAAAAgkBAAAAD2lzT3JhY2xlUHJvdmlkZQAAAAEJAAGRAAAAAgUAAAALb3JhY2xlc0xpc3QAAAAAAAAAAAIJAARMAAAAAgkBAAAAD2lzT3JhY2xlUHJvdmlkZQAAAAEJAAGRAAAAAgUAAAALb3JhY2xl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dGFFbnRyeQAAAAIJAQAAABhnZXRPcmFjbGVQcm92aWRlUHJpY2VLZXkAAAABBQAAAAdhY2NvdW50BQAAAAhuZXdQcmljZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAXQmxvY2tFeHBpcmVQcm92aWRpbmdLZXkDCQAAZgAAAAIFAAAABmhlaWdodAUAAAAUYmxvY2tFeHBpcmVQcm92aWRpbmcJAABkAAAAAgUAAAAGaGVpZ2h0BQAAABFwcm92aWRpbmdJbnRlcnZhbAUAAAAUYmxvY2tFeHBpcmVQcm92aWRpbmcJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAEUlzUHJpY2VQZW5kaW5nS2V5AwMJAABnAAAAAgUAAAAUYmxvY2tFeHBpcmVQcm92aWRpbmcFAAAABmhlaWdodAkAAGcAAAACBQAAABNwcmljZVByb3ZpZGluZ0NvdW50BQAAABRiZnRDb2VmZmljaWVudE9yYWNsZQcGBQAAAA5pc1ByaWNlUGVuZGluZwUAAAADbmlsAAAAAWkBAAAAFGZpbmlsaXplQ3VycmVudFByaWNlAAAAAAQAAAATaXNPcmFjbGVQcm92aWRlTGlzdAkABEwAAAACCQEAAAAPaXNPcmFjbGVQcm92aWRlAAAAAQkAAZEAAAACBQAAAAtvcmFjbGVzTGlzdAAAAAAAAAAAAAkABEwAAAACCQEAAAAPaXNPcmFjbGVQcm92aWRlAAAAAQkAAZEAAAACBQAAAAtvcmFjbGVzTGlzdAAAAAAAAAAAAQkABEwAAAACCQEAAAAPaXNPcmFjbGVQcm92aWRlAAAAAQkAAZEAAAACBQAAAAtvcmFjbGVzTGlzdAAAAAAAAAAAAgkABEwAAAACCQEAAAAPaXNPcmFjbGVQcm92aWRlAAAAAQkAAZEAAAACBQAAAAtvcmFjbGVzTGlzdAAAAAAAAAAAAwkABEwAAAACCQEAAAAPaXNPcmFjbGVQcm92aWRlAAAAAQkAAZEAAAACBQAAAAtvcmFjbGVzTGlzdAAAAAAAAAAABAUAAAADbmlsBAAAABNwcmljZVByb3ZpZGluZ0NvdW50CQAAZAAAAAIJAABkAAAAAgkAAGQAAAACCQAAZAAAAAIDCQABkQAAAAIFAAAAE2lzT3JhY2xlUHJvdmlkZUxp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bnRyeQAAAAIJAQAAABJnZXRQcmljZUhpc3RvcnlLZXkAAAABBQAAAAZoZWlnaHQFAAAACG5ld1ByaWNlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABFJc1ByaWNlUGVuZGluZ0tleQcJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAADVByaWNlSW5kZXhLZXkFAAAADW5ld1ByaWNlSW5kZXgJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABhnZXRIZWlnaHRQcmljZUJ5SW5kZXhLZXkAAAABBQAAAA1uZXdQcmljZUluZGV4BQAAAAZoZWlnaHQFAAAAA25pbAAAAAFpAQAAAAR2b3RlAAAAAQAAAAZhY3Rpb24EAAAAB2FjY291bnQJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBAAAABhhZG1pbnNMaXN0V2l0aG91dEFjY291bnQJAQAAABZjb252ZXJ0SnNvbkFycmF5VG9MaXN0AAAAAQkBAAAAFmRyb3BFbGVtZW50SW5Kc29uQXJyYXkAAAACBQAAAAZhZG1pbnMFAAAAB2FjY291bnQEAAAACmxhc3RBY3Rpb24JAQAAABJnZXRBZG1pblZvdGVBY3Rpb24AAAABBQAAAAdhY2NvdW50BAAAAApibG9ja1ZvdGVzBAAAAA4kbGlzdDk5ODQxMDA1MgUAAAAYYWRtaW5zTGlzdFdpdGhvdXRBY2NvdW50BAAAAA4kc2l6ZTk5ODQxMDA1MgkAAZAAAAABBQAAAA4kbGlzdDk5ODQxMDA1MgQAAAAOJGFjYzA5OTg0MTAwNTIFAAAAA25pbAMJAAAAAAAAAgUAAAAOJHNpemU5OTg0MTAwNTIAAAAAAAAAAAAFAAAADiRhY2MwOTk4NDEwMDUyBAAAAA4kYWNjMTk5ODQxMDA1MgkBAAAAHWZpbHRlckFkbWluc1ZvdGVCeUJsb2NrQWN0aW9uAAAAAgUAAAAOJGFjYzA5OTg0MTAwNTIJAAGRAAAAAgUAAAAOJGxpc3Q5OTg0MTAwNTIAAAAAAAAAAAADCQAAAAAAAAIFAAAADiRzaXplOTk4NDEwMDUyAAAAAAAAAAABBQAAAA4kYWNjMTk5ODQxMDA1MgQAAAAOJGFjYzI5OTg0MTAwNTIJAQAAAB1maWx0ZXJBZG1pbnNWb3RlQnlCbG9ja0FjdGlvbgAAAAIFAAAADiRhY2MxOTk4NDEwMDUyCQABkQAAAAIFAAAADiRsaXN0OTk4NDEwMDUyAAAAAAAAAAABAwkAAAAAAAACBQAAAA4kc2l6ZTk5ODQxMDA1MgAAAAAAAAAAAgUAAAAOJGFjYzI5OTg0MTAwNTIEAAAADiRhY2MzOTk4NDEwMDUyCQEAAAAdZmlsdGVyQWRtaW5zVm90ZUJ5QmxvY2tBY3Rpb24AAAACBQAAAA4kYWNjMjk5ODQxMDA1MgkAAZEAAAACBQAAAA4kbGlzdDk5ODQxMDA1MgAAAAAAAAAAAgMJAAAAAAAAAgUAAAAOJHNpemU5OTg0MTAwNTIAAAAAAAAAAAMFAAAADiRhY2MzOTk4NDEwMDUyBAAAAA4kYWNjNDk5ODQxMDA1MgkBAAAAHWZpbHRlckFkbWluc1ZvdGVCeUJsb2NrQWN0aW9uAAAAAgUAAAAOJGFjYzM5OTg0MTAwNTIJAAGRAAAAAgUAAAAOJGxpc3Q5OTg0MTAwNTIAAAAAAAAAAAMDCQAAAAAAAAIFAAAADiRzaXplOTk4NDEwMDUyAAAAAAAAAAAEBQAAAA4kYWNjNDk5ODQxMDA1MgQAAAAOJGFjYzU5OTg0MTAwNTIJAQAAAB1maWx0ZXJBZG1pbnNWb3RlQnlCbG9ja0FjdGlvbgAAAAIFAAAADiRhY2M0OTk4NDEwMDUyCQABkQAAAAIFAAAADiRsaXN0OTk4NDEwMDUyAAAAAAAAAAAEAwkAAAAAAAACBQAAAA4kc2l6ZTk5ODQxMDA1MgAAAAAAAAAABQUAAAAOJGFjYzU5OTg0MTAwNTIEAAAADiRhY2M2OTk4NDEwMDUyCQEAAAAdZmlsdGVyQWRtaW5zVm90ZUJ5QmxvY2tBY3Rpb24AAAACBQAAAA4kYWNjNTk5ODQxMDA1MgkAAZEAAAACBQAAAA4kbGlzdDk5ODQxMDA1MgAAAAAAAAAABQkAAAIAAAABAgAAABJMaXN0IHNpemUgZXhjZWVkIDUEAAAADHVuYmxvY2tWb3RlcwQAAAAPJGxpc3QxMDA3NjEwMTQ2BQAAABhhZG1pbnNMaXN0V2l0aG91dEFjY291bnQEAAAADyRzaXplMTAwNzYxMDE0NgkAAZAAAAABBQAAAA8kbGlzdDEwMDc2MTAxNDYEAAAADyRhY2MwMTAwNzYxMDE0NgUAAAADbmlsAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDc2MTAxNDYAAAAAAAAAAAAFAAAADyRhY2MwMTAwNzYxMDE0NgQAAAAPJGFjYzExMDA3NjEwMTQ2CQEAAAAfZmlsdGVyQWRtaW5zVm90ZUJ5VW5ibG9ja0FjdGlvbgAAAAIFAAAADyRhY2MwMTAwNzYxMDE0NgkAAZEAAAACBQAAAA8kbGlzdDEwMDc2MTAxNDYAAAAAAAAAAAADCQAAAAAAAAIFAAAADyRzaXplMTAwNzYxMDE0NgAAAAAAAAAAAQUAAAAPJGFjYzExMDA3NjEwMTQ2BAAAAA8kYWNjMjEwMDc2MTAxNDYJAQAAAB9maWx0ZXJBZG1pbnNWb3RlQnlVbmJsb2NrQWN0aW9uAAAAAgUAAAAPJGFjYzExMDA3NjEwMTQ2CQABkQAAAAIFAAAADyRsaXN0MTAwNzYxMDE0NgAAAAAAAAAAAQMJAAAAAAAAAgUAAAAPJHNpemUxMDA3NjEwMTQ2AAAAAAAAAAACBQAAAA8kYWNjMjEwMDc2MTAxNDYEAAAADyRhY2MzMTAwNzYxMDE0NgkBAAAAH2ZpbHRlckFkbWluc1ZvdGVCeVVuYmxvY2tBY3Rpb24AAAACBQAAAA8kYWNjMjEwMDc2MTAxNDYJAAGRAAAAAgUAAAAPJGxpc3QxMDA3NjEwMTQ2AAAAAAAAAAACAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDc2MTAxNDYAAAAAAAAAAAMFAAAADyRhY2MzMTAwNzYxMDE0NgQAAAAPJGFjYzQxMDA3NjEwMTQ2CQEAAAAfZmlsdGVyQWRtaW5zVm90ZUJ5VW5ibG9ja0FjdGlvbgAAAAIFAAAADyRhY2MzMTAwNzYxMDE0NgkAAZEAAAACBQAAAA8kbGlzdDEwMDc2MTAxNDYAAAAAAAAAAAMDCQAAAAAAAAIFAAAADyRzaXplMTAwNzYxMDE0NgAAAAAAAAAABAUAAAAPJGFjYzQxMDA3NjEwMTQ2BAAAAA8kYWNjNTEwMDc2MTAxNDYJAQAAAB9maWx0ZXJBZG1pbnNWb3RlQnlVbmJsb2NrQWN0aW9uAAAAAgUAAAAPJGFjYzQxMDA3NjEwMTQ2CQABkQAAAAIFAAAADyRsaXN0MTAwNzYxMDE0NgAAAAAAAAAABAMJAAAAAAAAAgUAAAAPJHNpemUxMDA3NjEwMTQ2AAAAAAAAAAAFBQAAAA8kYWNjNTEwMDc2MTAxNDYEAAAADyRhY2M2MTAwNzYxMDE0NgkBAAAAH2ZpbHRlckFkbWluc1ZvdGVCeVVuYmxvY2tBY3Rpb24AAAACBQAAAA8kYWNjNTEwMDc2MTAxNDYJAAGRAAAAAgUAAAAPJGxpc3QxMDA3NjEwMTQ2AAAAAAAAAAAFCQAAAgAAAAECAAAAEkxpc3Qgc2l6ZSBleGNlZWQgNQQAAAALdXBkYXRlVm90ZXMEAAAADyRsaXN0MTAxNjkxMDIzOAUAAAAYYWRtaW5zTGlzdFdpdGhvdXRBY2NvdW50BAAAAA8kc2l6ZTEwMTY5MTAyMzgJAAGQAAAAAQUAAAAPJGxpc3QxMDE2OTEwMjM4BAAAAA8kYWNjMDEwMTY5MTAyMzgFAAAAA25pbAMJAAAAAAAAAgUAAAAPJHNpemUxMDE2OTEwMjM4AAAAAAAAAAAABQAAAA8kYWNjMDEwMTY5MTAyMzgEAAAADyRhY2MxMTAxNjkxMDIzOAkBAAAAHmZpbHRlckFkbWluc1ZvdGVCeVVwZGF0ZUFjdGlvbgAAAAIFAAAADyRhY2MwMTAxNjkxMDIzOAkAAZEAAAACBQAAAA8kbGlzdDEwMTY5MTAyMzgAAAAAAAAAAAADCQAAAAAAAAIFAAAADyRzaXplMTAxNjkxMDIzOAAAAAAAAAAAAQUAAAAPJGFjYzExMDE2OTEwMjM4BAAAAA8kYWNjMjEwMTY5MTAyMzgJAQAAAB5maWx0ZXJBZG1pbnNWb3RlQnlVcGRhdGVBY3Rpb24AAAACBQAAAA8kYWNjMTEwMTY5MTAyMzgJAAGRAAAAAgUAAAAPJGxpc3QxMDE2OTEwMjM4AAAAAAAAAAABAwkAAAAAAAACBQAAAA8kc2l6ZTEwMTY5MTAyMzgAAAAAAAAAAAIFAAAADyRhY2MyMTAxNjkxMDIzOAQAAAAPJGFjYzMxMDE2OTEwMjM4CQEAAAAeZmlsdGVyQWRtaW5zVm90ZUJ5VXBkYXRlQWN0aW9uAAAAAgUAAAAPJGFjYzIxMDE2OTEwMjM4CQABkQAAAAIFAAAADyRsaXN0MTAxNjkxMDIzOAAAAAAAAAAAAgMJAAAAAAAAAgUAAAAPJHNpemUxMDE2OTEwMjM4AAAAAAAAAAADBQAAAA8kYWNjMzEwMTY5MTAyMzgEAAAADyRhY2M0MTAxNjkxMDIzOAkBAAAAHmZpbHRlckFkbWluc1ZvdGVCeVVwZGF0ZUFjdGlvbgAAAAIFAAAADyRhY2MzMTAxNjkxMDIzOAkAAZEAAAACBQAAAA8kbGlzdDEwMTY5MTAyMzgAAAAAAAAAAAMDCQAAAAAAAAIFAAAADyRzaXplMTAxNjkxMDIzOAAAAAAAAAAABAUAAAAPJGFjYzQxMDE2OTEwMjM4BAAAAA8kYWNjNTEwMTY5MTAyMzgJAQAAAB5maWx0ZXJBZG1pbnNWb3RlQnlVcGRhdGVBY3Rpb24AAAACBQAAAA8kYWNjNDEwMTY5MTAyMzgJAAGRAAAAAgUAAAAPJGxpc3QxMDE2OTEwMjM4AAAAAAAAAAAEAwkAAAAAAAACBQAAAA8kc2l6ZTEwMTY5MTAyMzgAAAAAAAAAAAUFAAAADyRhY2M1MTAxNjkxMDIzOAQAAAAPJGFjYzYxMDE2OTEwMjM4CQEAAAAeZmlsdGVyQWRtaW5zVm90ZUJ5VXBkYXRlQWN0aW9uAAAAAgUAAAAPJGFjYzUxMDE2OTEwMjM4CQABkQAAAAIFAAAADyRsaXN0MTAxNjkxMDIzOAAAAAAAAAAABQkAAAIAAAABAgAAABJMaXN0IHNpemUgZXhjZWVkIDUEAAAADmJsb2NrVm90ZUNvdW50CQAAZAAAAAIJAAGQAAAAAQUAAAAKYmxvY2tWb3RlcwMJAAAAAAAAAgUAAAAGYWN0aW9uBQAAAAVCTE9DSwAAAAAAAAAAAQAAAAAAAAAAAAQAAAAQdW5ibG9ja1ZvdGVDb3VudAkAAGQAAAACCQABkAAAAAEFAAAADHVuYmxvY2tWb3RlcwMJAAAAAAAAAgUAAAAGYWN0aW9uBQAAAAdVTkJMT0NLAAAAAAAAAAABAAAAAAAAAAAABAAAABB1cGRhdGVWb3Rlc0NvdW50CQAAZAAAAAIJAAGQAAAAAQUAAAALdXBkYXRlVm90ZXMDCQAAAAAAAAIFAAAABmFjdGlvbgUAAAAGVVBEQVRFAAAAAAAAAAABAAAAAAAAAAAAAwMJAABnAAAAAgUAAAAOYmxvY2tWb3RlQ291bnQFAAAAE2JmdENvZWZmaWNpZW50QWRtaW4GCQAAZwAAAAIFAAAAEHVuYmxvY2tWb3RlQ291bnQFAAAAE2JmdENvZWZmaWNpZW50QWRtaW4JAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAADElzQmxvY2tlZEtleQMJAABnAAAAAgUAAAAOYmxvY2tWb3RlQ291bnQFAAAAE2JmdENvZWZmaWNpZW50QWRtaW4GBwkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAASQmxvY2tFeHBpcmVWb3RlS2V5AAAAAAAAAAAACQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABdCbG9ja0V4cGlyZVByb3ZpZGluZ0tleQAAAAAAAAAAAAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAARSXNQcmljZVBlbmRpbmdLZXkHCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAVZ2V0QWRtaW5Wb3RlQWN0aW9uS2V5AAAAAQkAAZEAAAACBQAAABhhZG1pbnNMaXN0V2l0aG91dEFjY291bnQAAAAAAAAAAAACAAAAAAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAFWdldEFkbWluVm90ZUFjdGlvbktleQAAAAEJAAGRAAAAAgUAAAAYYWRtaW5zTGlzdFdpdGhvdXRBY2NvdW50AAAAAAAAAAABAgAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABVnZXRBZG1pblZvdGVBY3Rpb25LZXkAAAABCQABkQAAAAIFAAAAGGFkbWluc0xpc3RXaXRob3V0QWNjb3VudAAAAAAAAAAAAgIAAAAACQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAVZ2V0QWRtaW5Wb3RlQWN0aW9uS2V5AAAAAQkAAZEAAAACBQAAABhhZG1pbnNMaXN0V2l0aG91dEFjY291bnQAAAAAAAAAAAMCAAAAAAUAAAADbmlsAwkAAGYAAAACBQAAABB1cGRhdGVWb3Rlc0NvdW50BQAAABNiZnRDb2VmZmljaWVudEFkbWluCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABJCbG9ja0V4cGlyZVZvdGVLZXkAAAAAAAAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAF0Jsb2NrRXhwaXJlUHJvdmlkaW5nS2V5AAAAAAAAAAAACQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABRTY3JpcHRVcGRhdGVCbG9ja0tleQkAAGQAAAACBQAAAAZoZWlnaHQFAAAAFHNjcmlwdFVwZGF0ZUludGVydmFsCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAVZ2V0QWRtaW5Wb3RlQWN0aW9uS2V5AAAAAQkAAZEAAAACBQAAABhhZG1pbnNMaXN0V2l0aG91dEFjY291bnQAAAAAAAAAAAACAAAAAAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAFWdldEFkbWluVm90ZUFjdGlvbktleQAAAAEJAAGRAAAAAgUAAAAYYWRtaW5zTGlzdFdpdGhvdXRBY2NvdW50AAAAAAAAAAABAgAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABVnZXRBZG1pblZvdGVBY3Rpb25LZXkAAAABCQABkQAAAAIFAAAAGGFkbWluc0xpc3RXaXRob3V0QWNjb3VudAAAAAAAAAAAAgIAAAAACQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAVZ2V0QWRtaW5Wb3RlQWN0aW9uS2V5AAAAAQkAAZEAAAACBQAAABhhZG1pbnNMaXN0V2l0aG91dEFjY291bnQAAAAAAAAAAAMCAAAAAAUAAAADbmlsAwkAAGYAAAACBQAAAAZoZWlnaHQFAAAAD2Jsb2NrRXhwaXJlVm90ZQkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAASQmxvY2tFeHBpcmVWb3RlS2V5CQAAZAAAAAIFAAAABmhlaWdodAUAAAAMdm90ZUludGVydmFsCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAVZ2V0QWRtaW5Wb3RlQWN0aW9uS2V5AAAAAQUAAAAHYWNjb3VudAUAAAAGYWN0aW9uCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAVZ2V0QWRtaW5Wb3RlQWN0aW9uS2V5AAAAAQkAAZEAAAACBQAAABhhZG1pbnNMaXN0V2l0aG91dEFjY291bnQAAAAAAAAAAAACAAAAAAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAFWdldEFkbWluVm90ZUFjdGlvbktleQAAAAEJAAGRAAAAAgUAAAAYYWRtaW5zTGlzdFdpdGhvdXRBY2NvdW50AAAAAAAAAAABAgAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABVnZXRBZG1pblZvdGVBY3Rpb25LZXkAAAABCQABkQAAAAIFAAAAGGFkbWluc0xpc3RXaXRob3V0QWNjb3VudAAAAAAAAAAAAgIAAAAACQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAVZ2V0QWRtaW5Wb3RlQWN0aW9uS2V5AAAAAQkAAZEAAAACBQAAABhhZG1pbnNMaXN0V2l0aG91dEFjY291bnQAAAAAAAAAAAMCAAAAAAUAAAADbmlsCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAVZ2V0QWRtaW5Wb3RlQWN0aW9uS2V5AAAAAQUAAAAHYWNjb3VudAUAAAAGYWN0aW9uBQAAAANuaWwAAAAAHOqozg==", "chainId": 87, "height": 1767308, "spentComplexity": 0 } View: original | compacted Prev: ADoRptztBLZA7ZAZxPBG1iKBpgYKb1TSZYf3ciny9pgj Next: Gar9ECCSvLW2uaG7h3xPwk8iokfVwFd8p6xKTWUChoxn Diff:
OldNewDifferences
122122
123123 let M = "script_update_block"
124124
125-func N (O) = (F + O)
125+let N = "price_index"
126+
127+func O (P) = (F + P)
126128
127129
128-func P (O) = (G + O)
130+func Q (P) = (G + P)
129131
130132
131-func Q (O) = (H + O)
133+func R (P) = (H + P)
132134
133135
134-func R (O) = ((Q(O) + "_") + I)
136+func S (P) = ((R(P) + "_") + I)
135137
136138
137-func S (T) = ((K + "_") + toString(T))
139+func T (U) = ((K + "_") + toString(U))
138140
139141
140-func U (T) = ((B + "_") + toString(T))
142+func V (U) = ((B + "_") + toString(U))
141143
142144
143-let V = a(B)
144-
145-let W = a(A)
146-
147-let X = a(J)
148-
149-let Y = a(L)
150-
151-let Z = a(M)
152-
153-let aa = a(z)
154-
155-let ab = f(D)
156-
157-let ac = f(E)
158-
159-let ad = a(x)
160-
161-let ae = a(y)
162-
163-let af = a(C)
164-
165-let ag = a(w)
166-
167-let ah = e(u)
168-
169-let ai = e(v)
170-
171-let aj = p(ah)
172-
173-let ak = p(ai)
174-
175-func al (O) = e(R(O))
145+func W (X) = ((N + "_") + toString(X))
176146
177147
178-func am (O) = f(N(O))
148+let Y = a(B)
149+
150+let Z = a(N)
151+
152+let aa = a(A)
153+
154+let ab = a(J)
155+
156+let ac = a(L)
157+
158+let ad = a(M)
159+
160+let ae = a(z)
161+
162+let af = f(D)
163+
164+let ag = f(E)
165+
166+let ah = a(x)
167+
168+let ai = a(y)
169+
170+let aj = a(C)
171+
172+let ak = a(w)
173+
174+let al = e(u)
175+
176+let am = e(v)
177+
178+let an = p(al)
179+
180+let ao = p(am)
181+
182+func ap (P) = e(S(P))
179183
180184
181-func an (O) = if (am(O))
185+func aq (P) = f(O(P))
186+
187+
188+func ar (P) = if (aq(P))
182189 then 1
183190 else 0
184191
185192
186-func ao (O) = a(P(O))
193+func as (P) = a(Q(P))
187194
188195
189-func ap (h) = {
190- let c = indexOf(ah, h)
196+func at (h) = {
197+ let c = indexOf(al, h)
191198 if ($isInstanceOf(c, "Int"))
192199 then true
193200 else false
194201 }
195202
196203
197-func aq (h) = {
198- let c = indexOf(ai, h)
204+func au (h) = {
205+ let c = indexOf(am, h)
199206 if ($isInstanceOf(c, "Int"))
200207 then true
201208 else false
202209 }
203210
204211
205-func ar (as,h) = (as + (ao(h) * an(h)))
212+func av (aw,h) = (aw + (as(h) * ar(h)))
206213
207214
208-func at (au,h,av) = h :: au
215+func ax (ay,h,az) = h :: ay
209216
210217
211-func aw (au,h) = at(au, h, r)
218+func aA (ay,h) = ax(ay, h, r)
212219
213220
214-func ax (au,h) = at(au, h, s)
221+func aB (ay,h) = ax(ay, h, s)
215222
216223
217-func ay (au,h) = at(au, h, t)
224+func aC (ay,h) = ax(ay, h, t)
218225
219226
220-@Callable(az)
221-func setCurrentPrice (aA) = {
222- let aB = toString(az.caller)
223- let aC = [am(aj[0]), am(aj[1]), am(aj[2]), am(aj[3]), am(aj[4])]
224- let aD = ((((((if (aC[0])
227+@Callable(aD)
228+func setCurrentPrice (aE) = {
229+ let aF = toString(aD.caller)
230+ let aG = [aq(an[0]), aq(an[1]), aq(an[2]), aq(an[3]), aq(an[4])]
231+ let aH = ((((((if (aG[0])
225232 then 1
226- else 0) + (if (aC[1])
233+ else 0) + (if (aG[1])
227234 then 1
228- else 0)) + (if (aC[2])
235+ else 0)) + (if (aG[2])
229236 then 1
230- else 0)) + (if (aC[3])
237+ else 0)) + (if (aG[3])
231238 then 1
232- else 0)) + (if (aC[4])
239+ else 0)) + (if (aG[4])
233240 then 1
234241 else 0)) + 1)
235- if (ac)
242+ if (ag)
236243 then throw("contract is blocked")
237- else if (!(ap(aB)))
244+ else if (!(at(aF)))
238245 then throw("permission denied")
239- else if (if ((X >= height))
240- then am(aB)
246+ else if (if ((ab >= height))
247+ then aq(aF)
241248 else false)
242249 then throw("price is already provided")
243- else if (if ((height > X))
244- then ab
250+ else if (if ((height > ab))
251+ then af
245252 else false)
246- then throw("use finilizeCurrentPrice")
247- else WriteSet([DataEntry(N(aj[0]), if ((height > X))
253+ then throw("use finalizeCurrentPrice")
254+ else WriteSet([DataEntry(O(an[0]), if ((height > ab))
248255 then false
249- else aC[0]), DataEntry(N(aj[1]), if ((height > X))
256+ else aG[0]), DataEntry(O(an[1]), if ((height > ab))
250257 then false
251- else aC[1]), DataEntry(N(aj[2]), if ((height > X))
258+ else aG[1]), DataEntry(O(an[2]), if ((height > ab))
252259 then false
253- else aC[2]), DataEntry(N(aj[3]), if ((height > X))
260+ else aG[2]), DataEntry(O(an[3]), if ((height > ab))
254261 then false
255- else aC[3]), DataEntry(N(aj[4]), if ((height > X))
262+ else aG[3]), DataEntry(O(an[4]), if ((height > ab))
256263 then false
257- else aC[4]), DataEntry(N(aB), true), DataEntry(P(aB), aA), DataEntry(J, if ((height > X))
258- then (height + W)
259- else X), DataEntry(D, if (if ((X >= height))
260- then (aD >= ad)
264+ else aG[4]), DataEntry(O(aF), true), DataEntry(Q(aF), aE), DataEntry(J, if ((height > ab))
265+ then (height + aa)
266+ else ab), DataEntry(D, if (if ((ab >= height))
267+ then (aH >= ah)
261268 else false)
262269 then true
263- else ab)])
270+ else af)])
264271 }
265272
266273
267274
268-@Callable(az)
275+@Callable(aD)
269276 func finilizeCurrentPrice () = {
270- let aC = [am(aj[0]), am(aj[1]), am(aj[2]), am(aj[3]), am(aj[4])]
271- let aD = (((((if (aC[0])
277+ let aG = [aq(an[0]), aq(an[1]), aq(an[2]), aq(an[3]), aq(an[4])]
278+ let aH = (((((if (aG[0])
272279 then 1
273- else 0) + (if (aC[1])
280+ else 0) + (if (aG[1])
274281 then 1
275- else 0)) + (if (aC[2])
282+ else 0)) + (if (aG[2])
276283 then 1
277- else 0)) + (if (aC[3])
284+ else 0)) + (if (aG[3])
278285 then 1
279- else 0)) + (if (aC[4])
286+ else 0)) + (if (aG[4])
280287 then 1
281288 else 0))
282- let aE = (((((ao(aj[0]) * (if (aC[0])
289+ let aI = (((((as(an[0]) * (if (aG[0])
283290 then 1
284- else 0)) + (ao(aj[1]) * (if (aC[1])
291+ else 0)) + (as(an[1]) * (if (aG[1])
285292 then 1
286- else 0))) + (ao(aj[2]) * (if (aC[2])
293+ else 0))) + (as(an[2]) * (if (aG[2])
287294 then 1
288- else 0))) + (ao(aj[3]) * (if (aC[3])
295+ else 0))) + (as(an[3]) * (if (aG[3])
289296 then 1
290- else 0))) + (ao(aj[4]) * (if (aC[4])
297+ else 0))) + (as(an[4]) * (if (aG[4])
291298 then 1
292299 else 0)))
293- let aA = (aE / aD)
294- if (ac)
300+ let aE = (aI / aH)
301+ if (ag)
295302 then throw("contract is blocked")
296- else if (if (!(ab))
303+ else if (if (!(af))
297304 then true
298- else (X >= height))
305+ else (ab >= height))
299306 then throw("wait for the end of the price providing")
300- else if ((ad > aD))
307+ else if ((ah > aH))
301308 then throw("2/3 oracles need to set a price")
302- else if (if ((aA >= (V + ((V * af) / 100))))
309+ else if (if ((aE >= (Y + ((Y * aj) / 100))))
303310 then true
304- else ((V - ((V * af) / 100)) >= aA))
305- then WriteSet([DataEntry(E, true), DataEntry(S(height), aA)])
306- else WriteSet([DataEntry(B, aA), DataEntry(U(height), aA), DataEntry(D, false)])
311+ else ((Y - ((Y * aj) / 100)) >= aE))
312+ then WriteSet([DataEntry(E, true), DataEntry(T(height), aE)])
313+ else {
314+ let aJ = (Z + 1)
315+ WriteSet([DataEntry(B, aE), DataEntry(V(height), aE), DataEntry(D, false), DataEntry(N, aJ), DataEntry(W(aJ), height)])
316+ }
307317 }
308318
309319
310320
311-@Callable(az)
312-func vote (av) = {
313- let aB = toString(az.caller)
314- let aF = p(l(ai, aB))
315- let aG = al(aB)
316- let aH = {
317- let aI = aF
318- let aJ = size(aI)
319- let aK = nil
320- if ((aJ == 0))
321- then aK
321+@Callable(aD)
322+func vote (az) = {
323+ let aF = toString(aD.caller)
324+ let aK = p(l(am, aF))
325+ let aL = ap(aF)
326+ let aM = {
327+ let aN = aK
328+ let aO = size(aN)
329+ let aP = nil
330+ if ((aO == 0))
331+ then aP
322332 else {
323- let aL = aw(aK, aI[0])
324- if ((aJ == 1))
325- then aL
333+ let aQ = aA(aP, aN[0])
334+ if ((aO == 1))
335+ then aQ
326336 else {
327- let aM = aw(aL, aI[1])
328- if ((aJ == 2))
329- then aM
337+ let aR = aA(aQ, aN[1])
338+ if ((aO == 2))
339+ then aR
330340 else {
331- let aN = aw(aM, aI[2])
332- if ((aJ == 3))
333- then aN
341+ let aS = aA(aR, aN[2])
342+ if ((aO == 3))
343+ then aS
334344 else {
335- let aO = aw(aN, aI[3])
336- if ((aJ == 4))
337- then aO
345+ let aT = aA(aS, aN[3])
346+ if ((aO == 4))
347+ then aT
338348 else {
339- let aP = aw(aO, aI[4])
340- if ((aJ == 5))
341- then aP
349+ let aU = aA(aT, aN[4])
350+ if ((aO == 5))
351+ then aU
342352 else {
343- let aQ = aw(aP, aI[5])
353+ let aV = aA(aU, aN[5])
344354 throw("List size exceed 5")
345355 }
346356 }
349359 }
350360 }
351361 }
352- let aR = {
353- let aS = aF
354- let aT = size(aS)
355- let aU = nil
356- if ((aT == 0))
357- then aU
362+ let aW = {
363+ let aX = aK
364+ let aY = size(aX)
365+ let aZ = nil
366+ if ((aY == 0))
367+ then aZ
358368 else {
359- let aV = ax(aU, aS[0])
360- if ((aT == 1))
361- then aV
369+ let ba = aB(aZ, aX[0])
370+ if ((aY == 1))
371+ then ba
362372 else {
363- let aW = ax(aV, aS[1])
364- if ((aT == 2))
365- then aW
373+ let bb = aB(ba, aX[1])
374+ if ((aY == 2))
375+ then bb
366376 else {
367- let aX = ax(aW, aS[2])
368- if ((aT == 3))
369- then aX
377+ let bc = aB(bb, aX[2])
378+ if ((aY == 3))
379+ then bc
370380 else {
371- let aY = ax(aX, aS[3])
372- if ((aT == 4))
373- then aY
381+ let bd = aB(bc, aX[3])
382+ if ((aY == 4))
383+ then bd
374384 else {
375- let aZ = ax(aY, aS[4])
376- if ((aT == 5))
377- then aZ
385+ let be = aB(bd, aX[4])
386+ if ((aY == 5))
387+ then be
378388 else {
379- let ba = ax(aZ, aS[5])
389+ let bf = aB(be, aX[5])
380390 throw("List size exceed 5")
381391 }
382392 }
385395 }
386396 }
387397 }
388- let bb = {
389- let bc = aF
390- let bd = size(bc)
391- let be = nil
392- if ((bd == 0))
393- then be
398+ let bg = {
399+ let bh = aK
400+ let bi = size(bh)
401+ let bj = nil
402+ if ((bi == 0))
403+ then bj
394404 else {
395- let bf = ay(be, bc[0])
396- if ((bd == 1))
397- then bf
405+ let bk = aC(bj, bh[0])
406+ if ((bi == 1))
407+ then bk
398408 else {
399- let bg = ay(bf, bc[1])
400- if ((bd == 2))
401- then bg
409+ let bl = aC(bk, bh[1])
410+ if ((bi == 2))
411+ then bl
402412 else {
403- let bh = ay(bg, bc[2])
404- if ((bd == 3))
405- then bh
413+ let bm = aC(bl, bh[2])
414+ if ((bi == 3))
415+ then bm
406416 else {
407- let bi = ay(bh, bc[3])
408- if ((bd == 4))
409- then bi
417+ let bn = aC(bm, bh[3])
418+ if ((bi == 4))
419+ then bn
410420 else {
411- let bj = ay(bi, bc[4])
412- if ((bd == 5))
413- then bj
421+ let bo = aC(bn, bh[4])
422+ if ((bi == 5))
423+ then bo
414424 else {
415- let bk = ay(bj, bc[5])
425+ let bp = aC(bo, bh[5])
416426 throw("List size exceed 5")
417427 }
418428 }
421431 }
422432 }
423433 }
424- let bl = (size(aH) + (if ((av == r))
434+ let bq = (size(aM) + (if ((az == r))
425435 then 1
426436 else 0))
427- let bm = (size(aR) + (if ((av == s))
437+ let br = (size(aW) + (if ((az == s))
428438 then 1
429439 else 0))
430- let bn = (size(bb) + (if ((av == t))
440+ let bs = (size(bg) + (if ((az == t))
431441 then 1
432442 else 0))
433- if (if ((bl >= ae))
443+ if (if ((bq >= ai))
434444 then true
435- else (bm >= ae))
436- then WriteSet([DataEntry(E, if ((bl >= ae))
445+ else (br >= ai))
446+ then WriteSet([DataEntry(E, if ((bq >= ai))
437447 then true
438- else false), DataEntry(L, 0), DataEntry(J, 0), DataEntry(D, false), DataEntry(R(aF[0]), ""), DataEntry(R(aF[1]), ""), DataEntry(R(aF[2]), ""), DataEntry(R(aF[3]), "")])
439- else if ((bn > ae))
440- then WriteSet([DataEntry(L, 0), DataEntry(J, 0), DataEntry(M, (height + aa)), DataEntry(R(aF[0]), ""), DataEntry(R(aF[1]), ""), DataEntry(R(aF[2]), ""), DataEntry(R(aF[3]), "")])
441- else if ((height > Y))
442- then WriteSet([DataEntry(L, (height + ag)), DataEntry(R(aB), av), DataEntry(R(aF[0]), ""), DataEntry(R(aF[1]), ""), DataEntry(R(aF[2]), ""), DataEntry(R(aF[3]), "")])
443- else WriteSet([DataEntry(R(aB), av)])
448+ else false), DataEntry(L, 0), DataEntry(J, 0), DataEntry(D, false), DataEntry(S(aK[0]), ""), DataEntry(S(aK[1]), ""), DataEntry(S(aK[2]), ""), DataEntry(S(aK[3]), "")])
449+ else if ((bs > ai))
450+ then WriteSet([DataEntry(L, 0), DataEntry(J, 0), DataEntry(M, (height + ae)), DataEntry(S(aK[0]), ""), DataEntry(S(aK[1]), ""), DataEntry(S(aK[2]), ""), DataEntry(S(aK[3]), "")])
451+ else if ((height > ac))
452+ then WriteSet([DataEntry(L, (height + ak)), DataEntry(S(aF), az), DataEntry(S(aK[0]), ""), DataEntry(S(aK[1]), ""), DataEntry(S(aK[2]), ""), DataEntry(S(aK[3]), "")])
453+ else WriteSet([DataEntry(S(aF), az)])
444454 }
445455
446456
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func a (b) = {
55 let c = getInteger(this, b)
66 if ($isInstanceOf(c, "Int"))
77 then {
88 let d = c
99 d
1010 }
1111 else 0
1212 }
1313
1414
1515 func e (b) = {
1616 let c = getString(this, b)
1717 if ($isInstanceOf(c, "String"))
1818 then {
1919 let d = c
2020 d
2121 }
2222 else ""
2323 }
2424
2525
2626 func f (b) = {
2727 let c = getBoolean(this, b)
2828 if ($isInstanceOf(c, "Boolean"))
2929 then {
3030 let d = c
3131 d
3232 }
3333 else false
3434 }
3535
3636
3737 func g (h,b) = {
3838 let c = getInteger(h, b)
3939 if ($isInstanceOf(c, "Int"))
4040 then {
4141 let d = c
4242 d
4343 }
4444 else 0
4545 }
4646
4747
4848 func i (h,b) = {
4949 let c = getString(h, b)
5050 if ($isInstanceOf(c, "String"))
5151 then {
5252 let d = c
5353 d
5454 }
5555 else ""
5656 }
5757
5858
5959 func j (k) = {
6060 let c = k
6161 if ($isInstanceOf(c, "Int"))
6262 then {
6363 let d = c
6464 true
6565 }
6666 else false
6767 }
6868
6969
7070 func l (m,n) = {
7171 let o = split(m, n)
7272 if ((take(o[1], 1) == ","))
7373 then (o[0] + drop(o[1], 1))
7474 else (dropRight(o[0], 1) + o[1])
7575 }
7676
7777
7878 func p (q) = split(q, ",")
7979
8080
8181 let r = "block"
8282
8383 let s = "unblock"
8484
8585 let t = "update"
8686
8787 let u = "oracles"
8888
8989 let v = "admins"
9090
9191 let w = "vote_interval"
9292
9393 let x = "coefficient_oracle"
9494
9595 let y = "coefficient_admin"
9696
9797 let z = "script_update_interval"
9898
9999 let A = "providing_interval"
100100
101101 let B = "price"
102102
103103 let C = "price_offset"
104104
105105 let D = "is_pending_price"
106106
107107 let E = "is_blocked"
108108
109109 let F = "oracle_is_provide_"
110110
111111 let G = "oracle_price_provide_"
112112
113113 let H = "admin_vote_"
114114
115115 let I = "action"
116116
117117 let J = "providing_expire_block"
118118
119119 let K = "black_swarm_price"
120120
121121 let L = "vote_expire_block"
122122
123123 let M = "script_update_block"
124124
125-func N (O) = (F + O)
125+let N = "price_index"
126+
127+func O (P) = (F + P)
126128
127129
128-func P (O) = (G + O)
130+func Q (P) = (G + P)
129131
130132
131-func Q (O) = (H + O)
133+func R (P) = (H + P)
132134
133135
134-func R (O) = ((Q(O) + "_") + I)
136+func S (P) = ((R(P) + "_") + I)
135137
136138
137-func S (T) = ((K + "_") + toString(T))
139+func T (U) = ((K + "_") + toString(U))
138140
139141
140-func U (T) = ((B + "_") + toString(T))
142+func V (U) = ((B + "_") + toString(U))
141143
142144
143-let V = a(B)
144-
145-let W = a(A)
146-
147-let X = a(J)
148-
149-let Y = a(L)
150-
151-let Z = a(M)
152-
153-let aa = a(z)
154-
155-let ab = f(D)
156-
157-let ac = f(E)
158-
159-let ad = a(x)
160-
161-let ae = a(y)
162-
163-let af = a(C)
164-
165-let ag = a(w)
166-
167-let ah = e(u)
168-
169-let ai = e(v)
170-
171-let aj = p(ah)
172-
173-let ak = p(ai)
174-
175-func al (O) = e(R(O))
145+func W (X) = ((N + "_") + toString(X))
176146
177147
178-func am (O) = f(N(O))
148+let Y = a(B)
149+
150+let Z = a(N)
151+
152+let aa = a(A)
153+
154+let ab = a(J)
155+
156+let ac = a(L)
157+
158+let ad = a(M)
159+
160+let ae = a(z)
161+
162+let af = f(D)
163+
164+let ag = f(E)
165+
166+let ah = a(x)
167+
168+let ai = a(y)
169+
170+let aj = a(C)
171+
172+let ak = a(w)
173+
174+let al = e(u)
175+
176+let am = e(v)
177+
178+let an = p(al)
179+
180+let ao = p(am)
181+
182+func ap (P) = e(S(P))
179183
180184
181-func an (O) = if (am(O))
185+func aq (P) = f(O(P))
186+
187+
188+func ar (P) = if (aq(P))
182189 then 1
183190 else 0
184191
185192
186-func ao (O) = a(P(O))
193+func as (P) = a(Q(P))
187194
188195
189-func ap (h) = {
190- let c = indexOf(ah, h)
196+func at (h) = {
197+ let c = indexOf(al, h)
191198 if ($isInstanceOf(c, "Int"))
192199 then true
193200 else false
194201 }
195202
196203
197-func aq (h) = {
198- let c = indexOf(ai, h)
204+func au (h) = {
205+ let c = indexOf(am, h)
199206 if ($isInstanceOf(c, "Int"))
200207 then true
201208 else false
202209 }
203210
204211
205-func ar (as,h) = (as + (ao(h) * an(h)))
212+func av (aw,h) = (aw + (as(h) * ar(h)))
206213
207214
208-func at (au,h,av) = h :: au
215+func ax (ay,h,az) = h :: ay
209216
210217
211-func aw (au,h) = at(au, h, r)
218+func aA (ay,h) = ax(ay, h, r)
212219
213220
214-func ax (au,h) = at(au, h, s)
221+func aB (ay,h) = ax(ay, h, s)
215222
216223
217-func ay (au,h) = at(au, h, t)
224+func aC (ay,h) = ax(ay, h, t)
218225
219226
220-@Callable(az)
221-func setCurrentPrice (aA) = {
222- let aB = toString(az.caller)
223- let aC = [am(aj[0]), am(aj[1]), am(aj[2]), am(aj[3]), am(aj[4])]
224- let aD = ((((((if (aC[0])
227+@Callable(aD)
228+func setCurrentPrice (aE) = {
229+ let aF = toString(aD.caller)
230+ let aG = [aq(an[0]), aq(an[1]), aq(an[2]), aq(an[3]), aq(an[4])]
231+ let aH = ((((((if (aG[0])
225232 then 1
226- else 0) + (if (aC[1])
233+ else 0) + (if (aG[1])
227234 then 1
228- else 0)) + (if (aC[2])
235+ else 0)) + (if (aG[2])
229236 then 1
230- else 0)) + (if (aC[3])
237+ else 0)) + (if (aG[3])
231238 then 1
232- else 0)) + (if (aC[4])
239+ else 0)) + (if (aG[4])
233240 then 1
234241 else 0)) + 1)
235- if (ac)
242+ if (ag)
236243 then throw("contract is blocked")
237- else if (!(ap(aB)))
244+ else if (!(at(aF)))
238245 then throw("permission denied")
239- else if (if ((X >= height))
240- then am(aB)
246+ else if (if ((ab >= height))
247+ then aq(aF)
241248 else false)
242249 then throw("price is already provided")
243- else if (if ((height > X))
244- then ab
250+ else if (if ((height > ab))
251+ then af
245252 else false)
246- then throw("use finilizeCurrentPrice")
247- else WriteSet([DataEntry(N(aj[0]), if ((height > X))
253+ then throw("use finalizeCurrentPrice")
254+ else WriteSet([DataEntry(O(an[0]), if ((height > ab))
248255 then false
249- else aC[0]), DataEntry(N(aj[1]), if ((height > X))
256+ else aG[0]), DataEntry(O(an[1]), if ((height > ab))
250257 then false
251- else aC[1]), DataEntry(N(aj[2]), if ((height > X))
258+ else aG[1]), DataEntry(O(an[2]), if ((height > ab))
252259 then false
253- else aC[2]), DataEntry(N(aj[3]), if ((height > X))
260+ else aG[2]), DataEntry(O(an[3]), if ((height > ab))
254261 then false
255- else aC[3]), DataEntry(N(aj[4]), if ((height > X))
262+ else aG[3]), DataEntry(O(an[4]), if ((height > ab))
256263 then false
257- else aC[4]), DataEntry(N(aB), true), DataEntry(P(aB), aA), DataEntry(J, if ((height > X))
258- then (height + W)
259- else X), DataEntry(D, if (if ((X >= height))
260- then (aD >= ad)
264+ else aG[4]), DataEntry(O(aF), true), DataEntry(Q(aF), aE), DataEntry(J, if ((height > ab))
265+ then (height + aa)
266+ else ab), DataEntry(D, if (if ((ab >= height))
267+ then (aH >= ah)
261268 else false)
262269 then true
263- else ab)])
270+ else af)])
264271 }
265272
266273
267274
268-@Callable(az)
275+@Callable(aD)
269276 func finilizeCurrentPrice () = {
270- let aC = [am(aj[0]), am(aj[1]), am(aj[2]), am(aj[3]), am(aj[4])]
271- let aD = (((((if (aC[0])
277+ let aG = [aq(an[0]), aq(an[1]), aq(an[2]), aq(an[3]), aq(an[4])]
278+ let aH = (((((if (aG[0])
272279 then 1
273- else 0) + (if (aC[1])
280+ else 0) + (if (aG[1])
274281 then 1
275- else 0)) + (if (aC[2])
282+ else 0)) + (if (aG[2])
276283 then 1
277- else 0)) + (if (aC[3])
284+ else 0)) + (if (aG[3])
278285 then 1
279- else 0)) + (if (aC[4])
286+ else 0)) + (if (aG[4])
280287 then 1
281288 else 0))
282- let aE = (((((ao(aj[0]) * (if (aC[0])
289+ let aI = (((((as(an[0]) * (if (aG[0])
283290 then 1
284- else 0)) + (ao(aj[1]) * (if (aC[1])
291+ else 0)) + (as(an[1]) * (if (aG[1])
285292 then 1
286- else 0))) + (ao(aj[2]) * (if (aC[2])
293+ else 0))) + (as(an[2]) * (if (aG[2])
287294 then 1
288- else 0))) + (ao(aj[3]) * (if (aC[3])
295+ else 0))) + (as(an[3]) * (if (aG[3])
289296 then 1
290- else 0))) + (ao(aj[4]) * (if (aC[4])
297+ else 0))) + (as(an[4]) * (if (aG[4])
291298 then 1
292299 else 0)))
293- let aA = (aE / aD)
294- if (ac)
300+ let aE = (aI / aH)
301+ if (ag)
295302 then throw("contract is blocked")
296- else if (if (!(ab))
303+ else if (if (!(af))
297304 then true
298- else (X >= height))
305+ else (ab >= height))
299306 then throw("wait for the end of the price providing")
300- else if ((ad > aD))
307+ else if ((ah > aH))
301308 then throw("2/3 oracles need to set a price")
302- else if (if ((aA >= (V + ((V * af) / 100))))
309+ else if (if ((aE >= (Y + ((Y * aj) / 100))))
303310 then true
304- else ((V - ((V * af) / 100)) >= aA))
305- then WriteSet([DataEntry(E, true), DataEntry(S(height), aA)])
306- else WriteSet([DataEntry(B, aA), DataEntry(U(height), aA), DataEntry(D, false)])
311+ else ((Y - ((Y * aj) / 100)) >= aE))
312+ then WriteSet([DataEntry(E, true), DataEntry(T(height), aE)])
313+ else {
314+ let aJ = (Z + 1)
315+ WriteSet([DataEntry(B, aE), DataEntry(V(height), aE), DataEntry(D, false), DataEntry(N, aJ), DataEntry(W(aJ), height)])
316+ }
307317 }
308318
309319
310320
311-@Callable(az)
312-func vote (av) = {
313- let aB = toString(az.caller)
314- let aF = p(l(ai, aB))
315- let aG = al(aB)
316- let aH = {
317- let aI = aF
318- let aJ = size(aI)
319- let aK = nil
320- if ((aJ == 0))
321- then aK
321+@Callable(aD)
322+func vote (az) = {
323+ let aF = toString(aD.caller)
324+ let aK = p(l(am, aF))
325+ let aL = ap(aF)
326+ let aM = {
327+ let aN = aK
328+ let aO = size(aN)
329+ let aP = nil
330+ if ((aO == 0))
331+ then aP
322332 else {
323- let aL = aw(aK, aI[0])
324- if ((aJ == 1))
325- then aL
333+ let aQ = aA(aP, aN[0])
334+ if ((aO == 1))
335+ then aQ
326336 else {
327- let aM = aw(aL, aI[1])
328- if ((aJ == 2))
329- then aM
337+ let aR = aA(aQ, aN[1])
338+ if ((aO == 2))
339+ then aR
330340 else {
331- let aN = aw(aM, aI[2])
332- if ((aJ == 3))
333- then aN
341+ let aS = aA(aR, aN[2])
342+ if ((aO == 3))
343+ then aS
334344 else {
335- let aO = aw(aN, aI[3])
336- if ((aJ == 4))
337- then aO
345+ let aT = aA(aS, aN[3])
346+ if ((aO == 4))
347+ then aT
338348 else {
339- let aP = aw(aO, aI[4])
340- if ((aJ == 5))
341- then aP
349+ let aU = aA(aT, aN[4])
350+ if ((aO == 5))
351+ then aU
342352 else {
343- let aQ = aw(aP, aI[5])
353+ let aV = aA(aU, aN[5])
344354 throw("List size exceed 5")
345355 }
346356 }
347357 }
348358 }
349359 }
350360 }
351361 }
352- let aR = {
353- let aS = aF
354- let aT = size(aS)
355- let aU = nil
356- if ((aT == 0))
357- then aU
362+ let aW = {
363+ let aX = aK
364+ let aY = size(aX)
365+ let aZ = nil
366+ if ((aY == 0))
367+ then aZ
358368 else {
359- let aV = ax(aU, aS[0])
360- if ((aT == 1))
361- then aV
369+ let ba = aB(aZ, aX[0])
370+ if ((aY == 1))
371+ then ba
362372 else {
363- let aW = ax(aV, aS[1])
364- if ((aT == 2))
365- then aW
373+ let bb = aB(ba, aX[1])
374+ if ((aY == 2))
375+ then bb
366376 else {
367- let aX = ax(aW, aS[2])
368- if ((aT == 3))
369- then aX
377+ let bc = aB(bb, aX[2])
378+ if ((aY == 3))
379+ then bc
370380 else {
371- let aY = ax(aX, aS[3])
372- if ((aT == 4))
373- then aY
381+ let bd = aB(bc, aX[3])
382+ if ((aY == 4))
383+ then bd
374384 else {
375- let aZ = ax(aY, aS[4])
376- if ((aT == 5))
377- then aZ
385+ let be = aB(bd, aX[4])
386+ if ((aY == 5))
387+ then be
378388 else {
379- let ba = ax(aZ, aS[5])
389+ let bf = aB(be, aX[5])
380390 throw("List size exceed 5")
381391 }
382392 }
383393 }
384394 }
385395 }
386396 }
387397 }
388- let bb = {
389- let bc = aF
390- let bd = size(bc)
391- let be = nil
392- if ((bd == 0))
393- then be
398+ let bg = {
399+ let bh = aK
400+ let bi = size(bh)
401+ let bj = nil
402+ if ((bi == 0))
403+ then bj
394404 else {
395- let bf = ay(be, bc[0])
396- if ((bd == 1))
397- then bf
405+ let bk = aC(bj, bh[0])
406+ if ((bi == 1))
407+ then bk
398408 else {
399- let bg = ay(bf, bc[1])
400- if ((bd == 2))
401- then bg
409+ let bl = aC(bk, bh[1])
410+ if ((bi == 2))
411+ then bl
402412 else {
403- let bh = ay(bg, bc[2])
404- if ((bd == 3))
405- then bh
413+ let bm = aC(bl, bh[2])
414+ if ((bi == 3))
415+ then bm
406416 else {
407- let bi = ay(bh, bc[3])
408- if ((bd == 4))
409- then bi
417+ let bn = aC(bm, bh[3])
418+ if ((bi == 4))
419+ then bn
410420 else {
411- let bj = ay(bi, bc[4])
412- if ((bd == 5))
413- then bj
421+ let bo = aC(bn, bh[4])
422+ if ((bi == 5))
423+ then bo
414424 else {
415- let bk = ay(bj, bc[5])
425+ let bp = aC(bo, bh[5])
416426 throw("List size exceed 5")
417427 }
418428 }
419429 }
420430 }
421431 }
422432 }
423433 }
424- let bl = (size(aH) + (if ((av == r))
434+ let bq = (size(aM) + (if ((az == r))
425435 then 1
426436 else 0))
427- let bm = (size(aR) + (if ((av == s))
437+ let br = (size(aW) + (if ((az == s))
428438 then 1
429439 else 0))
430- let bn = (size(bb) + (if ((av == t))
440+ let bs = (size(bg) + (if ((az == t))
431441 then 1
432442 else 0))
433- if (if ((bl >= ae))
443+ if (if ((bq >= ai))
434444 then true
435- else (bm >= ae))
436- then WriteSet([DataEntry(E, if ((bl >= ae))
445+ else (br >= ai))
446+ then WriteSet([DataEntry(E, if ((bq >= ai))
437447 then true
438- else false), DataEntry(L, 0), DataEntry(J, 0), DataEntry(D, false), DataEntry(R(aF[0]), ""), DataEntry(R(aF[1]), ""), DataEntry(R(aF[2]), ""), DataEntry(R(aF[3]), "")])
439- else if ((bn > ae))
440- then WriteSet([DataEntry(L, 0), DataEntry(J, 0), DataEntry(M, (height + aa)), DataEntry(R(aF[0]), ""), DataEntry(R(aF[1]), ""), DataEntry(R(aF[2]), ""), DataEntry(R(aF[3]), "")])
441- else if ((height > Y))
442- then WriteSet([DataEntry(L, (height + ag)), DataEntry(R(aB), av), DataEntry(R(aF[0]), ""), DataEntry(R(aF[1]), ""), DataEntry(R(aF[2]), ""), DataEntry(R(aF[3]), "")])
443- else WriteSet([DataEntry(R(aB), av)])
448+ else false), DataEntry(L, 0), DataEntry(J, 0), DataEntry(D, false), DataEntry(S(aK[0]), ""), DataEntry(S(aK[1]), ""), DataEntry(S(aK[2]), ""), DataEntry(S(aK[3]), "")])
449+ else if ((bs > ai))
450+ then WriteSet([DataEntry(L, 0), DataEntry(J, 0), DataEntry(M, (height + ae)), DataEntry(S(aK[0]), ""), DataEntry(S(aK[1]), ""), DataEntry(S(aK[2]), ""), DataEntry(S(aK[3]), "")])
451+ else if ((height > ac))
452+ then WriteSet([DataEntry(L, (height + ak)), DataEntry(S(aF), az), DataEntry(S(aK[0]), ""), DataEntry(S(aK[1]), ""), DataEntry(S(aK[2]), ""), DataEntry(S(aK[3]), "")])
453+ else WriteSet([DataEntry(S(aF), az)])
444454 }
445455
446456

github/deemru/w8io/6500d08 
212.89 ms