tx · BsZYJbkAbmUKJ2RLEiqsgtvkz7rsNDAJjxmD69ckcort

3PBU4dFkXyXD3BbUCd7H51JcVf8Qx13gGzu:  -0.01300000 Waves

2023.04.15 01:14 [3600418] smart account 3PBU4dFkXyXD3BbUCd7H51JcVf8Qx13gGzu > SELF 0.00000000 Waves

{ "type": 13, "id": "BsZYJbkAbmUKJ2RLEiqsgtvkz7rsNDAJjxmD69ckcort", "fee": 1300000, "feeAssetId": null, "timestamp": 1681510507223, "version": 2, "chainId": 87, "sender": "3PBU4dFkXyXD3BbUCd7H51JcVf8Qx13gGzu", "senderPublicKey": "2LSCR4DgJvHQ71e14ypVGUCbuDJSs7TAf44UMZc15tpd", "proofs": [ "3XXDr1WkLM4UbwNCCVKFPktAP17DzLRhwxixACS8c3Q5coXtmdnRFUSQo5iaiJRT4Zwm3SUY69AESpJYfSVBxSoT" ], "script": "base64:BgIWCAISAwoBCBIDCgEIEgMKAQgSAwoBCAcBDWdldEFzc2V0Qnl0ZXMBCmFzc2V0SWRTdHIDCQAAAgUKYXNzZXRJZFN0cgIFV0FWRVMFBHVuaXQJANkEAQUKYXNzZXRJZFN0cgEKZ2V0QmFsYW5jZQEHYXNzZXRJZAQHJG1hdGNoMAUHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgRVbml0BAF4BQckbWF0Y2gwCAkA7wcBBQR0aGlzCWF2YWlsYWJsZQkA8AcCBQR0aGlzCQEFdmFsdWUBBQdhc3NldElkAQ5nZXRBc3NldFN0cmluZwEHYXNzZXRJZAQHJG1hdGNoMAUHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBAFiBQckbWF0Y2gwCQDYBAEFAWICBVdBVkVTAAVhZG1pbgkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1A5TVVyYmVRa2VmNWRLcEh3N1FON2p2N3k0cTdYVlVpNkoABHBvb2wJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNQNlNHYnBQYVNFMlBYcXZ3SzlFaTNNalNtQkdkcllTQXh6AAZjYWxsZXIJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNQTWJucWlmZnJ4NU5SQXNndW42YkdkRTRUNE05Z3hXTGdnAAFSCQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUDY4ek5pdWZzdTF2aVpwdTFhWTNjZGFoUlJLY3ZWNU45MwQBaQEBZgEEZGF0YQMJAQIhPQIIBQFpDG9yaWdpbkNhbGxlcgUGY2FsbGVyCQACAQIBIQMJAQIhPQIIBQFpBmNhbGxlcgUEcG9vbAkAAgECASEEAWoJALwJAgkAsAkBCQDbBAEFBGRhdGECAXwEB2Fzc2V0SW4ICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAQGYW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAQBYQUGYW1vdW50AwkAAAIFAWEFAWEEBXN3YXAxAwkAAAIJALYJAQkAkQMCBQFqAAIAAAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAMCCGV4Y2hhbmdlCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQdhc3NldEluBQZhbW91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AWoABwUCYTIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgMJAAACBQVzd2FwMgUFc3dhcDIEAWMJAQpnZXRCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAQMJAAACBQFjBQFjBAVzd2FwMwMJAAACCQC2CQEJAJEDAgUBagAIAAAJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAJAghleGNoYW5nZQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAQUBYwUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAgAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoACQIEc3dhcAkAzAgCCQEOZ2V0QXNzZXRTdHJpbmcBBQdhc3NldEluCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoACAADBAJwMQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoACQILcHV0T25lVGtuVjIJAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAEFAWMFA25pbAMJAAACBQJwMQUCcDEEAmEyCQDwBwIFBHRoaXMJANkEAQkAkQMCBQFqAAoJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAJAgtnZXRPbmVUa25WMgkAzAgCCQEOZ2V0QXNzZXRTdHJpbmcBBQdhc3NldEluCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQDZBAEJAJEDAgUBagAKBQJhMgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuBAJwMQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoACQIJcHV0T25lVGtuCQDMCAIAAQkAzAgCBwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwDCQAAAgUCcDEFAnAxBAJhMgkA8AcCBQR0aGlzCQDZBAEJAJEDAgUBagAKCQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoACQIJZ2V0T25lVGtuCQDMCAIJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4JAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJANkEAQkAkQMCBQFqAAoFAmEyBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4DCQAAAgUFc3dhcDMFBXN3YXAzBAFkCQBlAgkBCmdldEJhbGFuY2UBBQdhc3NldEluBQFhAwkAAAIFAWQFAWQDCQBmAgUBZAAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBHBvb2wFBmFtb3VudAUHYXNzZXRJbgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVhZG1pbgUBZAUHYXNzZXRJbgUDbmlsCQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAgAJAKQDAQUBYQIBLwkApAMBBQFiAgEvCQCkAwEFAWMCAS8JAKQDAQUBZAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQFnAQRkYXRhAwkBAiE9AggFAWkMb3JpZ2luQ2FsbGVyBQZjYWxsZXIJAAIBAgEhAwkBAiE9AggFAWkGY2FsbGVyBQRwb29sCQACAQIBIQQBagkAvAkCCQCwCQEJANsEAQUEZGF0YQIBfAQHYXNzZXRJbggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBAZhbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAFhBQZhbW91bnQDCQAAAgUBYQUBYQQFc3dhcDEDCQAAAgkAtgkBCQCRAwIFAWoAAgAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoAAwIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAIAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoAAwIEc3dhcAkAzAgCCQCRAwIFAWoAAAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwEAnAxCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagADAglwdXRPbmVUa24JAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIFAnAxBQJwMQQCYTIJAPAHAgUEdGhpcwkA2QQBCQCRAwIFAWoABAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAMCCWdldE9uZVRrbgkAzAgCCQCRAwIFAWoAAAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkA2QQBCQCRAwIFAWoABAUCYTIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgMJAAACBQVzd2FwMQUFc3dhcDEEAWIJAQpnZXRCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAMJAAACBQFiBQFiBAVzd2FwMgMJAAACCQC2CQEJAJEDAgUBagAFAAAJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAGAghleGNoYW5nZQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAUBYgUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAUAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoABgIEc3dhcAkAzAgCCQCRAwIFAWoAAQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAUBYgUDbmlsBAJwMQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoABgIJcHV0T25lVGtuCQDMCAIAAQkAzAgCBwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagAABQFiBQNuaWwDCQAAAgUCcDEFAnAxBAJhMgkA8AcCBQR0aGlzCQDZBAEJAJEDAgUBagAHCQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoABgIJZ2V0T25lVGtuCQDMCAIJAJEDAgUBagABCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQDZBAEJAJEDAgUBagAHBQJhMgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAwkAAAIFBXN3YXAyBQVzd2FwMgQBYwkBCmdldEJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABAwkAAAIFAWMFAWMEBXN3YXAzAwkAAAIJALYJAQkAkQMCBQFqAAgAAAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAkCCGV4Y2hhbmdlCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoACAABCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagAJAgRzd2FwCQDMCAIJAJEDAgUBagALCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwEAnAxCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagAJAglwdXRPbmVUa24JAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAEFAWMFA25pbAMJAAACBQJwMQUCcDEEAmEyCQDwBwIFBHRoaXMJANkEAQkAkQMCBQFqAAoJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAJAglnZXRPbmVUa24JAMwIAgkAkQMCBQFqAAsJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJANkEAQkAkQMCBQFqAAoFAmEyBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4DCQAAAgUFc3dhcDMFBXN3YXAzBAJjYwkBCmdldEJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagALAwkAAAIFAmNjBQJjYwQFc3dhcDQDCQAAAgkAtgkBCQCRAwIFAWoADAAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoADQIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAsFAmNjBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoADAABCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagANAgRzd2FwCQDMCAIJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4JAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAsFAmNjBQNuaWwEAnAxCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagANAglwdXRPbmVUa24JAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAsFAmNjBQNuaWwDCQAAAgUCcDEFAnAxBAJhMgkA8AcCBQR0aGlzCQDZBAEJAJEDAgUBagAOCQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoADQIJZ2V0T25lVGtuCQDMCAIJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4JAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJANkEAQkAkQMCBQFqAA4FAmEyBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4DCQAAAgUFc3dhcDQFBXN3YXA0BAFkCQBlAgkBCmdldEJhbGFuY2UBBQdhc3NldEluBQFhAwkAAAIFAWQFAWQDCQBmAgUBZAAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBHBvb2wFBmFtb3VudAUHYXNzZXRJbgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVhZG1pbgUBZAUHYXNzZXRJbgUDbmlsCQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAgAJAKQDAQUBYQIBLwkApAMBBQFiAgEvCQCkAwEFAWMCAS8JAKQDAQUBZAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQFzAQRkYXRhAwkBAiE9AggFAWkMb3JpZ2luQ2FsbGVyBQZjYWxsZXIJAAIBAgEhAwkBAiE9AggFAWkGY2FsbGVyBQRwb29sCQACAQIBIQQBagkAvAkCCQCwCQEJANsEAQUEZGF0YQIBfAQHYXNzZXRJbggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBAZhbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAFhBQZhbW91bnQDCQAAAgUBYQUBYQQFc3dhcDEDCQAAAgkAtgkBCQCRAwIFAWoAAgAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoAAwIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAIAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoAAwIEc3dhcAkAzAgCCQCRAwIFAWoAAAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoAAgADCQD8BwQFAVICBHN3YXAJAMwIAgABCQDMCAIJAJEDAgUBagAACQDMCAIJANgEAQgFBHRoaXMFYnl0ZXMFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwJAPwHBAUBUgIEc3dhcAkAzAgCAAEJAMwIAgkAkQMCBQFqAAAJAMwIAgkA2AQBCAUEdGhpcwVieXRlcwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQdhc3NldEluBQZhbW91bnQFA25pbAMJAAACBQVzd2FwMQUFc3dhcDEEAWIJAQpnZXRCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAMJAAACBQFiBQFiBAVzd2FwMgMJAAACCQC2CQEJAJEDAgUBagAFAAAJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAGAghleGNoYW5nZQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAUBYgUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAUAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoABgIEc3dhcAkAzAgCCQCRAwIFAWoAAQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAUBYgUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAUAAwkA/AcEBQFSAgRzd2FwCQDMCAIAAQkAzAgCCQCRAwIFAWoAAQkAzAgCCQDYBAEIBQR0aGlzBWJ5dGVzBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsCQD8BwQFAVICBHN3YXAJAMwIAgABCQDMCAIJAJEDAgUBagABCQDMCAIJANgEAQgFBHRoaXMFYnl0ZXMFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwDCQAAAgUFc3dhcDIFBXN3YXAyBAFjCQEKZ2V0QmFsYW5jZQEJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAEDCQAAAgUBYwUBYwQFc3dhcDMDCQAAAgkAtgkBCQCRAwIFAWoACAAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoACQIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAEFAWMFA25pbAMJAAACCQC2CQEJAJEDAgUBagAIAAEJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQFqAAkCBHN3YXAJAMwIAgkBDmdldEFzc2V0U3RyaW5nAQUHYXNzZXRJbgkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAQUBYwUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAgAAwkA/AcEBQFSAgRzd2FwCQDMCAIAAQkAzAgCCQEOZ2V0QXNzZXRTdHJpbmcBBQdhc3NldEluCQDMCAIJANgEAQgFBHRoaXMFYnl0ZXMFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwJAPwHBAUBUgIEc3dhcAkAzAgCAAEJAMwIAgkBDmdldEFzc2V0U3RyaW5nAQUHYXNzZXRJbgkAzAgCCQDYBAEIBQR0aGlzBWJ5dGVzBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIFBXN3YXAzBQVzd2FwMwQBZAkAZQIJAQpnZXRCYWxhbmNlAQUHYXNzZXRJbgUBYQMJAAACBQFkBQFkAwkAZgIFAWQAAAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQRwb29sBQZhbW91bnQFB2Fzc2V0SW4JAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUFYWRtaW4FAWQFB2Fzc2V0SW4FA25pbAkAAgEJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIACQCkAwEFAWECAS8JAKQDAQUBYgIBLwkApAMBBQFjAgEvCQCkAwEFAWQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEBdAEEZGF0YQMJAQIhPQIIBQFpDG9yaWdpbkNhbGxlcgUGY2FsbGVyCQACAQIBIQMJAQIhPQIIBQFpBmNhbGxlcgUEcG9vbAkAAgECASEEAWoJALwJAgkAsAkBCQDbBAEFBGRhdGECAXwEB2Fzc2V0SW4ICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAQGYW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAQBYQUGYW1vdW50AwkAAAIFAWEFAWEEBXN3YXAxAwkAAAIJALYJAQkAkQMCBQFqAAIAAAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAMCCGV4Y2hhbmdlCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQdhc3NldEluBQZhbW91bnQFA25pbAMJAAACCQC2CQEJAJEDAgUBagACAAEJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQFqAAMCBHN3YXAJAMwIAgkAkQMCBQFqAAAJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsCQD8BwQFAVICBHN3YXAJAMwIAgABCQDMCAIJAJEDAgUBagAACQDMCAIJANgEAQgFBHRoaXMFYnl0ZXMFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwDCQAAAgUFc3dhcDEFBXN3YXAxBAFiCQEKZ2V0QmFsYW5jZQEJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAADCQAAAgUBYgUBYgQFc3dhcDIDCQAAAgkAtgkBCQCRAwIFAWoABQAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoABgIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAAFAWIFA25pbAMJAAACCQC2CQEJAJEDAgUBagAFAAEJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQFqAAYCBHN3YXAJAMwIAgkAkQMCBQFqAAEJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAAFAWIFA25pbAkA/AcEBQFSAgRzd2FwCQDMCAIAAQkAzAgCCQCRAwIFAWoAAQkAzAgCCQDYBAEIBQR0aGlzBWJ5dGVzBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIFBXN3YXAyBQVzd2FwMgQBYwkBCmdldEJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABAwkAAAIFAWMFAWMEBXN3YXAzAwkAAAIJALYJAQkAkQMCBQFqAAgAAAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAkCCGV4Y2hhbmdlCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoACAABCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagAJAgRzd2FwCQDMCAIJAJEDAgUBagALCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwJAPwHBAUBUgIEc3dhcAkAzAgCAAEJAMwIAgkAkQMCBQFqAAsJAMwIAgUEdGhpcwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQdhc3NldEluBQZhbW91bnQFA25pbAMJAAACBQVzd2FwMwUFc3dhcDMEAmNjCQEKZ2V0QmFsYW5jZQEJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAsDCQAAAgUCY2MFAmNjBAVzd2FwNAMJAAACCQC2CQEJAJEDAgUBagAMAAAJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagANAghleGNoYW5nZQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoACwUCY2MFA25pbAMJAAACCQC2CQEJAJEDAgUBagAMAAEJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQFqAA0CBHN3YXAJAMwIAgkBDmdldEFzc2V0U3RyaW5nAQUHYXNzZXRJbgkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoACwUCY2MFA25pbAkA/AcEBQFSAgRzd2FwCQDMCAIAAQkAzAgCCQEOZ2V0QXNzZXRTdHJpbmcBBQdhc3NldEluCQDMCAIJANgEAQgFBHRoaXMFYnl0ZXMFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwDCQAAAgUFc3dhcDQFBXN3YXA0BAFkCQBlAgkBCmdldEJhbGFuY2UBBQdhc3NldEluBQFhAwkAAAIFAWQFAWQDCQBmAgUBZAAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBHBvb2wFBmFtb3VudAUHYXNzZXRJbgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVhZG1pbgUBZAUHYXNzZXRJbgUDbmlsCQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAgAJAKQDAQUBYQIBLwkApAMBBQFiAgEvCQCkAwEFAWMCAS8JAKQDAQUBZAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgECdHgBBnZlcmlmeQAJAMgTAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXkffcv/", "height": 3600418, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CeCCJDHAKr1hAxyywj82mNN22tjZU8DFrQy8XFNHuPee Next: C7ikNDbjA35DAKf5cfdZVLNPpxjvZQmja53r1YZ5GnvY Diff:
OldNewDifferences
269269 else if ((parseInt(j[2]) == 1))
270270 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
271271 else if ((parseInt(j[2]) == 3))
272- then invoke(R, "swap", [1, j[0], this], [AttachedPayment(assetIn, amount)])
273- else invoke(R, "swap", [1, j[0], this], [AttachedPayment(assetIn, amount)])
272+ then invoke(R, "swap", [1, j[0], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
273+ else invoke(R, "swap", [1, j[0], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
274274 if ((swap1 == swap1))
275275 then {
276276 let b = getBalance(getAssetBytes(j[0]))
281281 else if ((parseInt(j[5]) == 1))
282282 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
283283 else if ((parseInt(j[5]) == 3))
284- then invoke(R, "swap", [1, j[1], this], [AttachedPayment(assetIn, amount)])
285- else invoke(R, "swap", [1, j[1], this], [AttachedPayment(assetIn, amount)])
284+ then invoke(R, "swap", [1, j[1], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
285+ else invoke(R, "swap", [1, j[1], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
286286 if ((swap2 == swap2))
287287 then {
288288 let c = getBalance(getAssetBytes(j[1]))
293293 else if ((parseInt(j[8]) == 1))
294294 then invoke(addressFromStringValue(j[9]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[1]), c)])
295295 else if ((parseInt(j[8]) == 3))
296- then invoke(R, "swap", [1, getAssetString(assetIn), this], [AttachedPayment(assetIn, amount)])
297- else invoke(R, "swap", [1, getAssetString(assetIn), this], [AttachedPayment(assetIn, amount)])
296+ then invoke(R, "swap", [1, getAssetString(assetIn), toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
297+ else invoke(R, "swap", [1, getAssetString(assetIn), toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
298298 if ((swap3 == swap3))
299299 then {
300300 let d = (getBalance(assetIn) - a)
335335 then invoke(Address(fromBase58String(j[3])), "exchange", [1], [AttachedPayment(assetIn, amount)])
336336 else if ((parseInt(j[2]) == 1))
337337 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
338- else invoke(R, "swap", [1, j[0], this], [AttachedPayment(assetIn, amount)])
338+ else invoke(R, "swap", [1, j[0], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
339339 if ((swap1 == swap1))
340340 then {
341341 let b = getBalance(getAssetBytes(j[0]))
345345 then invoke(Address(fromBase58String(j[6])), "exchange", [1], [AttachedPayment(getAssetBytes(j[0]), b)])
346346 else if ((parseInt(j[5]) == 1))
347347 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
348- else invoke(R, "swap", [1, j[1], this], [AttachedPayment(assetIn, amount)])
348+ else invoke(R, "swap", [1, j[1], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
349349 if ((swap2 == swap2))
350350 then {
351351 let c = getBalance(getAssetBytes(j[1]))
365365 then invoke(Address(fromBase58String(j[13])), "exchange", [1], [AttachedPayment(getAssetBytes(j[11]), cc)])
366366 else if ((parseInt(j[12]) == 1))
367367 then invoke(addressFromStringValue(j[13]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[11]), cc)])
368- else invoke(R, "swap", [1, getAssetString(assetIn), this], [AttachedPayment(assetIn, amount)])
368+ else invoke(R, "swap", [1, getAssetString(assetIn), toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
369369 if ((swap4 == swap4))
370370 then {
371371 let d = (getBalance(assetIn) - a)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func getAssetBytes (assetIdStr) = if ((assetIdStr == "WAVES"))
55 then unit
66 else fromBase58String(assetIdStr)
77
88
99 func getBalance (assetId) = match assetId {
1010 case x: Unit =>
1111 wavesBalance(this).available
1212 case _ =>
1313 assetBalance(this, value(assetId))
1414 }
1515
1616
1717 func getAssetString (assetId) = match assetId {
1818 case b: ByteVector =>
1919 toBase58String(b)
2020 case _ =>
2121 "WAVES"
2222 }
2323
2424
2525 let admin = addressFromStringValue("3P9MUrbeQkef5dKpHw7QN7jv7y4q7XVUi6J")
2626
2727 let pool = addressFromStringValue("3P6SGbpPaSE2PXqvwK9Ei3MjSmBGdrYSAxz")
2828
2929 let caller = addressFromStringValue("3PMbnqiffrx5NRAsgun6bGdE4T4M9gxWLgg")
3030
3131 let R = addressFromStringValue("3P68zNiufsu1viZpu1aY3cdahRRKcvV5N93")
3232
3333 @Callable(i)
3434 func f (data) = if ((i.originCaller != caller))
3535 then throw("!")
3636 else if ((i.caller != pool))
3737 then throw("!")
3838 else {
3939 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
4040 let assetIn = i.payments[0].assetId
4141 let amount = i.payments[0].amount
4242 let a = amount
4343 if ((a == a))
4444 then {
4545 let swap1 = if ((parseInt(j[2]) == 0))
4646 then invoke(Address(fromBase58String(j[3])), "exchange", [1], [AttachedPayment(assetIn, amount)])
4747 else if ((parseInt(j[2]) == 1))
4848 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
4949 else if ((parseInt(j[2]) == 3))
5050 then {
5151 let p1 = invoke(addressFromStringValue(j[3]), "putOneTknV2", [1, false], [AttachedPayment(assetIn, amount)])
5252 if ((p1 == p1))
5353 then {
5454 let a2 = assetBalance(this, fromBase58String(j[4]))
5555 invoke(Address(fromBase58String(j[3])), "getOneTknV2", [j[0], 1], [AttachedPayment(fromBase58String(j[4]), a2)])
5656 }
5757 else throw("Strict value is not equal to itself.")
5858 }
5959 else {
6060 let p1 = invoke(addressFromStringValue(j[3]), "putOneTkn", [1, false], [AttachedPayment(assetIn, amount)])
6161 if ((p1 == p1))
6262 then {
6363 let a2 = assetBalance(this, fromBase58String(j[4]))
6464 invoke(Address(fromBase58String(j[3])), "getOneTkn", [j[0], 1], [AttachedPayment(fromBase58String(j[4]), a2)])
6565 }
6666 else throw("Strict value is not equal to itself.")
6767 }
6868 if ((swap1 == swap1))
6969 then {
7070 let b = getBalance(getAssetBytes(j[0]))
7171 if ((b == b))
7272 then {
7373 let swap2 = if ((parseInt(j[5]) == 0))
7474 then invoke(Address(fromBase58String(j[6])), "exchange", [1], [AttachedPayment(getAssetBytes(j[0]), b)])
7575 else if ((parseInt(j[5]) == 1))
7676 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
7777 else if ((parseInt(j[5]) == 3))
7878 then {
7979 let p1 = invoke(addressFromStringValue(j[6]), "putOneTknV2", [1, false], [AttachedPayment(getAssetBytes(j[0]), b)])
8080 if ((p1 == p1))
8181 then {
8282 let a2 = assetBalance(this, fromBase58String(j[7]))
8383 invoke(Address(fromBase58String(j[6])), "getOneTknV2", [j[1], 1], [AttachedPayment(fromBase58String(j[7]), a2)])
8484 }
8585 else throw("Strict value is not equal to itself.")
8686 }
8787 else {
8888 let p1 = invoke(addressFromStringValue(j[6]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[0]), b)])
8989 if ((p1 == p1))
9090 then {
9191 let a2 = assetBalance(this, fromBase58String(j[7]))
9292 invoke(Address(fromBase58String(j[6])), "getOneTkn", [j[1], 1], [AttachedPayment(fromBase58String(j[7]), a2)])
9393 }
9494 else throw("Strict value is not equal to itself.")
9595 }
9696 if ((swap2 == swap2))
9797 then {
9898 let c = getBalance(getAssetBytes(j[1]))
9999 if ((c == c))
100100 then {
101101 let swap3 = if ((parseInt(j[8]) == 0))
102102 then invoke(Address(fromBase58String(j[9])), "exchange", [1], [AttachedPayment(getAssetBytes(j[1]), c)])
103103 else if ((parseInt(j[8]) == 1))
104104 then invoke(addressFromStringValue(j[9]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[1]), c)])
105105 else if ((parseInt(j[8]) == 3))
106106 then {
107107 let p1 = invoke(addressFromStringValue(j[9]), "putOneTknV2", [1, false], [AttachedPayment(getAssetBytes(j[1]), c)])
108108 if ((p1 == p1))
109109 then {
110110 let a2 = assetBalance(this, fromBase58String(j[10]))
111111 invoke(Address(fromBase58String(j[9])), "getOneTknV2", [getAssetString(assetIn), 1], [AttachedPayment(fromBase58String(j[10]), a2)])
112112 }
113113 else throw("Strict value is not equal to itself.")
114114 }
115115 else {
116116 let p1 = invoke(addressFromStringValue(j[9]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[1]), c)])
117117 if ((p1 == p1))
118118 then {
119119 let a2 = assetBalance(this, fromBase58String(j[10]))
120120 invoke(Address(fromBase58String(j[9])), "getOneTkn", [getAssetString(assetIn), 1], [AttachedPayment(fromBase58String(j[10]), a2)])
121121 }
122122 else throw("Strict value is not equal to itself.")
123123 }
124124 if ((swap3 == swap3))
125125 then {
126126 let d = (getBalance(assetIn) - a)
127127 if ((d == d))
128128 then if ((d > 0))
129129 then [ScriptTransfer(pool, amount, assetIn), ScriptTransfer(admin, d, assetIn)]
130130 else throw(((((((("" + toString(a)) + "/") + toString(b)) + "/") + toString(c)) + "/") + toString(d)))
131131 else throw("Strict value is not equal to itself.")
132132 }
133133 else throw("Strict value is not equal to itself.")
134134 }
135135 else throw("Strict value is not equal to itself.")
136136 }
137137 else throw("Strict value is not equal to itself.")
138138 }
139139 else throw("Strict value is not equal to itself.")
140140 }
141141 else throw("Strict value is not equal to itself.")
142142 }
143143 else throw("Strict value is not equal to itself.")
144144 }
145145
146146
147147
148148 @Callable(i)
149149 func g (data) = if ((i.originCaller != caller))
150150 then throw("!")
151151 else if ((i.caller != pool))
152152 then throw("!")
153153 else {
154154 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
155155 let assetIn = i.payments[0].assetId
156156 let amount = i.payments[0].amount
157157 let a = amount
158158 if ((a == a))
159159 then {
160160 let swap1 = if ((parseInt(j[2]) == 0))
161161 then invoke(Address(fromBase58String(j[3])), "exchange", [1], [AttachedPayment(assetIn, amount)])
162162 else if ((parseInt(j[2]) == 1))
163163 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
164164 else {
165165 let p1 = invoke(addressFromStringValue(j[3]), "putOneTkn", [1, false], [AttachedPayment(assetIn, amount)])
166166 if ((p1 == p1))
167167 then {
168168 let a2 = assetBalance(this, fromBase58String(j[4]))
169169 invoke(Address(fromBase58String(j[3])), "getOneTkn", [j[0], 1], [AttachedPayment(fromBase58String(j[4]), a2)])
170170 }
171171 else throw("Strict value is not equal to itself.")
172172 }
173173 if ((swap1 == swap1))
174174 then {
175175 let b = getBalance(getAssetBytes(j[0]))
176176 if ((b == b))
177177 then {
178178 let swap2 = if ((parseInt(j[5]) == 0))
179179 then invoke(Address(fromBase58String(j[6])), "exchange", [1], [AttachedPayment(getAssetBytes(j[0]), b)])
180180 else if ((parseInt(j[5]) == 1))
181181 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
182182 else {
183183 let p1 = invoke(addressFromStringValue(j[6]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[0]), b)])
184184 if ((p1 == p1))
185185 then {
186186 let a2 = assetBalance(this, fromBase58String(j[7]))
187187 invoke(Address(fromBase58String(j[6])), "getOneTkn", [j[1], 1], [AttachedPayment(fromBase58String(j[7]), a2)])
188188 }
189189 else throw("Strict value is not equal to itself.")
190190 }
191191 if ((swap2 == swap2))
192192 then {
193193 let c = getBalance(getAssetBytes(j[1]))
194194 if ((c == c))
195195 then {
196196 let swap3 = if ((parseInt(j[8]) == 0))
197197 then invoke(Address(fromBase58String(j[9])), "exchange", [1], [AttachedPayment(getAssetBytes(j[1]), c)])
198198 else if ((parseInt(j[8]) == 1))
199199 then invoke(addressFromStringValue(j[9]), "swap", [j[11], 1], [AttachedPayment(getAssetBytes(j[1]), c)])
200200 else {
201201 let p1 = invoke(addressFromStringValue(j[9]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[1]), c)])
202202 if ((p1 == p1))
203203 then {
204204 let a2 = assetBalance(this, fromBase58String(j[10]))
205205 invoke(Address(fromBase58String(j[9])), "getOneTkn", [j[11], 1], [AttachedPayment(fromBase58String(j[10]), a2)])
206206 }
207207 else throw("Strict value is not equal to itself.")
208208 }
209209 if ((swap3 == swap3))
210210 then {
211211 let cc = getBalance(getAssetBytes(j[11]))
212212 if ((cc == cc))
213213 then {
214214 let swap4 = if ((parseInt(j[12]) == 0))
215215 then invoke(Address(fromBase58String(j[13])), "exchange", [1], [AttachedPayment(getAssetBytes(j[11]), cc)])
216216 else if ((parseInt(j[12]) == 1))
217217 then invoke(addressFromStringValue(j[13]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[11]), cc)])
218218 else {
219219 let p1 = invoke(addressFromStringValue(j[13]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[11]), cc)])
220220 if ((p1 == p1))
221221 then {
222222 let a2 = assetBalance(this, fromBase58String(j[14]))
223223 invoke(Address(fromBase58String(j[13])), "getOneTkn", [getAssetString(assetIn), 1], [AttachedPayment(fromBase58String(j[14]), a2)])
224224 }
225225 else throw("Strict value is not equal to itself.")
226226 }
227227 if ((swap4 == swap4))
228228 then {
229229 let d = (getBalance(assetIn) - a)
230230 if ((d == d))
231231 then if ((d > 0))
232232 then [ScriptTransfer(pool, amount, assetIn), ScriptTransfer(admin, d, assetIn)]
233233 else throw(((((((("" + toString(a)) + "/") + toString(b)) + "/") + toString(c)) + "/") + toString(d)))
234234 else throw("Strict value is not equal to itself.")
235235 }
236236 else throw("Strict value is not equal to itself.")
237237 }
238238 else throw("Strict value is not equal to itself.")
239239 }
240240 else throw("Strict value is not equal to itself.")
241241 }
242242 else throw("Strict value is not equal to itself.")
243243 }
244244 else throw("Strict value is not equal to itself.")
245245 }
246246 else throw("Strict value is not equal to itself.")
247247 }
248248 else throw("Strict value is not equal to itself.")
249249 }
250250 else throw("Strict value is not equal to itself.")
251251 }
252252
253253
254254
255255 @Callable(i)
256256 func s (data) = if ((i.originCaller != caller))
257257 then throw("!")
258258 else if ((i.caller != pool))
259259 then throw("!")
260260 else {
261261 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
262262 let assetIn = i.payments[0].assetId
263263 let amount = i.payments[0].amount
264264 let a = amount
265265 if ((a == a))
266266 then {
267267 let swap1 = if ((parseInt(j[2]) == 0))
268268 then invoke(Address(fromBase58String(j[3])), "exchange", [1], [AttachedPayment(assetIn, amount)])
269269 else if ((parseInt(j[2]) == 1))
270270 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
271271 else if ((parseInt(j[2]) == 3))
272- then invoke(R, "swap", [1, j[0], this], [AttachedPayment(assetIn, amount)])
273- else invoke(R, "swap", [1, j[0], this], [AttachedPayment(assetIn, amount)])
272+ then invoke(R, "swap", [1, j[0], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
273+ else invoke(R, "swap", [1, j[0], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
274274 if ((swap1 == swap1))
275275 then {
276276 let b = getBalance(getAssetBytes(j[0]))
277277 if ((b == b))
278278 then {
279279 let swap2 = if ((parseInt(j[5]) == 0))
280280 then invoke(Address(fromBase58String(j[6])), "exchange", [1], [AttachedPayment(getAssetBytes(j[0]), b)])
281281 else if ((parseInt(j[5]) == 1))
282282 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
283283 else if ((parseInt(j[5]) == 3))
284- then invoke(R, "swap", [1, j[1], this], [AttachedPayment(assetIn, amount)])
285- else invoke(R, "swap", [1, j[1], this], [AttachedPayment(assetIn, amount)])
284+ then invoke(R, "swap", [1, j[1], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
285+ else invoke(R, "swap", [1, j[1], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
286286 if ((swap2 == swap2))
287287 then {
288288 let c = getBalance(getAssetBytes(j[1]))
289289 if ((c == c))
290290 then {
291291 let swap3 = if ((parseInt(j[8]) == 0))
292292 then invoke(Address(fromBase58String(j[9])), "exchange", [1], [AttachedPayment(getAssetBytes(j[1]), c)])
293293 else if ((parseInt(j[8]) == 1))
294294 then invoke(addressFromStringValue(j[9]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[1]), c)])
295295 else if ((parseInt(j[8]) == 3))
296- then invoke(R, "swap", [1, getAssetString(assetIn), this], [AttachedPayment(assetIn, amount)])
297- else invoke(R, "swap", [1, getAssetString(assetIn), this], [AttachedPayment(assetIn, amount)])
296+ then invoke(R, "swap", [1, getAssetString(assetIn), toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
297+ else invoke(R, "swap", [1, getAssetString(assetIn), toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
298298 if ((swap3 == swap3))
299299 then {
300300 let d = (getBalance(assetIn) - a)
301301 if ((d == d))
302302 then if ((d > 0))
303303 then [ScriptTransfer(pool, amount, assetIn), ScriptTransfer(admin, d, assetIn)]
304304 else throw(((((((("" + toString(a)) + "/") + toString(b)) + "/") + toString(c)) + "/") + toString(d)))
305305 else throw("Strict value is not equal to itself.")
306306 }
307307 else throw("Strict value is not equal to itself.")
308308 }
309309 else throw("Strict value is not equal to itself.")
310310 }
311311 else throw("Strict value is not equal to itself.")
312312 }
313313 else throw("Strict value is not equal to itself.")
314314 }
315315 else throw("Strict value is not equal to itself.")
316316 }
317317 else throw("Strict value is not equal to itself.")
318318 }
319319
320320
321321
322322 @Callable(i)
323323 func t (data) = if ((i.originCaller != caller))
324324 then throw("!")
325325 else if ((i.caller != pool))
326326 then throw("!")
327327 else {
328328 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
329329 let assetIn = i.payments[0].assetId
330330 let amount = i.payments[0].amount
331331 let a = amount
332332 if ((a == a))
333333 then {
334334 let swap1 = if ((parseInt(j[2]) == 0))
335335 then invoke(Address(fromBase58String(j[3])), "exchange", [1], [AttachedPayment(assetIn, amount)])
336336 else if ((parseInt(j[2]) == 1))
337337 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
338- else invoke(R, "swap", [1, j[0], this], [AttachedPayment(assetIn, amount)])
338+ else invoke(R, "swap", [1, j[0], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
339339 if ((swap1 == swap1))
340340 then {
341341 let b = getBalance(getAssetBytes(j[0]))
342342 if ((b == b))
343343 then {
344344 let swap2 = if ((parseInt(j[5]) == 0))
345345 then invoke(Address(fromBase58String(j[6])), "exchange", [1], [AttachedPayment(getAssetBytes(j[0]), b)])
346346 else if ((parseInt(j[5]) == 1))
347347 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
348- else invoke(R, "swap", [1, j[1], this], [AttachedPayment(assetIn, amount)])
348+ else invoke(R, "swap", [1, j[1], toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
349349 if ((swap2 == swap2))
350350 then {
351351 let c = getBalance(getAssetBytes(j[1]))
352352 if ((c == c))
353353 then {
354354 let swap3 = if ((parseInt(j[8]) == 0))
355355 then invoke(Address(fromBase58String(j[9])), "exchange", [1], [AttachedPayment(getAssetBytes(j[1]), c)])
356356 else if ((parseInt(j[8]) == 1))
357357 then invoke(addressFromStringValue(j[9]), "swap", [j[11], 1], [AttachedPayment(getAssetBytes(j[1]), c)])
358358 else invoke(R, "swap", [1, j[11], this], [AttachedPayment(assetIn, amount)])
359359 if ((swap3 == swap3))
360360 then {
361361 let cc = getBalance(getAssetBytes(j[11]))
362362 if ((cc == cc))
363363 then {
364364 let swap4 = if ((parseInt(j[12]) == 0))
365365 then invoke(Address(fromBase58String(j[13])), "exchange", [1], [AttachedPayment(getAssetBytes(j[11]), cc)])
366366 else if ((parseInt(j[12]) == 1))
367367 then invoke(addressFromStringValue(j[13]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[11]), cc)])
368- else invoke(R, "swap", [1, getAssetString(assetIn), this], [AttachedPayment(assetIn, amount)])
368+ else invoke(R, "swap", [1, getAssetString(assetIn), toBase58String(this.bytes)], [AttachedPayment(assetIn, amount)])
369369 if ((swap4 == swap4))
370370 then {
371371 let d = (getBalance(assetIn) - a)
372372 if ((d == d))
373373 then if ((d > 0))
374374 then [ScriptTransfer(pool, amount, assetIn), ScriptTransfer(admin, d, assetIn)]
375375 else throw(((((((("" + toString(a)) + "/") + toString(b)) + "/") + toString(c)) + "/") + toString(d)))
376376 else throw("Strict value is not equal to itself.")
377377 }
378378 else throw("Strict value is not equal to itself.")
379379 }
380380 else throw("Strict value is not equal to itself.")
381381 }
382382 else throw("Strict value is not equal to itself.")
383383 }
384384 else throw("Strict value is not equal to itself.")
385385 }
386386 else throw("Strict value is not equal to itself.")
387387 }
388388 else throw("Strict value is not equal to itself.")
389389 }
390390 else throw("Strict value is not equal to itself.")
391391 }
392392 else throw("Strict value is not equal to itself.")
393393 }
394394
395395
396396 @Verifier(tx)
397397 func verify () = sigVerify_128Kb(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
398398

github/deemru/w8io/3ef1775 
73.00 ms