tx · 4h4CU2YnmcWhhedHPXYi4kindyDoyLFmQSCzdUBHG16v

3PCobfdpn4djVBG1Z3Ubek79kKcEiWYjrDv:  -0.01000000 Waves

2022.05.28 10:32 [3136734] smart account 3PCobfdpn4djVBG1Z3Ubek79kKcEiWYjrDv > SELF 0.00000000 Waves

{ "type": 13, "id": "4h4CU2YnmcWhhedHPXYi4kindyDoyLFmQSCzdUBHG16v", "fee": 1000000, "feeAssetId": null, "timestamp": 1653723120863, "version": 1, "sender": "3PCobfdpn4djVBG1Z3Ubek79kKcEiWYjrDv", "senderPublicKey": "G9EJus8EDpG2q9U4YhpiR5TpZin4VoxEhv7c8ZMqFKMi", "proofs": [ "2PLJVYLYNge3r3gXzJtDCNCfEhaJEKbdGf2scYHW6Mp2Z4PEJNG1BUmERArbspnP199VGuYv4WkQh5wDp9mqj9wa" ], "script": "base64:AAIFAAAAAAAAABMIAhIICgYICAgICAgSAwoBCBIAAAAAGQEAAAAQd3JpdGVDb25zdFN0cmluZwAAAAIAAAADa2V5AAAABXZhbHVlAwkBAAAAASEAAAABCQEAAAAJaXNEZWZpbmVkAAAAAQkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAAA2tleQUAAAAFdmFsdWUJAAACAAAAAQkAASwAAAACAgAAABVhbHJlYWR5IGluaXRpYWxpemVkOiAFAAAAA2tleQAAAAALY29uZmlnU3RvcmUCAAAABmNvbmZpZwAAAAANY29uZmlnQWRkcmVzcwkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwUAAAALY29uZmlnU3RvcmUAAAAACGFjY1N0b3JlAgAAAANhY2MAAAAAC2Fzc3VtZVN0b3JlAgAAAAZhc3N1bWUAAAAABmFjY1N0cgkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEHQAAAAIFAAAABHRoaXMFAAAACGFjY1N0b3JlAgAAAB5ub3QgaW5pdGlhbGl6ZWQgb3IgZGVhY3RpdmF0ZWQAAAAAA2FjYwkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQUAAAAGYWNjU3RyAAAAAAlhc3N1bWVTdHIJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABB0AAAACBQAAAAR0aGlzBQAAAAthc3N1bWVTdG9yZQIAAAAebm90IGluaXRpYWxpemVkIG9yIGRlYWN0aXZhdGVkAAAAABB1c2RuUmVzZXJ2ZVN0b3JlAgAAAAt1c2RuUmVzZXJ2ZQAAAAAQdXNkdFJlc2VydmVTdG9yZQIAAAALdXNkdFJlc2VydmUAAAAAEHVzZGNSZXNlcnZlU3RvcmUCAAAAC3VzZGNSZXNlcnZlAAAAAAt1c2RuUmVzZXJ2ZQkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwUAAAAQdXNkblJlc2VydmVTdG9yZQAAAAALdXNkdFJlc2VydmUJAQAAABFAZXh0ck5hdGl2ZSgx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", "chainId": 87, "height": 3136734, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+func writeConstString (key,value) = if (!(isDefined(getString(this, key))))
5+ then StringEntry(key, value)
6+ else throw(("already initialized: " + key))
7+
8+
9+let configStore = "config"
10+
11+let configAddress = addressFromStringValue(getStringValue(this, configStore))
12+
13+let accStore = "acc"
14+
15+let assumeStore = "assume"
16+
17+let accStr = valueOrErrorMessage(getString(this, accStore), "not initialized or deactivated")
18+
19+let acc = addressFromStringValue(accStr)
20+
21+let assumeStr = valueOrErrorMessage(getString(this, assumeStore), "not initialized or deactivated")
22+
23+let usdnReserveStore = "usdnReserve"
24+
25+let usdtReserveStore = "usdtReserve"
26+
27+let usdcReserveStore = "usdcReserve"
28+
29+let usdnReserve = addressFromStringValue(getStringValue(this, usdnReserveStore))
30+
31+let usdtReserve = addressFromStringValue(getStringValue(this, usdtReserveStore))
32+
33+let usdcReserve = addressFromStringValue(getStringValue(this, usdcReserveStore))
34+
35+let usdnStr = getStringValue(usdnReserve, "assetId")
36+
37+let usdtStr = getStringValue(usdtReserve, "assetId")
38+
39+let usdcStr = getStringValue(usdcReserve, "assetId")
40+
41+func asInt (value) = match value {
42+ case int: Int =>
43+ int
44+ case _ =>
45+ throw("1")
46+}
47+
48+
49+func asUserBalanceData (value) = match value {
50+ case x: (Int, Int, Int, Int, Int, Boolean) =>
51+ x
52+ case t =>
53+ throw("3")
54+}
55+
56+
57+func userBalance (rsr,user) = asUserBalanceData(invoke(rsr, "userBalance", [user], nil))
58+
59+
60+let protectedReserve = addressFromStringValue(getStringValue(configAddress, "protected_reserve"))
61+
62+let vd = addressFromStringValue(getStringValue(configAddress, "vires_distributor"))
63+
64+func uS (rsr,action,user,userChange,streamChange) = invoke(vd, "onAction", [rsr, action, user, userChange, streamChange], nil)
65+
66+
67+func moveStream (rsr,action,from,string,amt) = invoke(vd, "move", [rsr, action, from, string, amt], nil)
68+
69+
70+func sR (rsr) = invoke(vd, "syncHeight", [rsr], nil)
71+
72+
73+@Callable(i)
74+func initialize (ca,acc,assume,usdn,usdt,usdc) = [writeConstString(configStore, ca), writeConstString(accStore, acc), writeConstString(assumeStore, assume), writeConstString(usdnReserveStore, usdn), writeConstString(usdtReserveStore, usdt), writeConstString(usdcReserveStore, usdc)]
75+
76+
77+
78+@Callable(i)
79+func assume (a) = if (valueOrElse(getBoolean(this, (a + "_complete")), false))
80+ then throw("already processed")
81+ else {
82+ let checkAddr = addressFromStringValue(a)
83+ if ((checkAddr == checkAddr))
84+ then if ((toString(i.caller) != accStr))
85+ then throw("incorrect caller")
86+ else if (!(contains(assumeStr, a)))
87+ then throw("incorrect assume")
88+ else {
89+ let s1 = sR(toString(usdnReserve))
90+ if ((s1 == s1))
91+ then {
92+ let s2 = sR(toString(usdtReserve))
93+ if ((s2 == s2))
94+ then {
95+ let s3 = sR(toString(usdcReserve))
96+ if ((s3 == s3))
97+ then {
98+ let d = {
99+ let unprotect = asInt(invoke(protectedReserve, "withdrawToMain", [a, usdnStr], nil))
100+ if ((unprotect == unprotect))
101+ then {
102+ let supply = if ((unprotect > 0))
103+ then {
104+ let s = invoke(usdnReserve, "depositFor", [a, true], [AttachedPayment(fromBase58String(usdnStr), unprotect)])
105+ if ((s == s))
106+ then {
107+ let prop = uS(toString(usdnReserve), "deposit", a, unprotect, unprotect)
108+ if ((prop == prop))
109+ then unit
110+ else throw("Strict value is not equal to itself.")
111+ }
112+ else throw("Strict value is not equal to itself.")
113+ }
114+ else unit
115+ if ((supply == supply))
116+ then {
117+ let usdnDeposit = userBalance(usdnReserve, a)._2
118+ if ((usdnDeposit == usdnDeposit))
119+ then {
120+ let transferredCollateral = asInt(invoke(usdnReserve, "transferATokensFor", [a, accStr, usdnDeposit], nil))
121+ if ((transferredCollateral == transferredCollateral))
122+ then {
123+ let pRw1 = moveStream(toString(usdnReserve), "deposit", a, accStr, transferredCollateral)
124+ if ((pRw1 == pRw1))
125+ then true
126+ else throw("Strict value is not equal to itself.")
127+ }
128+ else throw("Strict value is not equal to itself.")
129+ }
130+ else throw("Strict value is not equal to itself.")
131+ }
132+ else throw("Strict value is not equal to itself.")
133+ }
134+ else throw("Strict value is not equal to itself.")
135+ }
136+ if ((d == d))
137+ then {
138+ let b1 = {
139+ let usdcDebt = userBalance(usdcReserve, a)._5
140+ if ((usdcDebt == usdcDebt))
141+ then {
142+ let transferredDebt = asInt(invoke(usdcReserve, "transferDebtFor", [a, accStr, usdcDebt], nil))
143+ if ((transferredDebt == transferredDebt))
144+ then {
145+ let pRw2 = moveStream(toString(usdcReserve), "borrow", a, accStr, transferredDebt)
146+ if ((pRw2 == pRw2))
147+ then true
148+ else throw("Strict value is not equal to itself.")
149+ }
150+ else throw("Strict value is not equal to itself.")
151+ }
152+ else throw("Strict value is not equal to itself.")
153+ }
154+ if ((b1 == b1))
155+ then {
156+ let b2 = {
157+ let usdtDebt = userBalance(usdtReserve, a)._5
158+ if ((usdtDebt == usdtDebt))
159+ then {
160+ let transferredDebt = asInt(invoke(usdtReserve, "transferDebtFor", [a, accStr, usdtDebt], nil))
161+ if ((transferredDebt == transferredDebt))
162+ then {
163+ let pRw2 = moveStream(toString(usdtReserve), "borrow", a, accStr, transferredDebt)
164+ if ((pRw2 == pRw2))
165+ then true
166+ else throw("Strict value is not equal to itself.")
167+ }
168+ else throw("Strict value is not equal to itself.")
169+ }
170+ else throw("Strict value is not equal to itself.")
171+ }
172+ if ((b2 == b2))
173+ then $Tuple2([BooleanEntry((a + "_complete"), true)], if (if (d)
174+ then b1
175+ else false)
176+ then b2
177+ else false)
178+ else throw("Strict value is not equal to itself.")
179+ }
180+ else throw("Strict value is not equal to itself.")
181+ }
182+ else throw("Strict value is not equal to itself.")
183+ }
184+ else throw("Strict value is not equal to itself.")
185+ }
186+ else throw("Strict value is not equal to itself.")
187+ }
188+ else throw("Strict value is not equal to itself.")
189+ }
190+ else throw("Strict value is not equal to itself.")
191+ }
192+
193+
194+
195+@Callable(i)
196+func deactivate () = if ((toString(i.caller) != accStr))
197+ then throw("incorrect caller")
198+ else [DeleteEntry(accStore), DeleteEntry(assumeStore)]
199+
200+

github/deemru/w8io/6500d08 
21.08 ms