tx · CDtQRhMAKALKmzG3vGsxtq7n1j2yZ7RoewkypzwnUc9c 3P6Z5U1CKEtdTxtihHT4KKGFpXLoa6y5j9N: -0.01000000 Waves 2022.05.22 13:12 [3128228] smart account 3P6Z5U1CKEtdTxtihHT4KKGFpXLoa6y5j9N > SELF 0.00000000 Waves
{ "type": 13, "id": "CDtQRhMAKALKmzG3vGsxtq7n1j2yZ7RoewkypzwnUc9c", "fee": 1000000, "feeAssetId": null, "timestamp": 1653214367127, "version": 2, "chainId": 87, "sender": "3P6Z5U1CKEtdTxtihHT4KKGFpXLoa6y5j9N", "senderPublicKey": "3CFXXBUVYzUtCVMNQ8DrRZJpg1bUQXThEwzkX3iW9sNA", "proofs": [ "4fiZ39qZVuryKftGw9d6jbkADtE2qrCHNjD95jhre4QHERDf4h67nmhdNWB29XpCJvJNWPCB7A5mRdeGKQezMwwk" ], "script": "base64:AAIFAAAAAAAAAA4IAhIECgIBARIECgIBAQAAAAYAAAAABG1haW4JAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAECAAAAIzNQQVp2OXRnSzFQWDdkS1I3YjRrY2hxNXFkcFVTM0c1c1lUAAAAAA9hc3NldFN0cmluZ1VTRFQCAAAALDM0TjlZY0VFVExXbjkzcVlRNjRFc1AxeDg5dFNydUpVNDRSckVNU1hYRVBKAAAAAAtyZXNlcnZlVVNEVAkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQIAAAAjM1BFaUQxekpXVE1aTldTQ3l6aHZCdzlweHhBV2VFd2FnaFIAAAAAD2Fzc2V0U3RyaW5nVVNEQwIAAAAsNlh0SGpwWGJzOVJSSlAyU3I5R1V5VnF6QUNjYnk5VGtUaEhYbmpWQzVDREoAAAAAC3Jlc2VydmVVU0RDCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABAgAAACMzUEdDa3JIQnhGTWk3dHoxeHFueGdCcGVOdm41RTRNNGc4UwAAAAAJZGV2V2FsbGV0CQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABAgAAACMzUEh5TEtDZ3JnR0pGS2hyTWhIMlJ4Rks5Z1Z0amg4bnFqWQAAAAIAAAABaQEAAAAMd2l0aGRyYXdVU0RDAAAAAgAAAAltaW5BbW91bnQAAAAJbWF4QW1vdW50BAAAAA5yZXNlcnZlQmFsYW5jZQkAA/AAAAACBQAAAAtyZXNlcnZlVVNEQwkAAlkAAAABBQAAAA9hc3NldFN0cmluZ1VTREMDCQAAZwAAAAIFAAAADnJlc2VydmVCYWxhbmNlBQAAAAltaW5BbW91bnQEAAAADndpdGhkcmF3QW1vdW50AwkAAGYAAAACBQAAAA5yZXNlcnZlQmFsYW5jZQUAAAAJbWF4QW1vdW50BQAAAAltYXhBbW91bnQFAAAADnJlc2VydmVCYWxhbmNlBAAAAA93aXRoZHJhd25BbW91bnQKAAAAAAFACQAD/AAAAAQFAAAABG1haW4CAAAACHdpdGhkcmF3CQAETAAAAAIFAAAAD2Fzc2V0U3RyaW5nVVNEQwkABEwAAAACBQAAAA53aXRoZHJhd0Ftb3VudAUAAAADbmlsBQAAAANuaWwDCQAAAQAAAAIFAAAAAUACAAAAA0ludAUAAAABQAkAAAIAAAABAgAAABhDb3VsZG4ndCBjYXN0IEFueSB0byBJbnQDCQAAAAAAAAIFAAAAD3dpdGhkcmF3bkFtb3VudAUAAAAPd2l0aGRyYXduQW1vdW50BAAAAAFyCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAAlkZXZXYWxsZXQJAABpAAAAAgUAAAAPd2l0aGRyYXduQW1vdW50AAAAAAAAAAAZCQACWQAAAAEFAAAAD2Fzc2V0U3RyaW5nVVNEQwMJAAAAAAAAAgUAAAABcgUAAAABcgkABEwAAAACBQAAAAFyBQAAAANuaWwJAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAAIAAAABAgAAABdSZXNlcnZlIGJhbGFuY2UgdG9vIGxvdwAAAAFpAQAAAAx3aXRoZHJhd1VTRFQAAAACAAAACW1pbkFtb3VudAAAAAltYXhBbW91bnQEAAAADnJlc2VydmVCYWxhbmNlCQAD8AAAAAIFAAAAC3Jlc2VydmVVU0RUCQACWQAAAAEFAAAAD2Fzc2V0U3RyaW5nVVNEVAMJAABnAAAAAgUAAAAOcmVzZXJ2ZUJhbGFuY2UFAAAACW1pbkFtb3VudAQAAAAOd2l0aGRyYXdBbW91bnQDCQAAZgAAAAIFAAAADnJlc2VydmVCYWxhbmNlBQAAAAltYXhBbW91bnQFAAAACW1heEFtb3VudAUAAAAOcmVzZXJ2ZUJhbGFuY2UEAAAAD3dpdGhkcmF3bkFtb3VudAoAAAAAAUAJAAP8AAAABAUAAAAEbWFpbgIAAAAId2l0aGRyYXcJAARMAAAAAgUAAAAPYXNzZXRTdHJpbmdVU0RUCQAETAAAAAIFAAAADndpdGhkcmF3QW1vdW50BQAAAANuaWwFAAAAA25pbAMJAAABAAAAAgUAAAABQAIAAAADSW50BQAAAAFACQAAAgAAAAECAAAAGENvdWxkbid0IGNhc3QgQW55IHRvIEludAMJAAAAAAAAAgUAAAAPd2l0aGRyYXduQW1vdW50BQAAAA93aXRoZHJhd25BbW91bnQEAAAAAXIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAACWRldldhbGxldAkAAGkAAAACBQAAAA93aXRoZHJhd25BbW91bnQAAAAAAAAAABkJAAJZAAAAAQUAAAAPYXNzZXRTdHJpbmdVU0RUAwkAAAAAAAACBQAAAAFyBQAAAAFyCQAETAAAAAIFAAAAAXIFAAAAA25pbAkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQAAAgAAAAECAAAAF1Jlc2VydmUgYmFsYW5jZSB0b28gbG93AAAAAM377po=", "height": 3128228, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: BU8m5aufV8a8PKnbSgKDdbSEeSXhq34APAaeK4mSg4D5 Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 5 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let main = addressFromStringValue("3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT") | |
5 | + | ||
6 | + | let assetStringUSDT = "34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ" | |
7 | + | ||
8 | + | let reserveUSDT = addressFromStringValue("3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR") | |
9 | + | ||
10 | + | let assetStringUSDC = "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ" | |
11 | + | ||
12 | + | let reserveUSDC = addressFromStringValue("3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S") | |
13 | + | ||
14 | + | let devWallet = addressFromStringValue("3PHyLKCgrgGJFKhrMhH2RxFK9gVtjh8nqjY") | |
15 | + | ||
16 | + | @Callable(i) | |
17 | + | func withdrawUSDC (minAmount,maxAmount) = { | |
18 | + | let reserveBalance = assetBalance(reserveUSDC, fromBase58String(assetStringUSDC)) | |
19 | + | if ((reserveBalance >= minAmount)) | |
20 | + | then { | |
21 | + | let withdrawAmount = if ((reserveBalance > maxAmount)) | |
22 | + | then maxAmount | |
23 | + | else reserveBalance | |
24 | + | let withdrawnAmount = { | |
25 | + | let @ = invoke(main, "withdraw", [assetStringUSDC, withdrawAmount], nil) | |
26 | + | if ($isInstanceOf(@, "Int")) | |
27 | + | then @ | |
28 | + | else throw("Couldn't cast Any to Int") | |
29 | + | } | |
30 | + | if ((withdrawnAmount == withdrawnAmount)) | |
31 | + | then { | |
32 | + | let r = ScriptTransfer(devWallet, (withdrawnAmount / 25), fromBase58String(assetStringUSDC)) | |
33 | + | if ((r == r)) | |
34 | + | then [r] | |
35 | + | else throw("Strict value is not equal to itself.") | |
36 | + | } | |
37 | + | else throw("Strict value is not equal to itself.") | |
38 | + | } | |
39 | + | else throw("Reserve balance too low") | |
40 | + | } | |
41 | + | ||
42 | + | ||
43 | + | ||
44 | + | @Callable(i) | |
45 | + | func withdrawUSDT (minAmount,maxAmount) = { | |
46 | + | let reserveBalance = assetBalance(reserveUSDT, fromBase58String(assetStringUSDT)) | |
47 | + | if ((reserveBalance >= minAmount)) | |
48 | + | then { | |
49 | + | let withdrawAmount = if ((reserveBalance > maxAmount)) | |
50 | + | then maxAmount | |
51 | + | else reserveBalance | |
52 | + | let withdrawnAmount = { | |
53 | + | let @ = invoke(main, "withdraw", [assetStringUSDT, withdrawAmount], nil) | |
54 | + | if ($isInstanceOf(@, "Int")) | |
55 | + | then @ | |
56 | + | else throw("Couldn't cast Any to Int") | |
57 | + | } | |
58 | + | if ((withdrawnAmount == withdrawnAmount)) | |
59 | + | then { | |
60 | + | let r = ScriptTransfer(devWallet, (withdrawnAmount / 25), fromBase58String(assetStringUSDT)) | |
61 | + | if ((r == r)) | |
62 | + | then [r] | |
63 | + | else throw("Strict value is not equal to itself.") | |
64 | + | } | |
65 | + | else throw("Strict value is not equal to itself.") | |
66 | + | } | |
67 | + | else throw("Reserve balance too low") | |
68 | + | } | |
69 | + | ||
70 | + |
github/deemru/w8io/6500d08 35.88 ms ◑