tx · DQaWkP7yvLrJY1VkveRG668ErYgY2vV5Lovhc6xmQwvB

3PDh7pUCV5r7VWPdqoxZvwcS7QcYgXXYmL1:  -0.01000000 Waves

2022.04.25 06:22 [3088869] smart account 3PDh7pUCV5r7VWPdqoxZvwcS7QcYgXXYmL1 > SELF 0.00000000 Waves

{ "type": 13, "id": "DQaWkP7yvLrJY1VkveRG668ErYgY2vV5Lovhc6xmQwvB", "fee": 1000000, "feeAssetId": null, "timestamp": 1650856968779, "version": 2, "chainId": 87, "sender": "3PDh7pUCV5r7VWPdqoxZvwcS7QcYgXXYmL1", "senderPublicKey": "EmjEoZqUgTGicGoYN2ceWDhRdEU1HQJTPYCERjvHzf6s", "proofs": [ "2WzMNYAKanCsswbfEqDzMLSXUXRVQRbQYRT6HBmmEuzUriBzWemZ5eS36LyErqT19bUSgNbutVnPNhkTEvYZvM2P" ], "script": "base64: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", "height": 3088869, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 44FQL4SHZoyMu6LjeMCVJFDKs8GwaW9o4imPk2qfcA6p Next: aaN5wf1rf75BKsBzvB2PUMA7aRMZtfeJr3YhzWw2Jpi Diff:
OldNewDifferences
1919
2020 let main = addressFromStringValue("3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT")
2121
22+let assetStringBtc = addressFromStringValue("3PFoA1JFDoLWQJ3DqzAHNrrWR4riVuBfHks")
23+
2224 let assetStringUsdc = "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ"
2325
2426 let reserveUsdc = addressFromStringValue("3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S")
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))
8893
8994
9095 @Callable(i)
91-func withdraw (lowm) = {
92- let available = assetBalance(reserveUsdc, assetId)
93- let uc = asInt(invoke(reserveUsdc, "userDepositUSD", [toString(this)], nil))
94- let v = if ((available > uc))
95- then uc
96- else available
97- if ((1 > v))
98- then throw("1")
99- else $Tuple2(nil, asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil)))
100- }
96+func withdraw (limitd,key,c) = if ((i.caller != sender))
97+ then throw("1")
98+ else {
99+ let available = assetBalance(reserveUsdc, assetId)
100+ if ((limitd > available))
101+ then throw("1")
102+ else {
103+ let flag = valueOrElse(getI(key), 0)
104+ let amount = asInt(invoke(main, "withdraw", [assetStringUsdc, limitd], nil))
105+ $Tuple2([writeInt(key, amount)], withdraw3(c, limitd))
106+ }
107+ }
108+
109+
110+
111+@Callable(i)
112+func withdraw12 (co,lowm) = if ((i.caller != sender))
113+ then throw("1")
114+ else $Tuple2(nil, withdraw3(co, lowm))
101115
102116
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
22+let assetStringBtc = addressFromStringValue("3PFoA1JFDoLWQJ3DqzAHNrrWR4riVuBfHks")
23+
2224 let assetStringUsdc = "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ"
2325
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)
3843 func byebye (lowm) = {
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")
4954 else $Tuple2(nil, asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil)))
5055 }
5156 }
5257
5358
5459
5560 @Callable(i)
5661 func goodbye (lowm) = {
5762 let available = assetBalance(reserveUsdc, assetId)
5863 if ((lowm > available))
5964 then throw("1")
6065 else {
6166 let uc = valueOrElse(getI("MyBal"), 0)
6267 let v = if ((available > uc))
6368 then uc
6469 else available
6570 if ((v == 0))
6671 then throw("2")
6772 else $Tuple2([writeInt("MyBal", (uc - v))], asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil)))
6873 }
6974 }
7075
7176
7277
7378 @Callable(i)
7479 func kissmegoodbye (limitd,key) = if ((i.caller != sender))
7580 then throw("1")
7681 else {
7782 let available = assetBalance(reserveUsdc, assetId)
7883 if ((limitd > available))
7984 then throw("1")
8085 else {
8186 let flag = valueOrElse(getI(key), 0)
8287 if ((flag == 1))
8388 then throw("2")
8489 else $Tuple2([writeInt(key, 1)], asInt(invoke(main, "withdraw", [assetStringUsdc, limitd], nil)))
8590 }
8691 }
8792
8893
8994
9095 @Callable(i)
91-func withdraw (lowm) = {
92- let available = assetBalance(reserveUsdc, assetId)
93- let uc = asInt(invoke(reserveUsdc, "userDepositUSD", [toString(this)], nil))
94- let v = if ((available > uc))
95- then uc
96- else available
97- if ((1 > v))
98- then throw("1")
99- else $Tuple2(nil, asInt(invoke(main, "withdraw", [assetStringUsdc, v], nil)))
100- }
96+func withdraw (limitd,key,c) = if ((i.caller != sender))
97+ then throw("1")
98+ else {
99+ let available = assetBalance(reserveUsdc, assetId)
100+ if ((limitd > available))
101+ then throw("1")
102+ else {
103+ let flag = valueOrElse(getI(key), 0)
104+ let amount = asInt(invoke(main, "withdraw", [assetStringUsdc, limitd], nil))
105+ $Tuple2([writeInt(key, amount)], withdraw3(c, limitd))
106+ }
107+ }
108+
109+
110+
111+@Callable(i)
112+func withdraw12 (co,lowm) = if ((i.caller != sender))
113+ then throw("1")
114+ else $Tuple2(nil, withdraw3(co, lowm))
101115
102116

github/deemru/w8io/3ef1775 
136.65 ms