tx · 8FurQAffAdR21eerYn7eGTv7kMunvoJhooZecsmtyTs4

3MsC1Cit1aGB6qPW1hvkyGP2Gx79K1mtUAk:  -0.01700000 Waves

2023.01.17 13:50 [2408829] smart account 3MsC1Cit1aGB6qPW1hvkyGP2Gx79K1mtUAk > SELF 0.00000000 Waves

{ "type": 13, "id": "8FurQAffAdR21eerYn7eGTv7kMunvoJhooZecsmtyTs4", "fee": 1700000, "feeAssetId": null, "timestamp": 1673952632650, "version": 1, "sender": "3MsC1Cit1aGB6qPW1hvkyGP2Gx79K1mtUAk", "senderPublicKey": "2rdeGwVMkuRfRdUgrYaekNmjnegHokhyDx1z6TJq525F", "proofs": [ "54YbYnwG1x1oVkJbBXoYAqZdfppxR6QCzPsfiusCiUw5cadj5PsD5crbJyK9Hi5NvPujEv1avJsuLbjtiVD1oMPC" ], "script": "base64:AAIEAAAAAAAAB9wIAhIHCgUICAgBCBIDCgEBEgASABIFCgMICAgSAwoBCBIDCgEIIgNTRVAiD2dldFN0cmluZ09yRmFpbCIDa2V5IhBnZXRCb29sZWFuT3JGYWlsIg5mYWlsRXhlY3V0ZUdldCIDbXNnIgxiYXNlQXNzZXRTdHIiDnVzZXJBZGRyZXNzU3RyIgpnZXRUeElkU3RyIgtrZXlBc3NldENmZyIWa2V5TmV4dEludGVybmFsQXNzZXRJZCIMa2V5UHJpY2VMYXN0IhVpbnRlcm5hbEJhc2V0QXNzZXRTdHIiEmtleVRvcFVwTGFzdEhlaWdodCIGc2VuZGVyIg9rZXlQcmljZUhpc3RvcnkiAWgiCXRpbWVzdGFtcCIOa2V5VG90YWxMb2NrZWQiFGtleVRvdGFsTG9ja2VkQnlVc2VyIhRpbnRlcm5hbEJhc2VBc3NldFN0ciIfa2V5TWFwcGluZ3NJbnRlcm5hbDJiYXNlQXNzZXRJZCIRaW50ZXJuYWxCYXNlQXNzZXQiH2tleU1hcHBpbmdzQmFzZUFzc2V0MmludGVybmFsSWQiHGtleU1hcHBpbmdzU2hhcmUyYmFzZUFzc2V0SWQiDXNoYXJlQXNzZXRTdHIiHGtleU1hcHBpbmdzQmFzZUFzc2V0MnNoYXJlSWQiF2tleVNodXRkb3duUHV0T3BlcmF0aW9uIhJrZXlTaHV0ZG93bk1hbmFnZXIiEklkeENmZ1NoYXJlQXNzZXRJZCIXSWR4Q2ZnSW50ZXJuYWxCYXNlQXNzZXQiHElkeENmZ0RlY2ltYWxzTXVsdEJvdGhBc3NldHMiF0lkeENmZ0RlY2ltYWxzTXVsdFByaWNlIhRJZHhDZmdHZXREZWxheUJsb2NrcyIMZGF0YUFzc2V0Q2ZnIhZkZWNpbWFsc011bHRCb3RoQXNzZXRzIhFkZWNpbWFsc011bHRQcmljZSIQZ2V0RGVsYXlJbkJsb2NrcyITSWR4VG90YWxMb2NrZWRTaGFyZSISSWR4VG90YWxMb2NrZWRCYXNlIg9kYXRhVG90YWxMb2NrZWQiEHNoYXJlQXNzZXRBbW91bnQiD2Jhc2VBc3NldEFtb3VudCIPcmVhZFRvdGFsTG9ja2VkIhB0b3RhbExvY2tlZEFycmF5IgxrZXlPcGVyYXRpb24iDW9wZXJhdGlvblR5cGUiC3VzZXJBZGRyZXNzIgR0eElkIg1JZHhPcGVyU3RhdHVzIg9JZHhPcGVySW5BbW91bnQiDElkeE9wZXJQcmljZSIQSWR4T3Blck91dEFtb3VudCISSWR4T3BlclN0YXJ0SGVpZ2h0IhVJZHhPcGVyU3RhcnRUaW1lc3RhbXAiEElkeE9wZXJFbmRIZWlnaHQiE0lkeE9wZXJFbmRUaW1lc3RhbXAiHnByaXZhdGVEYXRhT3BlcmF0aW9uQWxsU3RyaW5ncyIGc3RhdHVzIg1pbkFzc2V0QW1vdW50IgVwcmljZSIOb3V0QXNzZXRBbW91bnQiC3N0YXJ0SGVpZ2h0Ig5zdGFydFRpbWVzdGFtcCIJZW5kSGVpZ2h0IgxlbmRUaW1lc3RhbXAiDWRhdGFPcGVyYXRpb24iHGRhdGFPcGVyYXRpb25FeGVjdXRpb25VcGRhdGUiDWN1cnJPcGVyQXJyYXkiCW5ld1N0YXR1cyIPbmV3RW5kVGltZXN0YW1wIhJyZWFkQXNzZXRDZmdPckZhaWwiFGluY3JlbWVudFRvdGFsTG9ja2VkIglkYXRhQXJyYXkiFGRlY3JlbWVudFRvdGFsTG9ja2VkIhBnZW5lcmljQ2FsY1ByaWNlIgtiYXNlQXNzZXRJZCIPdG9wVXBCYXNlQW1vdW50IgxzaGFyZUFzc2V0SWQiFXRvdGFsTG9ja2VkQmFzZUFtb3VudCIQYmFzZUFzc2V0QmFsYW5jZSIfYmFzZUFzc2V0QmFsYW5jZUNvbnNpZGVyaW5nTG9jayINc2hhcmVFbWlzc2lvbiIJY2FsY1ByaWNlIhtwcml2YXRlQ3VycmVudFN5c1BhcmFtc1JFU1QiCGNmZ0FycmF5IghzeXNTdGF0ZSIBaSIOc2hhcmVBc3NldE5hbWUiD3NoYXJlQXNzZXREZXNjciIQZ2V0RGVsYXlpbkJsb2NrcyIWc2h1dGRvd25NYW5hZ2VyQWRkcmVzcyIIZGVjaW1hbHMiFXNoYXJlQXNzZXRJc3N1ZUFjdGlvbiIKc3RhcnRQcmljZSIUaW50ZXJuYWxCYXNlQXNzZXR0SWQiE2ludGVybmFsQmFzZUFzc2V0SWQiFmludGVybmFsQmFzZUFzc2V0SWRTdHIiDmJhc2VBc3NldElkU3RyIgNwbXQiDGlzUHV0QmxvY2tlZCIMY2FsbGVyUHViU3RyIg5nZXREZWxheUJsb2NrcyIMb3BlcmF0aW9uS2V5Ig1vcGVyYXRpb25EYXRhIg1hc3NldENmZ0FycmF5Ig5vcGVyYXRpb25BcnJheSINaW5TaGFyZUFtb3VudCINb3V0QmFzZUFtb3VudCIKcG10QXNzZXRJZCILcG10QXNzZXRTdHIiEnRvcFVwTGFzdEhlaWdodEtFWSIPdG9wVXBMYXN0SGVpZ2h0Ig1zeXNTdGF0ZVR1cGxlIghyZXN0RGF0YSICdHgiBnZlcmlmeQAAAC0AAAAAAWECAAAAAl9fAQAAAAFiAAAAAQAAAAFjCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQdAAAAAgUAAAAEdGhpcwUAAAABYwkAASwAAAACAgAAABVObyBkYXRhIGZvciB0aGlzLmtleT0FAAAAAWMBAAAAAWQAAAABAAAAAWMJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBsAAAACBQAAAAR0aGlzBQAAAAFjCQABLAAAAAICAAAAFU5vIGRhdGEgZm9yIHRoaXMua2V5PQUAAAABYwEAAAABZQAAAAQAAAABZgAAAAFnAAAAAWgAAAABaQkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAFmAgAAAA86IGJhc2VBc3NldFN0cj0FAAAAAWcCAAAAECB1c2VyQWRkcmVzc1N0cj0FAAAAAWgCAAAADCBnZXRUeElkU3RyPQUAAAABaQEAAAABagAAAAEAAAABZwkAASwAAAACAgAAABclcyVzJXNfX2NvbmZpZ19fYXNzZXRfXwUAAAABZwEAAAABawAAAAACAAAAFyVzX19uZXh0SW50ZXJuYWxBc3NldElkAQAAAAFsAAAAAQAAAAFtCQABLAAAAAICAAAAFSVzJXMlZF9fcHJpY2VfX2xhc3RfXwUAAAABbQEAAAABbgAAAAIAAAABbQAAAAFvCQAEuQAAAAIJAARMAAAAAgIAAAAfJXMlcyVzJWQlc19fdG9wdXBfX2xhc3RfX2hlaWdodAkABEwAAAACBQAAAAFtCQAETAAAAAIFAAAAAW8FAAAAA25pbAUAAAABYQEAAAABcAAAAAMAAAABbQAAAAFxAAAAAXIJAAS5AAAAAgkABEwAAAACAgAAABolcyVzJWQlZCVkX19wcmljZV9faGlzdG9yeQkABEwAAAACBQAAAAFtCQAETAAAAAIJAAGkAAAAAQUAAAABcQkABEwAAAACCQABpAAAAAEFAAAAAXIFAAAAA25pbAUAAAABYQEAAAABcwAAAAEAAAABbQkAASwAAAACAgAAABclcyVzJWRfX3RvdGFsX19sb2NrZWRfXwUAAAABbQEAAAABdAAAAAIAAAABdQAAAAFoCQAEuQAAAAIJAARMAAAAAgIAAAAXJXMlcyVkJXNfX3RvdGFsX19sb2NrZWQJAARMAAAAAgUAAAABdQkABEwAAAACBQAAAAFoBQAAAANuaWwFAAAAAWEBAAAAAXYAAAABAAAAAXcJAAEsAAAAAgIAAAAoJXMlcyVkX19tYXBwaW5nc19faW50ZXJuYWwyYmFzZUFzc2V0SWRfXwkAAaQAAAABBQAAAAF3AQAAAAF4AAAAAQAAAAFnCQABLAAAAAICAAAAKCVzJXMlc19fbWFwcGluZ3NfX2Jhc2VBc3NldDJpbnRlcm5hbElkX18FAAAAAWcBAAAAAXkAAAABAAAAAXoJAAEsAAAAAgIAAAAlJXMlcyVzX19tYXBwaW5nc19fc2hhcmUyYmFzZUFzc2V0SWRfXwUAAAABegEAAAABQQAAAAEAAAABZwkAASwAAAACAgAAACUlcyVzJXNfX21hcHBpbmdzX19iYXNlQXNzZXQyc2hhcmVJZF9fBQAAAAFnAQAAAAFCAAAAAQAAAAF1CQABLAAAAAICAAAAFyVzJXMlZF9fc2h1dGRvd25fX3B1dF9fBQAAAAF1AQAAAAFDAAAAAQAAAAF1CQABLAAAAAICAAAAGyVzJXMlZF9fc2h1dGRvd25fX21hbmFnZXJfXwUAAAABdQAAAAABRAAAAAAAAAAAAQAAAAABRQAAAAAAAAAAAgAAAAABRgAAAAAAAAAAAwAAAAABRwAAAAAAAAAABAAAAAABSAAAAAAAAAAABQEAAAABSQAAAAUAAAABegAAAAF1AAAAAUoAAAABSwAAAAFMCQAEuQAAAAIJAARMAAAAAgIAAAAKJXMlZCVkJWQlZAkABEwAAAACBQAAAAF6CQAETAAAAAIFAAAAAXUJAARMAAAAAgkAAaQAAAABBQAAAAFKCQAETAAAAAIJAAGkAAAAAQUAAAABSwkABEwAAAACCQABpAAAAAEFAAAAAUwFAAAAA25pbAUAAAABYQAAAAABTQAAAAAAAAAAAQAAAAABTgAAAAAAAAAAAgEAAAABTwAAAAIAAAABUAAAAAFRCQAEuQAAAAIJAARMAAAAAgIAAAAEJWQlZAkABEwAAAACCQABpAAAAAEFAAAAAVAJAARMAAAAAgkAAaQAAAABBQAAAAFRBQAAAANuaWwFAAAAAWEBAAAAAVIAAAABAAAAAWMEAAAAAVMJAAS1AAAAAgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABB0AAAACBQAAAAR0aGlzBQAAAAFjCQEAAAABTwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAWEJAARMAAAAAgD//////////wkABEwAAAACCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAABUwUAAAABTQkABEwAAAACCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAABUwUAAAABTgUAAAADbmlsAQAAAAFUAAAABAAAAAFVAAAAAXUAAAABVgAAAAFXCQAEuQAAAAIJAARMAAAAAgIAAAAIJXMlZCVzJXMJAARMAAAAAgUAAAABVQkABEwAAAACBQAAAAF1CQAETAAAAAIFAAAAAVYJAARMAAAAAgUAAAABVwUAAAADbmlsBQAAAAFhAAAAAAFYAAAAAAAAAAABAAAAAAFZAAAAAAAAAAACAAAAAAFaAAAAAAAAAAADAAAAAAJhYQAAAAAAAAAABAAAAAACYWIAAAAAAAAAAAUAAAAAAmFjAAAAAAAAAAAGAAAAAAJhZAAAAAAAAAAABwAAAAACYWUAAAAAAAAAAAgBAAAAAmFmAAAACAAAAAJhZwAAAAJhaAAAAAJhaQAAAAJhagAAAAJhawAAAAJhbAAAAAJhbQAAAAJhbgkABLkAAAACCQAETAAAAAICAAAAECVzJWQlZCVkJWQlZCVkJWQJAARMAAAAAgUAAAACYWcJAARMAAAAAgUAAAACYWgJAARMAAAAAgUAAAACYWkJAARMAAAAAgUAAAACYWoJAARMAAAAAgUAAAACYWsJAARMAAAAAgUAAAACYWwJAARMAAAAAgUAAAACYW0JAARMAAAAAgUAAAACYW4FAAAAA25pbAUAAAABYQEAAAACYW8AAAAIAAAAAmFnAAAAAmFoAAAAAmFpAAAAAmFqAAAAAmFrAAAAAmFsAAAAAmFtAAAAAmFuCQEAAAACYWYAAAAIBQAAAAJhZwkAAaQAAAABBQAAAAJhaAkAAaQAAAABBQAAAAJhaQkAAaQAAAABBQAAAAJhagkAAaQAAAABBQAAAAJhawkAAaQAAAABBQAAAAJhbAkAAaQAAAABBQAAAAJhbQkAAaQAAAABBQAAAAJhbgEAAAACYXAAAAADAAAAAmFxAAAAAmFyAAAAAmFzCQEAAAACYWYAAAAIBQAAAAJhcgkAAZEAAAACBQAAAAJhcQUAAAABWQkAAZEAAAACBQAAAAJhcQUAAAABWgkAAZEAAAACBQAAAAJhcQUAAAACYWEJAAGRAAAAAgUAAAACYXEFAAAAAmFiCQABkQAAAAIFAAAAAmFxBQAAAAJhYwkAAZEAAAACBQAAAAJhcQUAAAACYWQJAAGkAAAAAQUAAAACYXMBAAAAAmF0AAAAAQAAAAFnBAAAAAFjCQEAAAABagAAAAEFAAAAAWcJAAS1AAAAAgkBAAAAAWIAAAABBQAAAAFjBQAAAAFhAQAAAAJhdQAAAAMAAAABYwAAAAFQAAAAAVEEAAAAAmF2CQEAAAABUgAAAAEFAAAAAWMJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAAAWMJAQAAAAFPAAAAAgkAAGQAAAACCQABkQAAAAIFAAAAAmF2BQAAAAFNBQAAAAFQCQAAZAAAAAIJAAGRAAAAAgUAAAACYXYFAAAAAU4FAAAAAVEBAAAAAmF3AAAAAwAAAAFjAAAAAVAAAAABUQQAAAACYXYJAQAAAAFSAAAAAQUAAAABYwkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAABYwkBAAAAAU8AAAACCQAAZQAAAAIJAAGRAAAAAgUAAAACYXYFAAAAAU0FAAAAAVAJAABlAAAAAgkAAZEAAAACBQAAAAJhdgUAAAABTgUAAAABUQEAAAACYXgAAAAGAAAAAXUAAAACYXkAAAACYXoAAAACYUEAAAABSgAAAAFLBAAAAAFTCQEAAAABUgAAAAEJAQAAAAFzAAAAAQUAAAABdQQAAAACYUIJAAGRAAAAAgUAAAABUwUAAAABTgQAAAACYUMJAAPwAAAAAgUAAAAEdGhpcwUAAAACYXkEAAAAAmFECQAAZAAAAAIJAABlAAAAAgUAAAACYUMFAAAAAmFCBQAAAAJhegMJAABmAAAAAgAAAAAAAAAAAAUAAAACYUQJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAA2YmFzZUFzc2V0QmFsYW5jZUNvbnNpZGVyaW5nTG9jayA8IDA6IGJhc2VBc3NldEJhbGFuY2U9CQABpAAAAAEFAAAAAmFDAgAAACEgYmFzZUFzc2V0QmFsYW5jZUNvbnNpZGVyaW5nTG9jaz0JAAGkAAAAAQUAAAACYUQEAAAAAmFFCAkBAAAABXZhbHVlAAAAAQkAA+wAAAABBQAAAAJhQQAAAAhxdWFudGl0eQQAAAACYWkDCQAAAAAAAAIFAAAAAmFFAAAAAAAAAAAACQAAaAAAAAIAAAAAAAAAAAEFAAAAAUsJAABrAAAAAwUAAAACYUQFAAAAAUsFAAAAAmFFCQAFFwAAAAUFAAAAAmFpBQAAAAJhQwUAAAACYUIFAAAAAmFEBQAAAAJhRQEAAAACYUYAAAAFAAAAAXUAAAACYXkAAAACYUEAAAABSgAAAAFLCQEAAAACYXgAAAAGBQAAAAF1BQAAAAJheQAAAAAAAAAAAAUAAAACYUEFAAAAAUoFAAAAAUsBAAAAAmFHAAAAAQAAAAFnBAAAAAJheQkAAlkAAAABBQAAAAFnBAAAAAJhSAkBAAAAAmF0AAAAAQUAAAABZwQAAAABegkAAZEAAAACBQAAAAJhSAUAAAABRAQAAAACYUEJAAJZAAAAAQUAAAABegQAAAABSgkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAAmFIBQAAAAFGBAAAAAFLCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAACYUgFAAAAAUcEAAAAAXUJAAGRAAAAAgUAAAACYUgFAAAAAUUEAAAAAmFJCQEAAAACYUYAAAAFBQAAAAF1BQAAAAJheQUAAAACYUEFAAAAAUoFAAAAAUsJAAUYAAAABgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAABXByaWNlCAUAAAACYUkAAAACXzEJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABFkZWNpbWFsc011bHRQcmljZQUAAAABSwkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAEGJhc2VBc3NldEJhbGFuY2UIBQAAAAJhSQAAAAJfMgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAFXRvdGFsTG9ja2VkQmFzZUFtb3VudAgFAAAAAmFJAAAAAl8zCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAfYmFzZUFzc2V0QmFsYW5jZUNvbnNpZGVyaW5nTG9jawgFAAAAAmFJAAAAAl80CQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAANc2hhcmVFbWlzc2lvbggFAAAAAmFJAAAAAl81AAAABwAAAAJhSgEAAAASYWRtaW5SZWdpc3RlckFzc2V0AAAABQAAAAFnAAAAAmFLAAAAAmFMAAAAAmFNAAAAAmFOBAAAAAJheQkAAlkAAAABBQAAAAFnBAAAAAJhTwgJAQAAAAV2YWx1ZQAAAAEJAAPsAAAAAQUAAAACYXkAAAAIZGVjaW1hbHMDCQEAAAACIT0AAAACCAUAAAACYUoAAAAGY2FsbGVyBQAAAAR0aGlzCQAAAgAAAAECAAAAEnBlcm1pc3Npb25zIGRlbmllZAMJAQAAAAIhPQAAAAIJAAQlAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQUAAAACYU4FAAAAAmFOCQAAAgAAAAECAAAAHmludmFsaWQgc2h1dGRvd25NYW5hZ2VyQWRkcmVzcwMJAABmAAAAAgAAAAAAAAAAAAUAAAACYU0JAAACAAAAAQkAASwAAAACAgAAABlpbnZhbGlkIGdldERlbGF5aW5CbG9ja3M9CQABpAAAAAEFAAAAAmFNBAAAAAJhUAkABEIAAAAFBQAAAAJhSwUAAAACYUwAAAAAAAAAAAEFAAAAAmFPBgQAAAACYUEJAAQ4AAAAAQUAAAACYVAEAAAAAXoJAAJYAAAAAQUAAAACYUEEAAAAAUsJAABoAAAAAgkAAGgAAAACAAAAAAAAAABkAAAAAAAAAAPoAAAAAAAAAAPoBAAAAAFKCQAAbAAAAAYAAAAAAAAAAAoAAAAAAAAAAAAFAAAAAmFPAAAAAAAAAAAAAAAAAAAAAAAABQAAAARET1dOBAAAAAJhUQkAAGgAAAACAAAAAAAAAAABBQAAAAFLBAAAAAJhUgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQEAAAABawAAAAAAAAAAAAAAAAAEAAAAAXUJAAGkAAAAAQUAAAACYVIJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAAWoAAAABBQAAAAFnCQEAAAABSQAAAAUFAAAAAXoFAAAAAXUFAAAAAUoFAAAAAUsFAAAAAmFNCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAAF2AAAAAQUAAAACYVIFAAAAAWcJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAAXgAAAABBQAAAAFnBQAAAAF1CQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAAF5AAAAAQUAAAABegUAAAABZwkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAABQQAAAAEFAAAAAWcFAAAAAXoJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIJAQAAAAFCAAAAAQUAAAABdQcJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAAUMAAAABBQAAAAF1BQAAAAJhTgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAAWsAAAAACQAAZAAAAAIFAAAAAmFSAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAABbAAAAAEFAAAAAXUFAAAAAmFRCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAABcAAAAAMFAAAAAXUFAAAABmhlaWdodAgFAAAACWxhc3RCbG9jawAAAAl0aW1lc3RhbXAFAAAAAmFRCQAETAAAAAIFAAAAAmFQCQAETAAAAAIJAQAAAARCdXJuAAAAAgUAAAACYUEAAAAAAAAAAAEFAAAAA25pbAAAAAJhSgEAAAALc2h1dGRvd25QdXQAAAABAAAAAmFTBAAAAAJhVAkAAaQAAAABBQAAAAJhUwQAAAACYVUJAQAAAAFiAAAAAQkBAAAAAXYAAAABBQAAAAJhUwQAAAACYU4JAQAAAAFiAAAAAQkBAAAAAUMAAAABBQAAAAJhVAMJAABmAAAAAgAAAAAAAAAAAQkAATEAAAABBQAAAAJhVQkAAAIAAAABAgAAABtpbnZhbGlkIGludGVybmFsQmFzZUFzc2V0SWQDCQEAAAACIT0AAAACCQAEJQAAAAEIBQAAAAJhSgAAAAZjYWxsZXIFAAAAAmFOCQAAAgAAAAECAAAADWFjY2VzcyBkZW5pZWQJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIJAQAAAAFCAAAAAQkAAaQAAAABBQAAAAJhUwYFAAAAA25pbAAAAAJhSgEAAAADcHV0AAAAAAQAAAACYVYJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAAAmFKAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAAJheQkBAAAABXZhbHVlAAAAAQgFAAAAAmFWAAAAB2Fzc2V0SWQEAAAAAWcJAAJYAAAAAQUAAAACYXkEAAAAAWgJAAQlAAAAAQgFAAAAAmFKAAAABmNhbGxlcgQAAAACYUgJAQAAAAJhdAAAAAEFAAAAAWcEAAAAAXoJAAGRAAAAAgUAAAACYUgFAAAAAUQEAAAAAmFBCQACWQAAAAEFAAAAAXoEAAAAAUoJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAJhSAUAAAABRgQAAAABSwkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAAmFIBQAAAAFHBAAAAAF1CQABkQAAAAIFAAAAAmFIBQAAAAFFBAAAAAJhVwkBAAAAAWQAAAABCQEAAAABQgAAAAEFAAAAAXUDBQAAAAJhVwkAAAIAAAABAgAAABhwdXQgb3BlcmF0aW9uIGlzIGJsb2NrZWQEAAAAAmFpCAkBAAAAAmFGAAAABQUAAAABdQUAAAACYXkFAAAAAmFBBQAAAAFKBQAAAAFLAAAAAl8xBAAAAAFQCQAAawAAAAMIBQAAAAJhVgAAAAZhbW91bnQFAAAAAUsFAAAAAmFpCQAETAAAAAIJAQAAAAdSZWlzc3VlAAAAAwUAAAACYUEFAAAAAVAGCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAJhSgAAAAZjYWxsZXIFAAAAAVAFAAAAAmFBCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAAFUAAAABAIAAAABUAUAAAABdQUAAAABaAkAAlgAAAABCAUAAAACYUoAAAANdHJhbnNhY3Rpb25JZAkBAAAAAmFvAAAACAIAAAAIRklOSVNIRUQIBQAAAAJhVgAAAAZhbW91bnQFAAAAAmFpBQAAAAFQBQAAAAZoZWlnaHQIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wBQAAAAZoZWlnaHQIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wBQAAAANuaWwAAAACYUoBAAAAEHN1Ym1pdEdldFJlcXVlc3QAAAAABAAAAAJhVgkBAAAABXZhbHVlAAAAAQkAAZEAAAACCAUAAAACYUoAAAAIcGF5bWVudHMAAAAAAAAAAAAEAAAAAmFBCQEAAAAFdmFsdWUAAAABCAUAAAACYVYAAAAHYXNzZXRJZAQAAAABegkAAlgAAAABBQAAAAJhQQQAAAACYVgJAAJYAAAAAQgFAAAAAmFKAAAAD2NhbGxlclB1YmxpY0tleQQAAAABVggFAAAAAmFKAAAABmNhbGxlcgQAAAABaAkABCUAAAABBQAAAAFWBAAAAAFQCAUAAAACYVYAAAAGYW1vdW50BAAAAAFnCQEAAAABYgAAAAEJAQAAAAF5AAAAAQUAAAABegQAAAACYXkJAAJZAAAAAQUAAAABZwQAAAACYUgJAQAAAAJhdAAAAAEFAAAAAWcEAAAAAUoJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAJhSAUAAAABRgQAAAABSwkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAAmFIBQAAAAFHBAAAAAJhWQkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAAmFIBQAAAAFIBAAAAAF1CQABkQAAAAIFAAAAAmFIBQAAAAFFBAAAAAJhaQgJAQAAAAJhRgAAAAUFAAAAAXUFAAAAAmF5BQAAAAJhQQUAAAABSgUAAAABSwAAAAJfMQQAAAABUQkAAGsAAAADBQAAAAFQBQAAAAJhaQUAAAABSwQAAAACYVoJAQAAAAFUAAAABAIAAAABRwUAAAABdQUAAAABaAkAAlgAAAABCAUAAAACYUoAAAANdHJhbnNhY3Rpb25JZAQAAAACYmEJAQAAAAJhbwAAAAgCAAAAB1BFTkRJTkcFAAAAAVAFAAAAAmFpBQAAAAFRBQAAAAZoZWlnaHQIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wCQAAZAAAAAIFAAAABmhlaWdodAUAAAACYVkAAAAAAAAAAAAJAARMAAAAAgkBAAAABEJ1cm4AAAACBQAAAAJhQQUAAAABUAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAAAJhWgUAAAACYmEJAARMAAAAAgkBAAAAAmF1AAAAAwkBAAAAAXMAAAABBQAAAAF1BQAAAAFQBQAAAAFRCQAETAAAAAIJAQAAAAJhdQAAAAMJAQAAAAF0AAAAAgUAAAABdQUAAAABaAUAAAABUAUAAAABUQUAAAADbmlsAAAAAmFKAQAAABFleGVjdXRlR2V0UmVxdWVzdAAAAAMAAAABZwAAAAFoAAAAAWkEAAAAAVYJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEFAAAAAWgEAAAAAmJiCQEAAAACYXQAAAABBQAAAAFnBAAAAAJhQQkAAlkAAAABCQABkQAAAAIFAAAAAmJiBQAAAAFEBAAAAAJheQkAAlkAAAABBQAAAAFnBAAAAAF1CQABkQAAAAIFAAAAAmJiBQAAAAFFBAAAAAJhWgkBAAAAAVQAAAAEAgAAAAFHBQAAAAF1BQAAAAFoBQAAAAFpBAAAAAJiYwkABLUAAAACCQEAAAABYgAAAAEFAAAAAmFaBQAAAAFhBAAAAAJhZwkAAZEAAAACBQAAAAJiYwUAAAABWAQAAAACYW0JAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAJiYwUAAAACYWQEAAAAAmJkCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAACYmMFAAAAAVkEAAAAAmJlCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAACYmMFAAAAAmFhAwkBAAAAAiE9AAAAAgUAAAACYWcCAAAAB1BFTkRJTkcJAQAAAAFlAAAABAIAAAAVU3RhdHVzIGlzIG5vdCBQRU5ESU5HBQAAAAFnBQAAAAFoBQAAAAFpAwkAAGYAAAACBQAAAAJhbQUAAAAGaGVpZ2h0CQEAAAABZQAAAAQJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACkVuZEhlaWdodFsJAAGkAAAAAQUAAAACYW0CAAAABF0gPiAJAAGkAAAAAQUAAAAGaGVpZ2h0BQAAAAFnBQAAAAFoBQAAAAFpCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAAAVYFAAAAAmJlBQAAAAJheQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAAAJhWgkBAAAAAmFwAAAAAwUAAAACYmMCAAAACEZJTklTSEVECAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAkABEwAAAACCQEAAAACYXcAAAADCQEAAAABcwAAAAEFAAAAAXUFAAAAAmJkBQAAAAJiZQkABEwAAAACCQEAAAACYXcAAAADCQEAAAABdAAAAAIFAAAAAXUFAAAAAWgFAAAAAmJkBQAAAAJiZQUAAAADbmlsAAAAAmFKAQAAAAx0b3BVcEJhbGFuY2UAAAABAAAAAWcEAAAAAmJiCQEAAAACYXQAAAABBQAAAAFnBAAAAAJhVgkBAAAABXZhbHVlAAAAAQkAAZEAAAACCAUAAAACYUoAAAAIcGF5bWVudHMAAAAAAAAAAAAEAAAAAmJmCQEAAAAFdmFsdWUAAAABCAUAAAACYVYAAAAHYXNzZXRJZAQAAAACYmcJAAJYAAAAAQUAAAACYmYEAAAAAmFBCQACWQAAAAEJAAGRAAAAAgUAAAACYmIFAAAAAUQEAAAAAUoJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAJiYgUAAAABRgQAAAABSwkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAAmJiBQAAAAFHBAAAAAF1CQABkQAAAAIFAAAAAmJiBQAAAAFFBAAAAAJiaAkBAAAAAW4AAAACBQAAAAF1CQAEJQAAAAEIBQAAAAJhSgAAAAZjYWxsZXIEAAAAAmJpCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMFAAAAAmJoAAAAAAAAAAAAAwkBAAAAAiE9AAAAAgUAAAABZwUAAAACYmcJAAACAAAAAQIAAAA+YXR0YWNoZWQgcGF5bWVudCdzIGFzc2V0IGlkIGlzIE5PVCBtYXRjaGVkIHBhc3NlZCBiYXNlQXNzZXRTdHIDCQAAZgAAAAIJAAGQAAAAAQgFAAAAAmFKAAAACHBheW1lbnRzAAAAAAAAAAABCQAAAgAAAAECAAAAIG9ubHkgb25lIHBheW1lbnQgY2FuIGJlIGF0dGFjaGVkAwkAAGYAAAACAAAAAAAAAABkCQAAZQAAAAIFAAAABmhlaWdodAUAAAACYmkJAAACAAAAAQIAAAA3MSB0b3BVcCBwZXIgMTAwIGJsb2NrcyBmcm9tIHRoZSBzYW1lIGFkZHJlc3MgaXMgYWxsb3dlZAQAAAACYWkICQEAAAACYXgAAAAGBQAAAAF1BQAAAAJiZggFAAAAAmFWAAAABmFtb3VudAUAAAACYUEFAAAAAUoFAAAAAUsAAAACXzEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAAFsAAAAAQUAAAABdQUAAAACYWkJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAAFwAAAAAwUAAAABdQUAAAAGaGVpZ2h0CAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAUAAAACYWkJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAAmJoBQAAAAZoZWlnaHQFAAAAA25pbAAAAAJhSgEAAAAUY3VycmVudFN5c1BhcmFtc1JFU1QAAAABAAAAAWcEAAAAAmJqCQEAAAACYUcAAAABBQAAAAFnBAAAAAJhaQgIBQAAAAJiagAAAAJfMQAAAAV2YWx1ZQQAAAABSwgIBQAAAAJiagAAAAJfMgAAAAV2YWx1ZQQAAAACYUMICAUAAAACYmoAAAACXzMAAAAFdmFsdWUEAAAAAmFCCAgFAAAAAmJqAAAAAl80AAAABXZhbHVlBAAAAAJhRAgIBQAAAAJiagAAAAJfNQAAAAV2YWx1ZQQAAAACYUUICAUAAAACYmoAAAACXzYAAAAFdmFsdWUEAAAAAmJrCQAEuQAAAAIJAARMAAAAAgIAAAAZc3RhcnRDdXJyZW50U3lzUGFyYW1zUkVTVAkABEwAAAACCQABpAAAAAEFAAAAAmFpCQAETAAAAAIJAAGkAAAAAQUAAAABSwkABEwAAAACCQABpAAAAAEFAAAAAmFDCQAETAAAAAIJAAGkAAAAAQUAAAACYUIJAARMAAAAAgkAAaQAAAABBQAAAAJhRAkABEwAAAACCQABpAAAAAEFAAAAAmFFCQAETAAAAAICAAAAF2VuZEN1cnJlbnRTeXNQYXJhbXNSRVNUBQAAAANuaWwFAAAAAWEJAAACAAAAAQUAAAACYmsAAAABAAAAAmJsAQAAAAJibQAAAAAJAAH0AAAAAwgFAAAAAmJsAAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACYmwAAAAGcHJvb2ZzAAAAAAAAAAAACQACWQAAAAECAAAALDJDYmQ4b3pHN0ExUnlSTkMzbk5uWmdIdTdSdTRLM0pDZnB5UGtocXI5enhx7qRurw==", "chainId": 84, "height": 2408829, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 28DAJQDGWMLhKmHRTCR72v11NDteh36ZBGJh2syKuDFX Next: none Full:
OldNewDifferences
1-{-# STDLIB_VERSION 6 #-}
1+{-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
6-func b (c) = makeString(["lp_staking.ride:", c], " ")
6+func b (c) = valueOrErrorMessage(getString(this, c), ("No data for this.key=" + c))
77
88
9-func d (c) = throw(b(c))
9+func d (c) = valueOrErrorMessage(getBoolean(this, c), ("No data for this.key=" + c))
1010
1111
12-func e (f) = valueOrErrorMessage(getString(this, f), ("No data for this.key=" + f))
12+func e (f,g,h,i) = throw(((((((f + ": baseAssetStr=") + g) + " userAddressStr=") + h) + " getTxIdStr=") + i))
1313
1414
15-func g (f) = valueOrErrorMessage(getBoolean(this, f), ("No data for this.key=" + f))
15+func j (g) = ("%s%s%s__config__asset__" + g)
1616
1717
18-func h (c,i,j,k) = throw(((((((c + ": baseAssetStr=") + i) + " userAddressStr=") + j) + " getTxIdStr=") + k))
18+func k () = "%s__nextInternalAssetId"
1919
2020
21-func l (i) = ("%s%s%s__config__asset__" + i)
21+func l (m) = ("%s%s%d__price__last__" + m)
2222
2323
24-func m () = "%s__nextInternalAssetId"
24+func n (m,o) = makeString(["%s%s%s%d%s__topup__last__height", m, o], a)
2525
2626
27-func n (o) = ("%s%s%d__price__last__" + o)
27+func p (m,q,r) = makeString(["%s%s%d%d%d__price__history", m, toString(q), toString(r)], a)
2828
2929
30-func p (o,q) = makeString(["%s%s%s%d%s__topup__last__height", o, q], a)
30+func s (m) = ("%s%s%d__total__locked__" + m)
3131
3232
33-func r (o,s,t) = makeString(["%s%s%d%d%d__price__history", o, toString(s), toString(t)], a)
33+func t (u,h) = makeString(["%s%s%d%s__total__locked", u, h], a)
3434
3535
36-func u (o) = ("%s%s%d__total__locked__" + o)
36+func v (w) = ("%s%s%d__mappings__internal2baseAssetId__" + toString(w))
3737
3838
39-func v (w,j) = makeString(["%s%s%d%s__total__locked", w, j], a)
39+func x (g) = ("%s%s%s__mappings__baseAsset2internalId__" + g)
4040
4141
42-func x (y) = ("%s%s%d__mappings__internal2baseAssetId__" + toString(y))
42+func y (z) = ("%s%s%s__mappings__share2baseAssetId__" + z)
4343
4444
45-func z (i) = ("%s%s%s__mappings__baseAsset2internalId__" + i)
45+func A (g) = ("%s%s%s__mappings__baseAsset2shareId__" + g)
4646
4747
48-func A (B) = ("%s%s%s__mappings__share2baseAssetId__" + B)
48+func B (u) = ("%s%s%d__shutdown__put__" + u)
4949
5050
51-func C (i) = ("%s%s%s__mappings__baseAsset2shareId__" + i)
51+func C (u) = ("%s%s%d__shutdown__manager__" + u)
5252
5353
54-func D (w) = ("%s%s%d__shutdown__put__" + w)
54+let D = 1
55+
56+let E = 2
57+
58+let F = 3
59+
60+let G = 4
61+
62+let H = 5
63+
64+func I (z,u,J,K,L) = makeString(["%s%d%d%d%d", z, u, toString(J), toString(K), toString(L)], a)
5565
5666
57-func E (w) = ("%s%d__shutdown__" + w)
67+let M = 1
68+
69+let N = 2
70+
71+func O (P,Q) = makeString(["%d%d", toString(P), toString(Q)], a)
5872
5973
60-func F (w) = ("%s%s%d__shutdown__manager__" + w)
61-
62-
63-let G = 1
64-
65-let H = 2
66-
67-let I = 3
68-
69-let J = 4
70-
71-let K = 5
72-
73-func L () = "%s__managerPublicKey"
74-
75-
76-func M () = "%s__pendingManagerPublicKey"
77-
78-
79-func N () = {
80- let O = getString(L())
81- if ($isInstanceOf(O, "String"))
82- then {
83- let P = O
84- fromBase58String(P)
85- }
86- else if ($isInstanceOf(O, "Unit"))
87- then unit
88- else throw("Match error")
74+func R (c) = {
75+ let S = split(valueOrElse(getString(this, c), O(0, 0)), a)
76+[-1, parseIntValue(S[M]), parseIntValue(S[N])]
8977 }
9078
9179
92-func Q () = {
93- let O = getString(M())
94- if ($isInstanceOf(O, "String"))
95- then {
96- let P = O
97- fromBase58String(P)
98- }
99- else if ($isInstanceOf(O, "Unit"))
100- then unit
101- else throw("Match error")
80+func T (U,u,V,W) = makeString(["%s%d%s%s", U, u, V, W], a)
81+
82+
83+let X = 1
84+
85+let Y = 2
86+
87+let Z = 3
88+
89+let aa = 4
90+
91+let ab = 5
92+
93+let ac = 6
94+
95+let ad = 7
96+
97+let ae = 8
98+
99+func af (ag,ah,ai,aj,ak,al,am,an) = makeString(["%s%d%d%d%d%d%d%d", ag, ah, ai, aj, ak, al, am, an], a)
100+
101+
102+func ao (ag,ah,ai,aj,ak,al,am,an) = af(ag, toString(ah), toString(ai), toString(aj), toString(ak), toString(al), toString(am), toString(an))
103+
104+
105+func ap (aq,ar,as) = af(ar, aq[Y], aq[Z], aq[aa], aq[ab], aq[ac], aq[ad], toString(as))
106+
107+
108+func at (g) = {
109+ let c = j(g)
110+ split(b(c), a)
102111 }
103112
104113
105-let R = throw("Permission denied")
106-
107-func S (T) = if ((T.caller == this))
108- then true
109- else R
110-
111-
112-func U (T) = {
113- let O = N()
114- if ($isInstanceOf(O, "ByteVector"))
115- then {
116- let V = O
117- if ((T.callerPublicKey == V))
118- then true
119- else R
120- }
121- else if ($isInstanceOf(O, "Unit"))
122- then S(T)
123- else throw("Match error")
114+func au (c,P,Q) = {
115+ let av = R(c)
116+ StringEntry(c, O((av[M] + P), (av[N] + Q)))
124117 }
125118
126119
127-let W = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(makeString(["%s", "lpStakingPoolsContract"], a)), b("lp_staking_pools contract address is undefined"))), b("invalid lp_staking_pools contract address"))
128-
129-func X (B,w,Y,Z,aa) = makeString(["%s%d%d%d%d", B, w, toString(Y), toString(Z), toString(aa)], a)
130-
131-
132-let ab = 1
133-
134-let ac = 2
135-
136-func ad (ae,af) = makeString(["%d%d", toString(ae), toString(af)], a)
137-
138-
139-func ag (f) = {
140- let ah = split(valueOrElse(getString(this, f), ad(0, 0)), a)
141-[-1, parseIntValue(ah[ab]), parseIntValue(ah[ac])]
120+func aw (c,P,Q) = {
121+ let av = R(c)
122+ StringEntry(c, O((av[M] - P), (av[N] - Q)))
142123 }
143124
144125
145-func ai (aj,w,ak,al) = makeString(["%s%d%s%s", aj, w, ak, al], a)
146-
147-
148-let am = 1
149-
150-let an = 2
151-
152-let ao = 3
153-
154-let ap = 4
155-
156-let aq = 5
157-
158-let ar = 6
159-
160-let as = 7
161-
162-let at = 8
163-
164-func au (av,aw,ax,ay,az,aA,aB,aC) = makeString(["%s%d%d%d%d%d%d%d", av, aw, ax, ay, az, aA, aB, aC], a)
165-
166-
167-func aD (av,aw,ax,ay,az,aA,aB,aC) = au(av, toString(aw), toString(ax), toString(ay), toString(az), toString(aA), toString(aB), toString(aC))
168-
169-
170-func aE (aF,aG,aH) = au(aG, aF[an], aF[ao], aF[ap], aF[aq], aF[ar], aF[as], toString(aH))
171-
172-
173-func aI (i) = {
174- let f = l(i)
175- split(e(f), a)
176- }
177-
178-
179-func aJ (f,ae,af) = {
180- let aK = ag(f)
181- StringEntry(f, ad((aK[ab] + ae), (aK[ac] + af)))
182- }
183-
184-
185-func aL (f,ae,af) = {
186- let aK = ag(f)
187- StringEntry(f, ad((aK[ab] - ae), (aK[ac] - af)))
188- }
189-
190-
191-func aM (w,aN,aO,aP,Y,Z) = {
192- let ah = ag(u(w))
193- let aQ = ah[ac]
194- let aR = assetBalance(this, aN)
195- let aS = ((aR - aQ) + aO)
196- if ((0 > aS))
197- then throw(((("baseAssetBalanceConsideringLock < 0: baseAssetBalance=" + toString(aR)) + " baseAssetBalanceConsideringLock=") + toString(aS)))
126+func ax (u,ay,az,aA,J,K) = {
127+ let S = R(s(u))
128+ let aB = S[N]
129+ let aC = assetBalance(this, ay)
130+ let aD = ((aC - aB) + az)
131+ if ((0 > aD))
132+ then throw(((("baseAssetBalanceConsideringLock < 0: baseAssetBalance=" + toString(aC)) + " baseAssetBalanceConsideringLock=") + toString(aD)))
198133 else {
199- let aT = value(assetInfo(aP)).quantity
200- let ax = if ((aT == 0))
201- then (1 * Z)
202- else fraction(aS, Z, aT)
203- $Tuple5(ax, aR, aQ, aS, aT)
134+ let aE = value(assetInfo(aA)).quantity
135+ let ai = if ((aE == 0))
136+ then (1 * K)
137+ else fraction(aD, K, aE)
138+ $Tuple5(ai, aC, aB, aD, aE)
204139 }
205140 }
206141
207142
208-func aU (w,aN,aP,Y,Z) = aM(w, aN, 0, aP, Y, Z)
143+func aF (u,ay,aA,J,K) = ax(u, ay, 0, aA, J, K)
209144
210145
211-func aV (i) = {
212- let aN = fromBase58String(i)
213- let aW = aI(i)
214- let B = aW[G]
215- let aP = fromBase58String(B)
216- let Y = parseIntValue(aW[I])
217- let Z = parseIntValue(aW[J])
218- let w = aW[H]
219- let aX = aU(w, aN, aP, Y, Z)
220- $Tuple6(IntegerEntry("price", aX._1), IntegerEntry("decimalsMultPrice", Z), IntegerEntry("baseAssetBalance", aX._2), IntegerEntry("totalLockedBaseAmount", aX._3), IntegerEntry("baseAssetBalanceConsideringLock", aX._4), IntegerEntry("shareEmission", aX._5))
146+func aG (g) = {
147+ let ay = fromBase58String(g)
148+ let aH = at(g)
149+ let z = aH[D]
150+ let aA = fromBase58String(z)
151+ let J = parseIntValue(aH[F])
152+ let K = parseIntValue(aH[G])
153+ let u = aH[E]
154+ let aI = aF(u, ay, aA, J, K)
155+ $Tuple6(IntegerEntry("price", aI._1), IntegerEntry("decimalsMultPrice", K), IntegerEntry("baseAssetBalance", aI._2), IntegerEntry("totalLockedBaseAmount", aI._3), IntegerEntry("baseAssetBalanceConsideringLock", aI._4), IntegerEntry("shareEmission", aI._5))
221156 }
222157
223158
224-@Callable(T)
225-func adminRegisterAsset (i,aY,aZ,ba,bb) = {
226- let aN = fromBase58String(i)
227- let bc = value(assetInfo(aN)).decimals
228- let bd = U(T)
229- if ((bd == bd))
230- then if ((toString(addressFromStringValue(bb)) != bb))
159+@Callable(aJ)
160+func adminRegisterAsset (g,aK,aL,aM,aN) = {
161+ let ay = fromBase58String(g)
162+ let aO = value(assetInfo(ay)).decimals
163+ if ((aJ.caller != this))
164+ then throw("permissions denied")
165+ else if ((toString(addressFromStringValue(aN)) != aN))
231166 then throw("invalid shutdownManagerAddress")
232- else if ((0 > ba))
233- then throw(("invalid getDelayinBlocks=" + toString(ba)))
167+ else if ((0 > aM))
168+ then throw(("invalid getDelayinBlocks=" + toString(aM)))
234169 else {
235- let be = Issue(aY, aZ, 1, bc, true)
236- let aP = calculateAssetId(be)
237- let B = toBase58String(aP)
238- let Z = ((100 * 1000) * 1000)
239- let Y = pow(10, 0, bc, 0, 0, DOWN)
240- let bf = (1 * Z)
241- let bg = valueOrElse(getInteger(this, m()), 0)
242- let w = toString(bg)
243-[StringEntry(l(i), X(B, w, Y, Z, ba)), StringEntry(x(bg), i), StringEntry(z(i), w), StringEntry(A(B), i), StringEntry(C(i), B), BooleanEntry(D(w), false), StringEntry(F(w), bb), IntegerEntry(m(), (bg + 1)), IntegerEntry(n(w), bf), IntegerEntry(r(w, height, lastBlock.timestamp), bf), be, Burn(aP, 1)]
170+ let aP = Issue(aK, aL, 1, aO, true)
171+ let aA = calculateAssetId(aP)
172+ let z = toBase58String(aA)
173+ let K = ((100 * 1000) * 1000)
174+ let J = pow(10, 0, aO, 0, 0, DOWN)
175+ let aQ = (1 * K)
176+ let aR = valueOrElse(getInteger(this, k()), 0)
177+ let u = toString(aR)
178+[StringEntry(j(g), I(z, u, J, K, aM)), StringEntry(v(aR), g), StringEntry(x(g), u), StringEntry(y(z), g), StringEntry(A(g), z), BooleanEntry(B(u), false), StringEntry(C(u), aN), IntegerEntry(k(), (aR + 1)), IntegerEntry(l(u), aQ), IntegerEntry(p(u, height, lastBlock.timestamp), aQ), aP, Burn(aA, 1)]
244179 }
245- else throw("Strict value is not equal to itself.")
246180 }
247181
248182
249183
250-@Callable(T)
251-func shutdownPut (bh) = {
252- let bi = toString(bh)
253- let bj = e(x(bh))
254- let bb = e(F(bi))
255- if ((1 > size(bj)))
184+@Callable(aJ)
185+func shutdownPut (aS) = {
186+ let aT = toString(aS)
187+ let aU = b(v(aS))
188+ let aN = b(C(aT))
189+ if ((1 > size(aU)))
256190 then throw("invalid internalBaseAssetId")
257- else if ((toString(T.caller) != bb))
191+ else if ((toString(aJ.caller) != aN))
258192 then throw("access denied")
259- else [BooleanEntry(D(toString(bh)), true)]
193+ else [BooleanEntry(B(toString(aS)), true)]
260194 }
261195
262196
263197
264-@Callable(T)
198+@Callable(aJ)
265199 func put () = {
266- let bk = value(T.payments[0])
267- let aN = value(bk.assetId)
268- let i = toBase58String(aN)
269- let j = toString(T.caller)
270- let aW = aI(i)
271- let B = aW[G]
272- let aP = fromBase58String(B)
273- let Y = parseIntValue(aW[I])
274- let Z = parseIntValue(aW[J])
275- let w = aW[H]
276- let bl = g(D(w))
277- let bm = valueOrElse(getBoolean(E(w)), false)
278- if (if (bl)
279- then true
280- else bm)
200+ let aV = value(aJ.payments[0])
201+ let ay = value(aV.assetId)
202+ let g = toBase58String(ay)
203+ let h = toString(aJ.caller)
204+ let aH = at(g)
205+ let z = aH[D]
206+ let aA = fromBase58String(z)
207+ let J = parseIntValue(aH[F])
208+ let K = parseIntValue(aH[G])
209+ let u = aH[E]
210+ let aW = d(B(u))
211+ if (aW)
281212 then throw("put operation is blocked")
282213 else {
283- let ax = aU(w, aN, aP, Y, Z)._1
284- let ae = fraction(bk.amount, Z, ax)
285-[Reissue(aP, ae, true), ScriptTransfer(T.caller, ae, aP), StringEntry(ai("P", w, j, toBase58String(T.transactionId)), aD("FINISHED", bk.amount, ax, ae, height, lastBlock.timestamp, height, lastBlock.timestamp))]
214+ let ai = aF(u, ay, aA, J, K)._1
215+ let P = fraction(aV.amount, K, ai)
216+[Reissue(aA, P, true), ScriptTransfer(aJ.caller, P, aA), StringEntry(T("P", u, h, toBase58String(aJ.transactionId)), ao("FINISHED", aV.amount, ai, P, height, lastBlock.timestamp, height, lastBlock.timestamp))]
286217 }
287218 }
288219
289220
290221
291-@Callable(T)
222+@Callable(aJ)
292223 func submitGetRequest () = {
293- let bk = value(T.payments[0])
294- let aP = value(bk.assetId)
295- let B = toBase58String(aP)
296- let bn = toBase58String(T.callerPublicKey)
297- let ak = T.caller
298- let j = toString(ak)
299- let ae = bk.amount
300- let i = e(A(B))
301- let aN = fromBase58String(i)
302- let aW = aI(i)
303- let Y = parseIntValue(aW[I])
304- let Z = parseIntValue(aW[J])
305- let bo = parseIntValue(aW[K])
306- let w = aW[H]
307- let bm = valueOrElse(getBoolean(E(w)), false)
308- if (bm)
309- then throw("operation is blocked")
310- else {
311- let ax = aU(w, aN, aP, Y, Z)._1
312- let af = fraction(ae, ax, Z)
313- let bp = ai("G", w, j, toBase58String(T.transactionId))
314- let bq = aD("PENDING", ae, ax, af, height, lastBlock.timestamp, (height + bo), 0)
315-[Burn(aP, ae), StringEntry(bp, bq), aJ(u(w), ae, af), aJ(v(w, j), ae, af)]
316- }
224+ let aV = value(aJ.payments[0])
225+ let aA = value(aV.assetId)
226+ let z = toBase58String(aA)
227+ let aX = toBase58String(aJ.callerPublicKey)
228+ let V = aJ.caller
229+ let h = toString(V)
230+ let P = aV.amount
231+ let g = b(y(z))
232+ let ay = fromBase58String(g)
233+ let aH = at(g)
234+ let J = parseIntValue(aH[F])
235+ let K = parseIntValue(aH[G])
236+ let aY = parseIntValue(aH[H])
237+ let u = aH[E]
238+ let ai = aF(u, ay, aA, J, K)._1
239+ let Q = fraction(P, ai, K)
240+ let aZ = T("G", u, h, toBase58String(aJ.transactionId))
241+ let ba = ao("PENDING", P, ai, Q, height, lastBlock.timestamp, (height + aY), 0)
242+[Burn(aA, P), StringEntry(aZ, ba), au(s(u), P, Q), au(t(u, h), P, Q)]
317243 }
318244
319245
320246
321-@Callable(T)
322-func executeGetRequest (i,j,k) = {
323- let ak = addressFromStringValue(j)
324- let br = aI(i)
325- let aP = fromBase58String(br[G])
326- let aN = fromBase58String(i)
327- let w = br[H]
328- let bm = valueOrElse(getBoolean(E(w)), false)
329- if (bm)
330- then throw("operation is blocked")
331- else {
332- let bp = ai("G", w, j, k)
333- let bs = split(e(bp), a)
334- let av = bs[am]
335- let aB = parseIntValue(bs[as])
336- let bt = parseIntValue(bs[an])
337- let bu = parseIntValue(bs[ap])
338- if ((av != "PENDING"))
339- then h("Status is not PENDING", i, j, k)
340- else if ((aB > height))
341- then h(((("EndHeight[" + toString(aB)) + "] > ") + toString(height)), i, j, k)
342- else [ScriptTransfer(ak, bu, aN), StringEntry(bp, aE(bs, "FINISHED", lastBlock.timestamp)), aL(u(w), bt, bu), aL(v(w, j), bt, bu)]
343- }
247+@Callable(aJ)
248+func executeGetRequest (g,h,i) = {
249+ let V = addressFromStringValue(h)
250+ let bb = at(g)
251+ let aA = fromBase58String(bb[D])
252+ let ay = fromBase58String(g)
253+ let u = bb[E]
254+ let aZ = T("G", u, h, i)
255+ let bc = split(b(aZ), a)
256+ let ag = bc[X]
257+ let am = parseIntValue(bc[ad])
258+ let bd = parseIntValue(bc[Y])
259+ let be = parseIntValue(bc[aa])
260+ if ((ag != "PENDING"))
261+ then e("Status is not PENDING", g, h, i)
262+ else if ((am > height))
263+ then e(((("EndHeight[" + toString(am)) + "] > ") + toString(height)), g, h, i)
264+ else [ScriptTransfer(V, be, ay), StringEntry(aZ, ap(bc, "FINISHED", lastBlock.timestamp)), aw(s(u), bd, be), aw(t(u, h), bd, be)]
344265 }
345266
346267
347268
348-@Callable(T)
349-func topUpBalance (i) = {
350- let br = aI(i)
351- let bk = value(T.payments[0])
352- let bv = value(bk.assetId)
353- let bw = toBase58String(bv)
354- let aP = fromBase58String(br[G])
355- let Y = parseIntValue(br[I])
356- let Z = parseIntValue(br[J])
357- let w = br[H]
358- let bx = p(w, toString(T.caller))
359- let by = valueOrElse(getInteger(this, bx), 0)
360- let bm = valueOrElse(getBoolean(E(w)), false)
361- if (bm)
362- then throw("operation is blocked")
363- else if ((i != bw))
364- then throw("attached payment's asset id is NOT matched passed baseAssetStr")
365- else if ((size(T.payments) > 1))
366- then throw("only one payment can be attached")
367- else if ((100 > (height - by)))
368- then throw("1 topUp per 100 blocks from the same address is allowed")
369- else {
370- let ax = aM(w, bv, bk.amount, aP, Y, Z)._1
371-[IntegerEntry(n(w), ax), IntegerEntry(r(w, height, lastBlock.timestamp), ax), IntegerEntry(bx, height)]
372- }
269+@Callable(aJ)
270+func topUpBalance (g) = {
271+ let bb = at(g)
272+ let aV = value(aJ.payments[0])
273+ let bf = value(aV.assetId)
274+ let bg = toBase58String(bf)
275+ let aA = fromBase58String(bb[D])
276+ let J = parseIntValue(bb[F])
277+ let K = parseIntValue(bb[G])
278+ let u = bb[E]
279+ let bh = n(u, toString(aJ.caller))
280+ let bi = valueOrElse(getInteger(this, bh), 0)
281+ if ((g != bg))
282+ then throw("attached payment's asset id is NOT matched passed baseAssetStr")
283+ else if ((size(aJ.payments) > 1))
284+ then throw("only one payment can be attached")
285+ else if ((100 > (height - bi)))
286+ then throw("1 topUp per 100 blocks from the same address is allowed")
287+ else {
288+ let ai = ax(u, bf, aV.amount, aA, J, K)._1
289+[IntegerEntry(l(u), ai), IntegerEntry(p(u, height, lastBlock.timestamp), ai), IntegerEntry(bh, height)]
290+ }
373291 }
374292
375293
376294
377-@Callable(T)
378-func emit (bz,bA) = {
379- let bB = [if ((T.caller == W))
380- then true
381- else d("permission denied"), if ((bA > 0))
382- then true
383- else d("invalid amount to emit"), if ((getString(A(toBase58String(bz))) != unit))
384- then true
385- else d("invalid assetId")]
386- if ((bB == bB))
387- then {
388- let bC = true
389- $Tuple2([Reissue(bz, bA, bC), ScriptTransfer(W, bA, bz)], bA)
390- }
391- else throw("Strict value is not equal to itself.")
295+@Callable(aJ)
296+func currentSysParamsREST (g) = {
297+ let bj = aG(g)
298+ let ai = bj._1.value
299+ let K = bj._2.value
300+ let aC = bj._3.value
301+ let aB = bj._4.value
302+ let aD = bj._5.value
303+ let aE = bj._6.value
304+ let bk = makeString(["startCurrentSysParamsREST", toString(ai), toString(K), toString(aC), toString(aB), toString(aD), toString(aE), "endCurrentSysParamsREST"], a)
305+ throw(bk)
392306 }
393307
394308
395-
396-@Callable(T)
397-func burn (bz,bA) = {
398- let bB = [if ((T.caller == W))
399- then true
400- else d("permission denied"), if ((bA > 0))
401- then true
402- else d("invalid amount to burn"), if ((getString(A(toBase58String(bz))) != unit))
403- then true
404- else d("invalid assetId")]
405- if ((bB == bB))
406- then $Tuple2([Burn(bz, bA)], bA)
407- else throw("Strict value is not equal to itself.")
408- }
409-
410-
411-
412-@Callable(T)
413-func currentSysParamsREST (i) = {
414- let bD = aV(i)
415- let ax = bD._1.value
416- let Z = bD._2.value
417- let aR = bD._3.value
418- let aQ = bD._4.value
419- let aS = bD._5.value
420- let aT = bD._6.value
421- let bE = makeString(["startCurrentSysParamsREST", toString(ax), toString(Z), toString(aR), toString(aQ), toString(aS), toString(aT), "endCurrentSysParamsREST"], a)
422- throw(bE)
423- }
424-
425-
426-
427-@Callable(T)
428-func setManager (bF) = {
429- let bd = U(T)
430- if ((bd == bd))
431- then {
432- let bG = fromBase58String(bF)
433- if ((bG == bG))
434- then [StringEntry(M(), bF)]
435- else throw("Strict value is not equal to itself.")
436- }
437- else throw("Strict value is not equal to itself.")
438- }
439-
440-
441-
442-@Callable(T)
443-func confirmManager () = {
444- let bH = Q()
445- let bI = if (isDefined(bH))
446- then true
447- else d("no pending manager")
448- if ((bI == bI))
449- then {
450- let bJ = if ((T.callerPublicKey == value(bH)))
451- then true
452- else d("you are not pending manager")
453- if ((bJ == bJ))
454- then [StringEntry(L(), toBase58String(value(bH))), DeleteEntry(M())]
455- else throw("Strict value is not equal to itself.")
456- }
457- else throw("Strict value is not equal to itself.")
458- }
459-
460-
461-@Verifier(bK)
462-func bL () = {
463- let bM = {
464- let O = N()
465- if ($isInstanceOf(O, "ByteVector"))
466- then {
467- let V = O
468- V
469- }
470- else if ($isInstanceOf(O, "Unit"))
471- then bK.senderPublicKey
472- else throw("Match error")
473- }
474- sigVerify(bK.bodyBytes, bK.proofs[0], bM)
475- }
309+@Verifier(bl)
310+func bm () = sigVerify(bl.bodyBytes, bl.proofs[0], fromBase58String("2Cbd8ozG7A1RyRNC3nNnZgHu7Ru4K3JCfpyPkhqr9zxq"))
476311

github/deemru/w8io/026f985 
107.55 ms