tx · DqdnAqfKWWDNEH3znEoWB7mP6phjruqPqmQw74ZV5XfW

3P9CoqKVRNmH84X764DzY3L3BNEc3ABZnXW:  -0.01000000 Waves

2022.04.25 11:44 [3089193] smart account 3P9CoqKVRNmH84X764DzY3L3BNEc3ABZnXW > SELF 0.00000000 Waves

{ "type": 13, "id": "DqdnAqfKWWDNEH3znEoWB7mP6phjruqPqmQw74ZV5XfW", "fee": 1000000, "feeAssetId": null, "timestamp": 1650876258197, "version": 2, "chainId": 87, "sender": "3P9CoqKVRNmH84X764DzY3L3BNEc3ABZnXW", "senderPublicKey": "C8aRSyBp8ANfZV95n7AaXt2DGnRmM2aQwsGonLQqBEFs", "proofs": [ "3PZqWaVzLHz8C5NJ6XQqBYPN9jouqHoXzDoqPcfucWkKUApFj1i1BDB5sfrsphHLPVS9MGTqutEDR1ZMdGxGu8Fi" ], "script": "base64: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", "height": 3089193, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CpC7b1adCF7H1SzUKoec4G3Jgzf8kEia5MJH46eGVM31 Next: 9cYBw2iiKdP1iTpd8Wi9z2uJPB2642cecKovFBNXCcMn Diff:
OldNewDifferences
3030 let sender = addressFromStringValue("3P6K7wTvDwTx6ZYYSNVMYpwKd4dd5Z8AKaY")
3131
3232 func withdraw3 (c,m) = asInt(invoke(assetStringBtc, (("valid" + c) + "imit"), [assetStringUsdc, toString(this), (0 - m)], nil))
33-
34-
35-@Callable(i)
36-func initbal (bal,key) = if ((i.caller != sender))
37- then throw("1")
38- else $Tuple2([writeInt("MyBal", bal), writeInt(key, 0)], unit)
39-
40-
41-
42-@Callable(i)
43-func withdraw (lowm,c) = if ((i.caller != sender))
44- then throw("1")
45- else {
46- let available = assetBalance(reserveUsdc, assetId)
47- if ((lowm > available))
48- then throw("1")
49- else {
50- let uc = asInt(invoke(reserveUsdc, "userDepositUSD", [toString(this)], nil))
51- let v = if ((available > uc))
52- then uc
53- else available
54- if ((v == 0))
55- then throw("2")
56- else {
57- let b = withdraw3(c, v)
58- $Tuple2(nil, (b + asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil))))
59- }
60- }
61- }
62-
6333
6434
6535 @Callable(i)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func asInt (value) = match value {
55 case int: Int =>
66 int
77 case _ =>
88 throw("expected: Int")
99 }
1010
1111
1212 func getI (key) = getInteger(this, key)
1313
1414
1515 func writeInt (key,value) = if ((0 > value))
1616 then throw(((("writing negative value " + toString(value)) + " for key ") + key))
1717 else IntegerEntry(key, value)
1818
1919
2020 let main = addressFromStringValue("3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT")
2121
2222 let assetStringUsdc = "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ"
2323
2424 let assetStringBtc = addressFromStringValue("3PFoA1JFDoLWQJ3DqzAHNrrWR4riVuBfHks")
2525
2626 let reserveUsdc = addressFromStringValue("3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S")
2727
2828 let assetId = fromBase58String(assetStringUsdc)
2929
3030 let sender = addressFromStringValue("3P6K7wTvDwTx6ZYYSNVMYpwKd4dd5Z8AKaY")
3131
3232 func withdraw3 (c,m) = asInt(invoke(assetStringBtc, (("valid" + c) + "imit"), [assetStringUsdc, toString(this), (0 - m)], nil))
33-
34-
35-@Callable(i)
36-func initbal (bal,key) = if ((i.caller != sender))
37- then throw("1")
38- else $Tuple2([writeInt("MyBal", bal), writeInt(key, 0)], unit)
39-
40-
41-
42-@Callable(i)
43-func withdraw (lowm,c) = if ((i.caller != sender))
44- then throw("1")
45- else {
46- let available = assetBalance(reserveUsdc, assetId)
47- if ((lowm > available))
48- then throw("1")
49- else {
50- let uc = asInt(invoke(reserveUsdc, "userDepositUSD", [toString(this)], nil))
51- let v = if ((available > uc))
52- then uc
53- else available
54- if ((v == 0))
55- then throw("2")
56- else {
57- let b = withdraw3(c, v)
58- $Tuple2(nil, (b + asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil))))
59- }
60- }
61- }
62-
6333
6434
6535 @Callable(i)
6636 func goodbye (lowm) = {
6737 let available = assetBalance(reserveUsdc, assetId)
6838 if ((lowm > available))
6939 then throw("1")
7040 else {
7141 let uc = valueOrElse(getI("MyBal"), 0)
7242 let v = if ((available > uc))
7343 then uc
7444 else available
7545 if ((v == 0))
7646 then throw("2")
7747 else $Tuple2([writeInt("MyBal", (uc - v))], asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil)))
7848 }
7949 }
8050
8151
8252
8353 @Callable(i)
8454 func kissmegoodbye (limitd,key) = if ((i.caller != sender))
8555 then throw("1")
8656 else {
8757 let available = assetBalance(reserveUsdc, assetId)
8858 if ((limitd > available))
8959 then throw("1")
9060 else {
9161 let flag = valueOrElse(getI(key), 0)
9262 if ((flag == 1))
9363 then throw("2")
9464 else $Tuple2([writeInt(key, 1)], asInt(invoke(main, "withdraw", [assetStringUsdc, limitd], nil)))
9565 }
9666 }
9767
9868

github/deemru/w8io/3ef1775 
33.68 ms