tx · CUqJU9AeeQBkd7QRf35k2gP43aGZx4FVx8YyX6uJ2oeA

3N1ytAUyhtig9X6F2hHHs1jbzYxr47Yp8Fr:  -0.01200000 Waves

2024.12.16 10:59 [3416857] smart account 3N1ytAUyhtig9X6F2hHHs1jbzYxr47Yp8Fr > SELF 0.00000000 Waves

{ "type": 13, "id": "CUqJU9AeeQBkd7QRf35k2gP43aGZx4FVx8YyX6uJ2oeA", "fee": 1200000, "feeAssetId": null, "timestamp": 1734336003100, "version": 2, "chainId": 84, "sender": "3N1ytAUyhtig9X6F2hHHs1jbzYxr47Yp8Fr", "senderPublicKey": "jXCTQV8PjX2uC9UHBFveupYy9cjhY7stHbzE9cptymw", "proofs": [ "2uDGLLFVRJqhLLk1URAvaaNwQwXfrMV6gZxtvYizdraJSGEWKmAoFnMLKaNXLhUyLamhnz9oYgjxT1WcUzBnUYxr" ], "script": "base64:BwIfCAISAwoBCBIECgICGBIECgICGBIECgICGBIECgICGCwACXNlcGFyYXRvcgICX18AC3dhdmVzU3RyaW5nAgVXQVZFUwAQY29udHJhY3RGaWxlbmFtZQIXbWVtZV9pbV9jYWxjdWxhdG9yLnJpZGUABW11bHQ4AIDC1y8BB3dyYXBFcnIBAXMJAKwCAgkArAICBRBjb250cmFjdEZpbGVuYW1lAgI6IAUBcwEIdGhyb3dFcnIBAXMJAAIBCQEHd3JhcEVycgEFAXMBD3ZhbGlkYXRlQWRkcmVzcwEHYWRkcmVzcwkBCWlzRGVmaW5lZAEJAKYIAQUHYWRkcmVzcwAMU1RBVFVTX0VNUFRZAAAADFNUQVRVU19SRUFEWQABABVTVEFUVVNfVEFSR0VUX1JFQUNIRUQAAgAJa1NodXRkb3duAg5zaHV0ZG93bl9fZmxhZwALa1ByaWNlQXNzZXQCDHByaWNlX19hc3NldAAOa0xpc3RpbmdWb2x1bWUCD2xpc3RpbmdfX3ZvbHVtZQAMa0NyZWF0aW9uRmVlAhJzZXR1cF9fY3JlYXRpb25GZWUADGtDdXJ2ZVRhcmdldAISc2V0dXBfX2N1cnZlVGFyZ2V0ABFrVmlydHVhbExpcXVpZGl0eQIXc2V0dXBfX3ZpcnR1YWxMaXF1aWRpdHkAEWtQb29sQ29udHJhY3RIYXNoAhRwb29sX19jb250cmFjdF9faGFzaAATa0xhc3RFbXB0eVBvb2xJbmRleAIXbGFzdF9fZW1wdHlfcG9vbF9faW5kZXgAFGtGaXJzdEVtcHR5UG9vbEluZGV4AhlmaXJzdF9fZW1wdHlfX3Bvb2xfX2luZGV4ARVrUG9vbEFkZHJlc3NGcm9tSW5kZXgBBWluZGV4CQC5CQIJAMwIAgIEcG9vbAkAzAgCCQCkAwEFBWluZGV4BQNuaWwFCXNlcGFyYXRvcgEVa1Bvb2xJbmRleEZyb21BZGRyZXNzAQdhZGRyZXNzCQC5CQIJAMwIAgIEcG9vbAkAzAgCCQClCAEFB2FkZHJlc3MFA25pbAUJc2VwYXJhdG9yAQprUG9vbEFzc2V0AQdhZGRyZXNzCQC5CQIJAMwIAgIFYXNzZXQJAMwIAgkApQgBBQdhZGRyZXNzBQNuaWwFCXNlcGFyYXRvcgELa1Bvb2xTdGF0dXMBBWluZGV4CQC5CQIJAMwIAgIEcG9vbAkAzAgCAgZzdGF0dXMJAMwIAgkApAMBBQVpbmRleAUDbmlsBQlzZXBhcmF0b3IAD2tGYWN0b3J5QWRkcmVzcwIQZmFjdG9yeV9fYWRkcmVzcwAUZmFjdG9yeUFkZHJlc3NPcHRpb24EByRtYXRjaDAJAJ0IAgUEdGhpcwUPa0ZhY3RvcnlBZGRyZXNzAwkAAQIFByRtYXRjaDACBlN0cmluZwQBcwUHJG1hdGNoMAkApggBBQFzAwkAAQIFByRtYXRjaDACBFVuaXQFBHVuaXQJAAIBAgtNYXRjaCBlcnJvcgAOZmFjdG9yeUFkZHJlc3MJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgUUZmFjdG9yeUFkZHJlc3NPcHRpb24JAQd3cmFwRXJyAQIXaW52YWxpZCBmYWN0b3J5IGFkZHJlc3MADmtXeFN3YXBBZGRyZXNzAg93eHN3YXBfX2FkZHJlc3MAE3d4U3dhcEFkZHJlc3NPcHRpb24EByRtYXRjaDAJAJ0IAgUOZmFjdG9yeUFkZHJlc3MFDmtXeFN3YXBBZGRyZXNzAwkAAQIFByRtYXRjaDACBlN0cmluZwQBcwUHJG1hdGNoMAkApggBBQFzAwkAAQIFByRtYXRjaDACBFVuaXQFBHVuaXQJAAIBAgtNYXRjaCBlcnJvcgANd3hTd2FwQWRkcmVzcwkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCBRN3eFN3YXBBZGRyZXNzT3B0aW9uCQEHd3JhcEVycgECF2ludmFsaWQgd3ggc3dhcCBhZGRyZXNzAAhzaHV0ZG93bgkBC3ZhbHVlT3JFbHNlAgkAmwgCBQ5mYWN0b3J5QWRkcmVzcwUJa1NodXRkb3duBwAObGFzdEVtcHR5SW5kZXgJAQt2YWx1ZU9yRWxzZQIJAJoIAgUOZmFjdG9yeUFkZHJlc3MFE2tMYXN0RW1wdHlQb29sSW5kZXgAAAAPZmlyc3RFbXB0eUluZGV4CQELdmFsdWVPckVsc2UCCQCaCAIFDmZhY3RvcnlBZGRyZXNzBRRrRmlyc3RFbXB0eVBvb2xJbmRleAAAAA1saXN0aW5nVm9sdW1lCQELdmFsdWVPckVsc2UCCQCaCAIFDmZhY3RvcnlBZGRyZXNzBQ5rTGlzdGluZ1ZvbHVtZQAAAAtjcmVhdGlvbkZlZQkBC3ZhbHVlT3JFbHNlAgkAmggCBQ5mYWN0b3J5QWRkcmVzcwUMa0NyZWF0aW9uRmVlAAAAEHBvb2xDb250cmFjdEhhc2gJAJwIAgUOZmFjdG9yeUFkZHJlc3MFEWtQb29sQ29udHJhY3RIYXNoAQxwYXJzZUFzc2V0SWQBBWlucHV0AwkAAAIFBWlucHV0BQt3YXZlc1N0cmluZwUEdW5pdAkA2QQBBQVpbnB1dAEPYXNzZXRJZFRvU3RyaW5nAQVpbnB1dAMJAAACBQVpbnB1dAUEdW5pdAULd2F2ZXNTdHJpbmcJANgEAQkBBXZhbHVlAQUFaW5wdXQBC211c3RBZGRyZXNzAgZjYWxsZXIHYWRkcmVzcwMJAAACBQZjYWxsZXIFB2FkZHJlc3MGCQEIdGhyb3dFcnIBAhFwZXJtaXNzaW9uIGRlbmllZAEIbXVzdFRoaXMBBmNhbGxlcgkBC211c3RBZGRyZXNzAgUGY2FsbGVyBQR0aGlzAQttdXN0RmFjdG9yeQEGY2FsbGVyCQELbXVzdEFkZHJlc3MCBQZjYWxsZXIFDmZhY3RvcnlBZGRyZXNzARNjaGVja0NvbnRyYWN0U2NyaXB0AQdhZGRyZXNzBAckbWF0Y2gwBRBwb29sQ29udHJhY3RIYXNoAwkAAQIFByRtYXRjaDACCkJ5dGVWZWN0b3IEBGhhc2gFByRtYXRjaDAJAAACCQDxBwEFB2FkZHJlc3MFBGhhc2gGAQxpc1Bvb2xFeGlzdHMBC3Bvb2xBZGRyZXNzCQEJaXNEZWZpbmVkAQkAmggCBQ5mYWN0b3J5QWRkcmVzcwkBFWtQb29sSW5kZXhGcm9tQWRkcmVzcwEFC3Bvb2xBZGRyZXNzAQlnZXRQb29sSWQBC3Bvb2xBZGRyZXNzCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJoIAgUOZmFjdG9yeUFkZHJlc3MJARVrUG9vbEluZGV4RnJvbUFkZHJlc3MBBQtwb29sQWRkcmVzcwITcG9vbCBkb2Vzbid0IGV4aXN0cwETaXNQb29sVGFyZ2V0UmVhY2hlZAELcG9vbEFkZHJlc3MJAAACCQELdmFsdWVPckVsc2UCCQCaCAIFDmZhY3RvcnlBZGRyZXNzCQELa1Bvb2xTdGF0dXMBCQEJZ2V0UG9vbElkAQULcG9vbEFkZHJlc3MA////////////AQUVU1RBVFVTX1RBUkdFVF9SRUFDSEVEBQFpAQRpbml0ARFmYWN0b3J5QWRkcmVzc1N0cgQLY2hlY2tDYWxsZXIJAQhtdXN0VGhpcwEIBQFpBmNhbGxlcgMJAAACBQtjaGVja0NhbGxlcgULY2hlY2tDYWxsZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgUPa0ZhY3RvcnlBZGRyZXNzBRFmYWN0b3J5QWRkcmVzc1N0cgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBDGFkZEVtcHR5UG9vbAIPY2FsbGVyUHVibGljS2V5BGFyZ3MEDm5ld1Bvb2xBZGRyZXNzCQCnCAEFD2NhbGxlclB1YmxpY0tleQQMbmV3UG9vbEluZGV4CQBkAgUObGFzdEVtcHR5SW5kZXgAAQQGY2hlY2tzCQDMCAIDCQEBIQEFCHNodXRkb3duBgkBCHRocm93RXJyAQIWbm90IGFsbG93ZWQgKHNodXRkb3duKQkAzAgCAwkBE2NoZWNrQ29udHJhY3RTY3JpcHQBBQ5uZXdQb29sQWRkcmVzcwYJAQh0aHJvd0VycgECGnBvb2wgc2NyaXB0IGlzIG5vdCBhbGxvd2VkCQDMCAIDCQEBIQEJAQxpc1Bvb2xFeGlzdHMBBQ5uZXdQb29sQWRkcmVzcwYJAQh0aHJvd0VycgECInBvb2wgYWRkcmVzcyBpcyBhbHJlYWR5IHJlZ2lzdGVyZWQFA25pbAMJAAACBQZjaGVja3MFBmNoZWNrcwQOZmFjdG9yeUFjdGlvbnMJAMwIAgkA/AcEBQ5mYWN0b3J5QWRkcmVzcwIMaW50ZWdlckVudHJ5CQDMCAIFE2tMYXN0RW1wdHlQb29sSW5kZXgJAMwIAgUMbmV3UG9vbEluZGV4BQNuaWwFA25pbAkAzAgCCQD8BwQFDmZhY3RvcnlBZGRyZXNzAgtzdHJpbmdFbnRyeQkAzAgCCQEVa1Bvb2xBZGRyZXNzRnJvbUluZGV4AQUMbmV3UG9vbEluZGV4CQDMCAIJAKUIAQUObmV3UG9vbEFkZHJlc3MFA25pbAUDbmlsCQDMCAIJAPwHBAUOZmFjdG9yeUFkZHJlc3MCDGludGVnZXJFbnRyeQkAzAgCCQEVa1Bvb2xJbmRleEZyb21BZGRyZXNzAQUObmV3UG9vbEFkZHJlc3MJAMwIAgUMbmV3UG9vbEluZGV4BQNuaWwFA25pbAkAzAgCCQD8BwQFDmZhY3RvcnlBZGRyZXNzAgxpbnRlZ2VyRW50cnkJAMwIAgkBC2tQb29sU3RhdHVzAQUMbmV3UG9vbEluZGV4CQDMCAIFDFNUQVRVU19FTVBUWQUDbmlsBQNuaWwFA25pbAkAlAoCBQNuaWwFDmZhY3RvcnlBY3Rpb25zCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBCmNyZWF0ZVBvb2wCD2NhbGxlclB1YmxpY0tleQRhcmdzBAptaW5QYXltZW50CQBkAgUNbGlzdGluZ1ZvbHVtZQULY3JlYXRpb25GZWUEBmNoZWNrcwkAzAgCAwkBASEBBQhzaHV0ZG93bgYJAQh0aHJvd0VycgECElRlbXBvcmFyeSBzaHV0ZG93bgkAzAgCCQELbXVzdEZhY3RvcnkBCAUBaQZjYWxsZXIJAMwIAgMJAGYCCQBlAgUObGFzdEVtcHR5SW5kZXgFD2ZpcnN0RW1wdHlJbmRleAAABgkBCHRocm93RXJyAQIXTm8gZW1wdHkgcG9vbCBhdmFpbGFibGUJAMwIAgMJAAACCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQFBHVuaXQGCQEIdGhyb3dFcnIBAhpQYXltZW50IHNob3VsZCBiZSBpbiBXQVZFUwkAzAgCAwkAZwIICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BQptaW5QYXltZW50BgkBCHRocm93RXJyAQkArAICCQCsAgICI1BheW1lbnQgc2hvdWxkIGJlIGdyZWF0ZXIgb3IgZXF1YWwgCQCkAwEFCm1pblBheW1lbnQCCCBXQVZFTEVUCQDMCAIDCQEJaXNEZWZpbmVkAQkAkQMCBQRhcmdzAAAGCQEIdGhyb3dFcnIBAhpUb2tlbiBuYW1lIGlzIG5vdCBwcm92aWRlZAkAzAgCAwkBCWlzRGVmaW5lZAEJAJEDAgUEYXJncwABBgkBCHRocm93RXJyAQIhVG9rZW4gZGVzY3JpcHRpb24gaXMgbm90IHByb3ZpZGVkCQDMCAIDCQEJaXNEZWZpbmVkAQkAkQMCBQRhcmdzAAIGCQEIdGhyb3dFcnIBAh5Ub2tlbiBxdWFudGl0eSBpcyBub3QgcHJvdmlkZWQJAMwIAgMJAQIhPQIJALYJAQkAkQMCBQRhcmdzAAIFBHVuaXQGCQEIdGhyb3dFcnIBAiFUb2tlbiBxdWFudGl0eSBzaG91bGQgYmUgYSBudW1iZXIFA25pbAMJAAACBQZjaGVja3MFBmNoZWNrcwQJcG9vbEluZGV4CQBkAgUPZmlyc3RFbXB0eUluZGV4AAEEEXBvb2xBZGRyZXNzU3RyaW5nCQERQGV4dHJOYXRpdmUoMTA1MykCBQ5mYWN0b3J5QWRkcmVzcwkBFWtQb29sQWRkcmVzc0Zyb21JbmRleAEFCXBvb2xJbmRleAQLcG9vbEFkZHJlc3MJARFAZXh0ck5hdGl2ZSgxMDYyKQEFEXBvb2xBZGRyZXNzU3RyaW5nBA1jYWxsZXJBZGRyZXNzCQCnCAEFD2NhbGxlclB1YmxpY0tleQQKcG9vbERvbWFpbgkArwICBRFwb29sQWRkcmVzc1N0cmluZwAIBAlwb29sT3duZXIJAKUIAQUNY2FsbGVyQWRkcmVzcwQJdG9rZW5OYW1lCQCRAwIFBGFyZ3MAAAQJdG9rZW5EZXNjCQCRAwIFBGFyZ3MAAQQNdG9rZW5RdWFudGl0eQkAkQMCBQRhcmdzAAIEDmluaXRQb29sSW52b2tlCQD8BwQFDmZhY3RvcnlBZGRyZXNzAg5pbml0UG9vbEludm9rZQkAzAgCBRFwb29sQWRkcmVzc1N0cmluZwkAzAgCCQDMCAIFCnBvb2xEb21haW4JAMwIAgUJcG9vbE93bmVyCQDMCAIFCXRva2VuTmFtZQkAzAgCBQl0b2tlbkRlc2MJAMwIAgUNdG9rZW5RdWFudGl0eQUDbmlsBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQFA25pbAMJAAACBQ5pbml0UG9vbEludm9rZQUOaW5pdFBvb2xJbnZva2UEDmZhY3RvcnlBY3Rpb25zCQDMCAIJAPwHBAUOZmFjdG9yeUFkZHJlc3MCDGludGVnZXJFbnRyeQkAzAgCBRRrRmlyc3RFbXB0eVBvb2xJbmRleAkAzAgCBQlwb29sSW5kZXgFA25pbAUDbmlsCQDMCAIJAPwHBAUOZmFjdG9yeUFkZHJlc3MCDGludGVnZXJFbnRyeQkAzAgCCQELa1Bvb2xTdGF0dXMBBQlwb29sSW5kZXgJAMwIAgUMU1RBVFVTX1JFQURZBQNuaWwFA25pbAUDbmlsCQCUCgIFA25pbAUOZmFjdG9yeUFjdGlvbnMJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQESbm90aWZ5U3RhdHVzVXBkYXRlAg9jYWxsZXJQdWJsaWNLZXkEYXJncwQLcG9vbEFkZHJlc3MJAKcIAQUPY2FsbGVyUHVibGljS2V5BAZjaGVja3MJAMwIAgMJAQxpc1Bvb2xFeGlzdHMBBQtwb29sQWRkcmVzcwYJAQh0aHJvd0VycgECDnBvb2wgbm90IGZvdW5kCQDMCAIJAQttdXN0RmFjdG9yeQEIBQFpBmNhbGxlcgUDbmlsAwkAAAIFBmNoZWNrcwUGY2hlY2tzBAlwb29sSW5kZXgJARFAZXh0ck5hdGl2ZSgxMDUwKQIFDmZhY3RvcnlBZGRyZXNzCQEVa1Bvb2xJbmRleEZyb21BZGRyZXNzAQULcG9vbEFkZHJlc3MECW5ld1N0YXR1cwkBDXBhcnNlSW50VmFsdWUBCQCRAwIFBGFyZ3MAAAQOZmFjdG9yeUFjdGlvbnMJAMwIAgkA/AcEBQ5mYWN0b3J5QWRkcmVzcwIMaW50ZWdlckVudHJ5CQDMCAIJAQtrUG9vbFN0YXR1cwEFCXBvb2xJbmRleAkAzAgCBQluZXdTdGF0dXMFA25pbAUDbmlsBQNuaWwJAJQKAgUDbmlsBQ5mYWN0b3J5QWN0aW9ucwkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQxzd2FwUkVBRE9OTFkCD2NhbGxlclB1YmxpY0tleQRhcmdzBAtwb29sQWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQRhcmdzAAAEE2Ftb3VudEFzc2V0SWRTdHJpbmcJAJEDAgUEYXJncwABBBJwcmljZUFzc2V0SWRTdHJpbmcJAJEDAgUEYXJncwACBAZhbW91bnQJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQRhcmdzAAMEBmNoZWNrcwkAzAgCAwkBASEBBQhzaHV0ZG93bgYJAQh0aHJvd0VycgECElRlbXBvcmFyeSBzaHV0ZG93bgkAzAgCCQELbXVzdEZhY3RvcnkBCAUBaQZjYWxsZXIFA25pbAMJAAACBQZjaGVja3MFBmNoZWNrcwMJARNpc1Bvb2xUYXJnZXRSZWFjaGVkAQULcG9vbEFkZHJlc3MEDHd4U3dhcFJlc3VsdAoAAUAJAPwHBAUNd3hTd2FwQWRkcmVzcwIVc3dhcENhbGN1bGF0ZVJFQURPTkxZCQDMCAIFBmFtb3VudAkAzAgCBRNhbW91bnRBc3NldElkU3RyaW5nCQDMCAIFEnByaWNlQXNzZXRJZFN0cmluZwUDbmlsBQNuaWwDCQABAgUBQAIDSW50BQFACQACAQkArAICCQADAQUBQAIYIGNvdWxkbid0IGJlIGNhc3QgdG8gSW50CQCUCgIFA25pbAUMd3hTd2FwUmVzdWx0BA5wb29sU3dhcFJlc3VsdAoAAUAJAPwHBAULcG9vbEFkZHJlc3MCDHN3YXBSZWFkT25seQkAzAgCBRNhbW91bnRBc3NldElkU3RyaW5nCQDMCAIFEnByaWNlQXNzZXRJZFN0cmluZwkAzAgCBQZhbW91bnQFA25pbAUDbmlsAwkAAQIFAUACA0ludAUBQAkAAgEJAKwCAgkAAwEFAUACGCBjb3VsZG4ndCBiZSBjYXN0IHRvIEludAkAlAoCBQNuaWwFDnBvb2xTd2FwUmVzdWx0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJ0eAEGdmVyaWZ5AAQTa2V5QWRtaW5BZGRyZXNzTGlzdAIUJXNfX2FkbWluQWRkcmVzc0xpc3QEDmtleUFsbG93ZWRUeElkAgglc19fdHhJZAQJYWRtaW5MaXN0CQC1CQIJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUOZmFjdG9yeUFkZHJlc3MFE2tleUFkbWluQWRkcmVzc0xpc3QCAAICX18EB2J5T3duZXIDCQBnAgkAkAMBBQlhZG1pbkxpc3QAAwcJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXkECGJ5QWRtaW5zCQAAAggFAnR4AmlkCQDZBAEJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUOZmFjdG9yeUFkZHJlc3MFDmtleUFsbG93ZWRUeElkAgADBQhieUFkbWlucwYFB2J5T3duZXL5dXcm", "height": 3416857, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 26xPixHk9PYVNDH6fJGuZHHpRCfKuUBGZA9WLwtSpHWX Next: FW4ZLacr9kopQfi3kMg33eHdeiBUkYphzmTEDq5SyXMQ Diff:
OldNewDifferences
7373 let E = "wxswap__address"
7474
7575 let F = {
76- let C = getString(this, E)
76+ let C = getString(D, E)
7777 if ($isInstanceOf(C, "String"))
7878 then {
7979 let f = C
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 7 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 let b = "WAVES"
77
88 let c = "meme_im_calculator.ride"
99
1010 let d = 100000000
1111
1212 func e (f) = ((c + ": ") + f)
1313
1414
1515 func g (f) = throw(e(f))
1616
1717
1818 func h (i) = isDefined(addressFromString(i))
1919
2020
2121 let j = 0
2222
2323 let k = 1
2424
2525 let l = 2
2626
2727 let m = "shutdown__flag"
2828
2929 let n = "price__asset"
3030
3131 let o = "listing__volume"
3232
3333 let p = "setup__creationFee"
3434
3535 let q = "setup__curveTarget"
3636
3737 let r = "setup__virtualLiquidity"
3838
3939 let s = "pool__contract__hash"
4040
4141 let t = "last__empty_pool__index"
4242
4343 let u = "first__empty__pool__index"
4444
4545 func v (w) = makeString(["pool", toString(w)], a)
4646
4747
4848 func x (i) = makeString(["pool", toString(i)], a)
4949
5050
5151 func y (i) = makeString(["asset", toString(i)], a)
5252
5353
5454 func z (w) = makeString(["pool", "status", toString(w)], a)
5555
5656
5757 let A = "factory__address"
5858
5959 let B = {
6060 let C = getString(this, A)
6161 if ($isInstanceOf(C, "String"))
6262 then {
6363 let f = C
6464 addressFromString(f)
6565 }
6666 else if ($isInstanceOf(C, "Unit"))
6767 then unit
6868 else throw("Match error")
6969 }
7070
7171 let D = valueOrErrorMessage(B, e("invalid factory address"))
7272
7373 let E = "wxswap__address"
7474
7575 let F = {
76- let C = getString(this, E)
76+ let C = getString(D, E)
7777 if ($isInstanceOf(C, "String"))
7878 then {
7979 let f = C
8080 addressFromString(f)
8181 }
8282 else if ($isInstanceOf(C, "Unit"))
8383 then unit
8484 else throw("Match error")
8585 }
8686
8787 let G = valueOrErrorMessage(F, e("invalid wx swap address"))
8888
8989 let H = valueOrElse(getBoolean(D, m), false)
9090
9191 let I = valueOrElse(getInteger(D, t), 0)
9292
9393 let J = valueOrElse(getInteger(D, u), 0)
9494
9595 let K = valueOrElse(getInteger(D, o), 0)
9696
9797 let L = valueOrElse(getInteger(D, p), 0)
9898
9999 let M = getBinary(D, s)
100100
101101 func N (O) = if ((O == b))
102102 then unit
103103 else fromBase58String(O)
104104
105105
106106 func P (O) = if ((O == unit))
107107 then b
108108 else toBase58String(value(O))
109109
110110
111111 func Q (R,i) = if ((R == i))
112112 then true
113113 else g("permission denied")
114114
115115
116116 func S (R) = Q(R, this)
117117
118118
119119 func T (R) = Q(R, D)
120120
121121
122122 func U (i) = {
123123 let C = M
124124 if ($isInstanceOf(C, "ByteVector"))
125125 then {
126126 let V = C
127127 (scriptHash(i) == V)
128128 }
129129 else true
130130 }
131131
132132
133133 func W (X) = isDefined(getInteger(D, x(X)))
134134
135135
136136 func Y (X) = valueOrErrorMessage(getInteger(D, x(X)), "pool doesn't exists")
137137
138138
139139 func Z (X) = (valueOrElse(getInteger(D, z(Y(X))), -1) == l)
140140
141141
142142 @Callable(aa)
143143 func init (ab) = {
144144 let ac = S(aa.caller)
145145 if ((ac == ac))
146146 then [StringEntry(A, ab)]
147147 else throw("Strict value is not equal to itself.")
148148 }
149149
150150
151151
152152 @Callable(aa)
153153 func addEmptyPool (ad,ae) = {
154154 let af = addressFromPublicKey(ad)
155155 let ag = (I + 1)
156156 let ah = [if (!(H))
157157 then true
158158 else g("not allowed (shutdown)"), if (U(af))
159159 then true
160160 else g("pool script is not allowed"), if (!(W(af)))
161161 then true
162162 else g("pool address is already registered")]
163163 if ((ah == ah))
164164 then {
165165 let ai = [invoke(D, "integerEntry", [t, ag], nil), invoke(D, "stringEntry", [v(ag), toString(af)], nil), invoke(D, "integerEntry", [x(af), ag], nil), invoke(D, "integerEntry", [z(ag), j], nil)]
166166 $Tuple2(nil, ai)
167167 }
168168 else throw("Strict value is not equal to itself.")
169169 }
170170
171171
172172
173173 @Callable(aa)
174174 func createPool (ad,ae) = {
175175 let aj = (K + L)
176176 let ah = [if (!(H))
177177 then true
178178 else g("Temporary shutdown"), T(aa.caller), if (((I - J) > 0))
179179 then true
180180 else g("No empty pool available"), if ((aa.payments[0].assetId == unit))
181181 then true
182182 else g("Payment should be in WAVES"), if ((aa.payments[0].amount >= aj))
183183 then true
184184 else g((("Payment should be greater or equal " + toString(aj)) + " WAVELET")), if (isDefined(ae[0]))
185185 then true
186186 else g("Token name is not provided"), if (isDefined(ae[1]))
187187 then true
188188 else g("Token description is not provided"), if (isDefined(ae[2]))
189189 then true
190190 else g("Token quantity is not provided"), if ((parseInt(ae[2]) != unit))
191191 then true
192192 else g("Token quantity should be a number")]
193193 if ((ah == ah))
194194 then {
195195 let ak = (J + 1)
196196 let al = getStringValue(D, v(ak))
197197 let X = addressFromStringValue(al)
198198 let am = addressFromPublicKey(ad)
199199 let an = take(al, 8)
200200 let ao = toString(am)
201201 let ap = ae[0]
202202 let aq = ae[1]
203203 let ar = ae[2]
204204 let as = invoke(D, "initPoolInvoke", [al, [an, ao, ap, aq, ar]], [AttachedPayment(aa.payments[0].assetId, aa.payments[0].amount)])
205205 if ((as == as))
206206 then {
207207 let ai = [invoke(D, "integerEntry", [u, ak], nil), invoke(D, "integerEntry", [z(ak), k], nil)]
208208 $Tuple2(nil, ai)
209209 }
210210 else throw("Strict value is not equal to itself.")
211211 }
212212 else throw("Strict value is not equal to itself.")
213213 }
214214
215215
216216
217217 @Callable(aa)
218218 func notifyStatusUpdate (ad,ae) = {
219219 let X = addressFromPublicKey(ad)
220220 let ah = [if (W(X))
221221 then true
222222 else g("pool not found"), T(aa.caller)]
223223 if ((ah == ah))
224224 then {
225225 let ak = getIntegerValue(D, x(X))
226226 let at = parseIntValue(ae[0])
227227 let ai = [invoke(D, "integerEntry", [z(ak), at], nil)]
228228 $Tuple2(nil, ai)
229229 }
230230 else throw("Strict value is not equal to itself.")
231231 }
232232
233233
234234
235235 @Callable(aa)
236236 func swapREADONLY (ad,ae) = {
237237 let X = addressFromStringValue(ae[0])
238238 let au = ae[1]
239239 let av = ae[2]
240240 let aw = parseIntValue(ae[3])
241241 let ah = [if (!(H))
242242 then true
243243 else g("Temporary shutdown"), T(aa.caller)]
244244 if ((ah == ah))
245245 then if (Z(X))
246246 then {
247247 let ax = {
248248 let ay = invoke(G, "swapCalculateREADONLY", [aw, au, av], nil)
249249 if ($isInstanceOf(ay, "Int"))
250250 then ay
251251 else throw(($getType(ay) + " couldn't be cast to Int"))
252252 }
253253 $Tuple2(nil, ax)
254254 }
255255 else {
256256 let az = {
257257 let ay = invoke(X, "swapReadOnly", [au, av, aw], nil)
258258 if ($isInstanceOf(ay, "Int"))
259259 then ay
260260 else throw(($getType(ay) + " couldn't be cast to Int"))
261261 }
262262 $Tuple2(nil, az)
263263 }
264264 else throw("Strict value is not equal to itself.")
265265 }
266266
267267
268268 @Verifier(aA)
269269 func aB () = {
270270 let aC = "%s__adminAddressList"
271271 let aD = "%s__txId"
272272 let aE = split(valueOrElse(getString(D, aC), ""), "__")
273273 let aF = if ((size(aE) >= 3))
274274 then false
275275 else sigVerify(aA.bodyBytes, aA.proofs[0], aA.senderPublicKey)
276276 let aG = (aA.id == fromBase58String(valueOrElse(getString(D, aD), "")))
277277 if (aG)
278278 then true
279279 else aF
280280 }
281281

github/deemru/w8io/3da68e3 
391.36 ms