tx · 9hoKb2GNrBgeAptCsQcjHqGunmQBMU7f7rDEvHLpXkjy

3MwLW8P5yh5T2xML9QqFuVxkVkm9RXqnzXh:  -0.00900000 Waves

2022.12.01 20:16 [2341564] smart account 3MwLW8P5yh5T2xML9QqFuVxkVkm9RXqnzXh > SELF 0.00000000 Waves

{ "type": 13, "id": "9hoKb2GNrBgeAptCsQcjHqGunmQBMU7f7rDEvHLpXkjy", "fee": 900000, "feeAssetId": null, "timestamp": 1669915111283, "version": 2, "chainId": 84, "sender": "3MwLW8P5yh5T2xML9QqFuVxkVkm9RXqnzXh", "senderPublicKey": "HscGVyJG5M3NMHWKfQbucCBsFLGPi8VmTxTAmcBbaWTa", "proofs": [ "3GsVZgu2qeXRdz1qrUoSoF96xLZAupuxrrHemRaNZE9X1izVDN1UVzNC8rMW1SrZ1y5Bz44iXDrSoKvLNiUCqwRs" ], "script": "base64:BgITCAISAwoBCBIDCgEIEgASAwoBARMABlNjYWxlNgDAhD0ABlNjYWxlOACAwtcvAAdTY2FsZTE2CQBoAgUGU2NhbGU4BQZTY2FsZTgACnZhbGlkYXRvcnMJAMwIAgIjM05BbXFHanhSQlJQb1JIWlVVcXZoaU5TNmF4bkdwaW5MSEMFA25pbAAHYXNzZXRJZAIsSEhtYUZRcFVvYndLeHpqejRFQ2FCUHRvRjY5a3VqS3dVMmNvemFVelRzZ3YAC3B1enpsZVBvb2xzCQDMCAICIzNONlN0SmRnbVRmQVJzUk5uOVh0NXJEWUVzM3ByNEtHeTF2BQNuaWwBCmdldEJhbGFuY2UBB2Fzc2V0SWQEByRtYXRjaDAFB2Fzc2V0SWQDCQABAgUHJG1hdGNoMAIEVW5pdAQBeAUHJG1hdGNoMAgJAO8HAQUEdGhpcwlhdmFpbGFibGUJAPAHAgUEdGhpcwkBBXZhbHVlAQUHYXNzZXRJZAEJdHJ5R2V0SW50AgdhZGRyZXNzA2tleQQHJG1hdGNoMAkAmggCBQdhZGRyZXNzBQNrZXkDCQABAgUHJG1hdGNoMAIDSW50BAFiBQckbWF0Y2gwBQFiAAABCXRyeUdldFN0cgIHYWRkcmVzcwNrZXkEByRtYXRjaDAJAJ0IAgUHYWRkcmVzcwUDa2V5AwkAAQIFByRtYXRjaDACBlN0cmluZwQBYgUHJG1hdGNoMAUBYgIAAQ5nZXRBc3NldFN0cmluZwEHYXNzZXRJZAQHJG1hdGNoMAUHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBAFiBQckbWF0Y2gwCQDYBAEFAWICBVdBVkVTARtnZXRQdXp6bGVQb29sU3VwcGxpZWRBbW91bnQBBnBvb2xJZAQHYmFsYW5jZQkA8AcCCQEHQWRkcmVzcwEJANkEAQUGcG9vbElkCQDZBAEFB2Fzc2V0SWQFB2JhbGFuY2UBFmdldFRvdGFsU3VwcGxpZWRBbW91bnQABAtjdXJyZW50UG9vbAkBCXRyeUdldFN0cgIFBHRoaXMCC2N1cnJlbnRQb29sAwkAAAIFC2N1cnJlbnRQb29sAgAJAAIBCQCsAgICGUNhbm5vdCBmaW5kIHBvb2wgd2l0aCBpZCAFC2N1cnJlbnRQb29sCQEbZ2V0UHV6emxlUG9vbFN1cHBsaWVkQW1vdW50AQULY3VycmVudFBvb2wBFndpdGhkcmF3RnJvbVB1enpsZVBvb2wCBnBvb2xJZAZhbW91bnQEC3Bvb2xBZGRyZXNzCQEHQWRkcmVzcwEJANkEAQUGcG9vbElkBAp3aXRoZHJhd1R4AwkAZgIFBmFtb3VudAAACQD8BwQFC3Bvb2xBZGRyZXNzAgh3aXRoZHJhdwkAzAgCBQdhc3NldElkCQDMCAIFBmFtb3VudAUDbmlsBQNuaWwCAAMJAAACBQp3aXRoZHJhd1R4BQp3aXRoZHJhd1R4BQp3aXRoZHJhd1R4CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQ5jYWxjdWxhdGVTUmF0ZQAEDmxhc3RDaGVja1NSYXRlCQEJdHJ5R2V0SW50AgUEdGhpcwIVZ2xvYmFsX2xhc3RDaGVja1NSYXRlBAxzdGFrZWRBbW91bnQJAQl0cnlHZXRJbnQCBQR0aGlzAg1nbG9iYWxfc3Rha2VkAwkAAAIFDHN0YWtlZEFtb3VudAAABQZTY2FsZTgEEWxhc3RDaGVja1NBbW91bnV0CQBrAwUMc3Rha2VkQW1vdW50BQ5sYXN0Q2hlY2tTUmF0ZQUGU2NhbGU4BAVzUmF0ZQkAawMFDmxhc3RDaGVja1NSYXRlCQEWZ2V0VG90YWxTdXBwbGllZEFtb3VudAAFEWxhc3RDaGVja1NBbW91bnV0AwkAZgIFBlNjYWxlOAUFc1JhdGUFBlNjYWxlOAUFc1JhdGUBDHJlY2FsY1Jlc3VsdAEMc3Rha2VkQ2hhbmdlBAxzdGFrZWRBbW91bnQJAQl0cnlHZXRJbnQCBQR0aGlzAg1nbG9iYWxfc3Rha2VkBAVzUmF0ZQkBDmNhbGN1bGF0ZVNSYXRlAAkAzAgCCQEMSW50ZWdlckVudHJ5AgINZ2xvYmFsX3N0YWtlZAkAZAIFDHN0YWtlZEFtb3VudAUMc3Rha2VkQ2hhbmdlCQDMCAIJAQxJbnRlZ2VyRW50cnkCAhVnbG9iYWxfbGFzdENoZWNrU1JhdGUFBXNSYXRlCQDMCAIJAQxJbnRlZ2VyRW50cnkCAhtnbG9iYWxfbGFzdENoZWNrU1JhdGVIZWlnaHQFBmhlaWdodAUDbmlsAQxzdXBwbHlSZXN1bHQBBnBvb2xJZAMJAAACCQDPCAIFC3B1enpsZVBvb2xzBQZwb29sSWQFBHVuaXQJAAIBCQCsAgICD1Vua25vd24gcG9vbElkIAUGcG9vbElkBAphc3NldEJ5dGVzCQDZBAEFB2Fzc2V0SWQEB2JhbGFuY2UJAQpnZXRCYWxhbmNlAQUKYXNzZXRCeXRlcwQDaW52CQD8BwQJAQdBZGRyZXNzAQkA2QQBBQZwb29sSWQCBnN1cHBseQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQphc3NldEJ5dGVzBQdiYWxhbmNlBQNuaWwDCQAAAgUDaW52BQNpbnYJAMwIAgkBC1N0cmluZ0VudHJ5AgILY3VycmVudFBvb2wFBnBvb2xJZAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQ53aXRoZHJhd1Jlc3VsdAAEC2N1cnJlbnRQb29sCQEJdHJ5R2V0U3RyAgUEdGhpcwILY3VycmVudFBvb2wDCQAAAgULY3VycmVudFBvb2wCAAkAAgEJAKwCAgIZQ2Fubm90IGZpbmQgcG9vbCB3aXRoIGlkIAULY3VycmVudFBvb2wEBmFtb3VudAkBG2dldFB1enpsZVBvb2xTdXBwbGllZEFtb3VudAEFC2N1cnJlbnRQb29sBAJ0eAkBFndpdGhkcmF3RnJvbVB1enpsZVBvb2wCBQtjdXJyZW50UG9vbAUGYW1vdW50AwkAAAIFAnR4BQJ0eAUCdHgJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BC3N0YWtlUmVzdWx0AgR1c2VyBmFtb3VudAQHc0Ftb3VudAkAawMFBmFtb3VudAUGU2NhbGU4CQEOY2FsY3VsYXRlU1JhdGUACQDOCAIJAQxyZWNhbGNSZXN1bHQBBQdzQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFBHVzZXICB19zdGFrZWQJAGQCCQEJdHJ5R2V0SW50AgUEdGhpcwkArAICBQR1c2VyAgdfc3Rha2VkBQdzQW1vdW50BQNuaWwBDXVuc3Rha2VSZXN1bHQCBHVzZXIGYW1vdW50BAdzQW1vdW50CQBrAwUGYW1vdW50BQZTY2FsZTgJAQ5jYWxjdWxhdGVTUmF0ZQAECnVzZXJTdGFrZWQJAQl0cnlHZXRJbnQCBQR0aGlzCQCsAgIFBHVzZXICB19zdGFrZWQEDXVuc3Rha2VBbW91bnQDCQBmAgUHc0Ftb3VudAUKdXNlclN0YWtlZAUKdXNlclN0YWtlZAUHc0Ftb3VudAkAzggCCQEMcmVjYWxjUmVzdWx0AQkBAS0BBQdzQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFBHVzZXICB19zdGFrZWQJAGUCBQp1c2VyU3Rha2VkBQ11bnN0YWtlQW1vdW50BQNuaWwEAWkBBGluaXQBBnBvb2xJZAQLY3VycmVudFBvb2wJAQl0cnlHZXRTdHICBQR0aGlzAgtjdXJyZW50UG9vbAMJAAACCQDPCAIFCnZhbGlkYXRvcnMJAKUIAQgFAWkGY2FsbGVyBQR1bml0CQACAQINQWNjZXNzIGRlbmllZAMJAAACBQtjdXJyZW50UG9vbAIACQDMCAIJAQtTdHJpbmdFbnRyeQICC2N1cnJlbnRQb29sBQZwb29sSWQFA25pbAUDbmlsAWkBCXJlYmFsYW5jZQEGcG9vbElkBAtjdXJyZW50UG9vbAkBCXRyeUdldFN0cgIFBHRoaXMCC2N1cnJlbnRQb29sAwkAAAIJAM8IAgUKdmFsaWRhdG9ycwkApQgBCAUBaQZjYWxsZXIFBHVuaXQJAAIBAg1BY2Nlc3MgZGVuaWVkAwkAAAIFC2N1cnJlbnRQb29sBQZwb29sSWQJAAIBCQCsAgICE0FscmVhZHkgc3VwcGxpZWQgdG8FC2N1cnJlbnRQb29sBAp3aXRoZHJhd1R4CQEOd2l0aGRyYXdSZXN1bHQAAwkAAAIFCndpdGhkcmF3VHgFCndpdGhkcmF3VHgJAM4IAgkBDHN1cHBseVJlc3VsdAEFBnBvb2xJZAkBDHJlY2FsY1Jlc3VsdAEAAAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQVzdGFrZQAEBHVzZXIJAKUIAQgFAWkGY2FsbGVyBAZhbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAtjdXJyZW50UG9vbAkBCXRyeUdldFN0cgIFBHRoaXMCC2N1cnJlbnRQb29sAwMJAGcCAAAFBmFtb3VudAYJAQIhPQIICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAkA2QQBBQdhc3NldElkCQACAQIWaW52YWxpZCB0b2tlbiBhdHRhY2hlZAMJAAACBQtjdXJyZW50UG9vbAIACQACAQIUUG9vbCBub3QgaW5pdGlhbGl6ZWQJAM4IAgkBC3N0YWtlUmVzdWx0AgUEdXNlcgUGYW1vdW50CQEMc3VwcGx5UmVzdWx0AQULY3VycmVudFBvb2wBaQEHdW5zdGFrZQEGYW1vdW50BAR1c2VyCQClCAEIBQFpBmNhbGxlcgQLY3VycmVudFBvb2wJAQl0cnlHZXRTdHICBQR0aGlzAgtjdXJyZW50UG9vbAQCdHgJARZ3aXRoZHJhd0Zyb21QdXp6bGVQb29sAgULY3VycmVudFBvb2wFBmFtb3VudAMJAAACBQJ0eAUCdHgJAM4IAgkBDXVuc3Rha2VSZXN1bHQCBQR1c2VyBQZhbW91bnQJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBQZhbW91bnQJANkEAQUHYXNzZXRJZAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJ0eAEGdmVyaWZ5AAkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleeFNmT0=", "height": 2341564, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: GQUPP2Pu1H1yxzXsa123npXeYvUbjTjNhzSFUA2wkq2U Next: ALUPCoxYdG6XSME6xfy1pfkNe8T9vpxsPtZUjpVU1rwz Diff:
OldNewDifferences
8585 func y () = {
8686 let z = j(this, "global_lastCheckSRate")
8787 let A = j(this, "global_staked")
88- let B = j(this, "global_lastCheckSRateHeight")
89- let C = (height - B)
90- let D = (s() - fraction(A, z, b))
9188 if ((A == 0))
9289 then b
9390 else {
94- let E = (z + fraction((C * b), D, A))
95- if ((b > E))
91+ let B = fraction(A, z, b)
92+ let C = fraction(z, s(), B)
93+ if ((b > C))
9694 then b
97- else E
95+ else C
9896 }
9997 }
10098
10199
102-func F (G) = {
100+func D (E) = {
103101 let A = j(this, "global_staked")
104- let E = y()
105-[IntegerEntry("global_staked", (A + G)), IntegerEntry("global_lastCheckSRate", E), IntegerEntry("global_lastCheckSRateHeight", height)]
102+ let C = y()
103+[IntegerEntry("global_staked", (A + E)), IntegerEntry("global_lastCheckSRate", C), IntegerEntry("global_lastCheckSRateHeight", height)]
106104 }
107105
108106
109-func H (q) = if ((indexOf(f, q) == unit))
107+func F (q) = if ((indexOf(f, q) == unit))
110108 then throw(("Unknown poolId " + q))
111109 else {
112- let I = fromBase58String(e)
113- let r = g(I)
114- let J = invoke(Address(fromBase58String(q)), "supply", nil, [AttachedPayment(I, r)])
115- if ((J == J))
110+ let G = fromBase58String(e)
111+ let r = g(G)
112+ let H = invoke(Address(fromBase58String(q)), "supply", nil, [AttachedPayment(G, r)])
113+ if ((H == H))
116114 then [StringEntry("currentPool", q)]
117115 else throw("Strict value is not equal to itself.")
118116 }
119117
120118
121-func K () = {
119+func I () = {
122120 let t = n(this, "currentPool")
123121 if ((t == ""))
124122 then throw(("Cannot find pool with id " + t))
125123 else {
126124 let v = p(t)
127- let L = u(t, v)
128- if ((L == L))
129- then L
125+ let J = u(t, v)
126+ if ((J == J))
127+ then J
130128 else throw("Strict value is not equal to itself.")
131129 }
132130 }
133131
134132
135-func M (N,v) = {
136- let O = fraction(v, b, y())
137- (F(O) ++ [IntegerEntry((N + "_staked"), (j(this, (N + "_staked")) + O))])
133+func K (L,v) = {
134+ let M = fraction(v, b, y())
135+ (D(M) ++ [IntegerEntry((L + "_staked"), (j(this, (L + "_staked")) + M))])
138136 }
139137
140138
141-func P (N,v) = {
142- let O = fraction(v, b, y())
143- let Q = j(this, (N + "_staked"))
144- let R = if ((O > Q))
145- then Q
146- else O
147- (F(-(O)) ++ [IntegerEntry((N + "_staked"), (Q - R))])
139+func N (L,v) = {
140+ let M = fraction(v, b, y())
141+ let O = j(this, (L + "_staked"))
142+ let P = if ((M > O))
143+ then O
144+ else M
145+ (D(-(M)) ++ [IntegerEntry((L + "_staked"), (O - P))])
148146 }
149147
150148
151-@Callable(S)
149+@Callable(Q)
152150 func init (q) = {
153151 let t = n(this, "currentPool")
154- if ((indexOf(d, toString(S.caller)) == unit))
152+ if ((indexOf(d, toString(Q.caller)) == unit))
155153 then throw("Access denied")
156154 else if ((t == ""))
157155 then [StringEntry("currentPool", q)]
160158
161159
162160
163-@Callable(S)
161+@Callable(Q)
164162 func rebalance (q) = {
165163 let t = n(this, "currentPool")
166- if ((indexOf(d, toString(S.caller)) == unit))
164+ if ((indexOf(d, toString(Q.caller)) == unit))
167165 then throw("Access denied")
168166 else if ((t == q))
169167 then throw(("Already supplied to" + t))
170168 else {
171- let x = K()
169+ let x = I()
172170 if ((x == x))
173- then (H(q) ++ F(0))
171+ then (F(q) ++ D(0))
174172 else throw("Strict value is not equal to itself.")
175173 }
176174 }
177175
178176
179177
180-@Callable(S)
178+@Callable(Q)
181179 func stake () = {
182- let N = toString(S.caller)
183- let v = S.payments[0].amount
180+ let L = toString(Q.caller)
181+ let v = Q.payments[0].amount
184182 let t = n(this, "currentPool")
185183 if (if ((0 >= v))
186184 then true
187- else (S.payments[0].assetId != fromBase58String(e)))
185+ else (Q.payments[0].assetId != fromBase58String(e)))
188186 then throw("invalid token attached")
189187 else if ((t == ""))
190188 then throw("Pool not initialized")
191- else (M(N, v) ++ H(t))
189+ else (K(L, v) ++ F(t))
192190 }
193191
194192
195193
196-@Callable(S)
194+@Callable(Q)
197195 func unstake (v) = {
198- let N = toString(S.caller)
196+ let L = toString(Q.caller)
199197 let t = n(this, "currentPool")
200- let L = u(t, v)
201- if ((L == L))
202- then (P(N, v) ++ [ScriptTransfer(S.caller, v, fromBase58String(e))])
198+ let J = u(t, v)
199+ if ((J == J))
200+ then (N(L, v) ++ [ScriptTransfer(Q.caller, v, fromBase58String(e))])
203201 else throw("Strict value is not equal to itself.")
204202 }
205203
206204
207-@Verifier(L)
208-func T () = sigVerify(L.bodyBytes, L.proofs[0], L.senderPublicKey)
205+@Verifier(J)
206+func R () = sigVerify(J.bodyBytes, J.proofs[0], J.senderPublicKey)
209207
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 1000000
55
66 let b = 100000000
77
88 let c = (b * b)
99
1010 let d = ["3NAmqGjxRBRPoRHZUUqvhiNS6axnGpinLHC"]
1111
1212 let e = "HHmaFQpUobwKxzjz4ECaBPtoF69kujKwU2cozaUzTsgv"
1313
1414 let f = ["3N6StJdgmTfARsRNn9Xt5rDYEs3pr4KGy1v"]
1515
1616 func g (e) = {
1717 let h = e
1818 if ($isInstanceOf(h, "Unit"))
1919 then {
2020 let i = h
2121 wavesBalance(this).available
2222 }
2323 else assetBalance(this, value(e))
2424 }
2525
2626
2727 func j (k,l) = {
2828 let h = getInteger(k, l)
2929 if ($isInstanceOf(h, "Int"))
3030 then {
3131 let m = h
3232 m
3333 }
3434 else 0
3535 }
3636
3737
3838 func n (k,l) = {
3939 let h = getString(k, l)
4040 if ($isInstanceOf(h, "String"))
4141 then {
4242 let m = h
4343 m
4444 }
4545 else ""
4646 }
4747
4848
4949 func o (e) = {
5050 let h = e
5151 if ($isInstanceOf(h, "ByteVector"))
5252 then {
5353 let m = h
5454 toBase58String(m)
5555 }
5656 else "WAVES"
5757 }
5858
5959
6060 func p (q) = {
6161 let r = assetBalance(Address(fromBase58String(q)), fromBase58String(e))
6262 r
6363 }
6464
6565
6666 func s () = {
6767 let t = n(this, "currentPool")
6868 if ((t == ""))
6969 then throw(("Cannot find pool with id " + t))
7070 else p(t)
7171 }
7272
7373
7474 func u (q,v) = {
7575 let w = Address(fromBase58String(q))
7676 let x = if ((v > 0))
7777 then invoke(w, "withdraw", [e, v], nil)
7878 else ""
7979 if ((x == x))
8080 then x
8181 else throw("Strict value is not equal to itself.")
8282 }
8383
8484
8585 func y () = {
8686 let z = j(this, "global_lastCheckSRate")
8787 let A = j(this, "global_staked")
88- let B = j(this, "global_lastCheckSRateHeight")
89- let C = (height - B)
90- let D = (s() - fraction(A, z, b))
9188 if ((A == 0))
9289 then b
9390 else {
94- let E = (z + fraction((C * b), D, A))
95- if ((b > E))
91+ let B = fraction(A, z, b)
92+ let C = fraction(z, s(), B)
93+ if ((b > C))
9694 then b
97- else E
95+ else C
9896 }
9997 }
10098
10199
102-func F (G) = {
100+func D (E) = {
103101 let A = j(this, "global_staked")
104- let E = y()
105-[IntegerEntry("global_staked", (A + G)), IntegerEntry("global_lastCheckSRate", E), IntegerEntry("global_lastCheckSRateHeight", height)]
102+ let C = y()
103+[IntegerEntry("global_staked", (A + E)), IntegerEntry("global_lastCheckSRate", C), IntegerEntry("global_lastCheckSRateHeight", height)]
106104 }
107105
108106
109-func H (q) = if ((indexOf(f, q) == unit))
107+func F (q) = if ((indexOf(f, q) == unit))
110108 then throw(("Unknown poolId " + q))
111109 else {
112- let I = fromBase58String(e)
113- let r = g(I)
114- let J = invoke(Address(fromBase58String(q)), "supply", nil, [AttachedPayment(I, r)])
115- if ((J == J))
110+ let G = fromBase58String(e)
111+ let r = g(G)
112+ let H = invoke(Address(fromBase58String(q)), "supply", nil, [AttachedPayment(G, r)])
113+ if ((H == H))
116114 then [StringEntry("currentPool", q)]
117115 else throw("Strict value is not equal to itself.")
118116 }
119117
120118
121-func K () = {
119+func I () = {
122120 let t = n(this, "currentPool")
123121 if ((t == ""))
124122 then throw(("Cannot find pool with id " + t))
125123 else {
126124 let v = p(t)
127- let L = u(t, v)
128- if ((L == L))
129- then L
125+ let J = u(t, v)
126+ if ((J == J))
127+ then J
130128 else throw("Strict value is not equal to itself.")
131129 }
132130 }
133131
134132
135-func M (N,v) = {
136- let O = fraction(v, b, y())
137- (F(O) ++ [IntegerEntry((N + "_staked"), (j(this, (N + "_staked")) + O))])
133+func K (L,v) = {
134+ let M = fraction(v, b, y())
135+ (D(M) ++ [IntegerEntry((L + "_staked"), (j(this, (L + "_staked")) + M))])
138136 }
139137
140138
141-func P (N,v) = {
142- let O = fraction(v, b, y())
143- let Q = j(this, (N + "_staked"))
144- let R = if ((O > Q))
145- then Q
146- else O
147- (F(-(O)) ++ [IntegerEntry((N + "_staked"), (Q - R))])
139+func N (L,v) = {
140+ let M = fraction(v, b, y())
141+ let O = j(this, (L + "_staked"))
142+ let P = if ((M > O))
143+ then O
144+ else M
145+ (D(-(M)) ++ [IntegerEntry((L + "_staked"), (O - P))])
148146 }
149147
150148
151-@Callable(S)
149+@Callable(Q)
152150 func init (q) = {
153151 let t = n(this, "currentPool")
154- if ((indexOf(d, toString(S.caller)) == unit))
152+ if ((indexOf(d, toString(Q.caller)) == unit))
155153 then throw("Access denied")
156154 else if ((t == ""))
157155 then [StringEntry("currentPool", q)]
158156 else nil
159157 }
160158
161159
162160
163-@Callable(S)
161+@Callable(Q)
164162 func rebalance (q) = {
165163 let t = n(this, "currentPool")
166- if ((indexOf(d, toString(S.caller)) == unit))
164+ if ((indexOf(d, toString(Q.caller)) == unit))
167165 then throw("Access denied")
168166 else if ((t == q))
169167 then throw(("Already supplied to" + t))
170168 else {
171- let x = K()
169+ let x = I()
172170 if ((x == x))
173- then (H(q) ++ F(0))
171+ then (F(q) ++ D(0))
174172 else throw("Strict value is not equal to itself.")
175173 }
176174 }
177175
178176
179177
180-@Callable(S)
178+@Callable(Q)
181179 func stake () = {
182- let N = toString(S.caller)
183- let v = S.payments[0].amount
180+ let L = toString(Q.caller)
181+ let v = Q.payments[0].amount
184182 let t = n(this, "currentPool")
185183 if (if ((0 >= v))
186184 then true
187- else (S.payments[0].assetId != fromBase58String(e)))
185+ else (Q.payments[0].assetId != fromBase58String(e)))
188186 then throw("invalid token attached")
189187 else if ((t == ""))
190188 then throw("Pool not initialized")
191- else (M(N, v) ++ H(t))
189+ else (K(L, v) ++ F(t))
192190 }
193191
194192
195193
196-@Callable(S)
194+@Callable(Q)
197195 func unstake (v) = {
198- let N = toString(S.caller)
196+ let L = toString(Q.caller)
199197 let t = n(this, "currentPool")
200- let L = u(t, v)
201- if ((L == L))
202- then (P(N, v) ++ [ScriptTransfer(S.caller, v, fromBase58String(e))])
198+ let J = u(t, v)
199+ if ((J == J))
200+ then (N(L, v) ++ [ScriptTransfer(Q.caller, v, fromBase58String(e))])
203201 else throw("Strict value is not equal to itself.")
204202 }
205203
206204
207-@Verifier(L)
208-func T () = sigVerify(L.bodyBytes, L.proofs[0], L.senderPublicKey)
205+@Verifier(J)
206+func R () = sigVerify(J.bodyBytes, J.proofs[0], J.senderPublicKey)
209207

github/deemru/w8io/169f3d6 
64.87 ms