tx · 8Zs7hByZWqxfcUhE2rK7YHdc6cEwaXAh8HKwyoGGi4wv 3PDsQgDqm2kbKdCU7vbRuWbAKaCnmePnBfd: -0.00200000 Waves 2022.12.21 21:25 [3435874] smart account 3PDsQgDqm2kbKdCU7vbRuWbAKaCnmePnBfd > SELF 0.00000000 Waves
{ "type": 13, "id": "8Zs7hByZWqxfcUhE2rK7YHdc6cEwaXAh8HKwyoGGi4wv", "fee": 200000, "feeAssetId": null, "timestamp": 1671647200568, "version": 2, "chainId": 87, "sender": "3PDsQgDqm2kbKdCU7vbRuWbAKaCnmePnBfd", "senderPublicKey": "9hkAsZkWqi3SayR8B8yPeUJfT8Ysr7Hxn5i97StECjGT", "proofs": [ "3qZP44NJVnwWwAtvaxXoJnzziUggo2kCV3rapbM6Zv6gwNpA3DdDUycpPv5RKpFEtWxXPRziQ7aMHBWx5gC8ydAU" ], "script": "base64:BgIGCAISABIABwALcGFyZW50QWRtaW4JARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNQQnk1Y3NTbmpna2llZUY5ZFJUWE4yQXdHM1NYQnNWcHd3AAt1c2RuQXNzZXRJZAEgtiYpwwT1zlORpA5LdSQvZIxRsfrfr1QpvUjSHSqyqtEAEXVzZG5Bc3NldElkU3RyaW5nAixERzJ4RmtQZER3S1VvQmt6R0FoUXRMcFNHemZYTGlDWVBFemVLSDJBZDI0cAAGb3JhY2xlCQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUEJ5NWNzU25qZ2tpZWVGOWRSVFhOMkF3RzNTWEJzVnB3dwEOZ2V0U3RyaW5nQnlLZXkBA2tleQkBC3ZhbHVlT3JFbHNlAgkAnQgCBQZvcmFjbGUFA2tleQIAAQ9nZXRJbnRlZ2VyQnlLZXkBA2tleQkBC3ZhbHVlT3JFbHNlAgkAmggCBQZvcmFjbGUFA2tleQAjAAFhCQEPZ2V0SW50ZWdlckJ5S2V5AQIHbW9udGFudAIBaQEFY2xhaW0AAwkBAiE9AggFAWkGY2FsbGVyBQtwYXJlbnRBZG1pbgkAAgECHXlvdSBhcmUgbm90IGFsbG93ZWQgdG8gY2xhaW0hBAJ1YgkA8AcCBQR0aGlzBQt1c2RuQXNzZXRJZAMJAAACBQJ1YgUCdWIEBmFtb3VudAkAZQIFAnViCQBoAgUBYQDAhD0DCQAAAgUGYW1vdW50BQZhbW91bnQDCQBnAgAABQZhbW91bnQJAAIBAhNOb3RoaW5nIHRvIHRyYW5zZmVyCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFC3BhcmVudEFkbWluBQZhbW91bnQFC3VzZG5Bc3NldElkBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEHZGVmYXVsdAAEAnAxCQERQGV4dHJOYXRpdmUoMTA2MikBCQEOZ2V0U3RyaW5nQnlLZXkBAgVhMTBwMQQCcDIJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQ5nZXRTdHJpbmdCeUtleQECBWExMHAyBANhaWQJANkEAQkBDmdldFN0cmluZ0J5S2V5AQIGYTEwYWlkBARhaWRzCQEOZ2V0U3RyaW5nQnlLZXkBAgZhMTBhaWQEA2xwMQkA2QQBCQEOZ2V0U3RyaW5nQnlLZXkBAgZhMTBscDIDAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQECIT0CCAUBaQZjYWxsZXIFC3BhcmVudEFkbWluBwkAAgECG3lvdSBhcmUgbm90IGFsbG93ZWQgdG8gYXJiIQQDdWJiCQDwBwIFBHRoaXMFC3VzZG5Bc3NldElkAwkAAAIFA3ViYgUDdWJiBANwdXQJAPwHBAUCcDECC3B1dE9uZVRrblYyCQDMCAIAAQkAzAgCBwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQt1c2RuQXNzZXRJZAkAaAIFAWEAwIQ9BQNuaWwDCQAAAgUDcHV0BQNwdXQEA2xwYgkA8AcCBQR0aGlzBQNscDEDCQAAAgUDbHBiBQNscGIEA2dldAkA/AcEBQJwMQILZ2V0T25lVGtuVjIJAMwIAgUEYWlkcwkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUDbHAxBQNscGIFA25pbAMJAAACBQNnZXQFA2dldAQJYmFsVG9Td2FwCQDwBwIFBHRoaXMFA2FpZAMJAAACBQliYWxUb1N3YXAFCWJhbFRvU3dhcAQEc3dhcAkA/AcEBQJwMgIEc3dhcAkAzAgCBRF1c2RuQXNzZXRJZFN0cmluZwkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUDYWlkBQliYWxUb1N3YXAFA25pbAMJAAACBQRzd2FwBQRzd2FwBAN1YmEJAPAHAgUEdGhpcwULdXNkbkFzc2V0SWQDCQAAAgUDdWJhBQN1YmEDCQBnAgAACQBlAgUDdWJhBQN1YmIJAAIBAg5VVCBXWFAgWygkXyQpXQUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJ0eAEGdmVyaWZ5AAkAyBMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleSZzeWY=", "height": 3435874, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AhWXiwpDdvfZj5G9a2EX8ArrkotHjbYSZqwaYSpXb2nS Next: ivmRvGAzvAJRmP9qo29x6jtiBEDyS98SQ8JzA9YGRdT Diff:
Old | New | Differences | |
---|---|---|---|
16 | 16 | ||
17 | 17 | ||
18 | 18 | let a = getIntegerByKey("montant") | |
19 | + | ||
20 | + | @Callable(i) | |
21 | + | func claim () = if ((i.caller != parentAdmin)) | |
22 | + | then throw("you are not allowed to claim!") | |
23 | + | else { | |
24 | + | let ub = assetBalance(this, usdnAssetId) | |
25 | + | if ((ub == ub)) | |
26 | + | then { | |
27 | + | let amount = (ub - (a * 1000000)) | |
28 | + | if ((amount == amount)) | |
29 | + | then if ((0 >= amount)) | |
30 | + | then throw("Nothing to transfer") | |
31 | + | else [ScriptTransfer(parentAdmin, amount, usdnAssetId)] | |
32 | + | else throw("Strict value is not equal to itself.") | |
33 | + | } | |
34 | + | else throw("Strict value is not equal to itself.") | |
35 | + | } | |
36 | + | ||
37 | + | ||
19 | 38 | ||
20 | 39 | @Callable(i) | |
21 | 40 | func default () = { |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let parentAdmin = addressFromStringValue("3PBy5csSnjgkieeF9dRTXN2AwG3SXBsVpww") | |
5 | 5 | ||
6 | 6 | let usdnAssetId = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
7 | 7 | ||
8 | 8 | let usdnAssetIdString = "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p" | |
9 | 9 | ||
10 | 10 | let oracle = addressFromStringValue("3PBy5csSnjgkieeF9dRTXN2AwG3SXBsVpww") | |
11 | 11 | ||
12 | 12 | func getStringByKey (key) = valueOrElse(getString(oracle, key), "") | |
13 | 13 | ||
14 | 14 | ||
15 | 15 | func getIntegerByKey (key) = valueOrElse(getInteger(oracle, key), 35) | |
16 | 16 | ||
17 | 17 | ||
18 | 18 | let a = getIntegerByKey("montant") | |
19 | + | ||
20 | + | @Callable(i) | |
21 | + | func claim () = if ((i.caller != parentAdmin)) | |
22 | + | then throw("you are not allowed to claim!") | |
23 | + | else { | |
24 | + | let ub = assetBalance(this, usdnAssetId) | |
25 | + | if ((ub == ub)) | |
26 | + | then { | |
27 | + | let amount = (ub - (a * 1000000)) | |
28 | + | if ((amount == amount)) | |
29 | + | then if ((0 >= amount)) | |
30 | + | then throw("Nothing to transfer") | |
31 | + | else [ScriptTransfer(parentAdmin, amount, usdnAssetId)] | |
32 | + | else throw("Strict value is not equal to itself.") | |
33 | + | } | |
34 | + | else throw("Strict value is not equal to itself.") | |
35 | + | } | |
36 | + | ||
37 | + | ||
19 | 38 | ||
20 | 39 | @Callable(i) | |
21 | 40 | func default () = { | |
22 | 41 | let p1 = addressFromStringValue(getStringByKey("a10p1")) | |
23 | 42 | let p2 = addressFromStringValue(getStringByKey("a10p2")) | |
24 | 43 | let aid = fromBase58String(getStringByKey("a10aid")) | |
25 | 44 | let aids = getStringByKey("a10aid") | |
26 | 45 | let lp1 = fromBase58String(getStringByKey("a10lp2")) | |
27 | 46 | if (if ((i.caller != this)) | |
28 | 47 | then (i.caller != parentAdmin) | |
29 | 48 | else false) | |
30 | 49 | then throw("you are not allowed to arb!") | |
31 | 50 | else { | |
32 | 51 | let ubb = assetBalance(this, usdnAssetId) | |
33 | 52 | if ((ubb == ubb)) | |
34 | 53 | then { | |
35 | 54 | let put = invoke(p1, "putOneTknV2", [1, false], [AttachedPayment(usdnAssetId, (a * 1000000))]) | |
36 | 55 | if ((put == put)) | |
37 | 56 | then { | |
38 | 57 | let lpb = assetBalance(this, lp1) | |
39 | 58 | if ((lpb == lpb)) | |
40 | 59 | then { | |
41 | 60 | let get = invoke(p1, "getOneTknV2", [aids, 1], [AttachedPayment(lp1, lpb)]) | |
42 | 61 | if ((get == get)) | |
43 | 62 | then { | |
44 | 63 | let balToSwap = assetBalance(this, aid) | |
45 | 64 | if ((balToSwap == balToSwap)) | |
46 | 65 | then { | |
47 | 66 | let swap = invoke(p2, "swap", [usdnAssetIdString, 1], [AttachedPayment(aid, balToSwap)]) | |
48 | 67 | if ((swap == swap)) | |
49 | 68 | then { | |
50 | 69 | let uba = assetBalance(this, usdnAssetId) | |
51 | 70 | if ((uba == uba)) | |
52 | 71 | then if ((0 >= (uba - ubb))) | |
53 | 72 | then throw("UT WXP [($_$)]") | |
54 | 73 | else nil | |
55 | 74 | else throw("Strict value is not equal to itself.") | |
56 | 75 | } | |
57 | 76 | else throw("Strict value is not equal to itself.") | |
58 | 77 | } | |
59 | 78 | else throw("Strict value is not equal to itself.") | |
60 | 79 | } | |
61 | 80 | else throw("Strict value is not equal to itself.") | |
62 | 81 | } | |
63 | 82 | else throw("Strict value is not equal to itself.") | |
64 | 83 | } | |
65 | 84 | else throw("Strict value is not equal to itself.") | |
66 | 85 | } | |
67 | 86 | else throw("Strict value is not equal to itself.") | |
68 | 87 | } | |
69 | 88 | } | |
70 | 89 | ||
71 | 90 | ||
72 | 91 | @Verifier(tx) | |
73 | 92 | func verify () = sigVerify_128Kb(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
74 | 93 |
github/deemru/w8io/6500d08 34.89 ms ◑