tx · 4xWYcKMHvhQpmPwRQRNYUmBphHNBWa2VkVHVLRc2dKyG

3PBy5csSnjgkieeF9dRTXN2AwG3SXBsVpww:  -0.00200000 Waves

2022.12.13 18:55 [3424232] smart account 3PBy5csSnjgkieeF9dRTXN2AwG3SXBsVpww > SELF 0.00000000 Waves

{ "type": 13, "id": "4xWYcKMHvhQpmPwRQRNYUmBphHNBWa2VkVHVLRc2dKyG", "fee": 200000, "feeAssetId": null, "timestamp": 1670946961782, "version": 2, "chainId": 87, "sender": "3PBy5csSnjgkieeF9dRTXN2AwG3SXBsVpww", "senderPublicKey": "ACUCrsKGyXXF5qHMFHPnQRbm5dQ619jBk5r4xWgex9TE", "proofs": [ "4S9Qazm5LuEKBJG8JAV2Xq6ZJXmbgXT1h5WPEspAhYu2SUz2NX1uZdaq3yu3xzWrz1stbHg2maMZvxVVU78uAAQ6" ], "script": "base64:BgIICAISBAoCCAEFAAZ3eFBvb2wJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNQUFpXZ0ZOUktITHZNNTFwd1M5MzRDOFZaN2QyRjRaNThnAAt1c2RuQXNzZXRJZAEgtiYpwwT1zlORpA5LdSQvZIxRsfrfr1QpvUjSHSqyqtEAEXVzZG5Bc3NldElkU3RyaW5nAixERzJ4RmtQZER3S1VvQmt6R0FoUXRMcFNHemZYTGlDWVBFemVLSDJBZDI0cAAXdXNkbldhdmVzTFBUb2tlbkFzc2V0SWQBIF3nbW5Gpsc5sbSuIUNTamiXqpkPn1sV+rxqUQ0cSRkgABFyb3V0aW5nUHV6emxlUG9vbAkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1BHRkh6VkdUNE5UaWd3Q0tQMU5jd29Ya29kVlp3dkJ1dVUBAWkBAmFQAgFwAWEDCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAht5b3UgYXJlIG5vdCBhbGxvd2VkIHRvIGFyYiEEEXVzZG5CYWxhbmNlQmVmb3JlCQDwBwIFBHRoaXMFC3VzZG5Bc3NldElkAwkAAAIFEXVzZG5CYWxhbmNlQmVmb3JlBRF1c2RuQmFsYW5jZUJlZm9yZQQSd2F2ZXNCYWxhbmNlQmVmb3JlCAkA7wcBBQR0aGlzCWF2YWlsYWJsZQMJAAACBRJ3YXZlc0JhbGFuY2VCZWZvcmUFEndhdmVzQmFsYW5jZUJlZm9yZQQLYnV5T25QdXp6bGUJAPwHBAURcm91dGluZ1B1enpsZVBvb2wCBHN3YXAJAMwIAgUBcAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgULdXNkbkFzc2V0SWQJAGgCBQFhAMCEPQUDbmlsAwkAAAIFC2J1eU9uUHV6emxlBQtidXlPblB1enpsZQQOd2F2ZXNCYWxUb1N3YXAJAGUCBRJ3YXZlc0JhbGFuY2VCZWZvcmUICQDvBwEFBHRoaXMJYXZhaWxhYmxlAwkAZwIAAAUOd2F2ZXNCYWxUb1N3YXAJAAIBAg5ub3RoaW5nIHRvIGFyYgQUcHV0VGhlVG9rZW5JblRoZVBvb2wJAPwHBAUGd3hQb29sAglwdXRPbmVUa24JAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBHVuaXQFDndhdmVzQmFsVG9Td2FwBQNuaWwDCQAAAgUUcHV0VGhlVG9rZW5JblRoZVBvb2wFFHB1dFRoZVRva2VuSW5UaGVQb29sBA5scFRva2VuQmFsYW5jZQkA8AcCBQR0aGlzBRd1c2RuV2F2ZXNMUFRva2VuQXNzZXRJZAMJAAACBQ5scFRva2VuQmFsYW5jZQUObHBUb2tlbkJhbGFuY2UEDXNlbGxQb29sVG9rZW4JAPwHBAUGd3hQb29sAglnZXRPbmVUa24JAMwIAgURdXNkbkFzc2V0SWRTdHJpbmcJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFF3VzZG5XYXZlc0xQVG9rZW5Bc3NldElkBQ5scFRva2VuQmFsYW5jZQUDbmlsAwkAAAIFDXNlbGxQb29sVG9rZW4FDXNlbGxQb29sVG9rZW4EEHVzZG5CYWxhbmNlQWZ0ZXIJAPAHAgUEdGhpcwULdXNkbkFzc2V0SWQDCQAAAgUQdXNkbkJhbGFuY2VBZnRlcgUQdXNkbkJhbGFuY2VBZnRlcgMJAGcCAAAJAGUCBRB1c2RuQmFsYW5jZUFmdGVyBRF1c2RuQmFsYW5jZUJlZm9yZQkAAgECB1soJF8kKV0FA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgECdHgBBnZlcmlmeQAJAMgTAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXlDZkyA", "height": 3424232, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9RWC6z8iNCqk9cTgXjbiATZbngZ2L11AxDVLNsE9bthW Next: 2LC8hMFLLj4qRsb3j36pWwXYiuXw4NnF521JK4aExJ25 Diff:
OldNewDifferences
1818 let usdnBalanceBefore = assetBalance(this, usdnAssetId)
1919 if ((usdnBalanceBefore == usdnBalanceBefore))
2020 then {
21- let buyOnPuzzle = invoke(routingPuzzlePool, "swap", [p, 1], [AttachedPayment(usdnAssetId, (a * 1000000))])
22- if ((buyOnPuzzle == buyOnPuzzle))
21+ let wavesBalanceBefore = wavesBalance(this).available
22+ if ((wavesBalanceBefore == wavesBalanceBefore))
2323 then {
24- let wavesBalToSwap = (usdnBalanceBefore - wavesBalance(this).available)
25- if ((0 >= wavesBalToSwap))
26- then throw("nothing to arb")
27- else {
28- let putTheTokenInThePool = invoke(wxPool, "putOneTkn", [1, false], [AttachedPayment(unit, wavesBalToSwap)])
29- if ((putTheTokenInThePool == putTheTokenInThePool))
30- then {
31- let lpTokenBalance = assetBalance(this, usdnWavesLPTokenAssetId)
32- if ((lpTokenBalance == lpTokenBalance))
24+ let buyOnPuzzle = invoke(routingPuzzlePool, "swap", [p, 1], [AttachedPayment(usdnAssetId, (a * 1000000))])
25+ if ((buyOnPuzzle == buyOnPuzzle))
26+ then {
27+ let wavesBalToSwap = (wavesBalanceBefore - wavesBalance(this).available)
28+ if ((0 >= wavesBalToSwap))
29+ then throw("nothing to arb")
30+ else {
31+ let putTheTokenInThePool = invoke(wxPool, "putOneTkn", [1, false], [AttachedPayment(unit, wavesBalToSwap)])
32+ if ((putTheTokenInThePool == putTheTokenInThePool))
3333 then {
34- let sellPoolToken = invoke(wxPool, "getOneTkn", [usdnAssetIdString, 1], [AttachedPayment(usdnWavesLPTokenAssetId, lpTokenBalance)])
35- if ((sellPoolToken == sellPoolToken))
34+ let lpTokenBalance = assetBalance(this, usdnWavesLPTokenAssetId)
35+ if ((lpTokenBalance == lpTokenBalance))
3636 then {
37- let usdnBalanceAfter = assetBalance(this, usdnAssetId)
38- if ((usdnBalanceAfter == usdnBalanceAfter))
39- then if ((0 >= (usdnBalanceAfter - usdnBalanceBefore)))
40- then throw("[($_$)]")
41- else nil
37+ let sellPoolToken = invoke(wxPool, "getOneTkn", [usdnAssetIdString, 1], [AttachedPayment(usdnWavesLPTokenAssetId, lpTokenBalance)])
38+ if ((sellPoolToken == sellPoolToken))
39+ then {
40+ let usdnBalanceAfter = assetBalance(this, usdnAssetId)
41+ if ((usdnBalanceAfter == usdnBalanceAfter))
42+ then if ((0 >= (usdnBalanceAfter - usdnBalanceBefore)))
43+ then throw("[($_$)]")
44+ else nil
45+ else throw("Strict value is not equal to itself.")
46+ }
4247 else throw("Strict value is not equal to itself.")
4348 }
4449 else throw("Strict value is not equal to itself.")
4550 }
4651 else throw("Strict value is not equal to itself.")
4752 }
48- else throw("Strict value is not equal to itself.")
4953 }
54+ else throw("Strict value is not equal to itself.")
5055 }
5156 else throw("Strict value is not equal to itself.")
5257 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let wxPool = addressFromStringValue("3PPZWgFNRKHLvM51pwS934C8VZ7d2F4Z58g")
55
66 let usdnAssetId = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
77
88 let usdnAssetIdString = "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p"
99
1010 let usdnWavesLPTokenAssetId = base58'7KZbJrVopwJhkdwbe1eFDBbex4dkY63MxjTNjqXtrzj1'
1111
1212 let routingPuzzlePool = addressFromStringValue("3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU")
1313
1414 @Callable(i)
1515 func aP (p,a) = if ((i.caller != this))
1616 then throw("you are not allowed to arb!")
1717 else {
1818 let usdnBalanceBefore = assetBalance(this, usdnAssetId)
1919 if ((usdnBalanceBefore == usdnBalanceBefore))
2020 then {
21- let buyOnPuzzle = invoke(routingPuzzlePool, "swap", [p, 1], [AttachedPayment(usdnAssetId, (a * 1000000))])
22- if ((buyOnPuzzle == buyOnPuzzle))
21+ let wavesBalanceBefore = wavesBalance(this).available
22+ if ((wavesBalanceBefore == wavesBalanceBefore))
2323 then {
24- let wavesBalToSwap = (usdnBalanceBefore - wavesBalance(this).available)
25- if ((0 >= wavesBalToSwap))
26- then throw("nothing to arb")
27- else {
28- let putTheTokenInThePool = invoke(wxPool, "putOneTkn", [1, false], [AttachedPayment(unit, wavesBalToSwap)])
29- if ((putTheTokenInThePool == putTheTokenInThePool))
30- then {
31- let lpTokenBalance = assetBalance(this, usdnWavesLPTokenAssetId)
32- if ((lpTokenBalance == lpTokenBalance))
24+ let buyOnPuzzle = invoke(routingPuzzlePool, "swap", [p, 1], [AttachedPayment(usdnAssetId, (a * 1000000))])
25+ if ((buyOnPuzzle == buyOnPuzzle))
26+ then {
27+ let wavesBalToSwap = (wavesBalanceBefore - wavesBalance(this).available)
28+ if ((0 >= wavesBalToSwap))
29+ then throw("nothing to arb")
30+ else {
31+ let putTheTokenInThePool = invoke(wxPool, "putOneTkn", [1, false], [AttachedPayment(unit, wavesBalToSwap)])
32+ if ((putTheTokenInThePool == putTheTokenInThePool))
3333 then {
34- let sellPoolToken = invoke(wxPool, "getOneTkn", [usdnAssetIdString, 1], [AttachedPayment(usdnWavesLPTokenAssetId, lpTokenBalance)])
35- if ((sellPoolToken == sellPoolToken))
34+ let lpTokenBalance = assetBalance(this, usdnWavesLPTokenAssetId)
35+ if ((lpTokenBalance == lpTokenBalance))
3636 then {
37- let usdnBalanceAfter = assetBalance(this, usdnAssetId)
38- if ((usdnBalanceAfter == usdnBalanceAfter))
39- then if ((0 >= (usdnBalanceAfter - usdnBalanceBefore)))
40- then throw("[($_$)]")
41- else nil
37+ let sellPoolToken = invoke(wxPool, "getOneTkn", [usdnAssetIdString, 1], [AttachedPayment(usdnWavesLPTokenAssetId, lpTokenBalance)])
38+ if ((sellPoolToken == sellPoolToken))
39+ then {
40+ let usdnBalanceAfter = assetBalance(this, usdnAssetId)
41+ if ((usdnBalanceAfter == usdnBalanceAfter))
42+ then if ((0 >= (usdnBalanceAfter - usdnBalanceBefore)))
43+ then throw("[($_$)]")
44+ else nil
45+ else throw("Strict value is not equal to itself.")
46+ }
4247 else throw("Strict value is not equal to itself.")
4348 }
4449 else throw("Strict value is not equal to itself.")
4550 }
4651 else throw("Strict value is not equal to itself.")
4752 }
48- else throw("Strict value is not equal to itself.")
4953 }
54+ else throw("Strict value is not equal to itself.")
5055 }
5156 else throw("Strict value is not equal to itself.")
5257 }
5358 else throw("Strict value is not equal to itself.")
5459 }
5560
5661
5762 @Verifier(tx)
5863 func verify () = sigVerify_128Kb(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
5964

github/deemru/w8io/3ef1775 
58.12 ms