tx · AU1Z3PQoMtyKfmycrDZNuYvjESVwfh2jrNrmDQ9Cmy1y

3PQV9AUMU36fdDYMmMZw6urSYG3BuMahQuk:  -0.01200000 Waves

2022.07.19 11:56 [3211961] smart account 3PQV9AUMU36fdDYMmMZw6urSYG3BuMahQuk > SELF 0.00000000 Waves

{ "type": 13, "id": "AU1Z3PQoMtyKfmycrDZNuYvjESVwfh2jrNrmDQ9Cmy1y", "fee": 1200000, "feeAssetId": null, "timestamp": 1658221056714, "version": 2, "chainId": 87, "sender": "3PQV9AUMU36fdDYMmMZw6urSYG3BuMahQuk", "senderPublicKey": "8bMNZV1S5S2hfim2ZPy5hsSdC1AHBwPHUEXPBhdEF2Mk", "proofs": [ "ffnCQxZFgKRnVvX2wmWnBXzoQnTarMDDxWCBYVq9mJedhzdLaSUeHaLEs1NdGwdM2jDJuYhviRZwa62sX4FaxXU" ], "script": "base64:BgLmBAgCEgASABIAEgASABIAEgASABIAEgASACIKdXNkdFVzZG5MUCINdXNkdFVzZG5MUFRDSSIId3hVc2RuTFAiC3d4VXNkbkxQVENJIgp1c2RjVXNkbkxQIg11c2RjVXNkbkxQVENJIgp1c2RjVXNkdExQIg11c2RjVXNkdExQVENJIgxwdXp6bGVVc2RuTFAiD3B1enpsZVVzZG5MUFRDSSIEd3hJZCIOa2V5U3BvbnNvcnNoaXAiCWlzU3RvcHBlZCIJa2V5U3Rha2VkIgtrZXlDb21wb3VuZCIRa2V5d3hVc2RuQ29tcG91bmQiCWtleVdYVVNETiITa2V5VXNkY1VzZG5Db21wb3VuZCILa2V5VVNEQ1VTRE4iE2tleVVzZGNVc2R0Q29tcG91bmQiC2tleVVTRENVU0RUIhVrZXlQdXp6bGVVc2RuQ29tcG91bmQiDWtleVBVWlpMRVVTRE4iBm9yYWNsZSIMY2hlY2tBZGRyZXNzIgZjYWxsZXIiAWkiA3BtdCIJcG10QW1vdW50Igh0a1N0YWtlZCILdG90YWxJc3N1ZWQiByRtYXRjaDAiBWFzc2V0IgNvbmUiB3RvSXNzdWUiC3VwZGF0ZVN0YXRlIgdMUHN0YWtlIgdMUElzc3VlIgh0cmFuc2ZlciIMZnJvbUNvbXBvdW5kIgZmb3JPbmUiCGNvbXBvdW5kIgJjYSIIaXNPcmFjbGUiC3RvdGFsU3Rha2VkIgZzdGFrZUMiAnRjIgJwbSIKbG9ja1BlcmlvZCIJc3BvbnNvcmVkIgRsb2NrIgFzIgJ0eCIGdmVyaWZ5GQABYQEgeKe/TORdN+2VIdfWflWy/q4Ef+gR/VrWL/1DGC+Wt8AAAWIBIBG6tC/qJMhI0cdjddgUOO1bmK5/To9FHcuj/RydMcYtAAFjASDQT71RdBIZXVrFawprtgfBi/YgCUpkJByIvvbGrlTraAABZAEg3XVBqjphIlMvzVYwHrzDvrUJrUyGvZRTnBKh7j6j3vgAAWUBIANpAfwbCpgKiM2P/hFZhYUmkTKzWpL8JulIXdOf3lx2AAFmASD2Ajfd05/vhkUvXCNHD5Vf0TptoSvCp7SbVEEHUvVuxgABZwEgxvikdBtWSFYQn5B+wjP0MWuLBEosK/2ZS4f1hZt85IwAAWgBIALGhXwESzPH4u+HZ4dS+1WC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BQFUBQFUBAFKCQEMSW50ZWdlckVudHJ5AgUBcQkAZAIFAVMFAVEEAVUJAQxJbnRlZ2VyRW50cnkCBQFwCQBkAgUBTgUBUQkAzAgCBQFKCQDMCAIFAVUFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFBARJjb21wb3VuZFVzZHRVc2RuTFAABAFQCQEFdmFsdWUBCQCRAwIIBQFBCHBheW1lbnRzAAAEAVEIBQFQBmFtb3VudAQBUgkBAXkBCAgFAUEGY2FsbGVyBWJ5dGVzAwkBAiE9AggFAVAHYXNzZXRJZAUBYQkAAgECHWF0dGFjaCBVU0RUVVNETkxQIHRva2VucyBvbmx5AwkBASEBBQFSCQACAQIsWW91IGFyZSBub3QgYXV0aG90aXplZCB0byBjYWxsIHRoaXMgZnVuY3Rpb24EAU4JAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUBbwAABAFTCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFAW4AAAQBVAkA/AcECQEHQWRkcmVzcwEBGgFX6zvnfm4FGMKRpJgWF+Fm10UnIO4lSVaoAgVzdGFrZQUDbmlsCQDMCAIFAVAFA25pbAMJAAACBQFUBQFUBAFKCQEMSW50ZWdlckVudHJ5AgUBbgkAZAIFAVMFAVEEAVUJAQxJbnRlZ2VyRW50cnkCBQFvCQBkAgUBTgUBUQkAzAgCBQFKCQDMCAIFAVUFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFBARJjb21wb3VuZFVzZGNVc2RuTFAABAFQCQEFdmFsdWUBCQCRAwIIBQFBCHBheW1lbnRzAAAEAVEIBQFQBmFtb3VudAQBUgkBAXkBCAgFAUEGY2FsbGVyBWJ5dGVzAwkBAiE9AggFAVAHYXNzZXRJZAUBZQkAAgECHWF0dGFjaCBVU0RDVVNETkxQIHRva2VucyBvbmx5AwkBASEBBQFSCQACAQIsWW91IGFyZSBub3QgYXV0aG90aXplZCB0byBjYWxsIHRoaXMgZnVuY3Rpb24EAU4JAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUBcgAABAFTCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFAXMAAAQBVAkA/AcECQEHQWRkcmVzcwEBGgFX6zvnfm4FGMKRpJgWF+Fm10UnIO4lSVaoAgVzdGFrZQUDbmlsCQDMCAIFAVAFA25pbAMJAAACBQFUBQFUBAFKCQEMSW50ZWdlckVudHJ5AgUBcwkAZAIFAVMFAVEEAVUJAQxJbnRlZ2VyRW50cnkCBQFyCQBkAgUBTgUBUQkAzAgCBQFKCQDMCAIFAVUFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFBARJjb21wb3VuZFVzZGNVc2R0TFAABAFQCQEFdmFsdWUBCQCRAwIIBQFBCHBheW1lbnRzAAAEAVEIBQFQBmFtb3VudAQBUgkBAXkBCAgFAUEGY2FsbGVyBWJ5dGVzAwkBAiE9AggFAVAHYXNzZXRJZAUBZwkAAgECHWF0dGFjaCBVU0RDVVNEVExQIHRva2VucyBvbmx5AwkBASEBBQFSCQACAQIsWW91IGFyZSBub3QgYXV0aG90aXplZCB0byBjYWxsIHRoaXMgZnVuY3Rpb24EAU4JAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUBdAAABAFTCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFAXUAAAQBVAkA/AcECQEHQWRkcmVzcwEBGgFX6zvnfm4FGMKRpJgWF+Fm10UnIO4lSVaoAgVzdGFrZQUDbmlsCQDMCAIFAVAFA25pbAMJAAACBQFUBQFUBAFKCQEMSW50ZWdlckVudHJ5AgUBdQkAZAIFAVMFAVEEAVUJAQxJbnRlZ2VyRW50cnkCBQF0CQBkAgUBTgUBUQkAzAgCBQFKCQDMCAIFAVUFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFBARRjb21wb3VuZFB1enpsZVVzZG5MUAAEAVAJAQV2YWx1ZQEJAJEDAggFAUEIcGF5bWVudHMAAAQBUQgFAVAGYW1vdW50BAFSCQEBeQEICAUBQQZjYWxsZXIFYnl0ZXMDCQECIT0CCAUBUAdhc3NldElkBQFpCQACAQIfYXR0YWNoIFBVWlpMRVVTRE5MUCB0b2tlbnMgb25seQMJAQEhAQUBUgkAAgECLFlvdSBhcmUgbm90IGF1dGhvdGl6ZWQgdG8gY2FsbCB0aGlzIGZ1bmN0aW9uBAFOCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFAXYAAAQBUwkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQF3AAAEAVQJAPwHBAkBB0FkZHJlc3MBARoBV+s7535uBRjCkaSYFhfhZtdFJyDuJUlWqAIFc3Rha2UFA25pbAkAzAgCBQFQBQNuaWwDCQAAAgUBVAUBVAQBSgkBDEludGVnZXJFbnRyeQIFAXcJAGQCBQFTBQFRBAFVCQEMSW50ZWdlckVudHJ5AgUBdgkAZAIFAU4FAVEJAMwIAgUBSgkAzAgCBQFVBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BQQEMc3BvbnNvckJvb3N0AAQBVgkBBXZhbHVlAQkAkQMCCAUBQQhwYXltZW50cwAABAFXAGQDCQECIT0CCAUBVgdhc3NldElkBQFrCQACAQIFRXJyb3IEAVgJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUBbAAABAFZCQD8BwQJAQdBZGRyZXNzAQEaAVez5uZVGBFpsOQzD4hRQ6ScrtbVSwNLEVgCDGluY3JlYXNlTG9jawkAzAgCBQFXBQNuaWwJAMwIAgUBVgUDbmlsAwkAAAIFAVkFAVkEAVoJAQxJbnRlZ2VyRW50cnkCBQFsCQBkAggFAVYGYW1vdW50BQFYCQDMCAIFAVoFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgECYWEBAmFiAAkA9AMDCAUCYWEJYm9keUJ5dGVzCQCRAwIIBQJhYQZwcm9vZnMAAAgFAmFhD3NlbmRlclB1YmxpY0tleaCYan4=", "height": 3211961, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EroTK7gfLiEefzo7qtemZiPGv9apLFTEGESrBXuqGYmN Next: AA9EwSwRWMdm5VjUeMZCFeEXxaJx7yJ6kVfboKvYAGJj Diff:
OldNewDifferences
2424 let wxId = base58'Atqv59EYzjFGuitKVnMRk6H8FukjoV3ktPorbEys25on'
2525
2626 let keySponsorship = "Sponsorship_in_lock"
27-
28-let sponsored = 77900000000
2927
3028 let isStopped = false
3129
352350 if ((pm.assetId != wxId))
353351 then throw("Error")
354352 else {
353+ let sponsored = valueOrElse(getInteger(this, keySponsorship), 0)
355354 let lock = invoke(Address(base58'3PJL8Hn8LACaSBWLQ3UVhctA5cTQLBFwBAP'), "increaseLock", [lockPeriod], [pm])
356355 if ((lock == lock))
357356 then {
358- let s = IntegerEntry(keySponsorship, sponsored)
357+ let s = IntegerEntry(keySponsorship, (pm.amount + sponsored))
359358 [s]
360359 }
361360 else throw("Strict value is not equal to itself.")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let usdtUsdnLP = base58'97zHFp1C3cB7qfvx8Xv5f2rWp9nUSG5UnAamfPcW6txf'
55
66 let usdtUsdnLPTCI = base58'2CD44HANZzsdU7yqRsmz7L9eA2Foh4YYMC4azMbaZEj6'
77
88 let wxUsdnLP = base58'F2AKkA513k5yHEJkLsU6vWxCYYk811GpjLhwEv2WGwZ9'
99
1010 let wxUsdnLPTCI = base58'FuUobp3DcfARzDLcvtVW37i7FvMPvCCpgdcvWke8sBuh'
1111
1212 let usdcUsdnLP = base58'EK6N7S38xbtBT3SxAqoGdDLCiX6rojX6G169CnSyuE5'
1313
1414 let usdcUsdnLPTCI = base58'HZKFpNfyPG5gt4D6Nfy1zQSg2Ptmqv932GjNTCyBEeKP'
1515
1616 let usdcUsdtLP = base58'EPhdEfmQaNcHyvDmRGhnLhgcJtKZ2a4k3ZBmKWtAEWyH'
1717
1818 let usdcUsdtLPTCI = base58'BqPYkaiz7Le6fFu1rjZ54anrpT57EpvyugZCUqrsjXj'
1919
2020 let puzzleUsdnLP = base58'E8zHu33GfcNyGLypX77gZiUXfvuZQeaYmiEfsy7VYNwP'
2121
2222 let puzzleUsdnLPTCI = base58'Dh9QXSSABE5V6aRfu3mCbDAUokbpE7ER7pbZV6cvyg1A'
2323
2424 let wxId = base58'Atqv59EYzjFGuitKVnMRk6H8FukjoV3ktPorbEys25on'
2525
2626 let keySponsorship = "Sponsorship_in_lock"
27-
28-let sponsored = 77900000000
2927
3028 let isStopped = false
3129
3230 let keyStaked = "STAKED_LP"
3331
3432 let keyCompound = "From_Compound"
3533
3634 let keywxUsdnCompound = "WX_USDN_compound"
3735
3836 let keyWXUSDN = "WX_USDN"
3937
4038 let keyUsdcUsdnCompound = "USDC_USDN_compound"
4139
4240 let keyUSDCUSDN = "USDC_USDN"
4341
4442 let keyUsdcUsdtCompound = "USDC_USDT_compound"
4543
4644 let keyUSDCUSDT = "USDC_USDT"
4745
4846 let keyPuzzleUsdnCompound = "PUZZLE_USDN_compound"
4947
5048 let keyPUZZLEUSDN = "PUZZLE_USDN"
5149
5250 let oracle = base58'3P6phwFZFQtZFuc9dvdXsgvtg8JEFVgECPA'
5351
5452 func checkAddress (caller) = if ((caller != oracle))
5553 then false
5654 else true
5755
5856
5957 @Callable(i)
6058 func depositWxUsdnLP () = {
6159 let pmt = value(i.payments[0])
6260 let pmtAmount = pmt.amount
6361 if ((pmt.assetId != wxUsdnLP))
6462 then throw("attach WXUSDNLP tokens only")
6563 else if (isStopped)
6664 then throw("smart contract is on lock")
6765 else {
6866 let tkStaked = valueOrElse(getInteger(this, keyWXUSDN), 0)
6967 let totalIssued = match assetInfo(wxUsdnLPTCI) {
7068 case asset: Asset =>
7169 asset.quantity
7270 case _ =>
7371 throw("Can't find asset")
7472 }
7573 let one = fraction(totalIssued, 100000000, tkStaked)
7674 let toIssue = fraction(pmtAmount, one, 100000000)
7775 let updateState = IntegerEntry(keyWXUSDN, (tkStaked + pmtAmount))
7876 let LPstake = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [pmt])
7977 if ((LPstake == LPstake))
8078 then {
8179 let LPIssue = Reissue(wxUsdnLPTCI, toIssue, true)
8280 let transfer = ScriptTransfer(i.caller, toIssue, wxUsdnLPTCI)
8381 [LPIssue, transfer, updateState]
8482 }
8583 else throw("Strict value is not equal to itself.")
8684 }
8785 }
8886
8987
9088
9189 @Callable(i)
9290 func depositUsdtUsdnLP () = {
9391 let pmt = value(i.payments[0])
9492 let pmtAmount = pmt.amount
9593 if ((pmt.assetId != usdtUsdnLP))
9694 then throw("attach USDTUSDNLP tokens only")
9795 else if (isStopped)
9896 then throw("smart contract is on lock")
9997 else {
10098 let tkStaked = valueOrElse(getInteger(this, keyStaked), 0)
10199 let totalIssued = match assetInfo(usdtUsdnLPTCI) {
102100 case asset: Asset =>
103101 asset.quantity
104102 case _ =>
105103 throw("Can't find asset")
106104 }
107105 let fromCompound = valueOrElse(getInteger(this, keyCompound), 0)
108106 let forOne = fraction(totalIssued, 100000000, tkStaked)
109107 let toIssue = fraction(pmtAmount, forOne, 100000000)
110108 let updateState = IntegerEntry(keyStaked, (tkStaked + pmtAmount))
111109 let LPstake = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [pmt])
112110 if ((LPstake == LPstake))
113111 then {
114112 let LPIssue = Reissue(usdtUsdnLPTCI, toIssue, true)
115113 let transfer = ScriptTransfer(i.caller, toIssue, usdtUsdnLPTCI)
116114 [LPIssue, transfer, updateState]
117115 }
118116 else throw("Strict value is not equal to itself.")
119117 }
120118 }
121119
122120
123121
124122 @Callable(i)
125123 func depositUsdcUsdnLP () = {
126124 let pmt = value(i.payments[0])
127125 let pmtAmount = pmt.amount
128126 if ((pmt.assetId != usdcUsdnLP))
129127 then throw("attach USDCUSDNLP tokens only")
130128 else if (isStopped)
131129 then throw("smart contract is on lock")
132130 else {
133131 let tkStaked = valueOrElse(getInteger(this, keyUSDCUSDN), 0)
134132 let totalIssued = match assetInfo(usdcUsdnLPTCI) {
135133 case asset: Asset =>
136134 asset.quantity
137135 case _ =>
138136 throw("Can't find asset")
139137 }
140138 let fromCompound = valueOrElse(getInteger(this, keyUsdcUsdnCompound), 0)
141139 let forOne = fraction(totalIssued, 100000000, tkStaked)
142140 let toIssue = fraction(pmtAmount, forOne, 100000000)
143141 let updateState = IntegerEntry(keyUSDCUSDN, (tkStaked + pmtAmount))
144142 let LPstake = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [pmt])
145143 if ((LPstake == LPstake))
146144 then {
147145 let LPIssue = Reissue(usdcUsdnLPTCI, toIssue, true)
148146 let transfer = ScriptTransfer(i.caller, toIssue, usdcUsdnLPTCI)
149147 [LPIssue, transfer, updateState]
150148 }
151149 else throw("Strict value is not equal to itself.")
152150 }
153151 }
154152
155153
156154
157155 @Callable(i)
158156 func depositUsdcUsdtLP () = {
159157 let pmt = value(i.payments[0])
160158 let pmtAmount = pmt.amount
161159 if ((pmt.assetId != usdcUsdtLP))
162160 then throw("attach USDCUSDTLP tokens only")
163161 else if (isStopped)
164162 then throw("smart contract is on lock")
165163 else {
166164 let tkStaked = valueOrElse(getInteger(this, keyUSDCUSDT), 0)
167165 let totalIssued = match assetInfo(usdcUsdtLPTCI) {
168166 case asset: Asset =>
169167 asset.quantity
170168 case _ =>
171169 throw("Can't find asset")
172170 }
173171 let fromCompound = valueOrElse(getInteger(this, keyUsdcUsdtCompound), 0)
174172 let forOne = fraction(totalIssued, 100000000, tkStaked)
175173 let toIssue = fraction(pmtAmount, forOne, 100000000)
176174 let updateState = IntegerEntry(keyUSDCUSDT, (tkStaked + pmtAmount))
177175 let LPstake = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [pmt])
178176 if ((LPstake == LPstake))
179177 then {
180178 let LPIssue = Reissue(usdcUsdtLPTCI, toIssue, true)
181179 let transfer = ScriptTransfer(i.caller, toIssue, usdcUsdtLPTCI)
182180 [LPIssue, transfer, updateState]
183181 }
184182 else throw("Strict value is not equal to itself.")
185183 }
186184 }
187185
188186
189187
190188 @Callable(i)
191189 func depositPuzzleUsdnLP () = {
192190 let pmt = value(i.payments[0])
193191 let pmtAmount = pmt.amount
194192 if ((pmt.assetId != puzzleUsdnLP))
195193 then throw("attach PUZZLEUDSNLP tokens only")
196194 else if (isStopped)
197195 then throw("smart contract is on lock")
198196 else {
199197 let tkStaked = valueOrElse(getInteger(this, keyPUZZLEUSDN), 0)
200198 let totalIssued = match assetInfo(puzzleUsdnLPTCI) {
201199 case asset: Asset =>
202200 asset.quantity
203201 case _ =>
204202 throw("Can't find asset")
205203 }
206204 let fromCompound = valueOrElse(getInteger(this, keyPuzzleUsdnCompound), 0)
207205 let forOne = fraction(totalIssued, 100000000, tkStaked)
208206 let toIssue = fraction(pmtAmount, forOne, 100000000)
209207 let updateState = IntegerEntry(keyPUZZLEUSDN, (tkStaked + pmtAmount))
210208 let LPstake = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [pmt])
211209 if ((LPstake == LPstake))
212210 then {
213211 let LPIssue = Reissue(puzzleUsdnLPTCI, toIssue, true)
214212 let transfer = ScriptTransfer(i.caller, toIssue, puzzleUsdnLPTCI)
215213 [LPIssue, transfer, updateState]
216214 }
217215 else throw("Strict value is not equal to itself.")
218216 }
219217 }
220218
221219
222220
223221 @Callable(i)
224222 func compoundWxUsdnLP () = {
225223 let compound = value(i.payments[0])
226224 let ca = compound.amount
227225 let isOracle = checkAddress(i.caller.bytes)
228226 if ((compound.assetId != wxUsdnLP))
229227 then throw("attach WXUSDNLP tokens only")
230228 else if (!(isOracle))
231229 then throw("You are not authotized to call this function")
232230 else {
233231 let fromCompound = valueOrElse(getInteger(this, keywxUsdnCompound), 0)
234232 let totalStaked = valueOrElse(getInteger(this, keyWXUSDN), 0)
235233 let stakeC = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [compound])
236234 if ((stakeC == stakeC))
237235 then {
238236 let updateState = IntegerEntry(keyWXUSDN, (totalStaked + ca))
239237 let tc = IntegerEntry(keywxUsdnCompound, (fromCompound + ca))
240238 [updateState, tc]
241239 }
242240 else throw("Strict value is not equal to itself.")
243241 }
244242 }
245243
246244
247245
248246 @Callable(i)
249247 func compoundUsdtUsdnLP () = {
250248 let compound = value(i.payments[0])
251249 let ca = compound.amount
252250 let isOracle = checkAddress(i.caller.bytes)
253251 if ((compound.assetId != usdtUsdnLP))
254252 then throw("attach USDTUSDNLP tokens only")
255253 else if (!(isOracle))
256254 then throw("You are not authotized to call this function")
257255 else {
258256 let fromCompound = valueOrElse(getInteger(this, keyCompound), 0)
259257 let totalStaked = valueOrElse(getInteger(this, keyStaked), 0)
260258 let stakeC = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [compound])
261259 if ((stakeC == stakeC))
262260 then {
263261 let updateState = IntegerEntry(keyStaked, (totalStaked + ca))
264262 let tc = IntegerEntry(keyCompound, (fromCompound + ca))
265263 [updateState, tc]
266264 }
267265 else throw("Strict value is not equal to itself.")
268266 }
269267 }
270268
271269
272270
273271 @Callable(i)
274272 func compoundUsdcUsdnLP () = {
275273 let compound = value(i.payments[0])
276274 let ca = compound.amount
277275 let isOracle = checkAddress(i.caller.bytes)
278276 if ((compound.assetId != usdcUsdnLP))
279277 then throw("attach USDCUSDNLP tokens only")
280278 else if (!(isOracle))
281279 then throw("You are not authotized to call this function")
282280 else {
283281 let fromCompound = valueOrElse(getInteger(this, keyUsdcUsdnCompound), 0)
284282 let totalStaked = valueOrElse(getInteger(this, keyUSDCUSDN), 0)
285283 let stakeC = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [compound])
286284 if ((stakeC == stakeC))
287285 then {
288286 let updateState = IntegerEntry(keyUSDCUSDN, (totalStaked + ca))
289287 let tc = IntegerEntry(keyUsdcUsdnCompound, (fromCompound + ca))
290288 [updateState, tc]
291289 }
292290 else throw("Strict value is not equal to itself.")
293291 }
294292 }
295293
296294
297295
298296 @Callable(i)
299297 func compoundUsdcUsdtLP () = {
300298 let compound = value(i.payments[0])
301299 let ca = compound.amount
302300 let isOracle = checkAddress(i.caller.bytes)
303301 if ((compound.assetId != usdcUsdtLP))
304302 then throw("attach USDCUSDTLP tokens only")
305303 else if (!(isOracle))
306304 then throw("You are not authotized to call this function")
307305 else {
308306 let fromCompound = valueOrElse(getInteger(this, keyUsdcUsdtCompound), 0)
309307 let totalStaked = valueOrElse(getInteger(this, keyUSDCUSDT), 0)
310308 let stakeC = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [compound])
311309 if ((stakeC == stakeC))
312310 then {
313311 let updateState = IntegerEntry(keyUSDCUSDT, (totalStaked + ca))
314312 let tc = IntegerEntry(keyUsdcUsdtCompound, (fromCompound + ca))
315313 [updateState, tc]
316314 }
317315 else throw("Strict value is not equal to itself.")
318316 }
319317 }
320318
321319
322320
323321 @Callable(i)
324322 func compoundPuzzleUsdnLP () = {
325323 let compound = value(i.payments[0])
326324 let ca = compound.amount
327325 let isOracle = checkAddress(i.caller.bytes)
328326 if ((compound.assetId != puzzleUsdnLP))
329327 then throw("attach PUZZLEUSDNLP tokens only")
330328 else if (!(isOracle))
331329 then throw("You are not authotized to call this function")
332330 else {
333331 let fromCompound = valueOrElse(getInteger(this, keyPuzzleUsdnCompound), 0)
334332 let totalStaked = valueOrElse(getInteger(this, keyPUZZLEUSDN), 0)
335333 let stakeC = invoke(Address(base58'3PPNhHYkkEy13gRWDCaruQyhNbX2GrjYSyV'), "stake", nil, [compound])
336334 if ((stakeC == stakeC))
337335 then {
338336 let updateState = IntegerEntry(keyPUZZLEUSDN, (totalStaked + ca))
339337 let tc = IntegerEntry(keyPuzzleUsdnCompound, (fromCompound + ca))
340338 [updateState, tc]
341339 }
342340 else throw("Strict value is not equal to itself.")
343341 }
344342 }
345343
346344
347345
348346 @Callable(i)
349347 func sponsorBoost () = {
350348 let pm = value(i.payments[0])
351349 let lockPeriod = 100
352350 if ((pm.assetId != wxId))
353351 then throw("Error")
354352 else {
353+ let sponsored = valueOrElse(getInteger(this, keySponsorship), 0)
355354 let lock = invoke(Address(base58'3PJL8Hn8LACaSBWLQ3UVhctA5cTQLBFwBAP'), "increaseLock", [lockPeriod], [pm])
356355 if ((lock == lock))
357356 then {
358- let s = IntegerEntry(keySponsorship, sponsored)
357+ let s = IntegerEntry(keySponsorship, (pm.amount + sponsored))
359358 [s]
360359 }
361360 else throw("Strict value is not equal to itself.")
362361 }
363362 }
364363
365364
366365 @Verifier(tx)
367366 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
368367

github/deemru/w8io/6500d08 
54.18 ms