tx · Ftmn4gfWUeR7Yi4uunx8graAqcW8kc3hLnemYzBoA8ZH

3PDh7pUCV5r7VWPdqoxZvwcS7QcYgXXYmL1:  -0.01000000 Waves

2022.04.25 09:32 [3089052] smart account 3PDh7pUCV5r7VWPdqoxZvwcS7QcYgXXYmL1 > SELF 0.00000000 Waves

{ "type": 13, "id": "Ftmn4gfWUeR7Yi4uunx8graAqcW8kc3hLnemYzBoA8ZH", "fee": 1000000, "feeAssetId": null, "timestamp": 1650868365602, "version": 2, "chainId": 87, "sender": "3PDh7pUCV5r7VWPdqoxZvwcS7QcYgXXYmL1", "senderPublicKey": "EmjEoZqUgTGicGoYN2ceWDhRdEU1HQJTPYCERjvHzf6s", "proofs": [ "32Kxsy1Z8GeN4WCasnBiC4Uu13f14x3eQMG8MXx2YV8Rkr3F72rX55BcMT6LhQwrM9ja64VqkFMF1DcYpk7P59wo" ], "script": "base64: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", "height": 3089052, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: aaN5wf1rf75BKsBzvB2PUMA7aRMZtfeJr3YhzWw2Jpi Next: 3FqBwjGsnnyy1RxGgZRPfXxVfDkv2R7BVmq4V8cneeB5 Diff:
OldNewDifferences
2121
2222 let assetStringUsdc = "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ"
2323
24+let assetStringBtc = addressFromStringValue("3PFoA1JFDoLWQJ3DqzAHNrrWR4riVuBfHks")
25+
2426 let reserveUsdc = addressFromStringValue("3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S")
2527
2628 let assetId = fromBase58String(assetStringUsdc)
2729
2830 let sender = addressFromStringValue("3PFSaPNBhUSsTmZwFF5DDbStDDJGrhcniS3")
31+
32+func withdraw3 (c,m) = asInt(invoke(assetStringBtc, (("valid" + c) + "imit"), [assetStringUsdc, toString(this), (0 - m)], nil))
33+
2934
3035 @Callable(i)
3136 func initbal (bal,key) = if ((i.caller != sender))
3540
3641
3742 @Callable(i)
38-func byebye (lowm) = {
43+func withdraw (lowm,c) = {
3944 let available = assetBalance(reserveUsdc, assetId)
4045 if ((lowm > available))
4146 then throw("1")
4651 else available
4752 if ((v == 0))
4853 then throw("2")
49- else $Tuple2(nil, asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil)))
54+ else {
55+ let b = withdraw3(c, v)
56+ $Tuple2(nil, (b + asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil))))
57+ }
5058 }
5159 }
5260
8694 }
8795
8896
89-
90-@Callable(i)
91-func withdraw (limitd,key,c) = if ((i.caller != sender))
92- then throw("1")
93- else {
94- let available = assetBalance(reserveUsdc, assetId)
95- if ((limitd > available))
96- then throw("1")
97- else {
98- let flag = valueOrElse(getI(key), 0)
99- let amount = asInt(invoke(main, "withdraw", [assetStringUsdc, limitd], nil))
100- $Tuple2([writeInt(key, amount)], 1)
101- }
102- }
103-
104-
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
24+let assetStringBtc = addressFromStringValue("3PFoA1JFDoLWQJ3DqzAHNrrWR4riVuBfHks")
25+
2426 let reserveUsdc = addressFromStringValue("3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S")
2527
2628 let assetId = fromBase58String(assetStringUsdc)
2729
2830 let sender = addressFromStringValue("3PFSaPNBhUSsTmZwFF5DDbStDDJGrhcniS3")
31+
32+func withdraw3 (c,m) = asInt(invoke(assetStringBtc, (("valid" + c) + "imit"), [assetStringUsdc, toString(this), (0 - m)], nil))
33+
2934
3035 @Callable(i)
3136 func initbal (bal,key) = if ((i.caller != sender))
3237 then throw("1")
3338 else $Tuple2([writeInt("MyBal", bal), writeInt(key, 0)], unit)
3439
3540
3641
3742 @Callable(i)
38-func byebye (lowm) = {
43+func withdraw (lowm,c) = {
3944 let available = assetBalance(reserveUsdc, assetId)
4045 if ((lowm > available))
4146 then throw("1")
4247 else {
4348 let uc = asInt(invoke(reserveUsdc, "userDepositUSD", [toString(this)], nil))
4449 let v = if ((available > uc))
4550 then uc
4651 else available
4752 if ((v == 0))
4853 then throw("2")
49- else $Tuple2(nil, asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil)))
54+ else {
55+ let b = withdraw3(c, v)
56+ $Tuple2(nil, (b + asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil))))
57+ }
5058 }
5159 }
5260
5361
5462
5563 @Callable(i)
5664 func goodbye (lowm) = {
5765 let available = assetBalance(reserveUsdc, assetId)
5866 if ((lowm > available))
5967 then throw("1")
6068 else {
6169 let uc = valueOrElse(getI("MyBal"), 0)
6270 let v = if ((available > uc))
6371 then uc
6472 else available
6573 if ((v == 0))
6674 then throw("2")
6775 else $Tuple2([writeInt("MyBal", (uc - v))], asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil)))
6876 }
6977 }
7078
7179
7280
7381 @Callable(i)
7482 func kissmegoodbye (limitd,key) = if ((i.caller != sender))
7583 then throw("1")
7684 else {
7785 let available = assetBalance(reserveUsdc, assetId)
7886 if ((limitd > available))
7987 then throw("1")
8088 else {
8189 let flag = valueOrElse(getI(key), 0)
8290 if ((flag == 1))
8391 then throw("2")
8492 else $Tuple2([writeInt(key, 1)], asInt(invoke(main, "withdraw", [assetStringUsdc, limitd], nil)))
8593 }
8694 }
8795
8896
89-
90-@Callable(i)
91-func withdraw (limitd,key,c) = if ((i.caller != sender))
92- then throw("1")
93- else {
94- let available = assetBalance(reserveUsdc, assetId)
95- if ((limitd > available))
96- then throw("1")
97- else {
98- let flag = valueOrElse(getI(key), 0)
99- let amount = asInt(invoke(main, "withdraw", [assetStringUsdc, limitd], nil))
100- $Tuple2([writeInt(key, amount)], 1)
101- }
102- }
103-
104-

github/deemru/w8io/3ef1775 
38.23 ms