tx · Hwsj7f3sM1E6wGt4jaQ6R5HupYTaxXV9n9k1CZhkQ6uj

3P2qmtyVE6fi71vwmTJLL3RUGXb2S1azZTn:  -0.00900000 Waves

2022.08.29 09:59 [3270914] smart account 3P2qmtyVE6fi71vwmTJLL3RUGXb2S1azZTn > SELF 0.00000000 Waves

{ "type": 13, "id": "Hwsj7f3sM1E6wGt4jaQ6R5HupYTaxXV9n9k1CZhkQ6uj", "fee": 900000, "feeAssetId": null, "timestamp": 1661756416060, "version": 1, "sender": "3P2qmtyVE6fi71vwmTJLL3RUGXb2S1azZTn", "senderPublicKey": "HRJ4Tp3khEvcdWBK1j15iCs9bJRykMHf4yYYenxN9JdM", "proofs": [ "4hfwRiTHkVo8ZTxcVJuFjnQAjm5izU8Qj9rqNg2MSdboDuEjBozYjjofAUtA32tLmgkSxm99e7PgjCadk5a53E7h" ], "script": "base64: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", "chainId": 87, "height": 3270914, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 3qcUryXdTbBm9jesBGYBf8EZveZgMmgycG1CPmWpXRSZ Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let viresMainAddress = base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'
5+
6+let USDC = base58'6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ'
7+
8+let USDT = base58'34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ'
9+
10+let viresUsdcAddress = base58'3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S'
11+
12+let viresUsdtAddress = base58'3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR'
13+
14+let zeftAddress = Address(base58'3PC51qgNQz4xx7m1DhLdCDYESaeNKT6zeFt')
15+
16+let adminAddress = Address(base58'3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC')
17+
18+func getAmountFromUserBalance (v) = match v {
19+ case x: (Int, Int, Int, Int, Int, Boolean) =>
20+ x._2
21+ case t =>
22+ throw("#err")
23+}
24+
25+
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 (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+
83+@Callable(i)
84+func usdt_1000 (amount) = {
85+ let admin = "3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC"
86+ if ((toString(i.caller) != admin))
87+ then throw("only admin can do")
88+ else {
89+ let userBalance = getAmountFromUserBalance(invoke(Address(viresUsdtAddress), "userBalance", [toString(this)], nil))
90+ if ((1 > userBalance))
91+ then throw("bad request")
92+ else {
93+ let newamount = if ((amount > userBalance))
94+ then userBalance
95+ else amount
96+ let inv = invoke(Address(viresMainAddress), "withdraw", [toBase58String(USDT), newamount], nil)
97+ if ((inv == inv))
98+ then {
99+ let aAmount = assetBalance(this, USDT)
100+[ScriptTransfer(zeftAddress, aAmount, USDT)]
101+ }
102+ else throw("Strict value is not equal to itself.")
103+ }
104+ }
105+ }
106+
107+

github/deemru/w8io/3ef1775 
21.79 ms