tx · EWBjorLp6w85nyus2Z9CM4C7mdiwnvC7xuSjUXscMKm2

3PE6w9nK93PXEYiukbRAuv17CE6aDx6bdp3:  -0.01300000 Waves

2023.05.08 10:26 [3634088] smart account 3PE6w9nK93PXEYiukbRAuv17CE6aDx6bdp3 > SELF 0.00000000 Waves

{ "type": 13, "id": "EWBjorLp6w85nyus2Z9CM4C7mdiwnvC7xuSjUXscMKm2", "fee": 1300000, "feeAssetId": null, "timestamp": 1683530774954, "version": 2, "chainId": 87, "sender": "3PE6w9nK93PXEYiukbRAuv17CE6aDx6bdp3", "senderPublicKey": "BtfNGdaCdiNM2NCee95xNNKuopMHTrUyV24654U8Wrex", "proofs": [ "458u9swfBQFaDyiNfix92zFaABahNC2MwZcKtd3ZkxqaKqbNDq89pKtCUTXjRZRjzTxTQmxdCfK1jQmt22auSwDq" ], "script": "base64:BgIWCAISAwoBCBIDCgEIEgMKAQgSAwoBCAYBDWdldEFzc2V0Qnl0ZXMBCmFzc2V0SWRTdHIDCQAAAgUKYXNzZXRJZFN0cgIFV0FWRVMFBHVuaXQJANkEAQUKYXNzZXRJZFN0cgEKZ2V0QmFsYW5jZQEHYXNzZXRJZAQHJG1hdGNoMAUHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgRVbml0BAF4BQckbWF0Y2gwCAkA7wcBBQR0aGlzCWF2YWlsYWJsZQkA8AcCBQR0aGlzCQEFdmFsdWUBBQdhc3NldElkAQ5nZXRBc3NldFN0cmluZwEHYXNzZXRJZAQHJG1hdGNoMAUHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBAFiBQckbWF0Y2gwCQDYBAEFAWICBVdBVkVTAARwb29sCQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUDV3QTQ1d2hlM1hCNEVDSzZVWW9mTk0zdUZIRnhFNEtUbgAGY2FsbGVyCQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUDV3QTQ1d2hlM1hCNEVDSzZVWW9mTk0zdUZIRnhFNEtUbgABUgkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1A2OHpOaXVmc3UxdmlacHUxYVkzY2RhaFJSS2N2VjVOOTMEAWkBAWYBBGRhdGEDCQECIT0CCAUBaQxvcmlnaW5DYWxsZXIFBmNhbGxlcgkAAgECDiEgb3JpZ2luIGVycm9yAwkBAiE9AggFAWkGY2FsbGVyBQRwb29sCQACAQIOISBjYWxsZXIgZXJyb3IEAWoJALwJAgkAsAkBCQDbBAEFBGRhdGECAXwEB2Fzc2V0SW4ICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAQGYW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAQBYQUGYW1vdW50AwkAAAIFAWEFAWEEBXN3YXAxAwkAAAIJALYJAQkAkQMCBQFqAAIAAAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAMCCGV4Y2hhbmdlCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQdhc3NldEluBQZhbW91bnQFA25pbAMJAAACCQC2CQEJAJEDAgUBagACAAEJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQFqAAMCBHN3YXAJAMwIAgkAkQMCBQFqAAAJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAIAAwQCcDEJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQFqAAMCC3B1dE9uZVRrblYyCQDMCAIAAQkAzAgCBwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQdhc3NldEluBQZhbW91bnQFA25pbAMJAAACBQJwMQUCcDEEAmEyCQDwBwIFBHRoaXMJANkEAQkAkQMCBQFqAAQJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagADAgtnZXRPbmVUa25WMgkAzAgCCQCRAwIFAWoAAAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkA2QQBCQCRAwIFAWoABAUCYTIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgQCcDEJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQFqAAMCCXB1dE9uZVRrbgkAzAgCAAEJAMwIAgcFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwDCQAAAgUCcDEFAnAxBAJhMgkA8AcCBQR0aGlzCQDZBAEJAJEDAgUBagAECQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoAAwIJZ2V0T25lVGtuCQDMCAIJAJEDAgUBagAACQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQDZBAEJAJEDAgUBagAEBQJhMgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAwkAAAIFBXN3YXAxBQVzd2FwMQQBYgkBCmdldEJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagAAAwkAAAIFAWIFAWIEBXN3YXAyAwkAAAIJALYJAQkAkQMCBQFqAAUAAAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAYCCGV4Y2hhbmdlCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagAABQFiBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoABQABCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagAGAgRzd2FwCQDMCAIJAJEDAgUBagABCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagAABQFiBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoABQADBAJwMQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoABgILcHV0T25lVGtuVjIJAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAAFAWIFA25pbAMJAAACBQJwMQUCcDEEAmEyCQDwBwIFBHRoaXMJANkEAQkAkQMCBQFqAAcJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAGAgtnZXRPbmVUa25WMgkAzAgCCQCRAwIFAWoAAQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkA2QQBCQCRAwIFAWoABwUCYTIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgQCcDEJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQFqAAYCCXB1dE9uZVRrbgkAzAgCAAEJAMwIAgcFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAUBYgUDbmlsAwkAAAIFAnAxBQJwMQQCYTIJAPAHAgUEdGhpcwkA2QQBCQCRAwIFAWoABwkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAYCCWdldE9uZVRrbgkAzAgCCQCRAwIFAWoAAQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkA2QQBCQCRAwIFAWoABwUCYTIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgMJAAACBQVzd2FwMgUFc3dhcDIEAWMJAQpnZXRCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAQMJAAACBQFjBQFjBAVzd2FwMwMJAAACCQC2CQEJAJEDAgUBagAIAAAJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAJAghleGNoYW5nZQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAQUBYwUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAgAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoACQIEc3dhcAkAzAgCCQEOZ2V0QXNzZXRTdHJpbmcBBQdhc3NldEluCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoACAADBAJwMQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoACQILcHV0T25lVGtuVjIJAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAEFAWMFA25pbAMJAAACBQJwMQUCcDEEAmEyCQDwBwIFBHRoaXMJANkEAQkAkQMCBQFqAAoJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAJAgtnZXRPbmVUa25WMgkAzAgCCQEOZ2V0QXNzZXRTdHJpbmcBBQdhc3NldEluCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQDZBAEJAJEDAgUBagAKBQJhMgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuBAJwMQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoACQIJcHV0T25lVGtuCQDMCAIAAQkAzAgCBwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwDCQAAAgUCcDEFAnAxBAJhMgkA8AcCBQR0aGlzCQDZBAEJAJEDAgUBagAKCQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoACQIJZ2V0T25lVGtuCQDMCAIJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4JAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJANkEAQkAkQMCBQFqAAoFAmEyBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4DCQAAAgUFc3dhcDMFBXN3YXAzBAFkCQBlAgkBCmdldEJhbGFuY2UBBQdhc3NldEluBQFhAwkAAAIFAWQFAWQDCQBmAgUBZAAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBHBvb2wFBmFtb3VudAUHYXNzZXRJbgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQZjYWxsZXIFAWQFB2Fzc2V0SW4FA25pbAkAAgEJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIACQCkAwEFAWECAS8JAKQDAQUBYgIBLwkApAMBBQFjAgEvCQCkAwEFAWQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEBZwEEZGF0YQMJAQIhPQIIBQFpDG9yaWdpbkNhbGxlcgUGY2FsbGVyCQACAQIOISBvcmlnaW4gZXJyb3IDCQECIT0CCAUBaQZjYWxsZXIFBHBvb2wJAAIBAg4hIGNhbGxlciBlcnJvcgQBagkAvAkCCQCwCQEJANsEAQUEZGF0YQIBfAQHYXNzZXRJbggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBAZhbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAFhBQZhbW91bnQDCQAAAgUBYQUBYQQFc3dhcDEDCQAAAgkAtgkBCQCRAwIFAWoAAgAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoAAwIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAIAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoAAwIEc3dhcAkAzAgCCQCRAwIFAWoAAAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwEAnAxCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagADAglwdXRPbmVUa24JAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIFAnAxBQJwMQQCYTIJAPAHAgUEdGhpcwkA2QQBCQCRAwIFAWoABAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAMCCWdldE9uZVRrbgkAzAgCCQCRAwIFAWoAAAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkA2QQBCQCRAwIFAWoABAUCYTIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgMJAAACBQVzd2FwMQUFc3dhcDEEAWIJAQpnZXRCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAMJAAACBQFiBQFiBAVzd2FwMgMJAAACCQC2CQEJAJEDAgUBagAFAAAJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAGAghleGNoYW5nZQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAUBYgUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAUAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoABgIEc3dhcAkAzAgCCQCRAwIFAWoAAQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAUBYgUDbmlsBAJwMQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoABgIJcHV0T25lVGtuCQDMCAIAAQkAzAgCBwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagAABQFiBQNuaWwDCQAAAgUCcDEFAnAxBAJhMgkA8AcCBQR0aGlzCQDZBAEJAJEDAgUBagAHCQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoABgIJZ2V0T25lVGtuCQDMCAIJAJEDAgUBagABCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQDZBAEJAJEDAgUBagAHBQJhMgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAwkAAAIFBXN3YXAyBQVzd2FwMgQBYwkBCmdldEJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABAwkAAAIFAWMFAWMEBXN3YXAzAwkAAAIJALYJAQkAkQMCBQFqAAgAAAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAkCCGV4Y2hhbmdlCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoACAABCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagAJAgRzd2FwCQDMCAIJAJEDAgUBagALCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwEAnAxCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagAJAglwdXRPbmVUa24JAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAEFAWMFA25pbAMJAAACBQJwMQUCcDEEAmEyCQDwBwIFBHRoaXMJANkEAQkAkQMCBQFqAAoJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAJAglnZXRPbmVUa24JAMwIAgkAkQMCBQFqAAsJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJANkEAQkAkQMCBQFqAAoFAmEyBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4DCQAAAgUFc3dhcDMFBXN3YXAzBAJjYwkBCmdldEJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagALAwkAAAIFAmNjBQJjYwQFc3dhcDQDCQAAAgkAtgkBCQCRAwIFAWoADAAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoADQIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAsFAmNjBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoADAABCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagANAgRzd2FwCQDMCAIJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4JAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAsFAmNjBQNuaWwEAnAxCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagANAglwdXRPbmVUa24JAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAsFAmNjBQNuaWwDCQAAAgUCcDEFAnAxBAJhMgkA8AcCBQR0aGlzCQDZBAEJAJEDAgUBagAOCQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoADQIJZ2V0T25lVGtuCQDMCAIJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4JAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJANkEAQkAkQMCBQFqAA4FAmEyBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4DCQAAAgUFc3dhcDQFBXN3YXA0BAFkCQBlAgkBCmdldEJhbGFuY2UBBQdhc3NldEluBQFhAwkAAAIFAWQFAWQDCQBmAgUBZAAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBHBvb2wFBmFtb3VudAUHYXNzZXRJbgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQZjYWxsZXIFAWQFB2Fzc2V0SW4FA25pbAkAAgEJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIACQCkAwEFAWECAS8JAKQDAQUBYgIBLwkApAMBBQFjAgEvCQCkAwEFAWQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEBcwEEZGF0YQMJAQIhPQIIBQFpDG9yaWdpbkNhbGxlcgUGY2FsbGVyCQACAQIOISBvcmlnaW4gZXJyb3IDCQECIT0CCAUBaQZjYWxsZXIFBHBvb2wJAAIBAg4hIGNhbGxlciBlcnJvcgQBagkAvAkCCQCwCQEJANsEAQUEZGF0YQIBfAQHYXNzZXRJbggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBAZhbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAFhBQZhbW91bnQDCQAAAgUBYQUBYQQFc3dhcDEDCQAAAgkAtgkBCQCRAwIFAWoAAgAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoAAwIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAIAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoAAwIEc3dhcAkAzAgCCQCRAwIFAWoAAAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoAAgADCQD8BwQFAVICBHN3YXAJAMwIAgABCQDMCAIJAJEDAgUBagAACQDMCAIFBmNhbGxlcgUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQdhc3NldEluBQZhbW91bnQFA25pbAkA/AcEBQFSAgRzd2FwCQDMCAIAAQkAzAgCCQCRAwIFAWoAAAkAzAgCBQZjYWxsZXIFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwDCQAAAgUFc3dhcDEFBXN3YXAxBAFiCQEKZ2V0QmFsYW5jZQEJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAADCQAAAgUBYgUBYgQFc3dhcDIDCQAAAgkAtgkBCQCRAwIFAWoABQAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoABgIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAAFAWIFA25pbAMJAAACCQC2CQEJAJEDAgUBagAFAAEJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQFqAAYCBHN3YXAJAMwIAgkAkQMCBQFqAAEJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAAFAWIFA25pbAMJAAACCQC2CQEJAJEDAgUBagAFAAMJAPwHBAUBUgIEc3dhcAkAzAgCAAEJAMwIAgkAkQMCBQFqAAEJAMwIAgUGY2FsbGVyBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAAFAWIFA25pbAkA/AcEBQFSAgRzd2FwCQDMCAIAAQkAzAgCCQCRAwIFAWoAAQkAzAgCBQZjYWxsZXIFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAAUBYgUDbmlsAwkAAAIFBXN3YXAyBQVzd2FwMgQBYwkBCmdldEJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABAwkAAAIFAWMFAWMEBXN3YXAzAwkAAAIJALYJAQkAkQMCBQFqAAgAAAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAkCCGV4Y2hhbmdlCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoACAABCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagAJAgRzd2FwCQDMCAIJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4JAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAEFAWMFA25pbAMJAAACCQC2CQEJAJEDAgUBagAIAAMJAPwHBAUBUgIEc3dhcAkAzAgCAAEJAMwIAgkBDmdldEFzc2V0U3RyaW5nAQUHYXNzZXRJbgkAzAgCBQZjYWxsZXIFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAQUBYwUDbmlsCQD8BwQFAVICBHN3YXAJAMwIAgABCQDMCAIJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4JAMwIAgUGY2FsbGVyBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAEFAWMFA25pbAMJAAACBQVzd2FwMwUFc3dhcDMEAWQJAGUCCQEKZ2V0QmFsYW5jZQEFB2Fzc2V0SW4FAWEDCQAAAgUBZAUBZAMJAGYCBQFkAAAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUEcG9vbAUGYW1vdW50BQdhc3NldEluCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBmNhbGxlcgUBZAUHYXNzZXRJbgUDbmlsCQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAgAJAKQDAQUBYQIBLwkApAMBBQFiAgEvCQCkAwEFAWMCAS8JAKQDAQUBZAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQF0AQRkYXRhAwkBAiE9AggFAWkMb3JpZ2luQ2FsbGVyBQZjYWxsZXIJAAIBAgEhAwkBAiE9AggFAWkGY2FsbGVyBQRwb29sCQACAQIBIQQBagkAvAkCCQCwCQEJANsEAQUEZGF0YQIBfAQHYXNzZXRJbggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBAZhbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAFhBQZhbW91bnQDCQAAAgUBYQUBYQQFc3dhcDEDCQAAAgkAtgkBCQCRAwIFAWoAAgAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoAAwIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAIAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoAAwIEc3dhcAkAzAgCCQCRAwIFAWoAAAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUGYW1vdW50BQNuaWwJAPwHBAUBUgIEc3dhcAkAzAgCAAEJAMwIAgkAkQMCBQFqAAAJAMwIAgUGY2FsbGVyBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB2Fzc2V0SW4FBmFtb3VudAUDbmlsAwkAAAIFBXN3YXAxBQVzd2FwMQQBYgkBCmdldEJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagAAAwkAAAIFAWIFAWIEBXN3YXAyAwkAAAIJALYJAQkAkQMCBQFqAAUAAAkA/AcECQEHQWRkcmVzcwEJANkEAQkAkQMCBQFqAAYCCGV4Y2hhbmdlCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagAABQFiBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoABQABCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagAGAgRzd2FwCQDMCAIJAJEDAgUBagABCQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagAABQFiBQNuaWwJAPwHBAUBUgIEc3dhcAkAzAgCAAEJAMwIAgkAkQMCBQFqAAEJAMwIAgUGY2FsbGVyBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAAFAWIFA25pbAMJAAACBQVzd2FwMgUFc3dhcDIEAWMJAQpnZXRCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAQMJAAACBQFjBQFjBAVzd2FwMwMJAAACCQC2CQEJAJEDAgUBagAIAAAJAPwHBAkBB0FkZHJlc3MBCQDZBAEJAJEDAgUBagAJAghleGNoYW5nZQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAQUBYwUDbmlsAwkAAAIJALYJAQkAkQMCBQFqAAgAAQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAWoACQIEc3dhcAkAzAgCCQCRAwIFAWoACwkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoAAQUBYwUDbmlsCQD8BwQFAVICBHN3YXAJAMwIAgABCQDMCAIJAJEDAgUBagALCQDMCAIFBmNhbGxlcgUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagABBQFjBQNuaWwDCQAAAgUFc3dhcDMFBXN3YXAzBAJjYwkBCmdldEJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEJAJEDAgUBagALAwkAAAIFAmNjBQJjYwQFc3dhcDQDCQAAAgkAtgkBCQCRAwIFAWoADAAACQD8BwQJAQdBZGRyZXNzAQkA2QQBCQCRAwIFAWoADQIIZXhjaGFuZ2UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAsFAmNjBQNuaWwDCQAAAgkAtgkBCQCRAwIFAWoADAABCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUBagANAgRzd2FwCQDMCAIJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4JAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQkAkQMCBQFqAAsFAmNjBQNuaWwJAPwHBAUBUgIEc3dhcAkAzAgCAAEJAMwIAgkBDmdldEFzc2V0U3RyaW5nAQUHYXNzZXRJbgkAzAgCBQZjYWxsZXIFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBDWdldEFzc2V0Qnl0ZXMBCQCRAwIFAWoACwUCY2MFA25pbAMJAAACBQVzd2FwNAUFc3dhcDQEAWQJAGUCCQEKZ2V0QmFsYW5jZQEFB2Fzc2V0SW4FAWEDCQAAAgUBZAUBZAMJAGYCBQFkAAAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUEcG9vbAUGYW1vdW50BQdhc3NldEluCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBmNhbGxlcgUBZAUHYXNzZXRJbgUDbmlsCQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAgAJAKQDAQUBYQIBLwkApAMBBQFiAgEvCQCkAwEFAWMCAS8JAKQDAQUBZAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgECdHgBBnZlcmlmeQAJAMgTAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXlPz7l6", "height": 3634088, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9hQpwRd94VQCdabfKAu2msdCcWCy1wAH17sLfBG4uQsq Next: none Diff:
OldNewDifferences
2222 }
2323
2424
25-let pool = addressFromStringValue("3P6SGbpPaSE2PXqvwK9Ei3MjSmBGdrYSAxz")
25+let pool = addressFromStringValue("3P5wA45whe3XB4ECK6UYofNM3uFHFxE4KTn")
2626
2727 let caller = addressFromStringValue("3P5wA45whe3XB4ECK6UYofNM3uFHFxE4KTn")
2828
3030
3131 @Callable(i)
3232 func f (data) = if ((i.originCaller != caller))
33- then throw("!")
33+ then throw("! origin error")
3434 else if ((i.caller != pool))
35- then throw("!")
35+ then throw("! caller error")
3636 else {
3737 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
3838 let assetIn = i.payments[0].assetId
145145
146146 @Callable(i)
147147 func g (data) = if ((i.originCaller != caller))
148- then throw("!")
148+ then throw("! origin error")
149149 else if ((i.caller != pool))
150- then throw("!")
150+ then throw("! caller error")
151151 else {
152152 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
153153 let assetIn = i.payments[0].assetId
252252
253253 @Callable(i)
254254 func s (data) = if ((i.originCaller != caller))
255- then throw("!")
255+ then throw("! origin error")
256256 else if ((i.caller != pool))
257- then throw("!")
257+ then throw("! caller error")
258258 else {
259259 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
260260 let assetIn = i.payments[0].assetId
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
25-let pool = addressFromStringValue("3P6SGbpPaSE2PXqvwK9Ei3MjSmBGdrYSAxz")
25+let pool = addressFromStringValue("3P5wA45whe3XB4ECK6UYofNM3uFHFxE4KTn")
2626
2727 let caller = addressFromStringValue("3P5wA45whe3XB4ECK6UYofNM3uFHFxE4KTn")
2828
2929 let R = addressFromStringValue("3P68zNiufsu1viZpu1aY3cdahRRKcvV5N93")
3030
3131 @Callable(i)
3232 func f (data) = if ((i.originCaller != caller))
33- then throw("!")
33+ then throw("! origin error")
3434 else if ((i.caller != pool))
35- then throw("!")
35+ then throw("! caller error")
3636 else {
3737 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
3838 let assetIn = i.payments[0].assetId
3939 let amount = i.payments[0].amount
4040 let a = amount
4141 if ((a == a))
4242 then {
4343 let swap1 = if ((parseInt(j[2]) == 0))
4444 then invoke(Address(fromBase58String(j[3])), "exchange", [1], [AttachedPayment(assetIn, amount)])
4545 else if ((parseInt(j[2]) == 1))
4646 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
4747 else if ((parseInt(j[2]) == 3))
4848 then {
4949 let p1 = invoke(addressFromStringValue(j[3]), "putOneTknV2", [1, false], [AttachedPayment(assetIn, amount)])
5050 if ((p1 == p1))
5151 then {
5252 let a2 = assetBalance(this, fromBase58String(j[4]))
5353 invoke(Address(fromBase58String(j[3])), "getOneTknV2", [j[0], 1], [AttachedPayment(fromBase58String(j[4]), a2)])
5454 }
5555 else throw("Strict value is not equal to itself.")
5656 }
5757 else {
5858 let p1 = invoke(addressFromStringValue(j[3]), "putOneTkn", [1, false], [AttachedPayment(assetIn, amount)])
5959 if ((p1 == p1))
6060 then {
6161 let a2 = assetBalance(this, fromBase58String(j[4]))
6262 invoke(Address(fromBase58String(j[3])), "getOneTkn", [j[0], 1], [AttachedPayment(fromBase58String(j[4]), a2)])
6363 }
6464 else throw("Strict value is not equal to itself.")
6565 }
6666 if ((swap1 == swap1))
6767 then {
6868 let b = getBalance(getAssetBytes(j[0]))
6969 if ((b == b))
7070 then {
7171 let swap2 = if ((parseInt(j[5]) == 0))
7272 then invoke(Address(fromBase58String(j[6])), "exchange", [1], [AttachedPayment(getAssetBytes(j[0]), b)])
7373 else if ((parseInt(j[5]) == 1))
7474 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
7575 else if ((parseInt(j[5]) == 3))
7676 then {
7777 let p1 = invoke(addressFromStringValue(j[6]), "putOneTknV2", [1, false], [AttachedPayment(getAssetBytes(j[0]), b)])
7878 if ((p1 == p1))
7979 then {
8080 let a2 = assetBalance(this, fromBase58String(j[7]))
8181 invoke(Address(fromBase58String(j[6])), "getOneTknV2", [j[1], 1], [AttachedPayment(fromBase58String(j[7]), a2)])
8282 }
8383 else throw("Strict value is not equal to itself.")
8484 }
8585 else {
8686 let p1 = invoke(addressFromStringValue(j[6]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[0]), b)])
8787 if ((p1 == p1))
8888 then {
8989 let a2 = assetBalance(this, fromBase58String(j[7]))
9090 invoke(Address(fromBase58String(j[6])), "getOneTkn", [j[1], 1], [AttachedPayment(fromBase58String(j[7]), a2)])
9191 }
9292 else throw("Strict value is not equal to itself.")
9393 }
9494 if ((swap2 == swap2))
9595 then {
9696 let c = getBalance(getAssetBytes(j[1]))
9797 if ((c == c))
9898 then {
9999 let swap3 = if ((parseInt(j[8]) == 0))
100100 then invoke(Address(fromBase58String(j[9])), "exchange", [1], [AttachedPayment(getAssetBytes(j[1]), c)])
101101 else if ((parseInt(j[8]) == 1))
102102 then invoke(addressFromStringValue(j[9]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[1]), c)])
103103 else if ((parseInt(j[8]) == 3))
104104 then {
105105 let p1 = invoke(addressFromStringValue(j[9]), "putOneTknV2", [1, false], [AttachedPayment(getAssetBytes(j[1]), c)])
106106 if ((p1 == p1))
107107 then {
108108 let a2 = assetBalance(this, fromBase58String(j[10]))
109109 invoke(Address(fromBase58String(j[9])), "getOneTknV2", [getAssetString(assetIn), 1], [AttachedPayment(fromBase58String(j[10]), a2)])
110110 }
111111 else throw("Strict value is not equal to itself.")
112112 }
113113 else {
114114 let p1 = invoke(addressFromStringValue(j[9]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[1]), c)])
115115 if ((p1 == p1))
116116 then {
117117 let a2 = assetBalance(this, fromBase58String(j[10]))
118118 invoke(Address(fromBase58String(j[9])), "getOneTkn", [getAssetString(assetIn), 1], [AttachedPayment(fromBase58String(j[10]), a2)])
119119 }
120120 else throw("Strict value is not equal to itself.")
121121 }
122122 if ((swap3 == swap3))
123123 then {
124124 let d = (getBalance(assetIn) - a)
125125 if ((d == d))
126126 then if ((d > 0))
127127 then [ScriptTransfer(pool, amount, assetIn), ScriptTransfer(caller, d, assetIn)]
128128 else throw(((((((("" + toString(a)) + "/") + toString(b)) + "/") + toString(c)) + "/") + toString(d)))
129129 else throw("Strict value is not equal to itself.")
130130 }
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
144144
145145
146146 @Callable(i)
147147 func g (data) = if ((i.originCaller != caller))
148- then throw("!")
148+ then throw("! origin error")
149149 else if ((i.caller != pool))
150- then throw("!")
150+ then throw("! caller error")
151151 else {
152152 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
153153 let assetIn = i.payments[0].assetId
154154 let amount = i.payments[0].amount
155155 let a = amount
156156 if ((a == a))
157157 then {
158158 let swap1 = if ((parseInt(j[2]) == 0))
159159 then invoke(Address(fromBase58String(j[3])), "exchange", [1], [AttachedPayment(assetIn, amount)])
160160 else if ((parseInt(j[2]) == 1))
161161 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
162162 else {
163163 let p1 = invoke(addressFromStringValue(j[3]), "putOneTkn", [1, false], [AttachedPayment(assetIn, amount)])
164164 if ((p1 == p1))
165165 then {
166166 let a2 = assetBalance(this, fromBase58String(j[4]))
167167 invoke(Address(fromBase58String(j[3])), "getOneTkn", [j[0], 1], [AttachedPayment(fromBase58String(j[4]), a2)])
168168 }
169169 else throw("Strict value is not equal to itself.")
170170 }
171171 if ((swap1 == swap1))
172172 then {
173173 let b = getBalance(getAssetBytes(j[0]))
174174 if ((b == b))
175175 then {
176176 let swap2 = if ((parseInt(j[5]) == 0))
177177 then invoke(Address(fromBase58String(j[6])), "exchange", [1], [AttachedPayment(getAssetBytes(j[0]), b)])
178178 else if ((parseInt(j[5]) == 1))
179179 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
180180 else {
181181 let p1 = invoke(addressFromStringValue(j[6]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[0]), b)])
182182 if ((p1 == p1))
183183 then {
184184 let a2 = assetBalance(this, fromBase58String(j[7]))
185185 invoke(Address(fromBase58String(j[6])), "getOneTkn", [j[1], 1], [AttachedPayment(fromBase58String(j[7]), a2)])
186186 }
187187 else throw("Strict value is not equal to itself.")
188188 }
189189 if ((swap2 == swap2))
190190 then {
191191 let c = getBalance(getAssetBytes(j[1]))
192192 if ((c == c))
193193 then {
194194 let swap3 = if ((parseInt(j[8]) == 0))
195195 then invoke(Address(fromBase58String(j[9])), "exchange", [1], [AttachedPayment(getAssetBytes(j[1]), c)])
196196 else if ((parseInt(j[8]) == 1))
197197 then invoke(addressFromStringValue(j[9]), "swap", [j[11], 1], [AttachedPayment(getAssetBytes(j[1]), c)])
198198 else {
199199 let p1 = invoke(addressFromStringValue(j[9]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[1]), c)])
200200 if ((p1 == p1))
201201 then {
202202 let a2 = assetBalance(this, fromBase58String(j[10]))
203203 invoke(Address(fromBase58String(j[9])), "getOneTkn", [j[11], 1], [AttachedPayment(fromBase58String(j[10]), a2)])
204204 }
205205 else throw("Strict value is not equal to itself.")
206206 }
207207 if ((swap3 == swap3))
208208 then {
209209 let cc = getBalance(getAssetBytes(j[11]))
210210 if ((cc == cc))
211211 then {
212212 let swap4 = if ((parseInt(j[12]) == 0))
213213 then invoke(Address(fromBase58String(j[13])), "exchange", [1], [AttachedPayment(getAssetBytes(j[11]), cc)])
214214 else if ((parseInt(j[12]) == 1))
215215 then invoke(addressFromStringValue(j[13]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[11]), cc)])
216216 else {
217217 let p1 = invoke(addressFromStringValue(j[13]), "putOneTkn", [1, false], [AttachedPayment(getAssetBytes(j[11]), cc)])
218218 if ((p1 == p1))
219219 then {
220220 let a2 = assetBalance(this, fromBase58String(j[14]))
221221 invoke(Address(fromBase58String(j[13])), "getOneTkn", [getAssetString(assetIn), 1], [AttachedPayment(fromBase58String(j[14]), a2)])
222222 }
223223 else throw("Strict value is not equal to itself.")
224224 }
225225 if ((swap4 == swap4))
226226 then {
227227 let d = (getBalance(assetIn) - a)
228228 if ((d == d))
229229 then if ((d > 0))
230230 then [ScriptTransfer(pool, amount, assetIn), ScriptTransfer(caller, d, assetIn)]
231231 else throw(((((((("" + toString(a)) + "/") + toString(b)) + "/") + toString(c)) + "/") + toString(d)))
232232 else throw("Strict value is not equal to itself.")
233233 }
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
251251
252252
253253 @Callable(i)
254254 func s (data) = if ((i.originCaller != caller))
255- then throw("!")
255+ then throw("! origin error")
256256 else if ((i.caller != pool))
257- then throw("!")
257+ then throw("! caller error")
258258 else {
259259 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
260260 let assetIn = i.payments[0].assetId
261261 let amount = i.payments[0].amount
262262 let a = amount
263263 if ((a == a))
264264 then {
265265 let swap1 = if ((parseInt(j[2]) == 0))
266266 then invoke(Address(fromBase58String(j[3])), "exchange", [1], [AttachedPayment(assetIn, amount)])
267267 else if ((parseInt(j[2]) == 1))
268268 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
269269 else if ((parseInt(j[2]) == 3))
270270 then invoke(R, "swap", [1, j[0], caller], [AttachedPayment(assetIn, amount)])
271271 else invoke(R, "swap", [1, j[0], caller], [AttachedPayment(assetIn, amount)])
272272 if ((swap1 == swap1))
273273 then {
274274 let b = getBalance(getAssetBytes(j[0]))
275275 if ((b == b))
276276 then {
277277 let swap2 = if ((parseInt(j[5]) == 0))
278278 then invoke(Address(fromBase58String(j[6])), "exchange", [1], [AttachedPayment(getAssetBytes(j[0]), b)])
279279 else if ((parseInt(j[5]) == 1))
280280 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
281281 else if ((parseInt(j[5]) == 3))
282282 then invoke(R, "swap", [1, j[1], caller], [AttachedPayment(getAssetBytes(j[0]), b)])
283283 else invoke(R, "swap", [1, j[1], caller], [AttachedPayment(getAssetBytes(j[0]), b)])
284284 if ((swap2 == swap2))
285285 then {
286286 let c = getBalance(getAssetBytes(j[1]))
287287 if ((c == c))
288288 then {
289289 let swap3 = if ((parseInt(j[8]) == 0))
290290 then invoke(Address(fromBase58String(j[9])), "exchange", [1], [AttachedPayment(getAssetBytes(j[1]), c)])
291291 else if ((parseInt(j[8]) == 1))
292292 then invoke(addressFromStringValue(j[9]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[1]), c)])
293293 else if ((parseInt(j[8]) == 3))
294294 then invoke(R, "swap", [1, getAssetString(assetIn), caller], [AttachedPayment(getAssetBytes(j[1]), c)])
295295 else invoke(R, "swap", [1, getAssetString(assetIn), caller], [AttachedPayment(getAssetBytes(j[1]), c)])
296296 if ((swap3 == swap3))
297297 then {
298298 let d = (getBalance(assetIn) - a)
299299 if ((d == d))
300300 then if ((d > 0))
301301 then [ScriptTransfer(pool, amount, assetIn), ScriptTransfer(caller, d, assetIn)]
302302 else throw(((((((("" + toString(a)) + "/") + toString(b)) + "/") + toString(c)) + "/") + toString(d)))
303303 else throw("Strict value is not equal to itself.")
304304 }
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
318318
319319
320320 @Callable(i)
321321 func t (data) = if ((i.originCaller != caller))
322322 then throw("!")
323323 else if ((i.caller != pool))
324324 then throw("!")
325325 else {
326326 let j = split_4C(toUtf8String(fromBase64String(data)), "|")
327327 let assetIn = i.payments[0].assetId
328328 let amount = i.payments[0].amount
329329 let a = amount
330330 if ((a == a))
331331 then {
332332 let swap1 = if ((parseInt(j[2]) == 0))
333333 then invoke(Address(fromBase58String(j[3])), "exchange", [1], [AttachedPayment(assetIn, amount)])
334334 else if ((parseInt(j[2]) == 1))
335335 then invoke(addressFromStringValue(j[3]), "swap", [j[0], 1], [AttachedPayment(assetIn, amount)])
336336 else invoke(R, "swap", [1, j[0], caller], [AttachedPayment(assetIn, amount)])
337337 if ((swap1 == swap1))
338338 then {
339339 let b = getBalance(getAssetBytes(j[0]))
340340 if ((b == b))
341341 then {
342342 let swap2 = if ((parseInt(j[5]) == 0))
343343 then invoke(Address(fromBase58String(j[6])), "exchange", [1], [AttachedPayment(getAssetBytes(j[0]), b)])
344344 else if ((parseInt(j[5]) == 1))
345345 then invoke(addressFromStringValue(j[6]), "swap", [j[1], 1], [AttachedPayment(getAssetBytes(j[0]), b)])
346346 else invoke(R, "swap", [1, j[1], caller], [AttachedPayment(getAssetBytes(j[0]), b)])
347347 if ((swap2 == swap2))
348348 then {
349349 let c = getBalance(getAssetBytes(j[1]))
350350 if ((c == c))
351351 then {
352352 let swap3 = if ((parseInt(j[8]) == 0))
353353 then invoke(Address(fromBase58String(j[9])), "exchange", [1], [AttachedPayment(getAssetBytes(j[1]), c)])
354354 else if ((parseInt(j[8]) == 1))
355355 then invoke(addressFromStringValue(j[9]), "swap", [j[11], 1], [AttachedPayment(getAssetBytes(j[1]), c)])
356356 else invoke(R, "swap", [1, j[11], caller], [AttachedPayment(getAssetBytes(j[1]), c)])
357357 if ((swap3 == swap3))
358358 then {
359359 let cc = getBalance(getAssetBytes(j[11]))
360360 if ((cc == cc))
361361 then {
362362 let swap4 = if ((parseInt(j[12]) == 0))
363363 then invoke(Address(fromBase58String(j[13])), "exchange", [1], [AttachedPayment(getAssetBytes(j[11]), cc)])
364364 else if ((parseInt(j[12]) == 1))
365365 then invoke(addressFromStringValue(j[13]), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(j[11]), cc)])
366366 else invoke(R, "swap", [1, getAssetString(assetIn), caller], [AttachedPayment(getAssetBytes(j[11]), cc)])
367367 if ((swap4 == swap4))
368368 then {
369369 let d = (getBalance(assetIn) - a)
370370 if ((d == d))
371371 then if ((d > 0))
372372 then [ScriptTransfer(pool, amount, assetIn), ScriptTransfer(caller, d, assetIn)]
373373 else throw(((((((("" + toString(a)) + "/") + toString(b)) + "/") + toString(c)) + "/") + toString(d)))
374374 else throw("Strict value is not equal to itself.")
375375 }
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
393393
394394 @Verifier(tx)
395395 func verify () = sigVerify_128Kb(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
396396

github/deemru/w8io/3ef1775 
63.54 ms