2022.08.30 07:29 [3272221] smart account 3P7Z3ueyFonY7ZwJMq4jaqwr51qMLp3WFat > SELF 0.00000000 Waves

{ "type": 13, "id": "AEA9LDt5NBH4CCxMRgMKXXYXee4AMBSaFyCN2eownvjY", "fee": 200000, "feeAssetId": null, "timestamp": 1661833813833, "version": 1, "sender": "3P7Z3ueyFonY7ZwJMq4jaqwr51qMLp3WFat", "senderPublicKey": "J6p2oDbzU3qwq8wSwSib5mrMCE9VmH671pMA1nXQ4LNd", "proofs": [ "4fJoZ2zabpHLroebwwUDU1zCCEmFokWiocb5cwHF2y4VbNDSK5ZkZhFwirfe4dTMq8dVjeLCQJQnFwWnEAMACmbX" ], "script": "base64:AAIFAAAAAAAAAAcIAhIDCgEBAAAACAAAAAAQdmlyZXNNYWluQWRkcmVzcwEAAAAaAVdewZYZMMmiQ3hGadYm1vHmuEPQvfZMHrgAAAAABFVTREMBAAAAIFIz2eGXiCbl4h/C/eqINLiHdqOMsYPvyGAcfgoSVCYlAAAAAARVU0RUAQAAACAelAcTUnahJZX9yGGogl8Qf986Tym7/JpGP1r9Nk+fkQAAAAAQdmlyZXNVc2RjQWRkcmVzcwEAAAAaAVeckdbrVt9jsb9/5I0zJOQcqOP4QOc77QMAAAAAEHZpcmVzVXNkdEFkZHJlc3MBAAAAGgFXjDN+if/+lNod/uw63psEJhLzwV/EbQ4MAAAAAAt6ZWZ0QWRkcmVzcwkBAAAAB0FkZHJlc3MAAAABAQAAABoBV286hXxRfBxCZ0u4+m5f0vPEmd1h5yhYCwAAAAAMYWRtaW5BZGRyZXNzCQEAAAAHQWRkcmVzcwAAAAEBAAAAGgFXNBTfcURG3zBU0fe4nHNFDKs6K5tNjiZhAQAAABhnZXRBbW91bnRGcm9tVXNlckJhbGFuY2UAAAABAAAAAXYEAAAAByRtYXRjaDAFAAAAAXYDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAIihJbnQsIEludCwgSW50LCBJbnQsIEludCwgQm9vbGVhbikEAAAAAXgFAAAAByRtYXRjaDAIBQAAAAF4AAAAAl8yBAAAAAF0BQAAAAckbWF0Y2gwCQAAAgAAAAECAAAABCNlcnIAAAABAAAAAWkBAAAACXVzZGNfMTAwMAAAAAEAAAAGYW1vdW50BAAAAAVhZG1pbgIAAAAjM1A2Z0dzVlFiRDJ4Z21hTnhON1JqM2Fyb2hQc0J4dm81R0MDCQEAAAACIT0AAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAAFYWRtaW4JAAACAAAAAQIAAAARb25seSBhZG1pbiBjYW4gZG8EAAAAC3VzZXJCYWxhbmNlCQEAAAAYZ2V0QW1vdW50RnJvbVVzZXJCYWxhbmNlAAAAAQkAA/wAAAAECQEAAAAHQWRkcmVzcwAAAAEFAAAAEHZpcmVzVXNkdEFkZHJlc3MCAAAAC3VzZXJCYWxhbmNlCQAETAAAAAIJAAQlAAAAAQUAAAAEdGhpcwUAAAADbmlsBQAAAANuaWwDCQAAZgAAAAIAAAAAAAAAAAEFAAAAC3VzZXJCYWxhbmNlCQAAAgAAAAECAAAAC2JhZCByZXF1ZXN0BAAAAAluZXdhbW91bnQDCQAAZgAAAAIFAAAABmFtb3VudAUAAAALdXNlckJhbGFuY2UFAAAAC3VzZXJCYWxhbmNlBQAAAAZhbW91bnQEAAAAA2ludgkAA/wAAAAECQEAAAAHQWRkcmVzcwAAAAEFAAAAEHZpcmVzTWFpbkFkZHJlc3MCAAAACHdpdGhkcmF3CQAETAAAAAIJAAJYAAAAAQUAAAAEVVNEVAkABEwAAAACBQAAAAluZXdhbW91bnQFAAAAA25pbAUAAAADbmlsAwkAAAAAAAACBQAAAANpbnYFAAAAA2ludgUAAAADbmlsCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAADOsyOo", "chainId": 87, "height": 3272221, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Gr16A8GYBJ2XhgTh8XwpTfDba5bUwesaJLEFrSntJRS1 Next: DZW2t5LhmbrNnkWQ9UrZrKHjtCnzqSWiK9J8EZkTfr8i Diff:
OldNewDifferences
2323 }
2424
2525
26-func f_w_usdc (amount) = {
27- let scBalance = assetBalance(Address(viresUsdcAddress), USDC)
28- if ((1 > scBalance))
29- then nil
30- else {
31- let userBalance = getAmountFromUserBalance(invoke(Address(viresUsdcAddress), "userBalance", [toString(this)], nil))
32- if ((1 > userBalance))
33- then throw("bad request")
34- else {
35- let newamount = if ((amount > userBalance))
36- then userBalance
37- else amount
38- let inv = invoke(Address(viresMainAddress), "withdraw", [toBase58String(USDC), newamount], nil)
39- if ((inv == inv))
40- then {
41- let aAmount = assetBalance(this, USDC)
42-[ScriptTransfer(zeftAddress, aAmount, USDC)]
43- }
44- else throw("Strict value is not equal to itself.")
45- }
46- }
47- }
48-
49-
50-@Callable(i)
51-func usdc_1000_v2 (amount) = if ((i.caller != adminAddress))
52- then throw("only admin can do")
53- else f_w_usdc(amount)
54-
55-
56-
57-@Callable(i)
58-func usdc_1000_2 (amount) = {
59- let admin = "3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC"
60- if ((toString(i.caller) != admin))
61- then throw("only admin can do")
62- else {
63- let userBalance = getAmountFromUserBalance(invoke(Address(viresUsdcAddress), "userBalance", [toString(this)], nil))
64- if ((1 > userBalance))
65- then throw("bad request")
66- else {
67- let newamount = if ((amount > userBalance))
68- then userBalance
69- else amount
70- let inv = invoke(Address(viresMainAddress), "withdraw", [toBase58String(USDC), newamount], nil)
71- if ((inv == inv))
72- then {
73- let aAmount = assetBalance(this, USDC)
74-[ScriptTransfer(zeftAddress, aAmount, USDC)]
75- }
76- else throw("Strict value is not equal to itself.")
77- }
78- }
79- }
80-
81-
82-
8326 @Callable(i)
8427 func usdc_1000 (amount) = {
8528 let admin = "3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC"
9538 else amount
9639 let inv = invoke(Address(viresMainAddress), "withdraw", [toBase58String(USDT), newamount], nil)
9740 if ((inv == inv))
98- then {
99- let aAmount = assetBalance(this, USDT)
100-[ScriptTransfer(zeftAddress, aAmount, USDT)]
101- }
41+ then nil
10242 else throw("Strict value is not equal to itself.")
10343 }
10444 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let viresMainAddress = base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'
55
66 let USDC = base58'6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ'
77
88 let USDT = base58'34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ'
99
1010 let viresUsdcAddress = base58'3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S'
1111
1212 let viresUsdtAddress = base58'3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR'
1313
1414 let zeftAddress = Address(base58'3PC51qgNQz4xx7m1DhLdCDYESaeNKT6zeFt')
1515
1616 let adminAddress = Address(base58'3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC')
1717
1818 func getAmountFromUserBalance (v) = match v {
1919 case x: (Int, Int, Int, Int, Int, Boolean) =>
2020 x._2
2121 case t =>
2222 throw("#err")
2323 }
2424
2525
26-func f_w_usdc (amount) = {
27- let scBalance = assetBalance(Address(viresUsdcAddress), USDC)
28- if ((1 > scBalance))
29- then nil
30- else {
31- let userBalance = getAmountFromUserBalance(invoke(Address(viresUsdcAddress), "userBalance", [toString(this)], nil))
32- if ((1 > userBalance))
33- then throw("bad request")
34- else {
35- let newamount = if ((amount > userBalance))
36- then userBalance
37- else amount
38- let inv = invoke(Address(viresMainAddress), "withdraw", [toBase58String(USDC), newamount], nil)
39- if ((inv == inv))
40- then {
41- let aAmount = assetBalance(this, USDC)
42-[ScriptTransfer(zeftAddress, aAmount, USDC)]
43- }
44- else throw("Strict value is not equal to itself.")
45- }
46- }
47- }
48-
49-
50-@Callable(i)
51-func usdc_1000_v2 (amount) = if ((i.caller != adminAddress))
52- then throw("only admin can do")
53- else f_w_usdc(amount)
54-
55-
56-
57-@Callable(i)
58-func usdc_1000_2 (amount) = {
59- let admin = "3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC"
60- if ((toString(i.caller) != admin))
61- then throw("only admin can do")
62- else {
63- let userBalance = getAmountFromUserBalance(invoke(Address(viresUsdcAddress), "userBalance", [toString(this)], nil))
64- if ((1 > userBalance))
65- then throw("bad request")
66- else {
67- let newamount = if ((amount > userBalance))
68- then userBalance
69- else amount
70- let inv = invoke(Address(viresMainAddress), "withdraw", [toBase58String(USDC), newamount], nil)
71- if ((inv == inv))
72- then {
73- let aAmount = assetBalance(this, USDC)
74-[ScriptTransfer(zeftAddress, aAmount, USDC)]
75- }
76- else throw("Strict value is not equal to itself.")
77- }
78- }
79- }
80-
81-
82-
8326 @Callable(i)
8427 func usdc_1000 (amount) = {
8528 let admin = "3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC"
8629 if ((toString(i.caller) != admin))
8730 then throw("only admin can do")
8831 else {
8932 let userBalance = getAmountFromUserBalance(invoke(Address(viresUsdtAddress), "userBalance", [toString(this)], nil))
9033 if ((1 > userBalance))
9134 then throw("bad request")
9235 else {
9336 let newamount = if ((amount > userBalance))
9437 then userBalance
9538 else amount
9639 let inv = invoke(Address(viresMainAddress), "withdraw", [toBase58String(USDT), newamount], nil)
9740 if ((inv == inv))
98- then {
99- let aAmount = assetBalance(this, USDT)
100-[ScriptTransfer(zeftAddress, aAmount, USDT)]
101- }
41+ then nil
10242 else throw("Strict value is not equal to itself.")
10343 }
10444 }
10545 }
10646
10747

github/deemru/w8io/786bc32 
29.16 ms