tx · Ax73N5XmJCkQPjF5YJ4VKpfrhe53RoanVWVxbNSVX2pQ

3MsMP2pb2p8MDd6Rxb7XEXqqwEhE8ATfyai:  -0.02700000 Waves

2023.06.14 11:44 [2622109] smart account 3MsMP2pb2p8MDd6Rxb7XEXqqwEhE8ATfyai > SELF 0.00000000 Waves

{ "type": 13, "id": "Ax73N5XmJCkQPjF5YJ4VKpfrhe53RoanVWVxbNSVX2pQ", "fee": 2700000, "feeAssetId": null, "timestamp": 1686732266744, "version": 2, "chainId": 84, "sender": "3MsMP2pb2p8MDd6Rxb7XEXqqwEhE8ATfyai", "senderPublicKey": "2JEaBjtjvMoNGKZmL9QxYefa1VkMJM3vMW8rNvTs9R2H", "proofs": [ "34LKsqA2ccSmnaJmfdzMCXjw8xjGVUdbqWWUDQCk81nuJtXKB9ZNRPgFz1AbH8yv4LMoafE9SjvnUrs5zavtXgDQ" ], "script": "base64:BgLYKwgCEgASBAoCCAgSBAoCCAgSAwoBCBIKCggICAgICAgIARIDCgEIEgYKBAgICAgSBAoCCBgSAwoBCBIECgIIGBIDCgEYEgoKCAgICAgIAQgIEgQKAggBEgMKAQESAwoBARIECgIIARIGCgQICAgIEgQKAggIEgQKAggIEgQKAggIEgMKAQgSAwoBCBIDCgEIEgMKAQgSBAoCCAgSAwoBCBIDCgEIEgMKAQgSBAoCCAgSAwoBCBIDCgEIEgMKAQgSAwoBCCIGU0NBTEU4IgVNVUxUOCIGTVVMVDEyIgdTQ0FMRTE4IgZNVUxUMTgiDlBPT0xXRUlHSFRNVUxUIg5HV1h2aXJ0dWFsUE9PTCIMbGFiZWxQb29sc0xwIg1kZWZhdWx0U3ByZWFkIgt3YXZlc1N0cmluZyIQY29udHJhY3RGaWxlbmFtZSIRZGVjaW1hbHNNdWx0UHJpY2UiA1NFUCIFRU1QVFkiClBvb2xBY3RpdmUiD1Bvb2xQdXREaXNhYmxlZCITUG9vbE1hdGNoZXJEaXNhYmxlZCIMUG9vbFNodXRkb3duIhJpZHhJbnRlcm5hbEFzc2V0SWQiD2lkeFJlc3V0QWN0aW9ucyIgaWR4SWZBc3NldElkQ2FsY3VsYXRpb25QZXJmb3JtZWQiDmlkeFBvb2xBZGRyZXNzIg1pZHhQb29sU3RhdHVzIhBpZHhQb29sTFBBc3NldElkIg1pZHhBbXRBc3NldElkIg9pZHhQcmljZUFzc2V0SWQiDmlkeEFtdEFzc2V0RGNtIhBpZHhQcmljZUFzc2V0RGNtIg5pZHhJQW10QXNzZXRJZCIQaWR4SVByaWNlQXNzZXRJZCINaWR4TFBBc3NldERjbSILaWR4UG9vbFR5cGUiE3Bvb2xMYWJlbFd4RW1pc3Npb24iD3ZhbGlkUG9vbExhYmVscyIHd3JhcEVyciIDbXNnIgh0aHJvd0VyciIWa2V5QWxsb3dlZExwU2NyaXB0SGFzaCIca2V5QWxsb3dlZExwU3RhYmxlU2NyaXB0SGFzaCIMc3dhcENvbnRyYWN0IhBrZXlGYWN0b3J5Q29uZmlnIg9rZXlMcFRva2Vuc0xpc3QiEWtleVBvb2xTY3JpcHRIYXNoIg1rZXlNYXRjaGVyUHViIhhrZXlMZWdhY3lGYWN0b3J5Q29udHJhY3QiDmtleUxlZ2FjeVBvb2xzIhNrZXlNYW5hZ2VyUHVibGljS2V5IhZrZXlNYW5hZ2VyVmF1bHRBZGRyZXNzIg9rZXlBZG1pblB1YktleXMiFmtleUFzc2V0c1N0b3JlQ29udHJhY3QiGWtleVZvdGluZ0VtaXNzaW9uQ29udHJhY3QiFGtleVVzZXJQb29sc0NvbnRyYWN0Ig5rZXlQcmljZUFzc2V0cyIQa2V5UHJpY2VEZWNpbWFscyITa2V5QWxsUG9vbHNTaHV0ZG93biIWa2V5TmV4dEludGVybmFsQXNzZXRJZCIPa2V5UG9vbFRvV2VpZ2h0Igtwb29sQWRkcmVzcyIWa2V5UG9vbFRvV2VpZ2h0SGlzdG9yeSIDbnVtIh9rZXlNYXBwaW5nc0ludGVybmFsMmJhc2VBc3NldElkIhFpbnRlcm5hbEJhc2VBc3NldCIfa2V5TWFwcGluZ3NCYXNlQXNzZXQyaW50ZXJuYWxJZCIMYmFzZUFzc2V0U3RyIg1rZXlQb29sQ29uZmlnIhNhbW91bnRBc3NldEludGVybmFsIhJwcmljZUFzc2V0SW50ZXJuYWwiIWtleVBvb2xPbmVUb2tlbk9wZXJhdGlvbnNEaXNhYmxlZCIOYXNzZXRzSW50ZXJuYWwiCyR0MDM4NzgzOTQwIiVrZXlBbGxQb29sc09uZVRva2VuT3BlcmF0aW9uc0Rpc2FibGVkIh1rZXlNYXBwaW5nTHBBc3NldFRvUG9vbEFzc2V0cyIKbHBBc3NldFN0ciIda2V5TWFwcGluZ1Bvb2xBc3NldHNUb0xwYXNzZXQiGGludGVybmFsQW1vdW50QXNzZXRJZFN0ciIXaW50ZXJuYWxQcmljZUFzc2V0SWRTdHIiDWtleVBvb2xTcHJlYWQiKWtleU1hcHBpbmdQb29sQ29udHJhY3RBZGRyZXNzVG9Qb29sQXNzZXRzIhNwb29sQ29udHJhY3RBZGRyZXNzIilrZXlNYXBwaW5nUG9vbEFzc2V0c1RvUG9vbENvbnRyYWN0QWRkcmVzcyIfa2V5TWFwcGluZ1Bvb2xDb250cmFjdFRvTFBBc3NldCIqa2V5TWFwcGluZ1Bvb2xMUEFzc2V0VG9Qb29sQ29udHJhY3RBZGRyZXNzIg1rZXlXeEVtaXNzaW9uIg1hbW91bnRBc3NldElkIgxwcmljZUFzc2V0SWQiCGtleUluRmVlIg9rZXlJbkZlZURlZmF1bHQiCWtleU91dEZlZSIQa2V5T3V0RmVlRGVmYXVsdCIWa2V5U2tpcE9yZGVyVmFsaWRhdGlvbiIRa2V5Q2hhbmdlQW1wRGVsYXkiEWtleUNoYW5nZUFtcERlbHRhIhJrZXlDaGFuZ2VBbXBUYXJnZXQiFWtleVNXYXZlc1Byb3h5QWRkcmVzcyIQa2V5U1dhdmVzQXNzZXRJZCIXa2V5U3Rha2luZ1Byb2ZpdEFkZHJlc3MiDmtleUxlYXNlZFJhdGlvIgdhc3NldElkIhVrZXlMZWFzZWRSYXRpb0RlZmF1bHQiF2tleUxlYXNlZFJhdGlvVG9sZXJhbmNlIg1rZXlNaW5CYWxhbmNlIhRrZXlNaW5CYWxhbmNlRGVmYXVsdCIPZ2V0U3RyaW5nT3JGYWlsIgNrZXkiEGdldEJvb2xlYW5PckZhaWwiDGdldEludE9yRmFpbCIMcGFyc2VBc3NldElkIgVpbnB1dCIcZ2V0TWFuYWdlclZhdWx0QWRkcmVzc09yVGhpcyIHJG1hdGNoMCIBcyIYSWR4RmFjdG9yeUNmZ1N0YWtpbmdEYXBwIhlJZHhGYWN0b3J5Q2ZnQm9vc3RpbmdEYXBwIhRJZHhGYWN0b3J5Q2ZnSWRvRGFwcCIVSWR4RmFjdG9yeUNmZ1RlYW1EYXBwIhlJZHhGYWN0b3J5Q2ZnRW1pc3Npb25EYXBwIhVJZHhGYWN0b3J5Q2ZnUmVzdERhcHAiGUlkeEZhY3RvcnlDZmdTbGlwcGFnZURhcHAiFElkeEZhY3RvcnlDZmdEYW9EYXBwIhpJZHhGYWN0b3J5Q2ZnTWFya2V0aW5nRGFwcCIaSWR4RmFjdG9yeUNmZ0d3eFJld2FyZERhcHAiFklkeEZhY3RvcnlDZmdCaXJkc0RhcHAiGGdldEJvb3N0aW5nQWRkcmVzc09yRmFpbCIKZmFjdG9yeUNmZyIYZ2V0RW1pc3Npb25BZGRyZXNzT3JGYWlsIhdnZXRTdGFraW5nQWRkcmVzc09yRmFpbCIZZ2V0R3d4UmV3YXJkQWRkcmVzc09yRmFpbCIOZ2V0UHJpY2VBc3NldHMiFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQiE21hbmFnZXJWYXVsdEFkZHJlc3MiFXBlcm1pc3Npb25EZW5pZWRFcnJvciIJdGVzdEVycm9yIghtdXN0VGhpcyIBaSILbXVzdE1hbmFnZXIiAnBrIhBkYXRhRmFjdG9yeUNmZ1YzIg5zdGFraW5nQWRkcmVzcyIPYm9vc3RpbmdBZGRyZXNzIgtpZG9Db250cmFjdCIMdGVhbUNvbnRyYWN0IhBlbWlzc2lvbkNvbnRyYWN0IgxyZXN0Q29udHJhY3QiEHNsaXBwYWdlQ29udHJhY3QiC2Rhb0NvbnRyYWN0IhFtYXJrZXRpbmdDb250cmFjdCISZ3d4UmV3YXJkc0NvbnRyYWN0Ig1iaXJkc0NvbnRyYWN0Ig5kYXRhRmFjdG9yeUNmZyILZGF0YVBvb2xDZmciCnBvb2xTdGF0dXMiCWxwQXNzZXRJZCIOYW1vdW50QXNzZXRTdHIiDXByaWNlQXNzZXRTdHIiE2Ftb3VudEFzc2V0RGVjaW1hbHMiEnByaWNlQXNzZXREZWNpbWFscyIVYW1vdW50QXNzZXRJbnRlcm5hbElkIhRwcmljZUFzc2V0SW50ZXJuYWxJZCIPbHBBc3NldERlY2ltYWxzIghwb29sVHlwZSIVZGF0YU1hcHBpbmdQb29sQXNzZXRzIhZpbnRlcm5hbEFtb3VudEFzc2V0U3RyIhVpbnRlcm5hbFByaWNlQXNzZXRTdHIiDWdldFBvb2xDb25maWciCnBvb2xBc3NldHMiGmdldEludGVybmFsQXNzZXRJZE9yQ3JlYXRlIgphc3NldElkU3RyIgtpbmNyZW1lbnRvciIPaW50ZXJuYWxBc3NldElkIhhjdXJyZW50SW5kZXhPZkludGVybmFsSWQiBnJlc3VsdCISbmV3SW50ZXJuYWxBc3NldElkIgltdXN0QWRtaW4iCGFkbWluUEtzIglpc01hbmFnZXIiFmludE9yRGVmYXVsdE9yRmFsbGJhY2siCmtleURlZmF1bHQiDXZhbHVlRmFsbGJhY2siEnBvb2xFeGlzdHNJbnRlcm5hbCIEYW1BcyIEcHJBcyIDY2ZnIgpjZmdSZXZlcnNlIgZleGlzdHMiDSR0MDE0NTMwMTQ4MzQiAXIiByRtYXRjaDEiAnJkIgppc0xlYXNhYmxlIgtsZWFzZWRSYXRpbyIKbWluQmFsYW5jZSIBYiICYmQiDSR0MDE1MTAwMTUzMjQiDHByb3h5QWRkcmVzcyIMcHJveHlBc3NldElkIgxwcm94eVJhdGVNdWwiFHN0YWtpbmdQcm9maXRBZGRyZXNzIgZhc3NldDEiBmFzc2V0MiIJYXNzZXROdW0xIglhc3NldE51bTIiAmVlIgNyZXMiAmxwIg9zdGFraW5nQ29udHJhY3QiEGJvb3N0aW5nQ29udHJhY3QiEHNscGlwYWdlQ29udHJhY3QiDXByaWNlRGVjaW1hbHMiC2NoZWNrQ2FsbGVyIhBtYXRoY2hlclB1YjU4U3RyIgptYXRoY2VyUHViIhVsZWdhY3lGYWN0b3J5Q29udHJhY3QiC2xlZ2FjeVBvb2xzIhNhc3NldHNTdG9yZUNvbnRyYWN0IhZ2b3RpbmdFbWlzc2lvbkNvbnRyYWN0IgtwcmljZUFzc2V0cyIFY2hla3MiDGFkbWluUHViS2V5cyILbHBBc3NldE5hbWUiDGxwQXNzZXREZXNjciIKcG9vbFdlaWdodCIEbG9nbyIXaW50ZXJuYWxBbW91bnRBc3NldERhdGEiFWludGVybmFsQW1vdW50QXNzZXRJZCIWaW50ZXJuYWxQcmljZUFzc2V0RGF0YSIUaW50ZXJuYWxQcmljZUFzc2V0SWQiFXBvb2xBY2NvdW50U2NyaXB0SGFzaCIcZXRoYWxvblBvb2xBY2NvdW50U2NyaXB0SGFzaCIKcG9vbEV4aXN0cyIPcG9vbENvbmZpZ1ZhbHVlIhRhbW91bnRBc3NldHNEZWNpbWFscyITcHJpY2VBc3NldHNEZWNpbWFscyISbHBBc3NldElzc3VlQWN0aW9uIgxscEFzc2V0SWRTdHIiGHBvb2xBY3RpdmF0ZUludm9rZVJlc3VsdCIYY3JlYXRlT3JVcGRhdGVMcEFzc2V0SW52IhJhZGRQb29sc0xwTGFiZWxJbnYiCnNldExvZ29JbnYiEGFkZEFzc2V0c0xpbmtJbnYiG2luY3JlYXNlQXNzZXRQb29sc051bWJlckludiIJbmV3U3RhdHVzIgpwb29sQ29uZmlnIgpscEFzc2V0RGNtIgxhbW91bnRUb0VtaXQiBmNhbGxlciIMb3JpZ2luQ2FsbGVyIhBscEFzc2V0UmVxdWVzdGVkIgdscEFzc2V0IgxhbW91bnRUb0J1cm4iB3BheW1lbnQiDXBheW1lbnRBbW91bnQiD2luQW1vdW50QXNzZXRJZCIabHBBc3NldFJlcXVlc3RlZEZvckJ1cm5pbmciBXNoYXJlIg1wb29sV2VpZ2h0S2V5Igxnd3hXZWlnaHRLZXkiCWd3eFdlaWdodCINcG9vbFdlaWdodE5ldyIRb25Nb2RpZnlXZWlnaHRJbnYiFWd3eFZpcnR1YWxQb29sQWN0aW9ucyIUcG9vbFdlaWdodEhpc3RvcnlLZXkiF3Bvb2xXZWlnaHRIaXN0b3J5T3JVbml0Ihhwb29sV2VpZ2h0SGlzdG9yeUFjdGlvbnMiDmJ0Y1Bvb2xBZGRyZXNzIg5ldGhQb29sQWRkcmVzcyIRZXRoQnRjUG9vbEFkZHJlc3MiE3VzZGNVc2R0UG9vbEFkZHJlc3MiD2V0aEJ0Y1dlaWdodE5ldyIRdXNkY1VzZHRXZWlnaHROZXciD3dlaWdodERlY3JlbWVudCILc3Rha2luZ0RhcHAiDWd3eFJld2FyZERhcHAiDGJ0Y1dlaWdodEtFWSIMZXRoV2VpZ2h0S0VZIg9ldGhCdGNXZWlnaHRLRVkiEXVzZGNVc2R0V2VpZ2h0S0VZIglidGNXZWlnaHQiCWV0aFdlaWdodCIMYnRjV2VpZ2h0TmV3IgxldGhXZWlnaHROZXciD2J0Y0xwQXNzZXRJZFN0ciIPZXRoTHBBc3NldElkU3RyIhJldGhCdGNMcEFzc2V0SWRTdHIiFHVzZGNVc2R0THBBc3NldElkU3RyIhFvbk1vZGlmeVdlaWdodEJ0YyIRb25Nb2RpZnlXZWlnaHRFdGgiFG9uTW9kaWZ5V2VpZ2h0RXRoQnRjIhZvbk1vZGlmeVdlaWdodFVzZGNVc2R0IgloYXZlTGFiZWwiFGNoZWNrUHJpY2VBc3NldHNTaXplIgJjYiIDYWNjIgpwcmljZUFzc2V0IgdhY3Rpb25zIgIkbCICJHMiBSRhY2MwIgUkZjBfMSICJGEiAiRpIgUkZjBfMiIecG9vbE9uZVRva2VuT3BlcmF0aW9uc0Rpc2FibGVkIiJhbGxQb29sc09uZVRva2VuT3BlcmF0aW9uc0Rpc2FibGVkIgNmZWUiEGFtb3VudEFzc2V0SWRTdHIiD3ByaWNlQXNzZXRJZFN0ciIbYW1vdW50QXNzZXRJbnRlcm5hbElkT3B0aW9uIhpwcmljZUFzc2V0SW50ZXJuYWxJZE9wdGlvbiIZcG9vbENvbnRyYWN0QWRkcmVzc09wdGlvbiIPbHBBc3NldElkT3B0aW9uIghwb29sSW5mbyIFZGVsYXkiBWRlbHRhIgZ0YXJnZXQiBndlaWdodCIRdXNlclBvb2xzQ29udHJhY3QiD3VzZXJQb29sc0ludm9rZSIUdm90aW5nRW1pc3Npb25JbnZva2UiAnR4IgZ2ZXJpZnkiD3RhcmdldFB1YmxpY0tleXkAAWEACAABYgCAwtcvAAFjAICglKWNHQABZAASAAFlCQC2AgEAgICQu7rWrfANAAFmBQFiAAFnAg5HV1h2aXJ0dWFsUE9PTAABaAIIUE9PTFNfTFAAAWkAgIl6AAFqAgVXQVZFUwABawIPZmFjdG9yeV92Mi5yaWRlAAFsCQBoAgkAaAIAZADoBwDoBwABbQICX18AAW4CAAABbwABAAFwAAIAAXEAAwABcgAEAAFzAAEAAXQAAgABdQADAAF2AAEAAXcAAgABeAADAAF5AAQAAXoABQABQQAGAAFCAAcAAUMACAABRAAJAAFFAAoAAUYACwABRwILV1hfRU1JU1NJT04AAUgJAMwIAgUBRwUDbmlsAQFJAQFKCQC5CQIJAMwIAgUBawkAzAgCAgI6IAkAzAgCBQFKBQNuaWwCAAEBSwEBSgkAAgEJAQFJAQUBSgEBTAACFyVzX19hbGxvd2VkTHBTY3JpcHRIYXNoAQFNAAIdJXNfX2FsbG93ZWRMcFN0YWJsZVNjcmlwdEhhc2gBAU4AAhAlc19fc3dhcENvbnRyYWN0AQFPAAIRJXNfX2ZhY3RvcnlDb25maWcBAVAAAhAlc19fbHBUb2tlbnNMaXN0AQFRAAIWJXMlc19fcG9vbF9fc2NyaXB0SGFzaAEBUgACGCVzJXNfX21hdGNoZXJfX3B1YmxpY0tleQEBUwACGSVzX19sZWdhY3lGYWN0b3J5Q29udHJhY3QBAVQAAg8lc19fbGVnYWN5UG9vbHMBAVUAAhQlc19fbWFuYWdlclB1YmxpY0tleQEBVgACFyVzX19tYW5hZ2VyVmF1bHRBZGRyZXNzAQFXAAIQJXNfX2FkbWluUHViS2V5cwEBWAACFyVzX19hc3NldHNTdG9yZUNvbnRyYWN0AQFZAAIaJXNfX3ZvdGluZ0VtaXNzaW9uQ29udHJhY3QBAVoAAhUlc19fdXNlclBvb2xzQ29udHJhY3QBAmFhAAkAuQkCCQDMCAICAiVzCQDMCAICC3ByaWNlQXNzZXRzBQNuaWwFAW0BAmFiAAIRJXNfX3ByaWNlRGVjaW1hbHMBAmFjAAIMJXNfX3NodXRkb3duAQJhZAACFyVzX19uZXh0SW50ZXJuYWxBc3NldElkAQJhZQECYWYJAKwCAgISJXMlc19fcG9vbFdlaWdodF9fBQJhZgECYWcCAmFmAmFoCQCsAgIJAKwCAgkArAICAhIlcyVzX19wb29sV2VpZ2h0X18FAmFmAgJfXwkApAMBBQJhaAECYWkBAmFqCQCsAgICKCVzJXMlZF9fbWFwcGluZ3NfX2ludGVybmFsMmJhc2VBc3NldElkX18JAKQDAQUCYWoBAmFrAQJhbAkArAICAiglcyVzJXNfX21hcHBpbmdzX19iYXNlQXNzZXQyaW50ZXJuYWxJZF9fBQJhbAECYW0CAmFuAmFvCQCsAgIJAKwCAgkArAICCQCsAgICCCVkJWQlc19fBQJhbgICX18FAmFvAghfX2NvbmZpZwECYXABAmFxBAJhcgUCYXEEAmFuCAUCYXICXzEEAmFvCAUCYXICXzIJALkJAgkAzAgCAgYlZCVkJXMJAMwIAgkApAMBBQJhbgkAzAgCCQCkAwEFAmFvCQDMCAICGm9uZVRva2VuT3BlcmF0aW9uc0Rpc2FibGVkBQNuaWwFAW0BAmFzAAkAuQkCCQDMCAICAiVzCQDMCAICGm9uZVRva2VuT3BlcmF0aW9uc0Rpc2FibGVkBQNuaWwFAW0BAmF0AQJhdQkArAICCQCsAgICCCVzJXMlc19fBQJhdQIYX19tYXBwaW5nc19fbHBBc3NldDJQb29sAQJhdgICYXcCYXgJAKwCAgkArAICCQCsAgIJAKwCAgIKJWQlZCVzJXNfXwUCYXcCAl9fBQJheAIeX19tYXBwaW5nc19fUG9vbEFzc2V0czJMcEFzc2V0AQJheQECYWYJAKwCAgIOJXMlc19fc3ByZWFkX18FAmFmAQJhegECYUEJAKwCAgkArAICAgglcyVzJXNfXwUCYUECI19fbWFwcGluZ3NfX3Bvb2xDb250cmFjdDJQb29sQXNzZXRzAQJhQgICYXcCYXgJAKwCAgkArAICCQCsAgIJAKwCAgIKJWQlZCVzJXNfXwkApAMBBQJhdwICX18JAKQDAQUCYXgCI19fbWFwcGluZ3NfX3Bvb2xBc3NldHMyUG9vbENvbnRyYWN0AQJhQwECYUEJAKwCAgkArAICAgglcyVzJXNfXwUCYUECIF9fbWFwcGluZ3NfX3Bvb2xDb250cmFjdDJMcEFzc2V0AQJhRAECYXUJAKwCAgkArAICAgglcyVzJXNfXwUCYXUCIF9fbWFwcGluZ3NfX2xwQXNzZXQyUG9vbENvbnRyYWN0AQJhRQICYUYCYUcJAKwCAgkArAICCQCsAgICFCVzJXMlc19fd3hFbWlzc2lvbl9fBQJhRgICX18FAmFHAQJhSAECYWYJAKwCAgINJXMlc19faW5GZWVfXwUCYWYBAmFJAAIQJXNfX2luRmVlRGVmYXVsdAECYUoBAmFmCQCsAgICDiVzJXNfX291dEZlZV9fBQJhZgECYUsAAhElc19fb3V0RmVlRGVmYXVsdAECYUwBAmFmCQCsAgICGyVzJXNfX3NraXBPcmRlclZhbGlkYXRpb25fXwUCYWYBAmFNAQJhZgkArAICAhYlcyVzX19jaGFuZ2VBbXBEZWxheV9fBQJhZgECYU4BAmFmCQCsAgICFiVzJXNfX2NoYW5nZUFtcERlbHRhX18FAmFmAQJhTwECYWYJAKwCAgIXJXMlc19fY2hhbmdlQW1wVGFyZ2V0X18FAmFmAQJhUAACFiVzX19zV2F2ZXNQcm94eUFkZHJlc3MBAmFRAAIRJXNfX3NXYXZlc0Fzc2V0SWQBAmFSAAIYJXNfX3N0YWtpbmdQcm9maXRBZGRyZXNzAQJhUwICYWYCYVQJALkJAgkAzAgCAgYlcyVzJXMJAMwIAgILbGVhc2VkUmF0aW8JAMwIAgUCYWYJAMwIAgUCYVQFA25pbAUBbQECYVUBAmFUCQC5CQIJAMwIAgIEJXMlcwkAzAgCAhJsZWFzZWRSYXRpb0RlZmF1bHQJAMwIAgUCYVQFA25pbAUBbQECYVYCAmFmAmFUCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICFGxlYXNlZFJhdGlvVG9sZXJhbmNlCQDMCAIFAmFmCQDMCAIFAmFUBQNuaWwFAW0BAmFXAgJhZgJhVAkAuQkCCQDMCAICBiVzJXMlcwkAzAgCAgptaW5CYWxhbmNlCQDMCAIFAmFmCQDMCAIFAmFUBQNuaWwFAW0BAmFYAQJhVAkAuQkCCQDMCAICBCVzJXMJAMwIAgIRbWluQmFsYW5jZURlZmF1bHQJAMwIAgUCYVQFA25pbAUBbQECYVkBAmFaCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgUEdGhpcwUCYVoJAKwCAgIVTm8gZGF0YSBmb3IgdGhpcy5rZXk9BQJhWgECYmEBAmFaCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJsIAgUEdGhpcwUCYVoJAKwCAgIVTm8gZGF0YSBmb3IgdGhpcy5rZXk9BQJhWgECYmIBAmFaCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJoIAgUEdGhpcwUCYVoJAKwCAgIVTm8gZGF0YSBmb3IgdGhpcy5rZXk9BQJhWgECYmMBAmJkAwkAAAIFAmJkBQFqBQR1bml0CQDZBAEFAmJkAQJiZQAEAmJmCQCiCAEJAQFWAAMJAAECBQJiZgIGU3RyaW5nBAJiZwUCYmYJARFAZXh0ck5hdGl2ZSgxMDYyKQEFAmJnBQR0aGlzAAJiaAABAAJiaQACAAJiagADAAJiawAEAAJibAAFAAJibQAGAAJibgAHAAJibwAIAAJicAAJAAJicQAKAAJicgALAQJicwECYnQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUCYnQFAmJpAQJidQECYnQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUCYnQFAmJsAQJidgECYnQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUCYnQFAmJoAQJidwECYnQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUCYnQFAmJxAQJieAAEAmJmCQCiCAEJAQJhYQADCQABAgUCYmYCBlN0cmluZwQCYmcFAmJmAwkAAAIJALECAQUCYmcAAAUDbmlsCQC1CQIFAmJnBQFtBQNuaWwBAmJ5AAQCYnoJAQJiZQAEAmJmCQCdCAIFAmJ6CQEBVQADCQABAgUCYmYCBlN0cmluZwQCYmcFAmJmCQDZBAEFAmJnAwkAAQIFAmJmAgRVbml0BQR1bml0CQACAQILTWF0Y2ggZXJyb3IAAmJBCQEBSwECEVBlcm1pc3Npb24gZGVuaWVkAAJiQgkBAUsBAg9UZXN0IGVycm9yIGhlcmUBAmJDAQJiRAMJAAACCAUCYkQGY2FsbGVyBQR0aGlzBgUCYkEBAmJFAQJiRAQCYmYJAQJieQADCQABAgUCYmYCCkJ5dGVWZWN0b3IEAmJGBQJiZgMJAAACCAUCYkQPY2FsbGVyUHVibGljS2V5BQJiRgYFAmJBAwkAAQIFAmJmAgRVbml0CQECYkMBBQJiRAkAAgECC01hdGNoIGVycm9yAQJiRwsCYkgCYkkCYkoCYksCYkwCYk0CYk4CYk8CYlACYlECYlIJALkJAgkAzAgCAhYlcyVzJXMlcyVzJXMlcyVzJXMlcyVzCQDMCAIFAmJICQDMCAIFAmJJCQDMCAIFAmJKCQDMCAIFAmJLCQDMCAIFAmJMCQDMCAIFAmJNCQDMCAIFAmJOCQDMCAIFAmJPCQDMCAIFAmJQCQDMCAIFAmJRCQDMCAIFAmJSBQNuaWwFAW0BAmJTBwJiSAJiSQJiSgJiSwJiTAJiTQJiTgkAuQkCCQDMCAICDCVzJXMlcyVzJXMlcwkAzAgCBQJiSAkAzAgCBQJiSQkAzAgCBQJiSgkAzAgCBQJiSwkAzAgCBQJiTAkAzAgCBQJiTQkAzAgCBQJiTgUDbmlsBQFtAQJiVAsCYWYCYlUCYlYCYlcCYlgCYlkCYloCY2ECY2ICY2MCY2QJALkJAgkAzAgCAhYlcyVkJXMlcyVzJWQlZCVkJWQlZCVzCQDMCAIFAmFmCQDMCAIFAmJVCQDMCAIFAmJWCQDMCAIFAmJXCQDMCAIFAmJYCQDMCAIJAKQDAQUCYlkJAMwIAgkApAMBBQJiWgkAzAgCCQCkAwEFAmNhCQDMCAIJAKQDAQUCY2IJAMwIAgkApAMBBQJjYwkAzAgCBQJjZAUDbmlsBQFtAQJjZQICY2YCY2cJALkJAgkAzAgCAgQlZCVkCQDMCAIJAKQDAQUCY2YJAMwIAgkApAMBBQJjZwUDbmlsBQFtAQJjaAECYWYEAmNpCQC1CQIJAQJhWQEJAQJhegEFAmFmBQFtBAJhbgkAkQMCBQJjaQABBAJhbwkAkQMCBQJjaQACCQC1CQIJAQJhWQEJAQJhbQIFAmFuBQJhbwUBbQECY2oCAmNrAmNsBAJjbQkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQECYWsBBQJjawAABAJjbgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQECYWQAAAAEAmNvAwkAAAIFAmNtAAAEAmNwCQBkAgUCY24FAmNsCQCVCgMFAmNwCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQECYWQABQJjcAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAmFrAQUCY2sFAmNwCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJhaQEFAmNwBQJjawUDbmlsBgkAlQoDBQJjbQUDbmlsBwUCY28BAmNxAQJiRAQCY3IJALUJAgkBC3ZhbHVlT3JFbHNlAgkAoggBCQEBVwAFAW4FAW0DCQEPY29udGFpbnNFbGVtZW50AgUCY3IJANgEAQgFAmJED2NhbGxlclB1YmxpY0tleQYEAmNzCQECYkUBBQJiRAMJAAACBQJjcwUCY3MGCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJjdAMCYVoCY3UCY3YJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUCYVoJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUCY3UFAmN2AQJjdwICYUYCYUcEAmFuCQCfCAEJAQJhawEFAmFGBAJhbwkAnwgBCQECYWsBBQJhRwMDCQAAAgUCYW4FBHVuaXQGCQAAAgUCYW8FBHVuaXQHBAJjeAkApAMBCQEFdmFsdWUBBQJhbgQCY3kJAKQDAQkBBXZhbHVlAQUCYW8EAmN6CQCiCAEJAQJhbQIFAmN4BQJjeQQCY0EJAKIIAQkBAmFtAgUCY3kFAmN4BAJjQgMJAQIhPQIFAmN6BQR1bml0BgkBAiE9AgUCY0EFBHVuaXQFAmNCIQJiRAEXZ2V0U3dhcENvbnRyYWN0UkVBRE9OTFkACQCUCgIFA25pbAkBAmFZAQkBAU4AAmJEARpnZXRQb29sTGVhc2VDb25maWdSRUFET05MWQICYWYCYVQEAmNDBAJiZgkAmggCBQR0aGlzCQECYVMCBQJhZgUCYVQDCQABAgUCYmYCA0ludAQCY0QFAmJmCQCUCgIGCQCXAwEJAMwIAgBkCQDMCAIJAJYDAQkAzAgCAAAJAMwIAgUCY0QFA25pbAUDbmlsBAJjRQkAmggCBQR0aGlzCQECYVUBBQJhVAMJAAECBQJjRQIDSW50BAJjRgUCY0UJAJQKAgYJAJcDAQkAzAgCAGQJAMwIAgkAlgMBCQDMCAIAAAkAzAgCBQJjRgUDbmlsBQNuaWwJAJQKAgcAAAQCY0cIBQJjQwJfMQQCY0gIBQJjQwJfMgQCY0kEAmJmCQCaCAIFBHRoaXMJAQJhVwIFAmFmBQJhVAMJAAECBQJiZgIDSW50BAJjSgUCYmYJAJYDAQkAzAgCAAAJAMwIAgUCY0oFA25pbAQCY0UJAJoIAgUEdGhpcwkBAmFYAQUCYVQDCQABAgUCY0UCA0ludAQCY0sFAmNFCQCWAwEJAMwIAgAACQDMCAIFAmNLBQNuaWwAAAQCY0wDCQAAAgUCYVQCBVdBVkVTCQCVCgMJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUEdGhpcwkBAmFQAAIACQCdCAIFBHRoaXMJAQt2YWx1ZU9yRWxzZQIJAQJhUQACAAUBYwkAlQoDAgACAAAABAJjTQgFAmNMAl8xBAJjTggFAmNMAl8yBAJjTwgFAmNMAl8zBAJjUAkBC3ZhbHVlT3JFbHNlAgkAnQgCBQR0aGlzCQECYVIAAgAJAJQKAgUDbmlsCQCZCgcFAmNHBQJjSAUCY0kFAmNNBQJjTgUCY08FAmNQAmJEASBnZXRMcEFzc2V0RnJvbVBvb2xBc3NldHNSRUFET05MWQICY1ECY1IDAwkAAAIFAmNRAiw4TFFXOGY3UDVkNVBaTTdHdFpFQmdhcVJQR1N6UzNEZlB1aVhyVVJKNEFKUwkAAAIFAmNSAgVXQVZFUwcJAJQKAgUDbmlsBQR1bml0BAJjUwkBBXZhbHVlAQkAmggCBQR0aGlzCQECYWsBBQJjUQQCY1QJAQV2YWx1ZQEJAJoIAgUEdGhpcwkBAmFrAQUCY1IEAmNVCQCdCAIFBHRoaXMJAQJhdgIJAKQDAQUCY1MJAKQDAQUCY1QEAmNWAwkAAAIFAmNVBQR1bml0BQR1bml0CQCwAgIJAQV2YWx1ZQEFAmNVAAQJAJQKAgUDbmlsBQJjVgJiRAEhZ2V0UG9vbEFkZHJlc3NGcm9tTHBBc3NldFJFQURPTkxZAQJjVwkAlAoCBQNuaWwJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUEdGhpcwkBAmFEAQUCY1cCAAJiRAELY29uc3RydWN0b3IIAmNYAmNZAmJKAmJLAmJMAmJNAmNaAmRhBAJkYgkBAmJFAQUCYkQDCQAAAgUCZGIFAmRiCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQFPAAkBAmJTBwUCY1gFAmNZBQJiSgUCYksFAmJMBQJiTQUCY1oJAMwIAgkBDEludGVnZXJFbnRyeQIJAQJhYgAFAmRhBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYkQBDWNvbnN0cnVjdG9yVjIBAmRjBAJkYgkBAmJFAQUCYkQDCQAAAgUCZGIFAmRiBAJkZAkApwgBCQDZBAEFAmRjAwkAAAIFAmRkBQJkZAkAzAgCCQELU3RyaW5nRW50cnkCCQEBUgAFAmRjBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYkQBDWNvbnN0cnVjdG9yVjMEAmJPAmJQAmJRAmJSBAJkYgkBAmJFAQUCYkQDCQAAAgUCZGIFAmRiBAJidAkAtQkCCQECYVkBCQEBTwAFAW0JAMwIAgkBC1N0cmluZ0VudHJ5AgkBAU8ACQECYkcLCQCRAwIFAmJ0AAEJAJEDAgUCYnQAAgkAkQMCBQJidAADCQCRAwIFAmJ0AAQJAJEDAgUCYnQABQkAkQMCBQJidAAGCQCRAwIFAmJ0AAcFAmJPBQJiUAUCYlEFAmJSBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYkQBDWNvbnN0cnVjdG9yVjQCAmRlAmRmBAJkYgkBAmJFAQUCYkQDCQAAAgUCZGIFAmRiCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQFTAAUCZGUJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAVQACQC5CQIFAmRmBQFtBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYkQBDWNvbnN0cnVjdG9yVjUBAmRnBAJkYgkBAmJFAQUCYkQDCQAAAgUCZGIFAmRiCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQFYAAUCZGcFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJiRAENY29uc3RydWN0b3JWNgICZGgCZGkEAmRqCQDMCAIJAQJiRQEFAmJECQDMCAIDCQECIT0CCQCmCAEFAmRoBQR1bml0BgIoaW52YWxpZCB2b3RpbmcgZW1pc3Npb24gY29udHJhY3QgYWRkcmVzcwUDbmlsAwkAAAIFAmRqBQJkagkAzAgCCQELU3RyaW5nRW50cnkCCQEBWQAFAmRoCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJhYQAJALkJAgUCZGkFAW0FA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJiRAEJc2V0QWRtaW5zAQJkawQCZGIJAQJiRQEFAmJEAwkAAAIFAmRiBQJkYgkAzAgCCQELU3RyaW5nRW50cnkCCQEBVwAJALkJAgUCZGsFAW0FA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJiRAEPYWN0aXZhdGVOZXdQb29sCAJhZgJiVwJiWAJkbAJkbQJkbgJjZAJkbwQCZGIJAQJjcQEFAmJEAwkAAAIFAmRiBQJkYgMJAQlpc0RlZmluZWQBCQCiCAEJAQJhegEFAmFmCQEBSwEJAKwCAgkArAICAg1Qb29sIGFkZHJlc3MgBQJhZgIUIGFscmVhZHkgcmVnaXN0ZXJlZC4EAmRwCQECY2oCBQJiVwABBAJkcQgFAmRwAl8xBAJkcgkBAmNqAgUCYlgDCAUCZHACXzMAAgABBAJkcwgFAmRyAl8xBAJkdAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQDxBwEJARFAZXh0ck5hdGl2ZSgxMDYyKQEFAmFmCQCsAgICKU5vIHNjcmlwdCBoYXMgYmVlbiBmb3VuZCBvbiBwb29sIGFjY291bnQgBQJhZgQCZHUJARFAZXh0ck5hdGl2ZSgxMDU3KQEJAQFRAAQCZHYJAQJjdwIFAmJXBQJiWAMFAmR2CQEBSwEJAKwCAgkArAICCQCsAgIJAKwCAgIFUG9vbCAFAmJXAgEvBQJiWAIcIGhhcyBhbHJlYWR5IGJlZW4gYWN0aXZhdGVkLgQCZHcJAQV2YWx1ZQEJAJ0IAgUEdGhpcwkBAmFtAgkApAMBBQJkcQkApAMBBQJkcwQCZHgDCQAAAgUCYlcCBVdBVkVTBQFsCQBsBgAKAAAICQEFdmFsdWUBCQDsBwEJANkEAQUCYlcIZGVjaW1hbHMAAAAABQRET1dOBAJkeQMJAAACBQJiWAIFV0FWRVMFAWwJAGwGAAoAAAgJAQV2YWx1ZQEJAOwHAQkA2QQBBQJiWAhkZWNpbWFscwAAAAAFBERPV04EAmR6CQDCCAUFAmRsBQJkbQABAAgGBAJiVgkAuAgBBQJkegQCZEEJANgEAQUCYlYEAmRCCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEFAmFmAghhY3RpdmF0ZQkAzAgCBQJiVwkAzAgCBQJiWAUDbmlsBQNuaWwDCQAAAgUCZEIFAmRCAwkBAiE9AgUCZEICB3N1Y2Nlc3MJAQFLAQIjUG9vbCBpbml0aWFsaXNhdGlvbiBlcnJvciBoYXBwZW5lZC4EAmRnCQERQGV4dHJOYXRpdmUoMTA2MikBCQECYVkBCQEBWAAEAmRDCQD8BwQFAmRnAg5jcmVhdGVPclVwZGF0ZQkAzAgCBQJkQQkAzAgCBQJkbAkAzAgCBwUDbmlsBQNuaWwDCQAAAgUCZEMFAmRDBAJkRAkA/AcEBQJkZwIIYWRkTGFiZWwJAMwIAgUCZEEJAMwIAgUBaAUDbmlsBQNuaWwDCQAAAgUCZEQFAmREBAJkRQkA/AcEBQJkZwIHc2V0TG9nbwkAzAgCBQJkQQkAzAgCBQJkbwUDbmlsBQNuaWwDCQAAAgUCZEUFAmRFBAJkRgkA/AcEBQJkZwINYWRkQXNzZXRzTGluawkAzAgCBQJiVwkAzAgCBQJiWAkAzAgCBQJkQQUDbmlsBQNuaWwDCQAAAgUCZEYFAmRGBAJkRwkA/AcEBQJkZwIYaW5jcmVhc2VBc3NldFBvb2xzTnVtYmVyCQDMCAIFAmJXBQNuaWwFA25pbAMJAAACBQJkRwUCZEcJAJQKAgkAzggCCQDOCAIIBQJkcAJfMggFAmRyAl8yCQDMCAIFAmR6CQDMCAIJAQRCdXJuAgUCYlYAAQkAzAgCCQELU3RyaW5nRW50cnkCCQECYW0CCQCkAwEFAmRxCQCkAwEFAmRzCQECYlQLBQJhZgkApAMBBQFvBQJkQQUCYlcFAmJYBQJkeAUCZHkFAmRxBQJkcwUBbAUCY2QJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAmF0AQUCZEEJAQJjZQIFAmRxBQJkcwkAzAgCCQELU3RyaW5nRW50cnkCCQECYXYCCQCkAwEFAmRxCQCkAwEFAmRzCQCsAgICBCVzX18FAmRBCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJhegEFAmFmCQECY2UCBQJkcQUCZHMJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAmFCAgUCZHEFAmRzBQJhZgkAzAgCCQELU3RyaW5nRW50cnkCCQECYUQBBQJkQQUCYWYJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAmFDAQUCYWYFAmRBCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQECYWUBBQJhZgUCZG4JAMwIAgkBDEludGVnZXJFbnRyeQIJAQJheQEFAmFmBQFpBQNuaWwFAmRBCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmJEAQptYW5hZ2VQb29sAgJhZgJkSAQCZGIJAQJiRQEFAmJEAwkAAAIFAmRiBQJkYgQCZEkJAQJjaAEFAmFmBAJiVQkAkQMCBQJkSQUBdwQCZEEJAJEDAgUCZEkFAXgEAmJXCQCRAwIFAmRJBQF5BAJiWAkAkQMCBQJkSQUBegQCZHgJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQJkSQUBQQQCZHkJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQJkSQUBQgQCZHEJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQJkSQUBQwQCZHMJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQJkSQUBRAQCZEoJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQJkSQUBRQQCY2QJAJEDAgUCZEkFAUYJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAmFtAgkApAMBBQJkcQkApAMBBQJkcwkBAmJUCwUCYWYJAKQDAQUCZEgFAmRBBQJiVwUCYlgFAmR4BQJkeQUCZHEFAmRzBQJkSgUCY2QFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJiRAEEZW1pdAECZEsEAmRMCAUCYkQGY2FsbGVyBAJkTQgFAmJEDG9yaWdpbkNhbGxlcgQCZE4JARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAoggBCQECYUMBCQClCAEFAmRMAh1JbnZhbGlkIExQIGFkZHJlc3MgY2FsbGVkIG1lLgQCZE8JANkEAQUCZE4EAmRmCQC1CQIJAQt2YWx1ZU9yRWxzZQIJAKIIAQkBAVQABQFuBQFtBAJkZQkBEUBleHRyTmF0aXZlKDEwNjIpAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCiCAEJAQFTAAIoTGVnYWN5IGZhY3RvcnkgY29udHJhY3QgZG9lcyBub3QgZXhpc3RzLgMJAGcCAAAFAmRLBQNuaWwDCQEPY29udGFpbnNFbGVtZW50AgUCZGYJAKUIAQUCZEwJAJQKAgUDbmlsBQJkZQkAlAoCCQDMCAIJAQdSZWlzc3VlAwUCZE8FAmRLBgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUCYkQGY2FsbGVyBQJkSwUCZE8FA25pbAIHc3VjY2VzcwJiRAEEYnVybgECZFAEAmRMCAUCYkQGY2FsbGVyBAJkTQgFAmJEDG9yaWdpbkNhbGxlcgQCZFEJAQV2YWx1ZQEJAJEDAggFAmJECHBheW1lbnRzAAAEAmRSCQEFdmFsdWUBCAUCZFEGYW1vdW50BAJkUwkA2AQBCQEFdmFsdWUBCAUCZFEHYXNzZXRJZAQCZFQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAoggBCQECYUMBCQClCAEFAmRMAh1JbnZhbGlkIExQIGFkZHJlc3MgY2FsbGVkIG1lLgMJAQIhPQIFAmRTBQJkVAkBAUsBAhVJbnZhbGlkIGFzc2V0IHBhc3NlZC4DCQECIT0CBQJkUAUCZFIJAQFLAQIWSW52YWxpZCBhbW91bnQgcGFzc2VkLgQCZE8JANkEAQUCZFQJAJQKAgkAzAgCCQEEQnVybgIFAmRPBQJkUAUDbmlsAgdzdWNjZXNzAmJEAQxtb2RpZnlXZWlnaHQCAmJWAmRVBAJkYgMJAAACCQDYBAEICAUCYkQGY2FsbGVyBWJ5dGVzCQELdmFsdWVPckVsc2UCCQCdCAIFBHRoaXMJAQFZAAIABgkBAmJFAQUCYkQDCQAAAgUCZGIFAmRiBAJhQQkBAmFZAQkBAmFEAQUCYlYEAmRWCQECYWUBBQJhQQQCZFcJAQJhZQEFAWcEAmRYCQELdmFsdWVPckVsc2UCCQCfCAEFAmRXAAAEAmRuCQELdmFsdWVPckVsc2UCCQCfCAEFAmRWAAAEAmRZBQJkVQQCYnQJALUJAgkBAmFZAQkBAU8ABQFtBAJjWAkBAmJ2AQUCYnQEAmRaCQD8BwQFAmNYAg5vbk1vZGlmeVdlaWdodAkAzAgCBQJiVgkAzAgCBQJhQQUDbmlsBQNuaWwDCQAAAgUCZFoFAmRaBAJlYQMJAAACBQJkWAAABQNuaWwJAMwIAgkBDEludGVnZXJFbnRyeQIFAmRXAAAFA25pbAQCZWIJAQJhZwIFAmFBAAAEAmVjCQCfCAEFAmViBAJlZAMJAAACBQJlYwUEdW5pdAUDbmlsCQDMCAIJAQtEZWxldGVFbnRyeQEFAmViBQNuaWwJAM4IAgkAzggCCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQJkVgUCZFkFA25pbAUCZWEFAmVkCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmJEAQ1tb2RpZnlXZWlnaHRzBAJlZQJlZgJlZwJlaAQCZGIJAQJiRQEFAmJEAwkAAAIFAmRiBQJkYgQCZWkJAGkCCQBoAgAFBQFmAGQEAmVqCQBpAgkAaAIABQUBZgBkBAJlawkAaQIJAGgCAAUFAWYAZAQCYnQJALUJAgkBAmFZAQkBAU8ABQFtBAJlbAkBAmJ2AQUCYnQEAmVtCQECYncBBQJidAQCZW4JAQJhZQEFAmVlBAJlbwkBAmFlAQUCZWYEAmVwCQECYWUBBQJlZwQCZXEJAQJhZQEFAmVoBAJlcgkBAmJiAQUCZW4EAmVzCQECYmIBBQJlbwQCZXQJAGUCBQJlcgUCZWsEAmV1CQBlAgUCZXMFAmVrAwkAZwIAAAUCZXQJAQFLAQkArAICAhZpbnZhbGlkIGJ0Y1dlaWdodE5ldzogCQCkAwEFAmV0AwkAZwIAAAUCZXUJAQFLAQkArAICAhZpbnZhbGlkIGV0aFdlaWdodE5ldzogCQCkAwEFAmV1BAJldgkBAmFZAQkBAmFDAQUCZWUEAmV3CQECYVkBCQECYUMBBQJlZgQCZXgJAQJhWQEJAQJhQwEFAmVnBAJleQkBAmFZAQkBAmFDAQUCZWgEAmV6CQD8BwQFAmVsAg5vbk1vZGlmeVdlaWdodAkAzAgCBQJldgkAzAgCBQJlZQUDbmlsBQNuaWwDCQAAAgUCZXoFAmV6BAJlQQkA/AcEBQJlbAIOb25Nb2RpZnlXZWlnaHQJAMwIAgUCZXcJAMwIAgUCZWYFA25pbAUDbmlsAwkAAAIFAmVBBQJlQQQCZUIJAPwHBAUCZWwCDm9uTW9kaWZ5V2VpZ2h0CQDMCAIFAmV4CQDMCAIFAmVnBQNuaWwFA25pbAMJAAACBQJlQgUCZUIEAmVDCQD8BwQFAmVsAg5vbk1vZGlmeVdlaWdodAkAzAgCBQJleQkAzAgCBQJlaAUDbmlsBQNuaWwDCQAAAgUCZUMFAmVDCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQJlbgUCZXQJAMwIAgkBDEludGVnZXJFbnRyeQIFAmVvBQJldQkAzAgCCQEMSW50ZWdlckVudHJ5AgUCZXAFAmVpCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQJlcQUCZWoJAMwIAgkBDEludGVnZXJFbnRyeQIJAQJhZwIFAmVlAAAFAmVyCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQECYWcCBQJlZgAABQJlcwkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAmFnAgUCZWcAAAUCZWkJAMwIAgkBDEludGVnZXJFbnRyeQIJAQJhZwIFAmVoAAAFAmVqBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYkQBGGNoZWNrV3hFbWlzc2lvblBvb2xMYWJlbAICYUYCYUcEAmVEBAJiZgkAoAgBCQECYUUCBQJhRgUCYUcDCQABAgUCYmYCB0Jvb2xlYW4EAmNKBQJiZgUCY0oHCQCUCgIFA25pbAUCZUQCYkQBFnNldFd4RW1pc3Npb25Qb29sTGFiZWwCAmFGAmFHBAJkYgkBAmNxAQUCYkQDCQAAAgUCZGIFAmRiCQCUCgIJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAQJhRQIFAmFGBQJhRwYFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJiRAEZZGVsZXRlV3hFbWlzc2lvblBvb2xMYWJlbAICYUYCYUcEAmRiAwkAAAIIBQJiRAZjYWxsZXIFBHRoaXMGCQECY3EBBQJiRAMJAAACBQJkYgUCZGIJAJQKAgkAzAgCCQELRGVsZXRlRW50cnkBCQECYUUCBQJhRgUCYUcFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJiRAESb25WZXJpZmljYXRpb25Mb3NzAQJhVAQCZGIDCQAAAgkA2AQBCAgFAmJEBmNhbGxlcgVieXRlcwkBC3ZhbHVlT3JFbHNlAgkAnQgCBQR0aGlzCQEBWAACAAYJAQJiRQEFAmJEAwkAAAIFAmRiBQJkYgQCZGkJAQJieAAEAmVFAwkAZgIJAJADAQUCZGkAAAYJAQFLAQIUaW52YWxpZCBwcmljZSBhc3NldHMDCQAAAgUCZUUFAmVFCgECZUYCAmVHAmVIBAJjRAkA/AcEBQR0aGlzAhlkZWxldGVXeEVtaXNzaW9uUG9vbExhYmVsCQDMCAIFAmFUCQDMCAIFAmVIBQNuaWwFA25pbAMJAAACBQJjRAUCY0QFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4EAmVJCgACZUoFAmRpCgACZUsJAJADAQUCZUoKAAJlTAUEdW5pdAoBAmVNAgJlTgJlTwMJAGcCBQJlTwUCZUsFAmVOCQECZUYCBQJlTgkAkQMCBQJlSgUCZU8KAQJlUAICZU4CZU8DCQBnAgUCZU8FAmVLBQJlTgkAAgECFExpc3Qgc2l6ZSBleGNlZWRzIDExCQECZVACCQECZU0CCQECZU0CCQECZU0CCQECZU0CCQECZU0CCQECZU0CCQECZU0CCQECZU0CCQECZU0CCQECZU0CCQECZU0CBQJlTAAAAAEAAgADAAQABQAGAAcACAAJAAoACwMJAAACBQJlSQUCZUkJAJQKAgUDbmlsBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmJEAShpc1Bvb2xPbmVUb2tlbk9wZXJhdGlvbnNEaXNhYmxlZFJFQURPTkxZAQJhZgQCZEkJAQJjaAEFAmFmBAJhcQkAlAoCCQENcGFyc2VJbnRWYWx1ZQEJAJEDAgUCZEkFAUMJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQJkSQUBRAQCZVEJAQt2YWx1ZU9yRWxzZQIJAKAIAQkBAmFwAQUCYXEHBAJlUgkBC3ZhbHVlT3JFbHNlAgkAoAgBCQECYXMABwkAlAoCBQNuaWwDBQJlUgYFAmVRAmJEARBnZXRJbkZlZVJFQURPTkxZAQJhZgQCZVMJAQJjdAMJAQJhSAEFAmFmCQECYUkAAAAJAJQKAgUDbmlsBQJlUwJiRAERZ2V0T3V0RmVlUkVBRE9OTFkBAmFmBAJlUwkBAmN0AwkBAmFKAQUCYWYJAQJhSwAJAGsDAAoFAWIAkE4JAJQKAgUDbmlsBQJlUwJiRAEQcG9vbEluZm9SRUFET05MWQICZVQCZVUEAmVWCQCaCAIFBHRoaXMJAQJhawEFAmVUBAJlVwkAmggCBQR0aGlzCQECYWsBBQJlVQQCZVgJAJ0IAgUEdGhpcwkBAmFCAgkBBXZhbHVlAQUCZVYJAQV2YWx1ZQEFAmVXBAJlWQkAnQgCBQR0aGlzCQECYUMBCQEFdmFsdWUBBQJlWAQCZHYDAwkBCWlzRGVmaW5lZAEFAmVWCQEJaXNEZWZpbmVkAQUCZVcHCQEJaXNEZWZpbmVkAQUCZVgHBAJlWgMFAmR2CQCUCgIJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQV2YWx1ZQEFAmVYCQECYmMBCQEFdmFsdWUBBQJlWQUEdW5pdAkAlAoCBQNuaWwFAmVaAmJEARVnZXRQb29sU3RhdHVzUkVBRE9OTFkBAmFmBAJjaQkAtQkCCQECYVkBCQECYXoBBQJhZgUBbQQCYW4JAJEDAgUCY2kAAQQCYW8JAJEDAgUCY2kAAgQCY3oJALUJAgkBAmFZAQkBAmFtAgUCYW4FAmFvBQFtCQCUCgIFA25pbAkBDXBhcnNlSW50VmFsdWUBCQCRAwIFAmN6BQF3AmJEARVnZXRQb29sQ29uZmlnUkVBRE9OTFkBAmFmBAJjaQkAtQkCCQECYVkBCQECYXoBBQJhZgUBbQQCYW4JAJEDAgUCY2kAAQQCYW8JAJEDAgUCY2kAAgQCY3oJALUJAgkBAmFZAQkBAmFtAgUCYW4FAmFvBQFtCQCUCgIFA25pbAUCY3oCYkQBIGdldFBvb2xDb25maWdCeUxwQXNzZXRJZFJFQURPTkxZAQJkQQQCY2kJALUJAgkBAmFZAQkBAmF0AQUCZEEFAW0EAmFuCQCRAwIFAmNpAAEEAmFvCQCRAwIFAmNpAAIEAmN6CQC1CQIJAQJhWQEJAQJhbQIFAmFuBQJhbwUBbQkAlAoCBQNuaWwFAmN6AmJEARJwb29sRXhpc3RzUkVBRE9OTFkCAmFGAmFHCQCUCgIFA25pbAkBAmN3AgUCYUYFAmFHAmJEARtza2lwT3JkZXJWYWxpZGF0aW9uUkVBRE9OTFkBAmFmCQCUCgIFA25pbAkBC3ZhbHVlT3JFbHNlAgkAoAgBCQECYUwBBQJhZgcCYkQBGmdldENoYW5nZUFtcENvbmZpZ1JFQURPTkxZAQJhZgQCZmEJARFAZXh0ck5hdGl2ZSgxMDU1KQEJAQJhTQEFAmFmBAJmYgkBEUBleHRyTmF0aXZlKDEwNTUpAQkBAmFOAQUCYWYEAmZjCQERQGV4dHJOYXRpdmUoMTA1NSkBCQECYU8BBQJhZgkAlAoCBQNuaWwJAMwIAgUCZmEJAMwIAgUCZmIJAMwIAgUCZmMFA25pbAJiRAEVZ2V0UG9vbFdlaWdodFJFQURPTkxZAQJiVgQCYWYJAQJhWQEJAQJhRAEFAmJWBAJmZAkBC3ZhbHVlT3JFbHNlAgkAnwgBCQECYWUBBQJhZgAACQCUCgIFA25pbAUCZmQCYkQBCmRlbGV0ZVBvb2wBAmFBBAJkYgMJAQJiRQEFAmJEBgUCYkEDCQAAAgUCZGIFAmRiBAJjaQkAtQkCCQECYVkBCQECYXoBBQJhQQUBbQQCYW4JAQ1wYXJzZUludFZhbHVlAQkAkQMCBQJjaQABBAJhbwkBDXBhcnNlSW50VmFsdWUBCQCRAwIFAmNpAAIEAmFGCQERQGV4dHJOYXRpdmUoMTA1OCkBCQECYWkBBQJhbgQCYUcJARFAZXh0ck5hdGl2ZSgxMDU4KQEJAQJhaQEFAmFvBAJiVgkBAmFZAQkBAmFDAQUCYUEEAmZlCQERQGV4dHJOYXRpdmUoMTA2MikBCQERQGV4dHJOYXRpdmUoMTA1OCkBCQEBWgAEAmZmCQD8BwQFAmZlAgpkZWxldGVQb29sCQDMCAIFAmFGCQDMCAIFAmFHBQNuaWwFA25pbAMJAAACBQJmZgUCZmYEAmRoCQERQGV4dHJOYXRpdmUoMTA2MikBCQERQGV4dHJOYXRpdmUoMTA1OCkBCQEBWQAEAmZnCQD8BwQFAmRoAgpkZWxldGVQb29sCQDMCAIFAmFGCQDMCAIFAmFHBQNuaWwFA25pbAMJAAACBQJmZwUCZmcJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFDAQUCYUEJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmF6AQUCYUEJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmF2AgkApAMBBQJhbgkApAMBBQJhbwkAzAgCCQELRGVsZXRlRW50cnkBCQECYUICBQJhbgUCYW8JAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFtAgkApAMBBQJhbgkApAMBBQJhbwkAzAgCCQELRGVsZXRlRW50cnkBCQECYXQBBQJiVgkAzAgCCQELRGVsZXRlRW50cnkBCQECYUQBBQJiVgkAzAgCCQELRGVsZXRlRW50cnkBCQECYUUCBQJhRgUCYUcJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFlAQUCYUEJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmF5AQUCYUEJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFIAQUCYUEJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFKAQUCYUEJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFMAQUCYUEJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFNAQUCYUEJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFOAQUCYUEJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFPAQUCYUEFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgECZmgBAmZpAAQCZmoEAmJmCQECYnkAAwkAAQIFAmJmAgpCeXRlVmVjdG9yBAJiRgUCYmYFAmJGAwkAAQIFAmJmAgRVbml0CAUCZmgPc2VuZGVyUHVibGljS2V5CQACAQILTWF0Y2ggZXJyb3IJAPQDAwgFAmZoCWJvZHlCeXRlcwkAkQMCCAUCZmgGcHJvb2ZzAAAFAmZqseEcMw==", "height": 2622109, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 86yDnP5hEHbqfyoitPje6Mep6aU1itX7xFjKXAfAaL48 Next: 37DqwX9n5E8Z3eewpmJjkKLRag6cPQPiogiFf2t3sWaF Diff:
OldNewDifferences
2121
2222 let j = "WAVES"
2323
24-let k = ((100 * 1000) * 1000)
24+let k = "factory_v2.ride"
2525
26-let l = "__"
26+let l = ((100 * 1000) * 1000)
2727
28-let m = ""
28+let m = "__"
2929
30-let n = 1
30+let n = ""
3131
32-let o = 2
32+let o = 1
3333
34-let p = 3
34+let p = 2
3535
36-let q = 4
36+let q = 3
3737
38-let r = 1
38+let r = 4
3939
40-let s = 2
40+let s = 1
4141
42-let t = 3
42+let t = 2
4343
44-let u = 1
44+let u = 3
4545
46-let v = 2
46+let v = 1
4747
48-let w = 3
48+let w = 2
4949
50-let x = 4
50+let x = 3
5151
52-let y = 5
52+let y = 4
5353
54-let z = 6
54+let z = 5
5555
56-let A = 7
56+let A = 6
5757
58-let B = 8
58+let B = 7
5959
60-let C = 9
60+let C = 8
6161
62-let D = 10
62+let D = 9
6363
64-let E = 11
64+let E = 10
6565
66-let F = "WX_EMISSION"
66+let F = 11
6767
68-let G = [F]
68+let G = "WX_EMISSION"
6969
70-func H () = "%s__allowedLpScriptHash"
70+let H = [G]
71+
72+func I (J) = makeString([k, ": ", J], "")
7173
7274
73-func I () = "%s__allowedLpStableScriptHash"
75+func K (J) = throw(I(J))
7476
7577
76-func J () = "%s__swapContract"
78+func L () = "%s__allowedLpScriptHash"
7779
7880
79-func K () = "%s__factoryConfig"
81+func M () = "%s__allowedLpStableScriptHash"
8082
8183
82-func L () = "%s__lpTokensList"
84+func N () = "%s__swapContract"
8385
8486
85-func M () = "%s%s__pool__scriptHash"
87+func O () = "%s__factoryConfig"
8688
8789
88-func N () = "%s%s__matcher__publicKey"
90+func P () = "%s__lpTokensList"
8991
9092
91-func O () = "%s__legacyFactoryContract"
93+func Q () = "%s%s__pool__scriptHash"
9294
9395
94-func P () = "%s__legacyPools"
96+func R () = "%s%s__matcher__publicKey"
9597
9698
97-func Q () = "%s__managerPublicKey"
99+func S () = "%s__legacyFactoryContract"
98100
99101
100-func R () = "%s__managerVaultAddress"
102+func T () = "%s__legacyPools"
101103
102104
103-func S () = "%s__adminPubKeys"
105+func U () = "%s__managerPublicKey"
104106
105107
106-func T () = "%s__assetsStoreContract"
108+func V () = "%s__managerVaultAddress"
107109
108110
109-func U () = "%s__votingEmissionContract"
111+func W () = "%s__adminPubKeys"
110112
111113
112-func V () = makeString(["%s", "priceAssets"], l)
114+func X () = "%s__assetsStoreContract"
113115
114116
115-func W () = "%s__priceDecimals"
117+func Y () = "%s__votingEmissionContract"
116118
117119
118-func X () = "%s__shutdown"
120+func Z () = "%s__userPoolsContract"
119121
120122
121-func Y () = "%s__nextInternalAssetId"
123+func aa () = makeString(["%s", "priceAssets"], m)
122124
123125
124-func Z (aa) = ("%s%s__poolWeight__" + aa)
126+func ab () = "%s__priceDecimals"
125127
126128
127-func ab (aa,ac) = ((("%s%s__poolWeight__" + aa) + "__") + toString(ac))
129+func ac () = "%s__shutdown"
128130
129131
130-func ad (ae) = ("%s%s%d__mappings__internal2baseAssetId__" + toString(ae))
132+func ad () = "%s__nextInternalAssetId"
131133
132134
133-func af (ag) = ("%s%s%s__mappings__baseAsset2internalId__" + ag)
135+func ae (af) = ("%s%s__poolWeight__" + af)
134136
135137
136-func ah (ai,aj) = (((("%d%d%s__" + ai) + "__") + aj) + "__config")
138+func ag (af,ah) = ((("%s%s__poolWeight__" + af) + "__") + toString(ah))
137139
138140
139-func ak (al) = {
140- let am = al
141- let ai = am._1
142- let aj = am._2
143- makeString(["%d%d%s", toString(ai), toString(aj), "oneTokenOperationsDisabled"], l)
141+func ai (aj) = ("%s%s%d__mappings__internal2baseAssetId__" + toString(aj))
142+
143+
144+func ak (al) = ("%s%s%s__mappings__baseAsset2internalId__" + al)
145+
146+
147+func am (an,ao) = (((("%d%d%s__" + an) + "__") + ao) + "__config")
148+
149+
150+func ap (aq) = {
151+ let ar = aq
152+ let an = ar._1
153+ let ao = ar._2
154+ makeString(["%d%d%s", toString(an), toString(ao), "oneTokenOperationsDisabled"], m)
144155 }
145156
146157
147-func an () = makeString(["%s", "oneTokenOperationsDisabled"], l)
158+func as () = makeString(["%s", "oneTokenOperationsDisabled"], m)
148159
149160
150-func ao (ap) = (("%s%s%s__" + ap) + "__mappings__lpAsset2Pool")
161+func at (au) = (("%s%s%s__" + au) + "__mappings__lpAsset2Pool")
151162
152163
153-func aq (ar,as) = (((("%d%d%s%s__" + ar) + "__") + as) + "__mappings__PoolAssets2LpAsset")
164+func av (aw,ax) = (((("%d%d%s%s__" + aw) + "__") + ax) + "__mappings__PoolAssets2LpAsset")
154165
155166
156-func at (aa) = ("%s%s__spread__" + aa)
167+func ay (af) = ("%s%s__spread__" + af)
157168
158169
159-func au (av) = (("%s%s%s__" + av) + "__mappings__poolContract2PoolAssets")
170+func az (aA) = (("%s%s%s__" + aA) + "__mappings__poolContract2PoolAssets")
160171
161172
162-func aw (ar,as) = (((("%d%d%s%s__" + toString(ar)) + "__") + toString(as)) + "__mappings__poolAssets2PoolContract")
173+func aB (aw,ax) = (((("%d%d%s%s__" + toString(aw)) + "__") + toString(ax)) + "__mappings__poolAssets2PoolContract")
163174
164175
165-func ax (av) = (("%s%s%s__" + av) + "__mappings__poolContract2LpAsset")
176+func aC (aA) = (("%s%s%s__" + aA) + "__mappings__poolContract2LpAsset")
166177
167178
168-func ay (ap) = (("%s%s%s__" + ap) + "__mappings__lpAsset2PoolContract")
179+func aD (au) = (("%s%s%s__" + au) + "__mappings__lpAsset2PoolContract")
169180
170181
171-func az (aA,aB) = ((("%s%s%s__wxEmission__" + aA) + "__") + aB)
182+func aE (aF,aG) = ((("%s%s%s__wxEmission__" + aF) + "__") + aG)
172183
173184
174-func aC (aa) = ("%s%s__inFee__" + aa)
185+func aH (af) = ("%s%s__inFee__" + af)
175186
176187
177-func aD () = "%s__inFeeDefault"
188+func aI () = "%s__inFeeDefault"
178189
179190
180-func aE (aa) = ("%s%s__outFee__" + aa)
191+func aJ (af) = ("%s%s__outFee__" + af)
181192
182193
183-func aF () = "%s__outFeeDefault"
194+func aK () = "%s__outFeeDefault"
184195
185196
186-func aG (aa) = ("%s%s__skipOrderValidation__" + aa)
197+func aL (af) = ("%s%s__skipOrderValidation__" + af)
187198
188199
189-func aH (aa) = ("%s%s__changeAmpDelay__" + aa)
200+func aM (af) = ("%s%s__changeAmpDelay__" + af)
190201
191202
192-func aI (aa) = ("%s%s__changeAmpDelta__" + aa)
203+func aN (af) = ("%s%s__changeAmpDelta__" + af)
193204
194205
195-func aJ (aa) = ("%s%s__changeAmpTarget__" + aa)
206+func aO (af) = ("%s%s__changeAmpTarget__" + af)
196207
197208
198-func aK () = "%s__sWavesProxyAddress"
209+func aP () = "%s__sWavesProxyAddress"
199210
200211
201-func aL () = "%s__sWavesAssetId"
212+func aQ () = "%s__sWavesAssetId"
202213
203214
204-func aM () = "%s__stakingProfitAddress"
215+func aR () = "%s__stakingProfitAddress"
205216
206217
207-func aN (aa,aO) = makeString(["%s%s%s", "leasedRatio", aa, aO], l)
218+func aS (af,aT) = makeString(["%s%s%s", "leasedRatio", af, aT], m)
208219
209220
210-func aP (aO) = makeString(["%s%s", "leasedRatioDefault", aO], l)
221+func aU (aT) = makeString(["%s%s", "leasedRatioDefault", aT], m)
211222
212223
213-func aQ (aa,aO) = makeString(["%s%s%s", "leasedRatioTolerance", aa, aO], l)
224+func aV (af,aT) = makeString(["%s%s%s", "leasedRatioTolerance", af, aT], m)
214225
215226
216-func aR (aa,aO) = makeString(["%s%s%s", "minBalance", aa, aO], l)
227+func aW (af,aT) = makeString(["%s%s%s", "minBalance", af, aT], m)
217228
218229
219-func aS (aO) = makeString(["%s%s", "minBalanceDefault", aO], l)
230+func aX (aT) = makeString(["%s%s", "minBalanceDefault", aT], m)
220231
221232
222-func aT (aU) = valueOrErrorMessage(getString(this, aU), ("No data for this.key=" + aU))
233+func aY (aZ) = valueOrErrorMessage(getString(this, aZ), ("No data for this.key=" + aZ))
223234
224235
225-func aV (aU) = valueOrErrorMessage(getBoolean(this, aU), ("No data for this.key=" + aU))
236+func ba (aZ) = valueOrErrorMessage(getBoolean(this, aZ), ("No data for this.key=" + aZ))
226237
227238
228-func aW (aU) = valueOrErrorMessage(getInteger(this, aU), ("No data for this.key=" + aU))
239+func bb (aZ) = valueOrErrorMessage(getInteger(this, aZ), ("No data for this.key=" + aZ))
229240
230241
231-func aX (aY) = if ((aY == j))
242+func bc (bd) = if ((bd == j))
232243 then unit
233- else fromBase58String(aY)
244+ else fromBase58String(bd)
234245
235246
236-func aZ () = {
237- let ba = getString(R())
238- if ($isInstanceOf(ba, "String"))
247+func be () = {
248+ let bf = getString(V())
249+ if ($isInstanceOf(bf, "String"))
239250 then {
240- let bb = ba
241- addressFromStringValue(bb)
251+ let bg = bf
252+ addressFromStringValue(bg)
242253 }
243254 else this
244255 }
245256
246257
247-let bc = 1
258+let bh = 1
248259
249-let bd = 2
260+let bi = 2
250261
251-let be = 3
262+let bj = 3
252263
253-let bf = 4
264+let bk = 4
254265
255-let bg = 5
266+let bl = 5
256267
257-let bh = 6
268+let bm = 6
258269
259-let bi = 7
270+let bn = 7
260271
261-let bj = 8
272+let bo = 8
262273
263-let bk = 9
274+let bp = 9
264275
265-let bl = 10
276+let bq = 10
266277
267-let bm = 11
278+let br = 11
268279
269-func bn (bo) = addressFromStringValue(bo[bd])
280+func bs (bt) = addressFromStringValue(bt[bi])
270281
271282
272-func bp (bo) = addressFromStringValue(bo[bg])
283+func bu (bt) = addressFromStringValue(bt[bl])
273284
274285
275-func bq (bo) = addressFromStringValue(bo[bc])
286+func bv (bt) = addressFromStringValue(bt[bh])
276287
277288
278-func br (bo) = addressFromStringValue(bo[bl])
289+func bw (bt) = addressFromStringValue(bt[bq])
279290
280291
281-func bs () = {
282- let ba = getString(V())
283- if ($isInstanceOf(ba, "String"))
292+func bx () = {
293+ let bf = getString(aa())
294+ if ($isInstanceOf(bf, "String"))
284295 then {
285- let bb = ba
286- if ((size(bb) == 0))
296+ let bg = bf
297+ if ((size(bg) == 0))
287298 then nil
288- else split(bb, l)
299+ else split(bg, m)
289300 }
290301 else nil
291302 }
292303
293304
294-func bt () = {
295- let bu = aZ()
296- let ba = getString(bu, Q())
297- if ($isInstanceOf(ba, "String"))
305+func by () = {
306+ let bz = be()
307+ let bf = getString(bz, U())
308+ if ($isInstanceOf(bf, "String"))
298309 then {
299- let bb = ba
300- fromBase58String(bb)
310+ let bg = bf
311+ fromBase58String(bg)
301312 }
302- else if ($isInstanceOf(ba, "Unit"))
313+ else if ($isInstanceOf(bf, "Unit"))
303314 then unit
304315 else throw("Match error")
305316 }
306317
307318
308-let bv = throw("Permission denied")
319+let bA = K("Permission denied")
309320
310-let bw = throw("Test error here")
321+let bB = K("Test error here")
311322
312-func bx (by) = if ((by.caller == this))
323+func bC (bD) = if ((bD.caller == this))
313324 then true
314- else bv
325+ else bA
315326
316327
317-func bz (by) = {
318- let ba = bt()
319- if ($isInstanceOf(ba, "ByteVector"))
328+func bE (bD) = {
329+ let bf = by()
330+ if ($isInstanceOf(bf, "ByteVector"))
320331 then {
321- let bA = ba
322- if ((by.callerPublicKey == bA))
332+ let bF = bf
333+ if ((bD.callerPublicKey == bF))
323334 then true
324- else bv
335+ else bA
325336 }
326- else if ($isInstanceOf(ba, "Unit"))
327- then bx(by)
337+ else if ($isInstanceOf(bf, "Unit"))
338+ then bC(bD)
328339 else throw("Match error")
329340 }
330341
331342
332-func bB (bC,bD,bE,bF,bG,bH,bI,bJ,bK,bL,bM) = makeString(["%s%s%s%s%s%s%s%s%s%s%s", bC, bD, bE, bF, bG, bH, bI, bJ, bK, bL, bM], l)
343+func bG (bH,bI,bJ,bK,bL,bM,bN,bO,bP,bQ,bR) = makeString(["%s%s%s%s%s%s%s%s%s%s%s", bH, bI, bJ, bK, bL, bM, bN, bO, bP, bQ, bR], m)
333344
334345
335-func bN (bC,bD,bE,bF,bG,bH,bI) = makeString(["%s%s%s%s%s%s", bC, bD, bE, bF, bG, bH, bI], l)
346+func bS (bH,bI,bJ,bK,bL,bM,bN) = makeString(["%s%s%s%s%s%s", bH, bI, bJ, bK, bL, bM, bN], m)
336347
337348
338-func bO (aa,bP,bQ,bR,bS,bT,bU,bV,bW,bX,bY) = makeString(["%s%d%s%s%s%d%d%d%d%d%s", aa, bP, bQ, bR, bS, toString(bT), toString(bU), toString(bV), toString(bW), toString(bX), bY], l)
349+func bT (af,bU,bV,bW,bX,bY,bZ,ca,cb,cc,cd) = makeString(["%s%d%s%s%s%d%d%d%d%d%s", af, bU, bV, bW, bX, toString(bY), toString(bZ), toString(ca), toString(cb), toString(cc), cd], m)
339350
340351
341-func bZ (ca,cb) = makeString(["%d%d", toString(ca), toString(cb)], l)
352+func ce (cf,cg) = makeString(["%d%d", toString(cf), toString(cg)], m)
342353
343354
344-func cc (aa) = {
345- let cd = split(aT(au(aa)), l)
346- let ai = cd[1]
347- let aj = cd[2]
348- split(aT(ah(ai, aj)), l)
355+func ch (af) = {
356+ let ci = split(aY(az(af)), m)
357+ let an = ci[1]
358+ let ao = ci[2]
359+ split(aY(am(an, ao)), m)
349360 }
350361
351362
352-func ce (cf,cg) = {
353- let ch = valueOrElse(getInteger(this, af(cf)), 0)
354- let ci = valueOrElse(getInteger(this, Y()), 0)
355- let cj = if ((ch == 0))
363+func cj (ck,cl) = {
364+ let cm = valueOrElse(getInteger(this, ak(ck)), 0)
365+ let cn = valueOrElse(getInteger(this, ad()), 0)
366+ let co = if ((cm == 0))
356367 then {
357- let ck = (ci + cg)
358- $Tuple3(ck, [IntegerEntry(Y(), ck), IntegerEntry(af(cf), ck), StringEntry(ad(ck), cf)], true)
368+ let cp = (cn + cl)
369+ $Tuple3(cp, [IntegerEntry(ad(), cp), IntegerEntry(ak(ck), cp), StringEntry(ai(cp), ck)], true)
359370 }
360- else $Tuple3(ch, nil, false)
361- cj
371+ else $Tuple3(cm, nil, false)
372+ co
362373 }
363374
364375
365-func cl (by) = {
366- let cm = split(valueOrElse(getString(S()), m), l)
367- if (containsElement(cm, toBase58String(by.callerPublicKey)))
376+func cq (bD) = {
377+ let cr = split(valueOrElse(getString(W()), n), m)
378+ if (containsElement(cr, toBase58String(bD.callerPublicKey)))
368379 then true
369380 else {
370- let cn = bz(by)
371- if ((cn == cn))
381+ let cs = bE(bD)
382+ if ((cs == cs))
372383 then true
373384 else throw("Strict value is not equal to itself.")
374385 }
375386 }
376387
377388
378-func co (aU,cp,cq) = valueOrElse(getInteger(this, aU), valueOrElse(getInteger(this, cp), cq))
389+func ct (aZ,cu,cv) = valueOrElse(getInteger(this, aZ), valueOrElse(getInteger(this, cu), cv))
379390
380391
381-func cr (aA,aB) = {
382- let ai = getInteger(af(aA))
383- let aj = getInteger(af(aB))
384- if (if ((ai == unit))
392+func cw (aF,aG) = {
393+ let an = getInteger(ak(aF))
394+ let ao = getInteger(ak(aG))
395+ if (if ((an == unit))
385396 then true
386- else (aj == unit))
397+ else (ao == unit))
387398 then false
388399 else {
389- let cs = toString(value(ai))
390- let ct = toString(value(aj))
391- let cu = getString(ah(cs, ct))
392- let cv = getString(ah(ct, cs))
393- let cw = if ((cu != unit))
400+ let cx = toString(value(an))
401+ let cy = toString(value(ao))
402+ let cz = getString(am(cx, cy))
403+ let cA = getString(am(cy, cx))
404+ let cB = if ((cz != unit))
394405 then true
395- else (cv != unit)
396- cw
406+ else (cA != unit)
407+ cB
397408 }
398409 }
399410
400411
401-@Callable(by)
402-func getSwapContractREADONLY () = $Tuple2(nil, aT(J()))
412+@Callable(bD)
413+func getSwapContractREADONLY () = $Tuple2(nil, aY(N()))
403414
404415
405416
406-@Callable(by)
407-func getPoolLeaseConfigREADONLY (aa,aO) = {
408- let cx = {
409- let ba = getInteger(this, aN(aa, aO))
410- if ($isInstanceOf(ba, "Int"))
417+@Callable(bD)
418+func getPoolLeaseConfigREADONLY (af,aT) = {
419+ let cC = {
420+ let bf = getInteger(this, aS(af, aT))
421+ if ($isInstanceOf(bf, "Int"))
411422 then {
412- let cy = ba
413- $Tuple2(true, min([100, max([0, cy])]))
423+ let cD = bf
424+ $Tuple2(true, min([100, max([0, cD])]))
414425 }
415426 else {
416- let cz = getInteger(this, aP(aO))
417- if ($isInstanceOf(cz, "Int"))
427+ let cE = getInteger(this, aU(aT))
428+ if ($isInstanceOf(cE, "Int"))
418429 then {
419- let cA = cz
420- $Tuple2(true, min([100, max([0, cA])]))
430+ let cF = cE
431+ $Tuple2(true, min([100, max([0, cF])]))
421432 }
422433 else $Tuple2(false, 0)
423434 }
424435 }
425- let cB = cx._1
426- let cC = cx._2
427- let cD = {
428- let ba = getInteger(this, aR(aa, aO))
429- if ($isInstanceOf(ba, "Int"))
436+ let cG = cC._1
437+ let cH = cC._2
438+ let cI = {
439+ let bf = getInteger(this, aW(af, aT))
440+ if ($isInstanceOf(bf, "Int"))
430441 then {
431- let cE = ba
432- max([0, cE])
442+ let cJ = bf
443+ max([0, cJ])
433444 }
434445 else {
435- let cz = getInteger(this, aS(aO))
436- if ($isInstanceOf(cz, "Int"))
446+ let cE = getInteger(this, aX(aT))
447+ if ($isInstanceOf(cE, "Int"))
437448 then {
438- let cF = cz
439- max([0, cF])
449+ let cK = cE
450+ max([0, cK])
440451 }
441452 else 0
442453 }
443454 }
444- let cG = if ((aO == "WAVES"))
445- then $Tuple3(valueOrElse(getString(this, aK()), ""), getString(this, valueOrElse(aL(), "")), c)
455+ let cL = if ((aT == "WAVES"))
456+ then $Tuple3(valueOrElse(getString(this, aP()), ""), getString(this, valueOrElse(aQ(), "")), c)
446457 else $Tuple3("", "", 0)
447- let cH = cG._1
448- let cI = cG._2
449- let cJ = cG._3
450- let cK = valueOrElse(getString(this, aM()), "")
451- $Tuple2(nil, $Tuple7(cB, cC, cD, cH, cI, cJ, cK))
458+ let cM = cL._1
459+ let cN = cL._2
460+ let cO = cL._3
461+ let cP = valueOrElse(getString(this, aR()), "")
462+ $Tuple2(nil, $Tuple7(cG, cH, cI, cM, cN, cO, cP))
452463 }
453464
454465
455466
456-@Callable(by)
457-func getLpAssetFromPoolAssetsREADONLY (cL,cM) = if (if ((cL == "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS"))
458- then (cM == "WAVES")
467+@Callable(bD)
468+func getLpAssetFromPoolAssetsREADONLY (cQ,cR) = if (if ((cQ == "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS"))
469+ then (cR == "WAVES")
459470 else false)
460471 then $Tuple2(nil, unit)
461472 else {
462- let cN = value(getInteger(this, af(cL)))
463- let cO = value(getInteger(this, af(cM)))
464- let cP = getString(this, aq(toString(cN), toString(cO)))
465- let cQ = if ((cP == unit))
473+ let cS = value(getInteger(this, ak(cQ)))
474+ let cT = value(getInteger(this, ak(cR)))
475+ let cU = getString(this, av(toString(cS), toString(cT)))
476+ let cV = if ((cU == unit))
466477 then unit
467- else drop(value(cP), 4)
468- $Tuple2(nil, cQ)
478+ else drop(value(cU), 4)
479+ $Tuple2(nil, cV)
469480 }
470481
471482
472483
473-@Callable(by)
474-func getPoolAddressFromLpAssetREADONLY (cR) = $Tuple2(nil, valueOrElse(getString(this, ay(cR)), ""))
484+@Callable(bD)
485+func getPoolAddressFromLpAssetREADONLY (cW) = $Tuple2(nil, valueOrElse(getString(this, aD(cW)), ""))
475486
476487
477488
478-@Callable(by)
479-func constructor (cS,cT,bE,bF,bG,bH,cU,cV) = {
480- let cW = bz(by)
481- if ((cW == cW))
482- then [StringEntry(K(), bN(cS, cT, bE, bF, bG, bH, cU)), IntegerEntry(W(), cV)]
489+@Callable(bD)
490+func constructor (cX,cY,bJ,bK,bL,bM,cZ,da) = {
491+ let db = bE(bD)
492+ if ((db == db))
493+ then [StringEntry(O(), bS(cX, cY, bJ, bK, bL, bM, cZ)), IntegerEntry(ab(), da)]
483494 else throw("Strict value is not equal to itself.")
484495 }
485496
486497
487498
488-@Callable(by)
489-func constructorV2 (cX) = {
490- let cW = bz(by)
491- if ((cW == cW))
499+@Callable(bD)
500+func constructorV2 (dc) = {
501+ let db = bE(bD)
502+ if ((db == db))
492503 then {
493- let cY = addressFromPublicKey(fromBase58String(cX))
494- if ((cY == cY))
495- then [StringEntry(N(), cX)]
504+ let dd = addressFromPublicKey(fromBase58String(dc))
505+ if ((dd == dd))
506+ then [StringEntry(R(), dc)]
496507 else throw("Strict value is not equal to itself.")
497508 }
498509 else throw("Strict value is not equal to itself.")
500511
501512
502513
503-@Callable(by)
504-func constructorV3 (bJ,bK,bL,bM) = {
505- let cW = bz(by)
506- if ((cW == cW))
514+@Callable(bD)
515+func constructorV3 (bO,bP,bQ,bR) = {
516+ let db = bE(bD)
517+ if ((db == db))
507518 then {
508- let bo = split(aT(K()), l)
509-[StringEntry(K(), bB(bo[1], bo[2], bo[3], bo[4], bo[5], bo[6], bo[7], bJ, bK, bL, bM))]
519+ let bt = split(aY(O()), m)
520+[StringEntry(O(), bG(bt[1], bt[2], bt[3], bt[4], bt[5], bt[6], bt[7], bO, bP, bQ, bR))]
510521 }
511522 else throw("Strict value is not equal to itself.")
512523 }
513524
514525
515526
516-@Callable(by)
517-func constructorV4 (cZ,da) = {
518- let cW = bz(by)
519- if ((cW == cW))
520- then [StringEntry(O(), cZ), StringEntry(P(), makeString(da, l))]
527+@Callable(bD)
528+func constructorV4 (de,df) = {
529+ let db = bE(bD)
530+ if ((db == db))
531+ then [StringEntry(S(), de), StringEntry(T(), makeString(df, m))]
521532 else throw("Strict value is not equal to itself.")
522533 }
523534
524535
525536
526-@Callable(by)
527-func constructorV5 (db) = {
528- let cW = bz(by)
529- if ((cW == cW))
530- then [StringEntry(T(), db)]
537+@Callable(bD)
538+func constructorV5 (dg) = {
539+ let db = bE(bD)
540+ if ((db == db))
541+ then [StringEntry(X(), dg)]
531542 else throw("Strict value is not equal to itself.")
532543 }
533544
534545
535546
536-@Callable(by)
537-func constructorV6 (dc,dd) = {
538- let de = [bz(by), if ((addressFromString(dc) != unit))
547+@Callable(bD)
548+func constructorV6 (dh,di) = {
549+ let dj = [bE(bD), if ((addressFromString(dh) != unit))
539550 then true
540551 else "invalid voting emission contract address"]
541- if ((de == de))
542- then [StringEntry(U(), dc), StringEntry(V(), makeString(dd, l))]
552+ if ((dj == dj))
553+ then [StringEntry(Y(), dh), StringEntry(aa(), makeString(di, m))]
543554 else throw("Strict value is not equal to itself.")
544555 }
545556
546557
547558
548-@Callable(by)
549-func setAdmins (df) = {
550- let cW = bz(by)
551- if ((cW == cW))
552- then [StringEntry(S(), makeString(df, l))]
559+@Callable(bD)
560+func setAdmins (dk) = {
561+ let db = bE(bD)
562+ if ((db == db))
563+ then [StringEntry(W(), makeString(dk, m))]
553564 else throw("Strict value is not equal to itself.")
554565 }
555566
556567
557568
558-@Callable(by)
559-func activateNewPool (aa,bR,bS,dg,dh,di,bY,dj) = {
560- let cW = cl(by)
561- if ((cW == cW))
562- then if (isDefined(getString(au(aa))))
563- then throw((("Pool address " + aa) + " already registered."))
569+@Callable(bD)
570+func activateNewPool (af,bW,bX,dl,dm,dn,cd,do) = {
571+ let db = cq(bD)
572+ if ((db == db))
573+ then if (isDefined(getString(az(af))))
574+ then K((("Pool address " + af) + " already registered."))
564575 else {
565- let dk = ce(bR, 1)
566- let dl = dk._1
567- let dm = ce(bS, if (dk._3)
576+ let dp = cj(bW, 1)
577+ let dq = dp._1
578+ let dr = cj(bX, if (dp._3)
568579 then 2
569580 else 1)
570- let dn = dm._1
571- let do = valueOrErrorMessage(scriptHash(addressFromStringValue(aa)), ("No script has been found on pool account " + aa))
572- let dp = getBinaryValue(M())
573- let dq = cr(bR, bS)
574- if (dq)
575- then throw((((("Pool " + bR) + "/") + bS) + " has already been activated."))
581+ let ds = dr._1
582+ let dt = valueOrErrorMessage(scriptHash(addressFromStringValue(af)), ("No script has been found on pool account " + af))
583+ let du = getBinaryValue(Q())
584+ let dv = cw(bW, bX)
585+ if (dv)
586+ then K((((("Pool " + bW) + "/") + bX) + " has already been activated."))
576587 else {
577- let dr = value(getString(this, ah(toString(dl), toString(dn))))
578- let ds = if ((bR == "WAVES"))
579- then k
580- else pow(10, 0, value(assetInfo(fromBase58String(bR))).decimals, 0, 0, DOWN)
581- let dt = if ((bS == "WAVES"))
582- then k
583- else pow(10, 0, value(assetInfo(fromBase58String(bS))).decimals, 0, 0, DOWN)
584- let du = Issue(dg, dh, 1, 8, true)
585- let bQ = calculateAssetId(du)
586- let dv = toBase58String(bQ)
587- let dw = invoke(addressFromStringValue(aa), "activate", [bR, bS], nil)
588- if ((dw == dw))
589- then if ((dw != "success"))
590- then throw("Pool initialisation error happened.")
588+ let dw = value(getString(this, am(toString(dq), toString(ds))))
589+ let dx = if ((bW == "WAVES"))
590+ then l
591+ else pow(10, 0, value(assetInfo(fromBase58String(bW))).decimals, 0, 0, DOWN)
592+ let dy = if ((bX == "WAVES"))
593+ then l
594+ else pow(10, 0, value(assetInfo(fromBase58String(bX))).decimals, 0, 0, DOWN)
595+ let dz = Issue(dl, dm, 1, 8, true)
596+ let bV = calculateAssetId(dz)
597+ let dA = toBase58String(bV)
598+ let dB = invoke(addressFromStringValue(af), "activate", [bW, bX], nil)
599+ if ((dB == dB))
600+ then if ((dB != "success"))
601+ then K("Pool initialisation error happened.")
591602 else {
592- let db = addressFromStringValue(aT(T()))
593- let dx = invoke(db, "createOrUpdate", [dv, dg, false], nil)
594- if ((dx == dx))
603+ let dg = addressFromStringValue(aY(X()))
604+ let dC = invoke(dg, "createOrUpdate", [dA, dl, false], nil)
605+ if ((dC == dC))
595606 then {
596- let dy = invoke(db, "addLabel", [dv, h], nil)
597- if ((dy == dy))
607+ let dD = invoke(dg, "addLabel", [dA, h], nil)
608+ if ((dD == dD))
598609 then {
599- let dz = invoke(db, "setLogo", [dv, dj], nil)
600- if ((dz == dz))
610+ let dE = invoke(dg, "setLogo", [dA, do], nil)
611+ if ((dE == dE))
601612 then {
602- let dA = invoke(db, "addAssetsLink", [bR, bS, dv], nil)
603- if ((dA == dA))
613+ let dF = invoke(dg, "addAssetsLink", [bW, bX, dA], nil)
614+ if ((dF == dF))
604615 then {
605- let dB = invoke(db, "increaseAssetPoolsNumber", [bR], nil)
606- if ((dB == dB))
607- then $Tuple2(((dk._2 ++ dm._2) ++ [du, Burn(bQ, 1), StringEntry(ah(toString(dl), toString(dn)), bO(aa, toString(n), dv, bR, bS, ds, dt, dl, dn, k, bY)), StringEntry(ao(dv), bZ(dl, dn)), StringEntry(aq(toString(dl), toString(dn)), ("%s__" + dv)), StringEntry(au(aa), bZ(dl, dn)), StringEntry(aw(dl, dn), aa), StringEntry(ay(dv), aa), StringEntry(ax(aa), dv), IntegerEntry(Z(aa), di), IntegerEntry(at(aa), i)]), dv)
616+ let dG = invoke(dg, "increaseAssetPoolsNumber", [bW], nil)
617+ if ((dG == dG))
618+ then $Tuple2(((dp._2 ++ dr._2) ++ [dz, Burn(bV, 1), StringEntry(am(toString(dq), toString(ds)), bT(af, toString(o), dA, bW, bX, dx, dy, dq, ds, l, cd)), StringEntry(at(dA), ce(dq, ds)), StringEntry(av(toString(dq), toString(ds)), ("%s__" + dA)), StringEntry(az(af), ce(dq, ds)), StringEntry(aB(dq, ds), af), StringEntry(aD(dA), af), StringEntry(aC(af), dA), IntegerEntry(ae(af), dn), IntegerEntry(ay(af), i)]), dA)
608619 else throw("Strict value is not equal to itself.")
609620 }
610621 else throw("Strict value is not equal to itself.")
623634
624635
625636
626-@Callable(by)
627-func managePool (aa,dC) = {
628- let cW = bz(by)
629- if ((cW == cW))
637+@Callable(bD)
638+func managePool (af,dH) = {
639+ let db = bE(bD)
640+ if ((db == db))
630641 then {
631- let dD = cc(aa)
632- let bP = dD[v]
633- let dv = dD[w]
634- let bR = dD[x]
635- let bS = dD[y]
636- let ds = parseIntValue(dD[z])
637- let dt = parseIntValue(dD[A])
638- let dl = parseIntValue(dD[B])
639- let dn = parseIntValue(dD[C])
640- let dE = parseIntValue(dD[D])
641- let bY = dD[E]
642-[StringEntry(ah(toString(dl), toString(dn)), bO(aa, toString(dC), dv, bR, bS, ds, dt, dl, dn, dE, bY))]
642+ let dI = ch(af)
643+ let bU = dI[w]
644+ let dA = dI[x]
645+ let bW = dI[y]
646+ let bX = dI[z]
647+ let dx = parseIntValue(dI[A])
648+ let dy = parseIntValue(dI[B])
649+ let dq = parseIntValue(dI[C])
650+ let ds = parseIntValue(dI[D])
651+ let dJ = parseIntValue(dI[E])
652+ let cd = dI[F]
653+[StringEntry(am(toString(dq), toString(ds)), bT(af, toString(dH), dA, bW, bX, dx, dy, dq, ds, dJ, cd))]
643654 }
644655 else throw("Strict value is not equal to itself.")
645656 }
646657
647658
648659
649-@Callable(by)
650-func emit (dF) = {
651- let dG = by.caller
652- let dH = by.originCaller
653- let dI = valueOrErrorMessage(getString(ax(toString(dG))), "Invalid LP address called me.")
654- let dJ = fromBase58String(dI)
655- let da = split(valueOrElse(getString(P()), m), l)
656- let cZ = addressFromStringValue(valueOrErrorMessage(getString(O()), "Legacy factory contract does not exists."))
657- if ((0 >= dF))
660+@Callable(bD)
661+func emit (dK) = {
662+ let dL = bD.caller
663+ let dM = bD.originCaller
664+ let dN = valueOrErrorMessage(getString(aC(toString(dL))), "Invalid LP address called me.")
665+ let dO = fromBase58String(dN)
666+ let df = split(valueOrElse(getString(T()), n), m)
667+ let de = addressFromStringValue(valueOrErrorMessage(getString(S()), "Legacy factory contract does not exists."))
668+ if ((0 >= dK))
658669 then nil
659- else if (containsElement(da, toString(dG)))
660- then $Tuple2(nil, cZ)
661- else $Tuple2([Reissue(dJ, dF, true), ScriptTransfer(by.caller, dF, dJ)], "success")
670+ else if (containsElement(df, toString(dL)))
671+ then $Tuple2(nil, de)
672+ else $Tuple2([Reissue(dO, dK, true), ScriptTransfer(bD.caller, dK, dO)], "success")
662673 }
663674
664675
665676
666-@Callable(by)
667-func burn (dK) = {
668- let dG = by.caller
669- let dH = by.originCaller
670- let dL = value(by.payments[0])
671- let dM = value(dL.amount)
672- let dN = toBase58String(value(dL.assetId))
673- let dO = valueOrErrorMessage(getString(ax(toString(dG))), "Invalid LP address called me.")
674- if ((dN != dO))
675- then throw("Invalid asset passed.")
676- else if ((dK != dM))
677- then throw("Invalid amount passed.")
677+@Callable(bD)
678+func burn (dP) = {
679+ let dL = bD.caller
680+ let dM = bD.originCaller
681+ let dQ = value(bD.payments[0])
682+ let dR = value(dQ.amount)
683+ let dS = toBase58String(value(dQ.assetId))
684+ let dT = valueOrErrorMessage(getString(aC(toString(dL))), "Invalid LP address called me.")
685+ if ((dS != dT))
686+ then K("Invalid asset passed.")
687+ else if ((dP != dR))
688+ then K("Invalid amount passed.")
678689 else {
679- let dJ = fromBase58String(dO)
680- $Tuple2([Burn(dJ, dK)], "success")
690+ let dO = fromBase58String(dT)
691+ $Tuple2([Burn(dO, dP)], "success")
681692 }
682693 }
683694
684695
685696
686-@Callable(by)
687-func modifyWeight (bQ,dP) = {
688- let cW = if ((toBase58String(by.caller.bytes) == valueOrElse(getString(this, U()), "")))
697+@Callable(bD)
698+func modifyWeight (bV,dU) = {
699+ let db = if ((toBase58String(bD.caller.bytes) == valueOrElse(getString(this, Y()), "")))
689700 then true
690- else bz(by)
691- if ((cW == cW))
701+ else bE(bD)
702+ if ((db == db))
692703 then {
693- let av = aT(ay(bQ))
694- let dQ = Z(av)
695- let dR = Z(g)
696- let dS = valueOrElse(getInteger(dR), 0)
697- let di = valueOrElse(getInteger(dQ), 0)
698- let dT = dP
699- let bo = split(aT(K()), l)
700- let cS = bq(bo)
701- let dU = invoke(cS, "onModifyWeight", [bQ, av], nil)
702- if ((dU == dU))
704+ let aA = aY(aD(bV))
705+ let dV = ae(aA)
706+ let dW = ae(g)
707+ let dX = valueOrElse(getInteger(dW), 0)
708+ let dn = valueOrElse(getInteger(dV), 0)
709+ let dY = dU
710+ let bt = split(aY(O()), m)
711+ let cX = bv(bt)
712+ let dZ = invoke(cX, "onModifyWeight", [bV, aA], nil)
713+ if ((dZ == dZ))
703714 then {
704- let dV = if ((dS == 0))
715+ let ea = if ((dX == 0))
705716 then nil
706- else [IntegerEntry(dR, 0)]
707- let dW = ab(av, 0)
708- let dX = getInteger(dW)
709- let dY = if ((dX == unit))
717+ else [IntegerEntry(dW, 0)]
718+ let eb = ag(aA, 0)
719+ let ec = getInteger(eb)
720+ let ed = if ((ec == unit))
710721 then nil
711- else [DeleteEntry(dW)]
712- (([IntegerEntry(dQ, dT)] ++ dV) ++ dY)
722+ else [DeleteEntry(eb)]
723+ (([IntegerEntry(dV, dY)] ++ ea) ++ ed)
713724 }
714725 else throw("Strict value is not equal to itself.")
715726 }
718729
719730
720731
721-@Callable(by)
722-func modifyWeights (dZ,ea,eb,ec) = {
723- let cW = bz(by)
724- if ((cW == cW))
732+@Callable(bD)
733+func modifyWeights (ee,ef,eg,eh) = {
734+ let db = bE(bD)
735+ if ((db == db))
725736 then {
726- let ed = ((5 * f) / 100)
727- let ee = ((5 * f) / 100)
728- let ef = ((5 * f) / 100)
729- let bo = split(aT(K()), l)
730- let eg = bq(bo)
731- let eh = br(bo)
732- let ei = Z(dZ)
733- let ej = Z(ea)
734- let ek = Z(eb)
735- let el = Z(ec)
736- let em = aW(ei)
737- let en = aW(ej)
738- let eo = (em - ef)
739- let ep = (en - ef)
740- if ((0 >= eo))
741- then throw(("invalid btcWeightNew: " + toString(eo)))
742- else if ((0 >= ep))
743- then throw(("invalid ethWeightNew: " + toString(ep)))
737+ let ei = ((5 * f) / 100)
738+ let ej = ((5 * f) / 100)
739+ let ek = ((5 * f) / 100)
740+ let bt = split(aY(O()), m)
741+ let el = bv(bt)
742+ let em = bw(bt)
743+ let en = ae(ee)
744+ let eo = ae(ef)
745+ let ep = ae(eg)
746+ let eq = ae(eh)
747+ let er = bb(en)
748+ let es = bb(eo)
749+ let et = (er - ek)
750+ let eu = (es - ek)
751+ if ((0 >= et))
752+ then K(("invalid btcWeightNew: " + toString(et)))
753+ else if ((0 >= eu))
754+ then K(("invalid ethWeightNew: " + toString(eu)))
744755 else {
745- let eq = aT(ax(dZ))
746- let er = aT(ax(ea))
747- let es = aT(ax(eb))
748- let et = aT(ax(ec))
749- let eu = invoke(eg, "onModifyWeight", [eq, dZ], nil)
750- if ((eu == eu))
756+ let ev = aY(aC(ee))
757+ let ew = aY(aC(ef))
758+ let ex = aY(aC(eg))
759+ let ey = aY(aC(eh))
760+ let ez = invoke(el, "onModifyWeight", [ev, ee], nil)
761+ if ((ez == ez))
751762 then {
752- let ev = invoke(eg, "onModifyWeight", [er, ea], nil)
753- if ((ev == ev))
763+ let eA = invoke(el, "onModifyWeight", [ew, ef], nil)
764+ if ((eA == eA))
754765 then {
755- let ew = invoke(eg, "onModifyWeight", [es, eb], nil)
756- if ((ew == ew))
766+ let eB = invoke(el, "onModifyWeight", [ex, eg], nil)
767+ if ((eB == eB))
757768 then {
758- let ex = invoke(eg, "onModifyWeight", [et, ec], nil)
759- if ((ex == ex))
760- then [IntegerEntry(ei, eo), IntegerEntry(ej, ep), IntegerEntry(ek, ed), IntegerEntry(el, ee), IntegerEntry(ab(dZ, 0), em), IntegerEntry(ab(ea, 0), en), IntegerEntry(ab(eb, 0), ed), IntegerEntry(ab(ec, 0), ee)]
769+ let eC = invoke(el, "onModifyWeight", [ey, eh], nil)
770+ if ((eC == eC))
771+ then [IntegerEntry(en, et), IntegerEntry(eo, eu), IntegerEntry(ep, ei), IntegerEntry(eq, ej), IntegerEntry(ag(ee, 0), er), IntegerEntry(ag(ef, 0), es), IntegerEntry(ag(eg, 0), ei), IntegerEntry(ag(eh, 0), ej)]
761772 else throw("Strict value is not equal to itself.")
762773 }
763774 else throw("Strict value is not equal to itself.")
772783
773784
774785
775-@Callable(by)
776-func checkWxEmissionPoolLabel (aA,aB) = {
777- let ey = {
778- let ba = getBoolean(az(aA, aB))
779- if ($isInstanceOf(ba, "Boolean"))
786+@Callable(bD)
787+func checkWxEmissionPoolLabel (aF,aG) = {
788+ let eD = {
789+ let bf = getBoolean(aE(aF, aG))
790+ if ($isInstanceOf(bf, "Boolean"))
780791 then {
781- let cE = ba
782- cE
792+ let cJ = bf
793+ cJ
783794 }
784795 else false
785796 }
786- $Tuple2(nil, ey)
797+ $Tuple2(nil, eD)
787798 }
788799
789800
790801
791-@Callable(by)
792-func setWxEmissionPoolLabel (aA,aB) = {
793- let cW = cl(by)
794- if ((cW == cW))
795- then $Tuple2([BooleanEntry(az(aA, aB), true)], unit)
802+@Callable(bD)
803+func setWxEmissionPoolLabel (aF,aG) = {
804+ let db = cq(bD)
805+ if ((db == db))
806+ then $Tuple2([BooleanEntry(aE(aF, aG), true)], unit)
796807 else throw("Strict value is not equal to itself.")
797808 }
798809
799810
800811
801-@Callable(by)
802-func deleteWxEmissionPoolLabel (aA,aB) = {
803- let cW = if ((by.caller == this))
812+@Callable(bD)
813+func deleteWxEmissionPoolLabel (aF,aG) = {
814+ let db = if ((bD.caller == this))
804815 then true
805- else cl(by)
806- if ((cW == cW))
807- then $Tuple2([DeleteEntry(az(aA, aB))], unit)
816+ else cq(bD)
817+ if ((db == db))
818+ then $Tuple2([DeleteEntry(aE(aF, aG))], unit)
808819 else throw("Strict value is not equal to itself.")
809820 }
810821
811822
812823
813-@Callable(by)
814-func onVerificationLoss (aO) = {
815- let cW = if ((toBase58String(by.caller.bytes) == valueOrElse(getString(this, T()), "")))
824+@Callable(bD)
825+func onVerificationLoss (aT) = {
826+ let db = if ((toBase58String(bD.caller.bytes) == valueOrElse(getString(this, X()), "")))
816827 then true
817- else bz(by)
818- if ((cW == cW))
828+ else bE(bD)
829+ if ((db == db))
819830 then {
820- let dd = bs()
821- let ez = if ((size(dd) > 0))
831+ let di = bx()
832+ let eE = if ((size(di) > 0))
822833 then true
823- else throw("invalid price assets")
824- if ((ez == ez))
834+ else K("invalid price assets")
835+ if ((eE == eE))
825836 then {
826- func eA (eB,eC) = {
827- let cy = invoke(this, "deleteWxEmissionPoolLabel", [aO, eC], nil)
828- if ((cy == cy))
837+ func eF (eG,eH) = {
838+ let cD = invoke(this, "deleteWxEmissionPoolLabel", [aT, eH], nil)
839+ if ((cD == cD))
829840 then unit
830841 else throw("Strict value is not equal to itself.")
831842 }
832843
833- let eD = {
834- let eE = dd
835- let eF = size(eE)
836- let eG = unit
837- func eH (eI,eJ) = if ((eJ >= eF))
838- then eI
839- else eA(eI, eE[eJ])
844+ let eI = {
845+ let eJ = di
846+ let eK = size(eJ)
847+ let eL = unit
848+ func eM (eN,eO) = if ((eO >= eK))
849+ then eN
850+ else eF(eN, eJ[eO])
840851
841- func eK (eI,eJ) = if ((eJ >= eF))
842- then eI
852+ func eP (eN,eO) = if ((eO >= eK))
853+ then eN
843854 else throw("List size exceeds 11")
844855
845- eK(eH(eH(eH(eH(eH(eH(eH(eH(eH(eH(eH(eG, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11)
856+ eP(eM(eM(eM(eM(eM(eM(eM(eM(eM(eM(eM(eL, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11)
846857 }
847- if ((eD == eD))
858+ if ((eI == eI))
848859 then $Tuple2(nil, unit)
849860 else throw("Strict value is not equal to itself.")
850861 }
855866
856867
857868
858-@Callable(by)
859-func isPoolOneTokenOperationsDisabledREADONLY (aa) = {
860- let dD = cc(aa)
861- let al = $Tuple2(parseIntValue(dD[B]), parseIntValue(dD[C]))
862- let eL = valueOrElse(getBoolean(ak(al)), false)
863- let eM = valueOrElse(getBoolean(an()), false)
864- $Tuple2(nil, if (eM)
869+@Callable(bD)
870+func isPoolOneTokenOperationsDisabledREADONLY (af) = {
871+ let dI = ch(af)
872+ let aq = $Tuple2(parseIntValue(dI[C]), parseIntValue(dI[D]))
873+ let eQ = valueOrElse(getBoolean(ap(aq)), false)
874+ let eR = valueOrElse(getBoolean(as()), false)
875+ $Tuple2(nil, if (eR)
865876 then true
866- else eL)
877+ else eQ)
867878 }
868879
869880
870881
871-@Callable(by)
872-func getInFeeREADONLY (aa) = {
873- let eN = co(aC(aa), aD(), 0)
874- $Tuple2(nil, eN)
882+@Callable(bD)
883+func getInFeeREADONLY (af) = {
884+ let eS = ct(aH(af), aI(), 0)
885+ $Tuple2(nil, eS)
875886 }
876887
877888
878889
879-@Callable(by)
880-func getOutFeeREADONLY (aa) = {
881- let eN = co(aE(aa), aF(), fraction(10, b, 10000))
882- $Tuple2(nil, eN)
890+@Callable(bD)
891+func getOutFeeREADONLY (af) = {
892+ let eS = ct(aJ(af), aK(), fraction(10, b, 10000))
893+ $Tuple2(nil, eS)
883894 }
884895
885896
886897
887-@Callable(by)
888-func poolInfoREADONLY (eO,eP) = {
889- let eQ = getInteger(this, af(eO))
890- let eR = getInteger(this, af(eP))
891- let eS = getString(this, aw(value(eQ), value(eR)))
892- let eT = getString(this, ax(value(eS)))
893- let dq = if (if (isDefined(eQ))
894- then isDefined(eR)
898+@Callable(bD)
899+func poolInfoREADONLY (eT,eU) = {
900+ let eV = getInteger(this, ak(eT))
901+ let eW = getInteger(this, ak(eU))
902+ let eX = getString(this, aB(value(eV), value(eW)))
903+ let eY = getString(this, aC(value(eX)))
904+ let dv = if (if (isDefined(eV))
905+ then isDefined(eW)
895906 else false)
896- then isDefined(eS)
907+ then isDefined(eX)
897908 else false
898- let eU = if (dq)
899- then $Tuple2(addressFromStringValue(value(eS)), aX(value(eT)))
909+ let eZ = if (dv)
910+ then $Tuple2(addressFromStringValue(value(eX)), bc(value(eY)))
900911 else unit
901- $Tuple2(nil, eU)
912+ $Tuple2(nil, eZ)
902913 }
903914
904915
905916
906-@Callable(by)
907-func getPoolStatusREADONLY (aa) = {
908- let cd = split(aT(au(aa)), l)
909- let ai = cd[1]
910- let aj = cd[2]
911- let cu = split(aT(ah(ai, aj)), l)
912- $Tuple2(nil, parseIntValue(cu[v]))
917+@Callable(bD)
918+func getPoolStatusREADONLY (af) = {
919+ let ci = split(aY(az(af)), m)
920+ let an = ci[1]
921+ let ao = ci[2]
922+ let cz = split(aY(am(an, ao)), m)
923+ $Tuple2(nil, parseIntValue(cz[w]))
913924 }
914925
915926
916927
917-@Callable(by)
918-func getPoolConfigREADONLY (aa) = {
919- let cd = split(aT(au(aa)), l)
920- let ai = cd[1]
921- let aj = cd[2]
922- let cu = split(aT(ah(ai, aj)), l)
923- $Tuple2(nil, cu)
928+@Callable(bD)
929+func getPoolConfigREADONLY (af) = {
930+ let ci = split(aY(az(af)), m)
931+ let an = ci[1]
932+ let ao = ci[2]
933+ let cz = split(aY(am(an, ao)), m)
934+ $Tuple2(nil, cz)
924935 }
925936
926937
927938
928-@Callable(by)
929-func getPoolConfigByLpAssetIdREADONLY (dv) = {
930- let cd = split(aT(ao(dv)), l)
931- let ai = cd[1]
932- let aj = cd[2]
933- let cu = split(aT(ah(ai, aj)), l)
934- $Tuple2(nil, cu)
939+@Callable(bD)
940+func getPoolConfigByLpAssetIdREADONLY (dA) = {
941+ let ci = split(aY(at(dA)), m)
942+ let an = ci[1]
943+ let ao = ci[2]
944+ let cz = split(aY(am(an, ao)), m)
945+ $Tuple2(nil, cz)
935946 }
936947
937948
938949
939-@Callable(by)
940-func poolExistsREADONLY (aA,aB) = $Tuple2(nil, cr(aA, aB))
950+@Callable(bD)
951+func poolExistsREADONLY (aF,aG) = $Tuple2(nil, cw(aF, aG))
941952
942953
943954
944-@Callable(by)
945-func skipOrderValidationREADONLY (aa) = $Tuple2(nil, valueOrElse(getBoolean(aG(aa)), false))
955+@Callable(bD)
956+func skipOrderValidationREADONLY (af) = $Tuple2(nil, valueOrElse(getBoolean(aL(af)), false))
946957
947958
948959
949-@Callable(by)
950-func getChangeAmpConfigREADONLY (aa) = {
951- let eV = getIntegerValue(aH(aa))
952- let eW = getIntegerValue(aI(aa))
953- let eX = getIntegerValue(aJ(aa))
954- $Tuple2(nil, [eV, eW, eX])
960+@Callable(bD)
961+func getChangeAmpConfigREADONLY (af) = {
962+ let fa = getIntegerValue(aM(af))
963+ let fb = getIntegerValue(aN(af))
964+ let fc = getIntegerValue(aO(af))
965+ $Tuple2(nil, [fa, fb, fc])
955966 }
956967
957968
958969
959-@Callable(by)
960-func getPoolWeightREADONLY (bQ) = {
961- let aa = aT(ay(bQ))
962- let eY = valueOrElse(getInteger(Z(aa)), 0)
963- $Tuple2(nil, eY)
970+@Callable(bD)
971+func getPoolWeightREADONLY (bV) = {
972+ let af = aY(aD(bV))
973+ let fd = valueOrElse(getInteger(ae(af)), 0)
974+ $Tuple2(nil, fd)
964975 }
965976
966977
967-@Verifier(eZ)
968-func fa () = {
969- let fb = {
970- let ba = bt()
971- if ($isInstanceOf(ba, "ByteVector"))
978+
979+@Callable(bD)
980+func deletePool (aA) = {
981+ let db = if (bE(bD))
982+ then true
983+ else bA
984+ if ((db == db))
985+ then {
986+ let ci = split(aY(az(aA)), m)
987+ let an = parseIntValue(ci[1])
988+ let ao = parseIntValue(ci[2])
989+ let aF = getStringValue(ai(an))
990+ let aG = getStringValue(ai(ao))
991+ let bV = aY(aC(aA))
992+ let fe = addressFromStringValue(getStringValue(Z()))
993+ let ff = invoke(fe, "deletePool", [aF, aG], nil)
994+ if ((ff == ff))
995+ then {
996+ let dh = addressFromStringValue(getStringValue(Y()))
997+ let fg = invoke(dh, "deletePool", [aF, aG], nil)
998+ if ((fg == fg))
999+ then [DeleteEntry(aC(aA)), DeleteEntry(az(aA)), DeleteEntry(av(toString(an), toString(ao))), DeleteEntry(aB(an, ao)), DeleteEntry(am(toString(an), toString(ao))), DeleteEntry(at(bV)), DeleteEntry(aD(bV)), DeleteEntry(aE(aF, aG)), DeleteEntry(ae(aA)), DeleteEntry(ay(aA)), DeleteEntry(aH(aA)), DeleteEntry(aJ(aA)), DeleteEntry(aL(aA)), DeleteEntry(aM(aA)), DeleteEntry(aN(aA)), DeleteEntry(aO(aA))]
1000+ else throw("Strict value is not equal to itself.")
1001+ }
1002+ else throw("Strict value is not equal to itself.")
1003+ }
1004+ else throw("Strict value is not equal to itself.")
1005+ }
1006+
1007+
1008+@Verifier(fh)
1009+func fi () = {
1010+ let fj = {
1011+ let bf = by()
1012+ if ($isInstanceOf(bf, "ByteVector"))
9721013 then {
973- let bA = ba
974- bA
1014+ let bF = bf
1015+ bF
9751016 }
976- else if ($isInstanceOf(ba, "Unit"))
977- then eZ.senderPublicKey
1017+ else if ($isInstanceOf(bf, "Unit"))
1018+ then fh.senderPublicKey
9781019 else throw("Match error")
9791020 }
980- sigVerify(eZ.bodyBytes, eZ.proofs[0], fb)
1021+ sigVerify(fh.bodyBytes, fh.proofs[0], fj)
9811022 }
9821023
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 8
55
66 let b = 100000000
77
88 let c = 1000000000000
99
1010 let d = 18
1111
1212 let e = toBigInt(1000000000000000000)
1313
1414 let f = b
1515
1616 let g = "GWXvirtualPOOL"
1717
1818 let h = "POOLS_LP"
1919
2020 let i = 2000000
2121
2222 let j = "WAVES"
2323
24-let k = ((100 * 1000) * 1000)
24+let k = "factory_v2.ride"
2525
26-let l = "__"
26+let l = ((100 * 1000) * 1000)
2727
28-let m = ""
28+let m = "__"
2929
30-let n = 1
30+let n = ""
3131
32-let o = 2
32+let o = 1
3333
34-let p = 3
34+let p = 2
3535
36-let q = 4
36+let q = 3
3737
38-let r = 1
38+let r = 4
3939
40-let s = 2
40+let s = 1
4141
42-let t = 3
42+let t = 2
4343
44-let u = 1
44+let u = 3
4545
46-let v = 2
46+let v = 1
4747
48-let w = 3
48+let w = 2
4949
50-let x = 4
50+let x = 3
5151
52-let y = 5
52+let y = 4
5353
54-let z = 6
54+let z = 5
5555
56-let A = 7
56+let A = 6
5757
58-let B = 8
58+let B = 7
5959
60-let C = 9
60+let C = 8
6161
62-let D = 10
62+let D = 9
6363
64-let E = 11
64+let E = 10
6565
66-let F = "WX_EMISSION"
66+let F = 11
6767
68-let G = [F]
68+let G = "WX_EMISSION"
6969
70-func H () = "%s__allowedLpScriptHash"
70+let H = [G]
71+
72+func I (J) = makeString([k, ": ", J], "")
7173
7274
73-func I () = "%s__allowedLpStableScriptHash"
75+func K (J) = throw(I(J))
7476
7577
76-func J () = "%s__swapContract"
78+func L () = "%s__allowedLpScriptHash"
7779
7880
79-func K () = "%s__factoryConfig"
81+func M () = "%s__allowedLpStableScriptHash"
8082
8183
82-func L () = "%s__lpTokensList"
84+func N () = "%s__swapContract"
8385
8486
85-func M () = "%s%s__pool__scriptHash"
87+func O () = "%s__factoryConfig"
8688
8789
88-func N () = "%s%s__matcher__publicKey"
90+func P () = "%s__lpTokensList"
8991
9092
91-func O () = "%s__legacyFactoryContract"
93+func Q () = "%s%s__pool__scriptHash"
9294
9395
94-func P () = "%s__legacyPools"
96+func R () = "%s%s__matcher__publicKey"
9597
9698
97-func Q () = "%s__managerPublicKey"
99+func S () = "%s__legacyFactoryContract"
98100
99101
100-func R () = "%s__managerVaultAddress"
102+func T () = "%s__legacyPools"
101103
102104
103-func S () = "%s__adminPubKeys"
105+func U () = "%s__managerPublicKey"
104106
105107
106-func T () = "%s__assetsStoreContract"
108+func V () = "%s__managerVaultAddress"
107109
108110
109-func U () = "%s__votingEmissionContract"
111+func W () = "%s__adminPubKeys"
110112
111113
112-func V () = makeString(["%s", "priceAssets"], l)
114+func X () = "%s__assetsStoreContract"
113115
114116
115-func W () = "%s__priceDecimals"
117+func Y () = "%s__votingEmissionContract"
116118
117119
118-func X () = "%s__shutdown"
120+func Z () = "%s__userPoolsContract"
119121
120122
121-func Y () = "%s__nextInternalAssetId"
123+func aa () = makeString(["%s", "priceAssets"], m)
122124
123125
124-func Z (aa) = ("%s%s__poolWeight__" + aa)
126+func ab () = "%s__priceDecimals"
125127
126128
127-func ab (aa,ac) = ((("%s%s__poolWeight__" + aa) + "__") + toString(ac))
129+func ac () = "%s__shutdown"
128130
129131
130-func ad (ae) = ("%s%s%d__mappings__internal2baseAssetId__" + toString(ae))
132+func ad () = "%s__nextInternalAssetId"
131133
132134
133-func af (ag) = ("%s%s%s__mappings__baseAsset2internalId__" + ag)
135+func ae (af) = ("%s%s__poolWeight__" + af)
134136
135137
136-func ah (ai,aj) = (((("%d%d%s__" + ai) + "__") + aj) + "__config")
138+func ag (af,ah) = ((("%s%s__poolWeight__" + af) + "__") + toString(ah))
137139
138140
139-func ak (al) = {
140- let am = al
141- let ai = am._1
142- let aj = am._2
143- makeString(["%d%d%s", toString(ai), toString(aj), "oneTokenOperationsDisabled"], l)
141+func ai (aj) = ("%s%s%d__mappings__internal2baseAssetId__" + toString(aj))
142+
143+
144+func ak (al) = ("%s%s%s__mappings__baseAsset2internalId__" + al)
145+
146+
147+func am (an,ao) = (((("%d%d%s__" + an) + "__") + ao) + "__config")
148+
149+
150+func ap (aq) = {
151+ let ar = aq
152+ let an = ar._1
153+ let ao = ar._2
154+ makeString(["%d%d%s", toString(an), toString(ao), "oneTokenOperationsDisabled"], m)
144155 }
145156
146157
147-func an () = makeString(["%s", "oneTokenOperationsDisabled"], l)
158+func as () = makeString(["%s", "oneTokenOperationsDisabled"], m)
148159
149160
150-func ao (ap) = (("%s%s%s__" + ap) + "__mappings__lpAsset2Pool")
161+func at (au) = (("%s%s%s__" + au) + "__mappings__lpAsset2Pool")
151162
152163
153-func aq (ar,as) = (((("%d%d%s%s__" + ar) + "__") + as) + "__mappings__PoolAssets2LpAsset")
164+func av (aw,ax) = (((("%d%d%s%s__" + aw) + "__") + ax) + "__mappings__PoolAssets2LpAsset")
154165
155166
156-func at (aa) = ("%s%s__spread__" + aa)
167+func ay (af) = ("%s%s__spread__" + af)
157168
158169
159-func au (av) = (("%s%s%s__" + av) + "__mappings__poolContract2PoolAssets")
170+func az (aA) = (("%s%s%s__" + aA) + "__mappings__poolContract2PoolAssets")
160171
161172
162-func aw (ar,as) = (((("%d%d%s%s__" + toString(ar)) + "__") + toString(as)) + "__mappings__poolAssets2PoolContract")
173+func aB (aw,ax) = (((("%d%d%s%s__" + toString(aw)) + "__") + toString(ax)) + "__mappings__poolAssets2PoolContract")
163174
164175
165-func ax (av) = (("%s%s%s__" + av) + "__mappings__poolContract2LpAsset")
176+func aC (aA) = (("%s%s%s__" + aA) + "__mappings__poolContract2LpAsset")
166177
167178
168-func ay (ap) = (("%s%s%s__" + ap) + "__mappings__lpAsset2PoolContract")
179+func aD (au) = (("%s%s%s__" + au) + "__mappings__lpAsset2PoolContract")
169180
170181
171-func az (aA,aB) = ((("%s%s%s__wxEmission__" + aA) + "__") + aB)
182+func aE (aF,aG) = ((("%s%s%s__wxEmission__" + aF) + "__") + aG)
172183
173184
174-func aC (aa) = ("%s%s__inFee__" + aa)
185+func aH (af) = ("%s%s__inFee__" + af)
175186
176187
177-func aD () = "%s__inFeeDefault"
188+func aI () = "%s__inFeeDefault"
178189
179190
180-func aE (aa) = ("%s%s__outFee__" + aa)
191+func aJ (af) = ("%s%s__outFee__" + af)
181192
182193
183-func aF () = "%s__outFeeDefault"
194+func aK () = "%s__outFeeDefault"
184195
185196
186-func aG (aa) = ("%s%s__skipOrderValidation__" + aa)
197+func aL (af) = ("%s%s__skipOrderValidation__" + af)
187198
188199
189-func aH (aa) = ("%s%s__changeAmpDelay__" + aa)
200+func aM (af) = ("%s%s__changeAmpDelay__" + af)
190201
191202
192-func aI (aa) = ("%s%s__changeAmpDelta__" + aa)
203+func aN (af) = ("%s%s__changeAmpDelta__" + af)
193204
194205
195-func aJ (aa) = ("%s%s__changeAmpTarget__" + aa)
206+func aO (af) = ("%s%s__changeAmpTarget__" + af)
196207
197208
198-func aK () = "%s__sWavesProxyAddress"
209+func aP () = "%s__sWavesProxyAddress"
199210
200211
201-func aL () = "%s__sWavesAssetId"
212+func aQ () = "%s__sWavesAssetId"
202213
203214
204-func aM () = "%s__stakingProfitAddress"
215+func aR () = "%s__stakingProfitAddress"
205216
206217
207-func aN (aa,aO) = makeString(["%s%s%s", "leasedRatio", aa, aO], l)
218+func aS (af,aT) = makeString(["%s%s%s", "leasedRatio", af, aT], m)
208219
209220
210-func aP (aO) = makeString(["%s%s", "leasedRatioDefault", aO], l)
221+func aU (aT) = makeString(["%s%s", "leasedRatioDefault", aT], m)
211222
212223
213-func aQ (aa,aO) = makeString(["%s%s%s", "leasedRatioTolerance", aa, aO], l)
224+func aV (af,aT) = makeString(["%s%s%s", "leasedRatioTolerance", af, aT], m)
214225
215226
216-func aR (aa,aO) = makeString(["%s%s%s", "minBalance", aa, aO], l)
227+func aW (af,aT) = makeString(["%s%s%s", "minBalance", af, aT], m)
217228
218229
219-func aS (aO) = makeString(["%s%s", "minBalanceDefault", aO], l)
230+func aX (aT) = makeString(["%s%s", "minBalanceDefault", aT], m)
220231
221232
222-func aT (aU) = valueOrErrorMessage(getString(this, aU), ("No data for this.key=" + aU))
233+func aY (aZ) = valueOrErrorMessage(getString(this, aZ), ("No data for this.key=" + aZ))
223234
224235
225-func aV (aU) = valueOrErrorMessage(getBoolean(this, aU), ("No data for this.key=" + aU))
236+func ba (aZ) = valueOrErrorMessage(getBoolean(this, aZ), ("No data for this.key=" + aZ))
226237
227238
228-func aW (aU) = valueOrErrorMessage(getInteger(this, aU), ("No data for this.key=" + aU))
239+func bb (aZ) = valueOrErrorMessage(getInteger(this, aZ), ("No data for this.key=" + aZ))
229240
230241
231-func aX (aY) = if ((aY == j))
242+func bc (bd) = if ((bd == j))
232243 then unit
233- else fromBase58String(aY)
244+ else fromBase58String(bd)
234245
235246
236-func aZ () = {
237- let ba = getString(R())
238- if ($isInstanceOf(ba, "String"))
247+func be () = {
248+ let bf = getString(V())
249+ if ($isInstanceOf(bf, "String"))
239250 then {
240- let bb = ba
241- addressFromStringValue(bb)
251+ let bg = bf
252+ addressFromStringValue(bg)
242253 }
243254 else this
244255 }
245256
246257
247-let bc = 1
258+let bh = 1
248259
249-let bd = 2
260+let bi = 2
250261
251-let be = 3
262+let bj = 3
252263
253-let bf = 4
264+let bk = 4
254265
255-let bg = 5
266+let bl = 5
256267
257-let bh = 6
268+let bm = 6
258269
259-let bi = 7
270+let bn = 7
260271
261-let bj = 8
272+let bo = 8
262273
263-let bk = 9
274+let bp = 9
264275
265-let bl = 10
276+let bq = 10
266277
267-let bm = 11
278+let br = 11
268279
269-func bn (bo) = addressFromStringValue(bo[bd])
280+func bs (bt) = addressFromStringValue(bt[bi])
270281
271282
272-func bp (bo) = addressFromStringValue(bo[bg])
283+func bu (bt) = addressFromStringValue(bt[bl])
273284
274285
275-func bq (bo) = addressFromStringValue(bo[bc])
286+func bv (bt) = addressFromStringValue(bt[bh])
276287
277288
278-func br (bo) = addressFromStringValue(bo[bl])
289+func bw (bt) = addressFromStringValue(bt[bq])
279290
280291
281-func bs () = {
282- let ba = getString(V())
283- if ($isInstanceOf(ba, "String"))
292+func bx () = {
293+ let bf = getString(aa())
294+ if ($isInstanceOf(bf, "String"))
284295 then {
285- let bb = ba
286- if ((size(bb) == 0))
296+ let bg = bf
297+ if ((size(bg) == 0))
287298 then nil
288- else split(bb, l)
299+ else split(bg, m)
289300 }
290301 else nil
291302 }
292303
293304
294-func bt () = {
295- let bu = aZ()
296- let ba = getString(bu, Q())
297- if ($isInstanceOf(ba, "String"))
305+func by () = {
306+ let bz = be()
307+ let bf = getString(bz, U())
308+ if ($isInstanceOf(bf, "String"))
298309 then {
299- let bb = ba
300- fromBase58String(bb)
310+ let bg = bf
311+ fromBase58String(bg)
301312 }
302- else if ($isInstanceOf(ba, "Unit"))
313+ else if ($isInstanceOf(bf, "Unit"))
303314 then unit
304315 else throw("Match error")
305316 }
306317
307318
308-let bv = throw("Permission denied")
319+let bA = K("Permission denied")
309320
310-let bw = throw("Test error here")
321+let bB = K("Test error here")
311322
312-func bx (by) = if ((by.caller == this))
323+func bC (bD) = if ((bD.caller == this))
313324 then true
314- else bv
325+ else bA
315326
316327
317-func bz (by) = {
318- let ba = bt()
319- if ($isInstanceOf(ba, "ByteVector"))
328+func bE (bD) = {
329+ let bf = by()
330+ if ($isInstanceOf(bf, "ByteVector"))
320331 then {
321- let bA = ba
322- if ((by.callerPublicKey == bA))
332+ let bF = bf
333+ if ((bD.callerPublicKey == bF))
323334 then true
324- else bv
335+ else bA
325336 }
326- else if ($isInstanceOf(ba, "Unit"))
327- then bx(by)
337+ else if ($isInstanceOf(bf, "Unit"))
338+ then bC(bD)
328339 else throw("Match error")
329340 }
330341
331342
332-func bB (bC,bD,bE,bF,bG,bH,bI,bJ,bK,bL,bM) = makeString(["%s%s%s%s%s%s%s%s%s%s%s", bC, bD, bE, bF, bG, bH, bI, bJ, bK, bL, bM], l)
343+func bG (bH,bI,bJ,bK,bL,bM,bN,bO,bP,bQ,bR) = makeString(["%s%s%s%s%s%s%s%s%s%s%s", bH, bI, bJ, bK, bL, bM, bN, bO, bP, bQ, bR], m)
333344
334345
335-func bN (bC,bD,bE,bF,bG,bH,bI) = makeString(["%s%s%s%s%s%s", bC, bD, bE, bF, bG, bH, bI], l)
346+func bS (bH,bI,bJ,bK,bL,bM,bN) = makeString(["%s%s%s%s%s%s", bH, bI, bJ, bK, bL, bM, bN], m)
336347
337348
338-func bO (aa,bP,bQ,bR,bS,bT,bU,bV,bW,bX,bY) = makeString(["%s%d%s%s%s%d%d%d%d%d%s", aa, bP, bQ, bR, bS, toString(bT), toString(bU), toString(bV), toString(bW), toString(bX), bY], l)
349+func bT (af,bU,bV,bW,bX,bY,bZ,ca,cb,cc,cd) = makeString(["%s%d%s%s%s%d%d%d%d%d%s", af, bU, bV, bW, bX, toString(bY), toString(bZ), toString(ca), toString(cb), toString(cc), cd], m)
339350
340351
341-func bZ (ca,cb) = makeString(["%d%d", toString(ca), toString(cb)], l)
352+func ce (cf,cg) = makeString(["%d%d", toString(cf), toString(cg)], m)
342353
343354
344-func cc (aa) = {
345- let cd = split(aT(au(aa)), l)
346- let ai = cd[1]
347- let aj = cd[2]
348- split(aT(ah(ai, aj)), l)
355+func ch (af) = {
356+ let ci = split(aY(az(af)), m)
357+ let an = ci[1]
358+ let ao = ci[2]
359+ split(aY(am(an, ao)), m)
349360 }
350361
351362
352-func ce (cf,cg) = {
353- let ch = valueOrElse(getInteger(this, af(cf)), 0)
354- let ci = valueOrElse(getInteger(this, Y()), 0)
355- let cj = if ((ch == 0))
363+func cj (ck,cl) = {
364+ let cm = valueOrElse(getInteger(this, ak(ck)), 0)
365+ let cn = valueOrElse(getInteger(this, ad()), 0)
366+ let co = if ((cm == 0))
356367 then {
357- let ck = (ci + cg)
358- $Tuple3(ck, [IntegerEntry(Y(), ck), IntegerEntry(af(cf), ck), StringEntry(ad(ck), cf)], true)
368+ let cp = (cn + cl)
369+ $Tuple3(cp, [IntegerEntry(ad(), cp), IntegerEntry(ak(ck), cp), StringEntry(ai(cp), ck)], true)
359370 }
360- else $Tuple3(ch, nil, false)
361- cj
371+ else $Tuple3(cm, nil, false)
372+ co
362373 }
363374
364375
365-func cl (by) = {
366- let cm = split(valueOrElse(getString(S()), m), l)
367- if (containsElement(cm, toBase58String(by.callerPublicKey)))
376+func cq (bD) = {
377+ let cr = split(valueOrElse(getString(W()), n), m)
378+ if (containsElement(cr, toBase58String(bD.callerPublicKey)))
368379 then true
369380 else {
370- let cn = bz(by)
371- if ((cn == cn))
381+ let cs = bE(bD)
382+ if ((cs == cs))
372383 then true
373384 else throw("Strict value is not equal to itself.")
374385 }
375386 }
376387
377388
378-func co (aU,cp,cq) = valueOrElse(getInteger(this, aU), valueOrElse(getInteger(this, cp), cq))
389+func ct (aZ,cu,cv) = valueOrElse(getInteger(this, aZ), valueOrElse(getInteger(this, cu), cv))
379390
380391
381-func cr (aA,aB) = {
382- let ai = getInteger(af(aA))
383- let aj = getInteger(af(aB))
384- if (if ((ai == unit))
392+func cw (aF,aG) = {
393+ let an = getInteger(ak(aF))
394+ let ao = getInteger(ak(aG))
395+ if (if ((an == unit))
385396 then true
386- else (aj == unit))
397+ else (ao == unit))
387398 then false
388399 else {
389- let cs = toString(value(ai))
390- let ct = toString(value(aj))
391- let cu = getString(ah(cs, ct))
392- let cv = getString(ah(ct, cs))
393- let cw = if ((cu != unit))
400+ let cx = toString(value(an))
401+ let cy = toString(value(ao))
402+ let cz = getString(am(cx, cy))
403+ let cA = getString(am(cy, cx))
404+ let cB = if ((cz != unit))
394405 then true
395- else (cv != unit)
396- cw
406+ else (cA != unit)
407+ cB
397408 }
398409 }
399410
400411
401-@Callable(by)
402-func getSwapContractREADONLY () = $Tuple2(nil, aT(J()))
412+@Callable(bD)
413+func getSwapContractREADONLY () = $Tuple2(nil, aY(N()))
403414
404415
405416
406-@Callable(by)
407-func getPoolLeaseConfigREADONLY (aa,aO) = {
408- let cx = {
409- let ba = getInteger(this, aN(aa, aO))
410- if ($isInstanceOf(ba, "Int"))
417+@Callable(bD)
418+func getPoolLeaseConfigREADONLY (af,aT) = {
419+ let cC = {
420+ let bf = getInteger(this, aS(af, aT))
421+ if ($isInstanceOf(bf, "Int"))
411422 then {
412- let cy = ba
413- $Tuple2(true, min([100, max([0, cy])]))
423+ let cD = bf
424+ $Tuple2(true, min([100, max([0, cD])]))
414425 }
415426 else {
416- let cz = getInteger(this, aP(aO))
417- if ($isInstanceOf(cz, "Int"))
427+ let cE = getInteger(this, aU(aT))
428+ if ($isInstanceOf(cE, "Int"))
418429 then {
419- let cA = cz
420- $Tuple2(true, min([100, max([0, cA])]))
430+ let cF = cE
431+ $Tuple2(true, min([100, max([0, cF])]))
421432 }
422433 else $Tuple2(false, 0)
423434 }
424435 }
425- let cB = cx._1
426- let cC = cx._2
427- let cD = {
428- let ba = getInteger(this, aR(aa, aO))
429- if ($isInstanceOf(ba, "Int"))
436+ let cG = cC._1
437+ let cH = cC._2
438+ let cI = {
439+ let bf = getInteger(this, aW(af, aT))
440+ if ($isInstanceOf(bf, "Int"))
430441 then {
431- let cE = ba
432- max([0, cE])
442+ let cJ = bf
443+ max([0, cJ])
433444 }
434445 else {
435- let cz = getInteger(this, aS(aO))
436- if ($isInstanceOf(cz, "Int"))
446+ let cE = getInteger(this, aX(aT))
447+ if ($isInstanceOf(cE, "Int"))
437448 then {
438- let cF = cz
439- max([0, cF])
449+ let cK = cE
450+ max([0, cK])
440451 }
441452 else 0
442453 }
443454 }
444- let cG = if ((aO == "WAVES"))
445- then $Tuple3(valueOrElse(getString(this, aK()), ""), getString(this, valueOrElse(aL(), "")), c)
455+ let cL = if ((aT == "WAVES"))
456+ then $Tuple3(valueOrElse(getString(this, aP()), ""), getString(this, valueOrElse(aQ(), "")), c)
446457 else $Tuple3("", "", 0)
447- let cH = cG._1
448- let cI = cG._2
449- let cJ = cG._3
450- let cK = valueOrElse(getString(this, aM()), "")
451- $Tuple2(nil, $Tuple7(cB, cC, cD, cH, cI, cJ, cK))
458+ let cM = cL._1
459+ let cN = cL._2
460+ let cO = cL._3
461+ let cP = valueOrElse(getString(this, aR()), "")
462+ $Tuple2(nil, $Tuple7(cG, cH, cI, cM, cN, cO, cP))
452463 }
453464
454465
455466
456-@Callable(by)
457-func getLpAssetFromPoolAssetsREADONLY (cL,cM) = if (if ((cL == "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS"))
458- then (cM == "WAVES")
467+@Callable(bD)
468+func getLpAssetFromPoolAssetsREADONLY (cQ,cR) = if (if ((cQ == "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS"))
469+ then (cR == "WAVES")
459470 else false)
460471 then $Tuple2(nil, unit)
461472 else {
462- let cN = value(getInteger(this, af(cL)))
463- let cO = value(getInteger(this, af(cM)))
464- let cP = getString(this, aq(toString(cN), toString(cO)))
465- let cQ = if ((cP == unit))
473+ let cS = value(getInteger(this, ak(cQ)))
474+ let cT = value(getInteger(this, ak(cR)))
475+ let cU = getString(this, av(toString(cS), toString(cT)))
476+ let cV = if ((cU == unit))
466477 then unit
467- else drop(value(cP), 4)
468- $Tuple2(nil, cQ)
478+ else drop(value(cU), 4)
479+ $Tuple2(nil, cV)
469480 }
470481
471482
472483
473-@Callable(by)
474-func getPoolAddressFromLpAssetREADONLY (cR) = $Tuple2(nil, valueOrElse(getString(this, ay(cR)), ""))
484+@Callable(bD)
485+func getPoolAddressFromLpAssetREADONLY (cW) = $Tuple2(nil, valueOrElse(getString(this, aD(cW)), ""))
475486
476487
477488
478-@Callable(by)
479-func constructor (cS,cT,bE,bF,bG,bH,cU,cV) = {
480- let cW = bz(by)
481- if ((cW == cW))
482- then [StringEntry(K(), bN(cS, cT, bE, bF, bG, bH, cU)), IntegerEntry(W(), cV)]
489+@Callable(bD)
490+func constructor (cX,cY,bJ,bK,bL,bM,cZ,da) = {
491+ let db = bE(bD)
492+ if ((db == db))
493+ then [StringEntry(O(), bS(cX, cY, bJ, bK, bL, bM, cZ)), IntegerEntry(ab(), da)]
483494 else throw("Strict value is not equal to itself.")
484495 }
485496
486497
487498
488-@Callable(by)
489-func constructorV2 (cX) = {
490- let cW = bz(by)
491- if ((cW == cW))
499+@Callable(bD)
500+func constructorV2 (dc) = {
501+ let db = bE(bD)
502+ if ((db == db))
492503 then {
493- let cY = addressFromPublicKey(fromBase58String(cX))
494- if ((cY == cY))
495- then [StringEntry(N(), cX)]
504+ let dd = addressFromPublicKey(fromBase58String(dc))
505+ if ((dd == dd))
506+ then [StringEntry(R(), dc)]
496507 else throw("Strict value is not equal to itself.")
497508 }
498509 else throw("Strict value is not equal to itself.")
499510 }
500511
501512
502513
503-@Callable(by)
504-func constructorV3 (bJ,bK,bL,bM) = {
505- let cW = bz(by)
506- if ((cW == cW))
514+@Callable(bD)
515+func constructorV3 (bO,bP,bQ,bR) = {
516+ let db = bE(bD)
517+ if ((db == db))
507518 then {
508- let bo = split(aT(K()), l)
509-[StringEntry(K(), bB(bo[1], bo[2], bo[3], bo[4], bo[5], bo[6], bo[7], bJ, bK, bL, bM))]
519+ let bt = split(aY(O()), m)
520+[StringEntry(O(), bG(bt[1], bt[2], bt[3], bt[4], bt[5], bt[6], bt[7], bO, bP, bQ, bR))]
510521 }
511522 else throw("Strict value is not equal to itself.")
512523 }
513524
514525
515526
516-@Callable(by)
517-func constructorV4 (cZ,da) = {
518- let cW = bz(by)
519- if ((cW == cW))
520- then [StringEntry(O(), cZ), StringEntry(P(), makeString(da, l))]
527+@Callable(bD)
528+func constructorV4 (de,df) = {
529+ let db = bE(bD)
530+ if ((db == db))
531+ then [StringEntry(S(), de), StringEntry(T(), makeString(df, m))]
521532 else throw("Strict value is not equal to itself.")
522533 }
523534
524535
525536
526-@Callable(by)
527-func constructorV5 (db) = {
528- let cW = bz(by)
529- if ((cW == cW))
530- then [StringEntry(T(), db)]
537+@Callable(bD)
538+func constructorV5 (dg) = {
539+ let db = bE(bD)
540+ if ((db == db))
541+ then [StringEntry(X(), dg)]
531542 else throw("Strict value is not equal to itself.")
532543 }
533544
534545
535546
536-@Callable(by)
537-func constructorV6 (dc,dd) = {
538- let de = [bz(by), if ((addressFromString(dc) != unit))
547+@Callable(bD)
548+func constructorV6 (dh,di) = {
549+ let dj = [bE(bD), if ((addressFromString(dh) != unit))
539550 then true
540551 else "invalid voting emission contract address"]
541- if ((de == de))
542- then [StringEntry(U(), dc), StringEntry(V(), makeString(dd, l))]
552+ if ((dj == dj))
553+ then [StringEntry(Y(), dh), StringEntry(aa(), makeString(di, m))]
543554 else throw("Strict value is not equal to itself.")
544555 }
545556
546557
547558
548-@Callable(by)
549-func setAdmins (df) = {
550- let cW = bz(by)
551- if ((cW == cW))
552- then [StringEntry(S(), makeString(df, l))]
559+@Callable(bD)
560+func setAdmins (dk) = {
561+ let db = bE(bD)
562+ if ((db == db))
563+ then [StringEntry(W(), makeString(dk, m))]
553564 else throw("Strict value is not equal to itself.")
554565 }
555566
556567
557568
558-@Callable(by)
559-func activateNewPool (aa,bR,bS,dg,dh,di,bY,dj) = {
560- let cW = cl(by)
561- if ((cW == cW))
562- then if (isDefined(getString(au(aa))))
563- then throw((("Pool address " + aa) + " already registered."))
569+@Callable(bD)
570+func activateNewPool (af,bW,bX,dl,dm,dn,cd,do) = {
571+ let db = cq(bD)
572+ if ((db == db))
573+ then if (isDefined(getString(az(af))))
574+ then K((("Pool address " + af) + " already registered."))
564575 else {
565- let dk = ce(bR, 1)
566- let dl = dk._1
567- let dm = ce(bS, if (dk._3)
576+ let dp = cj(bW, 1)
577+ let dq = dp._1
578+ let dr = cj(bX, if (dp._3)
568579 then 2
569580 else 1)
570- let dn = dm._1
571- let do = valueOrErrorMessage(scriptHash(addressFromStringValue(aa)), ("No script has been found on pool account " + aa))
572- let dp = getBinaryValue(M())
573- let dq = cr(bR, bS)
574- if (dq)
575- then throw((((("Pool " + bR) + "/") + bS) + " has already been activated."))
581+ let ds = dr._1
582+ let dt = valueOrErrorMessage(scriptHash(addressFromStringValue(af)), ("No script has been found on pool account " + af))
583+ let du = getBinaryValue(Q())
584+ let dv = cw(bW, bX)
585+ if (dv)
586+ then K((((("Pool " + bW) + "/") + bX) + " has already been activated."))
576587 else {
577- let dr = value(getString(this, ah(toString(dl), toString(dn))))
578- let ds = if ((bR == "WAVES"))
579- then k
580- else pow(10, 0, value(assetInfo(fromBase58String(bR))).decimals, 0, 0, DOWN)
581- let dt = if ((bS == "WAVES"))
582- then k
583- else pow(10, 0, value(assetInfo(fromBase58String(bS))).decimals, 0, 0, DOWN)
584- let du = Issue(dg, dh, 1, 8, true)
585- let bQ = calculateAssetId(du)
586- let dv = toBase58String(bQ)
587- let dw = invoke(addressFromStringValue(aa), "activate", [bR, bS], nil)
588- if ((dw == dw))
589- then if ((dw != "success"))
590- then throw("Pool initialisation error happened.")
588+ let dw = value(getString(this, am(toString(dq), toString(ds))))
589+ let dx = if ((bW == "WAVES"))
590+ then l
591+ else pow(10, 0, value(assetInfo(fromBase58String(bW))).decimals, 0, 0, DOWN)
592+ let dy = if ((bX == "WAVES"))
593+ then l
594+ else pow(10, 0, value(assetInfo(fromBase58String(bX))).decimals, 0, 0, DOWN)
595+ let dz = Issue(dl, dm, 1, 8, true)
596+ let bV = calculateAssetId(dz)
597+ let dA = toBase58String(bV)
598+ let dB = invoke(addressFromStringValue(af), "activate", [bW, bX], nil)
599+ if ((dB == dB))
600+ then if ((dB != "success"))
601+ then K("Pool initialisation error happened.")
591602 else {
592- let db = addressFromStringValue(aT(T()))
593- let dx = invoke(db, "createOrUpdate", [dv, dg, false], nil)
594- if ((dx == dx))
603+ let dg = addressFromStringValue(aY(X()))
604+ let dC = invoke(dg, "createOrUpdate", [dA, dl, false], nil)
605+ if ((dC == dC))
595606 then {
596- let dy = invoke(db, "addLabel", [dv, h], nil)
597- if ((dy == dy))
607+ let dD = invoke(dg, "addLabel", [dA, h], nil)
608+ if ((dD == dD))
598609 then {
599- let dz = invoke(db, "setLogo", [dv, dj], nil)
600- if ((dz == dz))
610+ let dE = invoke(dg, "setLogo", [dA, do], nil)
611+ if ((dE == dE))
601612 then {
602- let dA = invoke(db, "addAssetsLink", [bR, bS, dv], nil)
603- if ((dA == dA))
613+ let dF = invoke(dg, "addAssetsLink", [bW, bX, dA], nil)
614+ if ((dF == dF))
604615 then {
605- let dB = invoke(db, "increaseAssetPoolsNumber", [bR], nil)
606- if ((dB == dB))
607- then $Tuple2(((dk._2 ++ dm._2) ++ [du, Burn(bQ, 1), StringEntry(ah(toString(dl), toString(dn)), bO(aa, toString(n), dv, bR, bS, ds, dt, dl, dn, k, bY)), StringEntry(ao(dv), bZ(dl, dn)), StringEntry(aq(toString(dl), toString(dn)), ("%s__" + dv)), StringEntry(au(aa), bZ(dl, dn)), StringEntry(aw(dl, dn), aa), StringEntry(ay(dv), aa), StringEntry(ax(aa), dv), IntegerEntry(Z(aa), di), IntegerEntry(at(aa), i)]), dv)
616+ let dG = invoke(dg, "increaseAssetPoolsNumber", [bW], nil)
617+ if ((dG == dG))
618+ then $Tuple2(((dp._2 ++ dr._2) ++ [dz, Burn(bV, 1), StringEntry(am(toString(dq), toString(ds)), bT(af, toString(o), dA, bW, bX, dx, dy, dq, ds, l, cd)), StringEntry(at(dA), ce(dq, ds)), StringEntry(av(toString(dq), toString(ds)), ("%s__" + dA)), StringEntry(az(af), ce(dq, ds)), StringEntry(aB(dq, ds), af), StringEntry(aD(dA), af), StringEntry(aC(af), dA), IntegerEntry(ae(af), dn), IntegerEntry(ay(af), i)]), dA)
608619 else throw("Strict value is not equal to itself.")
609620 }
610621 else throw("Strict value is not equal to itself.")
611622 }
612623 else throw("Strict value is not equal to itself.")
613624 }
614625 else throw("Strict value is not equal to itself.")
615626 }
616627 else throw("Strict value is not equal to itself.")
617628 }
618629 else throw("Strict value is not equal to itself.")
619630 }
620631 }
621632 else throw("Strict value is not equal to itself.")
622633 }
623634
624635
625636
626-@Callable(by)
627-func managePool (aa,dC) = {
628- let cW = bz(by)
629- if ((cW == cW))
637+@Callable(bD)
638+func managePool (af,dH) = {
639+ let db = bE(bD)
640+ if ((db == db))
630641 then {
631- let dD = cc(aa)
632- let bP = dD[v]
633- let dv = dD[w]
634- let bR = dD[x]
635- let bS = dD[y]
636- let ds = parseIntValue(dD[z])
637- let dt = parseIntValue(dD[A])
638- let dl = parseIntValue(dD[B])
639- let dn = parseIntValue(dD[C])
640- let dE = parseIntValue(dD[D])
641- let bY = dD[E]
642-[StringEntry(ah(toString(dl), toString(dn)), bO(aa, toString(dC), dv, bR, bS, ds, dt, dl, dn, dE, bY))]
642+ let dI = ch(af)
643+ let bU = dI[w]
644+ let dA = dI[x]
645+ let bW = dI[y]
646+ let bX = dI[z]
647+ let dx = parseIntValue(dI[A])
648+ let dy = parseIntValue(dI[B])
649+ let dq = parseIntValue(dI[C])
650+ let ds = parseIntValue(dI[D])
651+ let dJ = parseIntValue(dI[E])
652+ let cd = dI[F]
653+[StringEntry(am(toString(dq), toString(ds)), bT(af, toString(dH), dA, bW, bX, dx, dy, dq, ds, dJ, cd))]
643654 }
644655 else throw("Strict value is not equal to itself.")
645656 }
646657
647658
648659
649-@Callable(by)
650-func emit (dF) = {
651- let dG = by.caller
652- let dH = by.originCaller
653- let dI = valueOrErrorMessage(getString(ax(toString(dG))), "Invalid LP address called me.")
654- let dJ = fromBase58String(dI)
655- let da = split(valueOrElse(getString(P()), m), l)
656- let cZ = addressFromStringValue(valueOrErrorMessage(getString(O()), "Legacy factory contract does not exists."))
657- if ((0 >= dF))
660+@Callable(bD)
661+func emit (dK) = {
662+ let dL = bD.caller
663+ let dM = bD.originCaller
664+ let dN = valueOrErrorMessage(getString(aC(toString(dL))), "Invalid LP address called me.")
665+ let dO = fromBase58String(dN)
666+ let df = split(valueOrElse(getString(T()), n), m)
667+ let de = addressFromStringValue(valueOrErrorMessage(getString(S()), "Legacy factory contract does not exists."))
668+ if ((0 >= dK))
658669 then nil
659- else if (containsElement(da, toString(dG)))
660- then $Tuple2(nil, cZ)
661- else $Tuple2([Reissue(dJ, dF, true), ScriptTransfer(by.caller, dF, dJ)], "success")
670+ else if (containsElement(df, toString(dL)))
671+ then $Tuple2(nil, de)
672+ else $Tuple2([Reissue(dO, dK, true), ScriptTransfer(bD.caller, dK, dO)], "success")
662673 }
663674
664675
665676
666-@Callable(by)
667-func burn (dK) = {
668- let dG = by.caller
669- let dH = by.originCaller
670- let dL = value(by.payments[0])
671- let dM = value(dL.amount)
672- let dN = toBase58String(value(dL.assetId))
673- let dO = valueOrErrorMessage(getString(ax(toString(dG))), "Invalid LP address called me.")
674- if ((dN != dO))
675- then throw("Invalid asset passed.")
676- else if ((dK != dM))
677- then throw("Invalid amount passed.")
677+@Callable(bD)
678+func burn (dP) = {
679+ let dL = bD.caller
680+ let dM = bD.originCaller
681+ let dQ = value(bD.payments[0])
682+ let dR = value(dQ.amount)
683+ let dS = toBase58String(value(dQ.assetId))
684+ let dT = valueOrErrorMessage(getString(aC(toString(dL))), "Invalid LP address called me.")
685+ if ((dS != dT))
686+ then K("Invalid asset passed.")
687+ else if ((dP != dR))
688+ then K("Invalid amount passed.")
678689 else {
679- let dJ = fromBase58String(dO)
680- $Tuple2([Burn(dJ, dK)], "success")
690+ let dO = fromBase58String(dT)
691+ $Tuple2([Burn(dO, dP)], "success")
681692 }
682693 }
683694
684695
685696
686-@Callable(by)
687-func modifyWeight (bQ,dP) = {
688- let cW = if ((toBase58String(by.caller.bytes) == valueOrElse(getString(this, U()), "")))
697+@Callable(bD)
698+func modifyWeight (bV,dU) = {
699+ let db = if ((toBase58String(bD.caller.bytes) == valueOrElse(getString(this, Y()), "")))
689700 then true
690- else bz(by)
691- if ((cW == cW))
701+ else bE(bD)
702+ if ((db == db))
692703 then {
693- let av = aT(ay(bQ))
694- let dQ = Z(av)
695- let dR = Z(g)
696- let dS = valueOrElse(getInteger(dR), 0)
697- let di = valueOrElse(getInteger(dQ), 0)
698- let dT = dP
699- let bo = split(aT(K()), l)
700- let cS = bq(bo)
701- let dU = invoke(cS, "onModifyWeight", [bQ, av], nil)
702- if ((dU == dU))
704+ let aA = aY(aD(bV))
705+ let dV = ae(aA)
706+ let dW = ae(g)
707+ let dX = valueOrElse(getInteger(dW), 0)
708+ let dn = valueOrElse(getInteger(dV), 0)
709+ let dY = dU
710+ let bt = split(aY(O()), m)
711+ let cX = bv(bt)
712+ let dZ = invoke(cX, "onModifyWeight", [bV, aA], nil)
713+ if ((dZ == dZ))
703714 then {
704- let dV = if ((dS == 0))
715+ let ea = if ((dX == 0))
705716 then nil
706- else [IntegerEntry(dR, 0)]
707- let dW = ab(av, 0)
708- let dX = getInteger(dW)
709- let dY = if ((dX == unit))
717+ else [IntegerEntry(dW, 0)]
718+ let eb = ag(aA, 0)
719+ let ec = getInteger(eb)
720+ let ed = if ((ec == unit))
710721 then nil
711- else [DeleteEntry(dW)]
712- (([IntegerEntry(dQ, dT)] ++ dV) ++ dY)
722+ else [DeleteEntry(eb)]
723+ (([IntegerEntry(dV, dY)] ++ ea) ++ ed)
713724 }
714725 else throw("Strict value is not equal to itself.")
715726 }
716727 else throw("Strict value is not equal to itself.")
717728 }
718729
719730
720731
721-@Callable(by)
722-func modifyWeights (dZ,ea,eb,ec) = {
723- let cW = bz(by)
724- if ((cW == cW))
732+@Callable(bD)
733+func modifyWeights (ee,ef,eg,eh) = {
734+ let db = bE(bD)
735+ if ((db == db))
725736 then {
726- let ed = ((5 * f) / 100)
727- let ee = ((5 * f) / 100)
728- let ef = ((5 * f) / 100)
729- let bo = split(aT(K()), l)
730- let eg = bq(bo)
731- let eh = br(bo)
732- let ei = Z(dZ)
733- let ej = Z(ea)
734- let ek = Z(eb)
735- let el = Z(ec)
736- let em = aW(ei)
737- let en = aW(ej)
738- let eo = (em - ef)
739- let ep = (en - ef)
740- if ((0 >= eo))
741- then throw(("invalid btcWeightNew: " + toString(eo)))
742- else if ((0 >= ep))
743- then throw(("invalid ethWeightNew: " + toString(ep)))
737+ let ei = ((5 * f) / 100)
738+ let ej = ((5 * f) / 100)
739+ let ek = ((5 * f) / 100)
740+ let bt = split(aY(O()), m)
741+ let el = bv(bt)
742+ let em = bw(bt)
743+ let en = ae(ee)
744+ let eo = ae(ef)
745+ let ep = ae(eg)
746+ let eq = ae(eh)
747+ let er = bb(en)
748+ let es = bb(eo)
749+ let et = (er - ek)
750+ let eu = (es - ek)
751+ if ((0 >= et))
752+ then K(("invalid btcWeightNew: " + toString(et)))
753+ else if ((0 >= eu))
754+ then K(("invalid ethWeightNew: " + toString(eu)))
744755 else {
745- let eq = aT(ax(dZ))
746- let er = aT(ax(ea))
747- let es = aT(ax(eb))
748- let et = aT(ax(ec))
749- let eu = invoke(eg, "onModifyWeight", [eq, dZ], nil)
750- if ((eu == eu))
756+ let ev = aY(aC(ee))
757+ let ew = aY(aC(ef))
758+ let ex = aY(aC(eg))
759+ let ey = aY(aC(eh))
760+ let ez = invoke(el, "onModifyWeight", [ev, ee], nil)
761+ if ((ez == ez))
751762 then {
752- let ev = invoke(eg, "onModifyWeight", [er, ea], nil)
753- if ((ev == ev))
763+ let eA = invoke(el, "onModifyWeight", [ew, ef], nil)
764+ if ((eA == eA))
754765 then {
755- let ew = invoke(eg, "onModifyWeight", [es, eb], nil)
756- if ((ew == ew))
766+ let eB = invoke(el, "onModifyWeight", [ex, eg], nil)
767+ if ((eB == eB))
757768 then {
758- let ex = invoke(eg, "onModifyWeight", [et, ec], nil)
759- if ((ex == ex))
760- then [IntegerEntry(ei, eo), IntegerEntry(ej, ep), IntegerEntry(ek, ed), IntegerEntry(el, ee), IntegerEntry(ab(dZ, 0), em), IntegerEntry(ab(ea, 0), en), IntegerEntry(ab(eb, 0), ed), IntegerEntry(ab(ec, 0), ee)]
769+ let eC = invoke(el, "onModifyWeight", [ey, eh], nil)
770+ if ((eC == eC))
771+ then [IntegerEntry(en, et), IntegerEntry(eo, eu), IntegerEntry(ep, ei), IntegerEntry(eq, ej), IntegerEntry(ag(ee, 0), er), IntegerEntry(ag(ef, 0), es), IntegerEntry(ag(eg, 0), ei), IntegerEntry(ag(eh, 0), ej)]
761772 else throw("Strict value is not equal to itself.")
762773 }
763774 else throw("Strict value is not equal to itself.")
764775 }
765776 else throw("Strict value is not equal to itself.")
766777 }
767778 else throw("Strict value is not equal to itself.")
768779 }
769780 }
770781 else throw("Strict value is not equal to itself.")
771782 }
772783
773784
774785
775-@Callable(by)
776-func checkWxEmissionPoolLabel (aA,aB) = {
777- let ey = {
778- let ba = getBoolean(az(aA, aB))
779- if ($isInstanceOf(ba, "Boolean"))
786+@Callable(bD)
787+func checkWxEmissionPoolLabel (aF,aG) = {
788+ let eD = {
789+ let bf = getBoolean(aE(aF, aG))
790+ if ($isInstanceOf(bf, "Boolean"))
780791 then {
781- let cE = ba
782- cE
792+ let cJ = bf
793+ cJ
783794 }
784795 else false
785796 }
786- $Tuple2(nil, ey)
797+ $Tuple2(nil, eD)
787798 }
788799
789800
790801
791-@Callable(by)
792-func setWxEmissionPoolLabel (aA,aB) = {
793- let cW = cl(by)
794- if ((cW == cW))
795- then $Tuple2([BooleanEntry(az(aA, aB), true)], unit)
802+@Callable(bD)
803+func setWxEmissionPoolLabel (aF,aG) = {
804+ let db = cq(bD)
805+ if ((db == db))
806+ then $Tuple2([BooleanEntry(aE(aF, aG), true)], unit)
796807 else throw("Strict value is not equal to itself.")
797808 }
798809
799810
800811
801-@Callable(by)
802-func deleteWxEmissionPoolLabel (aA,aB) = {
803- let cW = if ((by.caller == this))
812+@Callable(bD)
813+func deleteWxEmissionPoolLabel (aF,aG) = {
814+ let db = if ((bD.caller == this))
804815 then true
805- else cl(by)
806- if ((cW == cW))
807- then $Tuple2([DeleteEntry(az(aA, aB))], unit)
816+ else cq(bD)
817+ if ((db == db))
818+ then $Tuple2([DeleteEntry(aE(aF, aG))], unit)
808819 else throw("Strict value is not equal to itself.")
809820 }
810821
811822
812823
813-@Callable(by)
814-func onVerificationLoss (aO) = {
815- let cW = if ((toBase58String(by.caller.bytes) == valueOrElse(getString(this, T()), "")))
824+@Callable(bD)
825+func onVerificationLoss (aT) = {
826+ let db = if ((toBase58String(bD.caller.bytes) == valueOrElse(getString(this, X()), "")))
816827 then true
817- else bz(by)
818- if ((cW == cW))
828+ else bE(bD)
829+ if ((db == db))
819830 then {
820- let dd = bs()
821- let ez = if ((size(dd) > 0))
831+ let di = bx()
832+ let eE = if ((size(di) > 0))
822833 then true
823- else throw("invalid price assets")
824- if ((ez == ez))
834+ else K("invalid price assets")
835+ if ((eE == eE))
825836 then {
826- func eA (eB,eC) = {
827- let cy = invoke(this, "deleteWxEmissionPoolLabel", [aO, eC], nil)
828- if ((cy == cy))
837+ func eF (eG,eH) = {
838+ let cD = invoke(this, "deleteWxEmissionPoolLabel", [aT, eH], nil)
839+ if ((cD == cD))
829840 then unit
830841 else throw("Strict value is not equal to itself.")
831842 }
832843
833- let eD = {
834- let eE = dd
835- let eF = size(eE)
836- let eG = unit
837- func eH (eI,eJ) = if ((eJ >= eF))
838- then eI
839- else eA(eI, eE[eJ])
844+ let eI = {
845+ let eJ = di
846+ let eK = size(eJ)
847+ let eL = unit
848+ func eM (eN,eO) = if ((eO >= eK))
849+ then eN
850+ else eF(eN, eJ[eO])
840851
841- func eK (eI,eJ) = if ((eJ >= eF))
842- then eI
852+ func eP (eN,eO) = if ((eO >= eK))
853+ then eN
843854 else throw("List size exceeds 11")
844855
845- eK(eH(eH(eH(eH(eH(eH(eH(eH(eH(eH(eH(eG, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11)
856+ eP(eM(eM(eM(eM(eM(eM(eM(eM(eM(eM(eM(eL, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11)
846857 }
847- if ((eD == eD))
858+ if ((eI == eI))
848859 then $Tuple2(nil, unit)
849860 else throw("Strict value is not equal to itself.")
850861 }
851862 else throw("Strict value is not equal to itself.")
852863 }
853864 else throw("Strict value is not equal to itself.")
854865 }
855866
856867
857868
858-@Callable(by)
859-func isPoolOneTokenOperationsDisabledREADONLY (aa) = {
860- let dD = cc(aa)
861- let al = $Tuple2(parseIntValue(dD[B]), parseIntValue(dD[C]))
862- let eL = valueOrElse(getBoolean(ak(al)), false)
863- let eM = valueOrElse(getBoolean(an()), false)
864- $Tuple2(nil, if (eM)
869+@Callable(bD)
870+func isPoolOneTokenOperationsDisabledREADONLY (af) = {
871+ let dI = ch(af)
872+ let aq = $Tuple2(parseIntValue(dI[C]), parseIntValue(dI[D]))
873+ let eQ = valueOrElse(getBoolean(ap(aq)), false)
874+ let eR = valueOrElse(getBoolean(as()), false)
875+ $Tuple2(nil, if (eR)
865876 then true
866- else eL)
877+ else eQ)
867878 }
868879
869880
870881
871-@Callable(by)
872-func getInFeeREADONLY (aa) = {
873- let eN = co(aC(aa), aD(), 0)
874- $Tuple2(nil, eN)
882+@Callable(bD)
883+func getInFeeREADONLY (af) = {
884+ let eS = ct(aH(af), aI(), 0)
885+ $Tuple2(nil, eS)
875886 }
876887
877888
878889
879-@Callable(by)
880-func getOutFeeREADONLY (aa) = {
881- let eN = co(aE(aa), aF(), fraction(10, b, 10000))
882- $Tuple2(nil, eN)
890+@Callable(bD)
891+func getOutFeeREADONLY (af) = {
892+ let eS = ct(aJ(af), aK(), fraction(10, b, 10000))
893+ $Tuple2(nil, eS)
883894 }
884895
885896
886897
887-@Callable(by)
888-func poolInfoREADONLY (eO,eP) = {
889- let eQ = getInteger(this, af(eO))
890- let eR = getInteger(this, af(eP))
891- let eS = getString(this, aw(value(eQ), value(eR)))
892- let eT = getString(this, ax(value(eS)))
893- let dq = if (if (isDefined(eQ))
894- then isDefined(eR)
898+@Callable(bD)
899+func poolInfoREADONLY (eT,eU) = {
900+ let eV = getInteger(this, ak(eT))
901+ let eW = getInteger(this, ak(eU))
902+ let eX = getString(this, aB(value(eV), value(eW)))
903+ let eY = getString(this, aC(value(eX)))
904+ let dv = if (if (isDefined(eV))
905+ then isDefined(eW)
895906 else false)
896- then isDefined(eS)
907+ then isDefined(eX)
897908 else false
898- let eU = if (dq)
899- then $Tuple2(addressFromStringValue(value(eS)), aX(value(eT)))
909+ let eZ = if (dv)
910+ then $Tuple2(addressFromStringValue(value(eX)), bc(value(eY)))
900911 else unit
901- $Tuple2(nil, eU)
912+ $Tuple2(nil, eZ)
902913 }
903914
904915
905916
906-@Callable(by)
907-func getPoolStatusREADONLY (aa) = {
908- let cd = split(aT(au(aa)), l)
909- let ai = cd[1]
910- let aj = cd[2]
911- let cu = split(aT(ah(ai, aj)), l)
912- $Tuple2(nil, parseIntValue(cu[v]))
917+@Callable(bD)
918+func getPoolStatusREADONLY (af) = {
919+ let ci = split(aY(az(af)), m)
920+ let an = ci[1]
921+ let ao = ci[2]
922+ let cz = split(aY(am(an, ao)), m)
923+ $Tuple2(nil, parseIntValue(cz[w]))
913924 }
914925
915926
916927
917-@Callable(by)
918-func getPoolConfigREADONLY (aa) = {
919- let cd = split(aT(au(aa)), l)
920- let ai = cd[1]
921- let aj = cd[2]
922- let cu = split(aT(ah(ai, aj)), l)
923- $Tuple2(nil, cu)
928+@Callable(bD)
929+func getPoolConfigREADONLY (af) = {
930+ let ci = split(aY(az(af)), m)
931+ let an = ci[1]
932+ let ao = ci[2]
933+ let cz = split(aY(am(an, ao)), m)
934+ $Tuple2(nil, cz)
924935 }
925936
926937
927938
928-@Callable(by)
929-func getPoolConfigByLpAssetIdREADONLY (dv) = {
930- let cd = split(aT(ao(dv)), l)
931- let ai = cd[1]
932- let aj = cd[2]
933- let cu = split(aT(ah(ai, aj)), l)
934- $Tuple2(nil, cu)
939+@Callable(bD)
940+func getPoolConfigByLpAssetIdREADONLY (dA) = {
941+ let ci = split(aY(at(dA)), m)
942+ let an = ci[1]
943+ let ao = ci[2]
944+ let cz = split(aY(am(an, ao)), m)
945+ $Tuple2(nil, cz)
935946 }
936947
937948
938949
939-@Callable(by)
940-func poolExistsREADONLY (aA,aB) = $Tuple2(nil, cr(aA, aB))
950+@Callable(bD)
951+func poolExistsREADONLY (aF,aG) = $Tuple2(nil, cw(aF, aG))
941952
942953
943954
944-@Callable(by)
945-func skipOrderValidationREADONLY (aa) = $Tuple2(nil, valueOrElse(getBoolean(aG(aa)), false))
955+@Callable(bD)
956+func skipOrderValidationREADONLY (af) = $Tuple2(nil, valueOrElse(getBoolean(aL(af)), false))
946957
947958
948959
949-@Callable(by)
950-func getChangeAmpConfigREADONLY (aa) = {
951- let eV = getIntegerValue(aH(aa))
952- let eW = getIntegerValue(aI(aa))
953- let eX = getIntegerValue(aJ(aa))
954- $Tuple2(nil, [eV, eW, eX])
960+@Callable(bD)
961+func getChangeAmpConfigREADONLY (af) = {
962+ let fa = getIntegerValue(aM(af))
963+ let fb = getIntegerValue(aN(af))
964+ let fc = getIntegerValue(aO(af))
965+ $Tuple2(nil, [fa, fb, fc])
955966 }
956967
957968
958969
959-@Callable(by)
960-func getPoolWeightREADONLY (bQ) = {
961- let aa = aT(ay(bQ))
962- let eY = valueOrElse(getInteger(Z(aa)), 0)
963- $Tuple2(nil, eY)
970+@Callable(bD)
971+func getPoolWeightREADONLY (bV) = {
972+ let af = aY(aD(bV))
973+ let fd = valueOrElse(getInteger(ae(af)), 0)
974+ $Tuple2(nil, fd)
964975 }
965976
966977
967-@Verifier(eZ)
968-func fa () = {
969- let fb = {
970- let ba = bt()
971- if ($isInstanceOf(ba, "ByteVector"))
978+
979+@Callable(bD)
980+func deletePool (aA) = {
981+ let db = if (bE(bD))
982+ then true
983+ else bA
984+ if ((db == db))
985+ then {
986+ let ci = split(aY(az(aA)), m)
987+ let an = parseIntValue(ci[1])
988+ let ao = parseIntValue(ci[2])
989+ let aF = getStringValue(ai(an))
990+ let aG = getStringValue(ai(ao))
991+ let bV = aY(aC(aA))
992+ let fe = addressFromStringValue(getStringValue(Z()))
993+ let ff = invoke(fe, "deletePool", [aF, aG], nil)
994+ if ((ff == ff))
995+ then {
996+ let dh = addressFromStringValue(getStringValue(Y()))
997+ let fg = invoke(dh, "deletePool", [aF, aG], nil)
998+ if ((fg == fg))
999+ then [DeleteEntry(aC(aA)), DeleteEntry(az(aA)), DeleteEntry(av(toString(an), toString(ao))), DeleteEntry(aB(an, ao)), DeleteEntry(am(toString(an), toString(ao))), DeleteEntry(at(bV)), DeleteEntry(aD(bV)), DeleteEntry(aE(aF, aG)), DeleteEntry(ae(aA)), DeleteEntry(ay(aA)), DeleteEntry(aH(aA)), DeleteEntry(aJ(aA)), DeleteEntry(aL(aA)), DeleteEntry(aM(aA)), DeleteEntry(aN(aA)), DeleteEntry(aO(aA))]
1000+ else throw("Strict value is not equal to itself.")
1001+ }
1002+ else throw("Strict value is not equal to itself.")
1003+ }
1004+ else throw("Strict value is not equal to itself.")
1005+ }
1006+
1007+
1008+@Verifier(fh)
1009+func fi () = {
1010+ let fj = {
1011+ let bf = by()
1012+ if ($isInstanceOf(bf, "ByteVector"))
9721013 then {
973- let bA = ba
974- bA
1014+ let bF = bf
1015+ bF
9751016 }
976- else if ($isInstanceOf(ba, "Unit"))
977- then eZ.senderPublicKey
1017+ else if ($isInstanceOf(bf, "Unit"))
1018+ then fh.senderPublicKey
9781019 else throw("Match error")
9791020 }
980- sigVerify(eZ.bodyBytes, eZ.proofs[0], fb)
1021+ sigVerify(fh.bodyBytes, fh.proofs[0], fj)
9811022 }
9821023

github/deemru/w8io/fabc49c 
369.68 ms