tx · 7mZp6MP9DgzPCzUWtLn38iAKm4uYG15Zg7auK6B9Vcwc

3N9evuqxGecMq9hBmpdJu2VkMzdR5VNVrvK:  -0.01000000 Waves

2021.08.15 13:43 [1659365] smart account 3N9evuqxGecMq9hBmpdJu2VkMzdR5VNVrvK > SELF 0.00000000 Waves

{ "type": 13, "id": "7mZp6MP9DgzPCzUWtLn38iAKm4uYG15Zg7auK6B9Vcwc", "fee": 1000000, "feeAssetId": null, "timestamp": 1629024216621, "version": 2, "chainId": 84, "sender": "3N9evuqxGecMq9hBmpdJu2VkMzdR5VNVrvK", "senderPublicKey": "AHY8zupoYc6HPJ5fh1gQiGE9bNZSeifFbcQQ89okxVug", "proofs": [ "QCpWcS525RrkSHWpDV3uQBL6oxpNvE2LQYy3UZwJmiXuns2roeBf2hX6PoB17QpVo7ZMHyYkdxYQSGch7tLLgXs" ], "script": "base64:AAIDAAAAAAAAB44IARIAEgASABIDCgEBEgASAwoBARIAEgASAwoBCBoHCgJhMRIBaRoQCgJhMhIKY3VycmVudEtleRoRCgJhMxILR292ZXJuVG9rZW4aEgoCYTQSDERldkJveEFtb3VudBoNCgJhNRIHJG1hdGNoMBoHCgJhNhIBYRoRCgJhNxILU3Rha2VkVG9rZW4aEgoCYTgSDG1pblB1c2hCbG9jaxoTCgJhORINbWluU3Rha2VCbG9jaxoUCgJiMRIORGVsYXlBZnRlclB1c2gaDgoCYjISCFdhaXRUaW1lGgwKAmIzEgZtaW5yZWYaFAoCYjQSDkZpcnN0UHVzaFRpbWVyGh0KAmI1Ehd1c2VyV2FsbGV0R292ZXJuQmFsYW5jZRoJCgJiNhIDcG10Gg4KAmI3EghVc2VyUHVzaBoaCgJiOBIUVXNlckxhc3RQdXNoT2xkVmFsdWUaEQoCYjkSC1VzZXJSZWZzTnVtGhYKAmMxEhBVc2VyUmVmc051bVZhbHVlGhYKAmMyEhBIaWdoZXN0UHVzaFZhbHVlGhcKAmMzEhFVc2VyTGFzdFB1c2hCbG9jaxoYCgJjNBISVXNlckxhc3RTdGFrZUJsb2NrGg8KAmM1EglVc2VyU3Rha2UaIAoCYzYSGkNvbnRyYWN0V2FsbGV0U3Rha2VCYWxhbmNlGhIKAmM3EgxTdGFrZUJhbGFuY2UaEQoCYzgSC1ByaXplQW1vdW50GhsKAmM5EhVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gaFgoCZDESEFByaXplSGVpZ2h0VmFsdWUaEQoCZDISC0FjdHVhbERlbGF5GhgKAmQzEhJIaWdoZXN0UHVzaEFkZHJlc3MaHAoCZDQSFlVzZXJMYXN0UHVzaEJsb2NrVmFsdWUaHQoCZDUSF1VzZXJMYXN0U3Rha2VCbG9ja1ZhbHVlGhQKAmQ2Eg5Vc2VyU3Rha2VWYWx1ZRoTCgJkNxINRGV2Qm94QmFsYW5jZRoTCgJkOBINVXNlclB1c2h2YWx1ZRoOCgJkORIITmV3RGVsYXkaHQoCZTESF0hpZ2hlc3RQdXNoQWRkcmVzc1ZhbHVlGhkKAmUyEhNQcml6ZUhlaWdodFZhbHVlTmV3GgkKAmUzEgN0eHQaJQoCZTQSH0dvdmVyblRva2VuU21hcnRDb250cmFjdEJhbGFuY2UaDQoCZTUSB1VzZXJBUFkaGAoCZTYSElVzZXJTdGFrZWRUb2tlbktleRoYCgJlNxISVXNlckdvdmVyblRva2VuS2V5Gh4KAmU4EhhVc2VyU3Rha2VUcmFuc2FjdGlvbnNLZXkaEwoCZTkSDUFkZHJlc3NIZWlnaHQaGwoCZjESFVVzZXJTdGFrZVRyYW5zYWN0aW9ucxoSCgJmMhIMTWF4RGVwb3NpdGVyGhUKAmYzEg9NYXhEZXBvc2l0QmxvY2saEAoCZjQSCk1heERlcG9zaXQaFwoCZjUSEU1heERlcG9zaXRlclZhbHVlGhUKAmY2Eg9NYXhEZXBvc2l0VmFsdWUaGgoCZjcSFE1heERlcG9zaXRCbG9ja1ZhbHVlGhMKAmY4Eg1Vc2VyUHVzaFZhbHVlGiAKAmY5EhpVc2VyTGFzdFN0YWtlQmxvY2tOZXdWYWx1ZRoeCgJnMRIYTmV3VXNlclN0YWtlVHJhbnNhY3Rpb25zGh4KAmcyEhhjdXJyZW50QW1vdW50U3Rha2VkVG9rZW4aGgoCZzMSFG5ld0Ftb3VudFN0YWtlZFRva2VuGhgKAmc0EhJTdGFrZUJhbGFuY2VBbW91bnQaHgoCZzUSGGN1cnJlbnRBbW91bnRHb3Zlcm5Ub2tlbhoMCgJnNhIGUmV3YXJkGhIKAmc3EgxVc2VyQVBZVmFsdWUaGgoCZzgSFG5ld0Ftb3VudEdvdmVyblRva2VuGgwKAmc5EgZhbW91bnQaEwoCaDESDWN1cnJlbnRBbW91bnQaDwoCaDISCW5ld0Ftb3VudBoeCgJoMxIYTGFzdEJpZ1N0YWtlclJld2FyZEJsb2NrGhUKAmg0Eg9CaWdTdGFrZXJSZXdhcmQaGAoCaDUSEkxpbWlXaXRoZHJhd1Jld2FyZBobCgJoNhIVVXNlckdvdmVyblRva2VuQW1vdW50GiMKAmg3Eh1MYXN0QmlnU3Rha2VyUmV3YXJkQmxvY2tWYWx1ZRofCgJoOBIZQmlnU3Rha2VyUmV3YXJkVG90YWxWYWx1ZRoYCgJoORISQmlnU3Rha2VyUmV3YXJkVGF4Gg8KAmkxEglEZWxheURheXMaHgoCaTISGFVzZXJXYWxsZXRTR292ZXJuQmFsYW5jZRoVCgJpMxIPQWN0dWFsRGVsYXlDb3N0GhIKAmk0EgxOZXdE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AAAATllvdSBjYW5ub3QgcHVzaCBiZWZvcmUgdGhlIHJld2FyZCBpcyB1bmxvY2tlZCwgbm8gcmV3YXJkIGhhcyBiZWVuIGRldGVjdGVkIHlldAkAAAIAAAABAgAAAENZb3VyIHB1c2ggaW4gdHJvaWthbiB0b2tlbiwgc2hvdWxkIGJlIEhpZ2hlciB0aGFuIGxhc3QgSGlnaGVzdCBQdXNoCQAAAgAAAAECAAAAWFRvIGJlIGFibGUgdG8gcGFydGljaXBhdGUgaW4gUHVzaGluZyBmb3IgdGhlIHJld2FyZCB5b3UgbmVlZCB0byBTdGFrZSBBU0lNSXMgaW4gdGhlIGRBcHAJAAACAAAAAQIAAAA1WW91IGhhdmUgdG8gd2FpdCAxMG1pbiBiZWZvcmUgeW91IGNhbiBtYWtlIGEgbmV3IFB1c2gJAAACAAAAAQkAASwAAAACAgAAADpZb3VyIFB1c2ggZG90IG5vdCBjb21wbHkgb25lIG9mIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczogAgAAAF0xLiBQb3NpdGl2ZSBWYWx1ZSBmb3IgUHVzaCBpbiBUcm9pa2FuIFRva2UKIDIuIE11c3QgU3Rha2VkIEFTSU1JIFRva2VuIGZvciBhIG1pbmltdW0gb2Ygd2VlayAJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAdkNhbiBkZXBvc2l0IG9ubHkgcG9zaXRpdmUgYW1vdW50cyBvZiBUcm9pa2FuIFRva2VuLCBvciBDaGVjayB5b3VyIFdhbGxldCBiYWxhbmNlIGluIFRyb2lrYSwgeW91IHNob3VsZCBoYXZlIG1vcmUgdGhhbiAJAAGkAAAAAQUAAAACYzICAAAACCB0byBwdXNoCQAAAgAAAAECAAAApFlvdSBkbyBub3QgaGF2ZSBlbm91Z2ggVHJvaWthbiBUb2tlbnMgaW4geW91ciBXYWxsZXQgQmFsYW5jZSwgUGxlYXNlIEhhcnZlc3QgaWYgeW91IGhhdmUgZWFybmVkIFRyb2lrYW4gd2FsbGV0IG9yIHRyYW5zZmVyIHRvIHlvdXIgd2FsbGV0IG5lY2Vzc2FyeSBUcm9pa2FuIGFtb3VudCAhAAAAAmExAQAAAAVTdGFrZQAAAAAEAAAAAmIyCQAAaAAAAAIAAAAAAAAA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", "height": 1659365, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: H4mkuz5ugKb49fEnhb3LJwDmdCMgQo19nwN4D5An5tzA Next: GEFg2q6rPaokApsYpBKdPWiqYW7L7v1X2yyrhgiHew26 Diff:
OldNewDifferences
527527 }
528528 let StakeBalanceAmount = (BigStakerRewardTotalValue - amount)
529529 let BigStakerRewardTax = ((UserGovernTokenAmount / 1000) * (1000 - ((1000 * (height - LastBigStakerRewardBlockValue)) / (LimiWithdrawReward * 1440))))
530- if ((BigStakerRewardTax > 0))
531- then throw(("Can't withdraw negative amount " + toString((BigStakerRewardTax / 100000000))))
530+ if ((0 > amount))
531+ then throw("Can't withdraw negative amount ")
532532 else if (((1000 * 100000000) > UserGovernTokenAmount))
533533 then throw(("Not enough Earned Troikan Tokens to do transaction, you need at least 1000 Troikans, you have: " + toString((UserGovernTokenAmount / 100000000))))
534534 else ScriptResult(WriteSet([DataEntry(BigStakerReward, 0), DataEntry("BigStakerRewardTotal", StakeBalanceAmount), DataEntry(UserGovernTokenKey, (UserGovernTokenAmount - BigStakerRewardTax)), DataEntry("PrizeHeight", PrizeHeightValue), DataEntry(LastBigStakerRewardBlock, height), DataEntry("HighestPushAddress", HighestPushAddressValue)]), TransferSet([ScriptTransfer(i.caller, amount, StakedToken)]))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func DevWithdraw () = {
88 let currentKey = toBase58String(i.caller.bytes)
99 let GovernToken = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
1010 if ((currentKey == "3Mu3nwxzGzeQBGxCKLyJcSDKmRiCea9FQSJ"))
1111 then {
1212 let DevBoxAmount = match getInteger(this, "DevBox") {
1313 case a: Int =>
1414 a
1515 case _ =>
1616 0
1717 }
1818 if ((0 > DevBoxAmount))
1919 then throw("Not enough balance")
2020 else ScriptResult(WriteSet([DataEntry("DevBox", 0), DataEntry("Delay", 0), DataEntry("PrizeHeight", height)]), TransferSet([ScriptTransfer(i.caller, DevBoxAmount, GovernToken)]))
2121 }
2222 else throw("You cannot withdraw as your are not the Dev.")
2323 }
2424
2525
2626
2727 @Callable(i)
2828 func PushReward () = {
2929 let StakedToken = base58'Hoej8L1ezqQY4Miex4Z4J7uJ33LCdcubV3DsubGHEqWP'
3030 let GovernToken = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
3131 let minPushBlock = 10
3232 let minStakeBlock = (7 * 1440)
3333 let DelayAfterPush = 1
3434 let WaitTime = (1 * 1)
3535 let minref = 0
3636 let FirstPushTimer = 1
3737 let userWalletGovernBalance = assetBalance(Address(i.caller.bytes), GovernToken)
3838 let pmt = extract(i.payment)
3939 let UserPush = (toBase58String(i.caller.bytes) + "_Push")
4040 let UserLastPushOldValue = match getInteger(this, UserPush) {
4141 case a: Int =>
4242 a
4343 case _ =>
4444 0
4545 }
4646 let UserRefsNum = (toBase58String(i.caller.bytes) + "_refs")
4747 let UserRefsNumValue = match getInteger(this, UserRefsNum) {
4848 case a: Int =>
4949 a
5050 case _ =>
5151 0
5252 }
5353 let HighestPushValue = match getInteger(this, "HighestPush") {
5454 case a: Int =>
5555 a
5656 case _ =>
5757 0
5858 }
5959 if ((userWalletGovernBalance > pmt.amount))
6060 then if (if (((pmt.amount + UserLastPushOldValue) > HighestPushValue))
6161 then (pmt.assetId == GovernToken)
6262 else false)
6363 then {
6464 let UserLastPushBlock = (toBase58String(i.caller.bytes) + "_UserLastPushBlock")
6565 let UserLastStakeBlock = (toBase58String(i.caller.bytes) + "_UserLastStakeBlock")
6666 let UserStake = (toBase58String(i.caller.bytes) + "_Staking")
6767 let ContractWalletStakeBalance = assetBalance(this, StakedToken)
6868 let StakeBalance = match getInteger(this, "StakeBalance") {
6969 case a: Int =>
7070 a
7171 case _ =>
7272 0
7373 }
7474 let PrizeAmount = match getInteger(this, "FundBox") {
7575 case a: Int =>
7676 a
7777 case _ =>
7878 0
7979 }
8080 let HeightTransactFundBox = match getInteger(this, "PrizeHeight") {
8181 case a: Int =>
8282 a
8383 case _ =>
8484 0
8585 }
8686 let PrizeHeightValue = if (if ((HeightTransactFundBox == 0))
8787 then (PrizeAmount == 0)
8888 else false)
8989 then 0
9090 else if (if ((HeightTransactFundBox == 0))
9191 then (PrizeAmount != 0)
9292 else false)
9393 then height
9494 else if (if ((HeightTransactFundBox != 0))
9595 then (PrizeAmount != 0)
9696 else false)
9797 then HeightTransactFundBox
9898 else 0
9999 let ActualDelay = match getInteger(this, "Delay") {
100100 case a: Int =>
101101 a
102102 case _ =>
103103 0
104104 }
105105 let HighestPushAddress = match getInteger(this, "HighestPushAddress") {
106106 case a: Int =>
107107 a
108108 case _ =>
109109 0
110110 }
111111 let UserLastPushBlockValue = match getInteger(this, UserLastPushBlock) {
112112 case a: Int =>
113113 a
114114 case _ =>
115115 0
116116 }
117117 let UserLastStakeBlockValue = match getInteger(this, UserLastStakeBlock) {
118118 case a: Int =>
119119 a
120120 case _ =>
121121 0
122122 }
123123 let UserStakeValue = match getInteger(this, UserStake) {
124124 case a: Int =>
125125 a
126126 case _ =>
127127 0
128128 }
129129 let DevBoxBalance = match getInteger(this, "DevBox") {
130130 case a: Int =>
131131 a
132132 case _ =>
133133 0
134134 }
135135 let DevBoxAmount = (DevBoxBalance + ((pmt.amount * 5) / 1000))
136136 let UserPushvalue = (pmt.amount + UserLastPushOldValue)
137137 let NewDelay = if (if ((height > ((PrizeHeightValue + ActualDelay) + WaitTime)))
138138 then (HighestPushValue > 0)
139139 else false)
140140 then FirstPushTimer
141141 else (ActualDelay + DelayAfterPush)
142142 let HighestPushAddressValue = if (if ((height > ((PrizeHeightValue + NewDelay) + WaitTime)))
143143 then (HighestPushValue > 0)
144144 else false)
145145 then ""
146146 else HighestPushAddress
147147 let PrizeHeightValueNew = if (if ((height > ((PrizeHeightValue + NewDelay) + WaitTime)))
148148 then (HighestPushValue > 0)
149149 else false)
150150 then height
151151 else PrizeHeightValue
152152 if (if ((UserPushvalue > 0))
153153 then ((height - UserLastStakeBlockValue) > minStakeBlock)
154154 else false)
155155 then if (((height - UserLastPushBlockValue) > minPushBlock))
156156 then if ((UserStakeValue > 0))
157157 then if ((UserPushvalue > HighestPushValue))
158158 then if ((PrizeAmount > 0))
159159 then if (if (if (if (((PrizeHeightValueNew + NewDelay) >= height))
160160 then true
161161 else (height >= ((PrizeHeightValueNew + NewDelay) + WaitTime)))
162162 then (HighestPushValue > 0)
163163 else false)
164164 then true
165165 else (HighestPushValue == 0))
166166 then if ((UserRefsNumValue >= minref))
167167 then WriteSet([DataEntry(UserPush, UserPushvalue), DataEntry("HighestPushAddress", toBase58String(i.caller.bytes)), DataEntry("HighestPush", UserPushvalue), DataEntry(UserLastPushBlock, height), DataEntry("PrizeHeight", PrizeHeightValueNew), DataEntry("Delay", NewDelay), DataEntry("DevBox", DevBoxAmount)])
168168 else throw((("You have to have " + toString(minref)) + " referrals already staking for a minimum of 10 days, to push"))
169169 else {
170170 let txt = if ((HighestPushValue > 0))
171171 then "You cannot Push after rewarding Prize and before One day has passed after award"
172172 else "Unexpected error"
173173 throw(txt)
174174 }
175175 else throw("You cannot push before the reward is unlocked, no reward has been detected yet")
176176 else throw("Your push in troikan token, should be Higher than last Highest Push")
177177 else throw("To be able to participate in Pushing for the reward you need to Stake ASIMIs in the dApp")
178178 else throw("You have to wait 10min before you can make a new Push")
179179 else throw(("Your Push dot not comply one of the following conditions: " + "1. Positive Value for Push in Troikan Toke
180180 2. Must Staked ASIMI Token for a minimum of week "))
181181 }
182182 else throw((("Can deposit only positive amounts of Troikan Token, or Check your Wallet balance in Troika, you should have more than " + toString(HighestPushValue)) + " to push"))
183183 else throw("You do not have enough Troikan Tokens in your Wallet Balance, Please Harvest if you have earned Troikan wallet or transfer to your wallet necessary Troikan amount !")
184184 }
185185
186186
187187
188188 @Callable(i)
189189 func Stake () = {
190190 let WaitTime = (1 * 1)
191191 let StakedToken = base58'Hoej8L1ezqQY4Miex4Z4J7uJ33LCdcubV3DsubGHEqWP'
192192 let GovernToken = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
193193 let pmt = extract(i.payment)
194194 if (if ((pmt.amount > 0))
195195 then (pmt.assetId == StakedToken)
196196 else false)
197197 then {
198198 let GovernTokenSmartContractBalance = assetBalance(this, GovernToken)
199199 let UserAPY = (toBase58String(i.caller.bytes) + "_APY")
200200 let UserPush = (toBase58String(i.caller.bytes) + "_Push")
201201 let UserStakedTokenKey = (toBase58String(i.caller.bytes) + "_Staking")
202202 let UserGovernTokenKey = (toBase58String(i.caller.bytes) + "_Earnings")
203203 let UserLastStakeBlock = (toBase58String(i.caller.bytes) + "_UserLastStakeBlock")
204204 let UserStakeTransactionsKey = (toBase58String(i.caller.bytes) + "_StakedTransactions")
205205 let AddressHeight = (toBase58String(i.caller.bytes) + "_PrizeHeight")
206206 let UserStakeTransactions = match getInteger(this, UserStakeTransactionsKey) {
207207 case a: Int =>
208208 a
209209 case _ =>
210210 0
211211 }
212212 let MaxDepositer = getStringValue(this, "MaxDepositer")
213213 let MaxDepositBlock = match getInteger(this, "MaxDepositBlock") {
214214 case a: Int =>
215215 a
216216 case _ =>
217217 0
218218 }
219219 let MaxDeposit = match getInteger(this, "MaxDeposit") {
220220 case a: Int =>
221221 a
222222 case _ =>
223223 0
224224 }
225225 let MaxDepositerValue = if ((pmt.amount > MaxDeposit))
226226 then toBase58String(i.caller.bytes)
227227 else MaxDepositer
228228 let MaxDepositValue = if ((pmt.amount > MaxDeposit))
229229 then pmt.amount
230230 else MaxDeposit
231231 let MaxDepositBlockValue = if ((pmt.amount > MaxDeposit))
232232 then height
233233 else MaxDepositBlock
234234 let UserPushValue = match getInteger(this, UserPush) {
235235 case a: Int =>
236236 a
237237 case _ =>
238238 0
239239 }
240240 let UserLastStakeBlockValue = match getInteger(this, UserLastStakeBlock) {
241241 case a: Int =>
242242 a
243243 case _ =>
244244 0
245245 }
246246 let UserLastStakeBlockNewValue = if ((UserLastStakeBlockValue == 0))
247247 then height
248248 else UserLastStakeBlockValue
249249 let NewUserStakeTransactions = (UserStakeTransactions + 1)
250250 let currentAmountStakedToken = match getInteger(this, UserStakedTokenKey) {
251251 case a: Int =>
252252 a
253253 case _ =>
254254 0
255255 }
256256 let newAmountStakedToken = (currentAmountStakedToken + pmt.amount)
257257 let ContractWalletStakeBalance = assetBalance(this, StakedToken)
258258 let StakeBalance = match getInteger(this, "StakeBalance") {
259259 case a: Int =>
260260 a
261261 case _ =>
262262 0
263263 }
264264 let StakeBalanceAmount = (StakeBalance + pmt.amount)
265265 let PrizeAmount = match getInteger(this, "FundBox") {
266266 case a: Int =>
267267 a
268268 case _ =>
269269 0
270270 }
271271 let currentAmountGovernToken = match getInteger(this, UserGovernTokenKey) {
272272 case a: Int =>
273273 a
274274 case _ =>
275275 0
276276 }
277277 let HeightTransactFundBox = match getInteger(this, "PrizeHeight") {
278278 case a: Int =>
279279 a
280280 case _ =>
281281 0
282282 }
283283 let PrizeHeightValue = if (if ((HeightTransactFundBox == 0))
284284 then (PrizeAmount == 0)
285285 else false)
286286 then 0
287287 else if (if ((HeightTransactFundBox == 0))
288288 then (PrizeAmount != 0)
289289 else false)
290290 then height
291291 else if (if ((HeightTransactFundBox != 0))
292292 then (PrizeAmount != 0)
293293 else false)
294294 then HeightTransactFundBox
295295 else 0
296296 let ActualDelay = match getInteger(this, "Delay") {
297297 case a: Int =>
298298 a
299299 case _ =>
300300 0
301301 }
302302 let HighestPushValue = match getInteger(this, "HighestPush") {
303303 case a: Int =>
304304 a
305305 case _ =>
306306 0
307307 }
308308 let HighestPushAddress = match getInteger(this, "HighestPushAddress") {
309309 case a: Int =>
310310 a
311311 case _ =>
312312 0
313313 }
314314 let HighestPushAddressValue = if (if ((height > ((PrizeHeightValue + ActualDelay) + WaitTime)))
315315 then (HighestPushValue > 0)
316316 else false)
317317 then ""
318318 else HighestPushAddress
319319 let PrizeHeightValueNew = if (if ((height > ((PrizeHeightValue + ActualDelay) + WaitTime)))
320320 then (HighestPushValue > 0)
321321 else false)
322322 then height
323323 else PrizeHeightValue
324324 if ((100000000 > GovernTokenSmartContractBalance))
325325 then throw("No enough GovernToken In Contract, Please deposit GovernTokens")
326326 else {
327327 let Reward = if ((StakeBalance == 0))
328328 then 10000
329329 else if ((NewUserStakeTransactions > 10))
330330 then ((10000 * NewUserStakeTransactions) * (1 + (newAmountStakedToken / StakeBalance)))
331331 else (10000 * (1 + (newAmountStakedToken / StakeBalance)))
332332 let UserAPYValue = if ((currentAmountGovernToken > 0))
333333 then ((100 * Reward) / currentAmountGovernToken)
334334 else 0
335335 let newAmountGovernToken = (currentAmountGovernToken + Reward)
336336 ScriptResult(WriteSet([DataEntry(UserGovernTokenKey, newAmountGovernToken), DataEntry(UserStakedTokenKey, newAmountStakedToken), DataEntry(UserStakeTransactionsKey, NewUserStakeTransactions), DataEntry("StakeBalance", StakeBalanceAmount), DataEntry("PrizeHeight", PrizeHeightValueNew), DataEntry(UserAPY, UserAPYValue), DataEntry(UserLastStakeBlock, UserLastStakeBlockNewValue), DataEntry(UserPush, UserPushValue), DataEntry("MaxDepositer", MaxDepositerValue), DataEntry("MaxDeposit", MaxDepositValue), DataEntry("MaxDepositBlock", MaxDepositBlockValue), DataEntry("HighestPushAddress", HighestPushAddressValue)]), TransferSet([ScriptTransfer(i.caller, Reward, GovernToken)]))
337337 }
338338 }
339339 else throw("Can deposit only StakeToken")
340340 }
341341
342342
343343
344344 @Callable(i)
345345 func WithdrawStakedFunds (amount) = {
346346 let WaitTime = (1 * 1)
347347 let StakedToken = base58'Hoej8L1ezqQY4Miex4Z4J7uJ33LCdcubV3DsubGHEqWP'
348348 let GovernToken = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
349349 let UserLastStakeBlock = (toBase58String(i.caller.bytes) + "_UserLastStakeBlock")
350350 let UserStakedTokenKey = (toBase58String(i.caller.bytes) + "_Staking")
351351 let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
352352 let ContractWalletStakeBalance = assetBalance(this, StakedToken)
353353 let UserLastStakeBlockValue = match getInteger(this, UserLastStakeBlock) {
354354 case a: Int =>
355355 a
356356 case _ =>
357357 0
358358 }
359359 let StakeBalance = match getInteger(this, "StakeBalance") {
360360 case a: Int =>
361361 a
362362 case _ =>
363363 0
364364 }
365365 let PrizeAmount = match getInteger(this, "FundBox") {
366366 case a: Int =>
367367 a
368368 case _ =>
369369 0
370370 }
371371 let HeightTransactFundBox = match getInteger(this, "PrizeHeight") {
372372 case a: Int =>
373373 a
374374 case _ =>
375375 0
376376 }
377377 let ActualDelay = match getInteger(this, "Delay") {
378378 case a: Int =>
379379 a
380380 case _ =>
381381 0
382382 }
383383 let HighestPushValue = match getInteger(this, "HighestPush") {
384384 case a: Int =>
385385 a
386386 case _ =>
387387 0
388388 }
389389 let PrizeHeightValue = if (if ((HeightTransactFundBox == 0))
390390 then (PrizeAmount == 0)
391391 else false)
392392 then 0
393393 else if (if ((HeightTransactFundBox == 0))
394394 then (PrizeAmount != 0)
395395 else false)
396396 then height
397397 else if (if ((HeightTransactFundBox != 0))
398398 then (PrizeAmount != 0)
399399 else false)
400400 then HeightTransactFundBox
401401 else 0
402402 let HighestPushAddress = match getInteger(this, "HighestPushAddress") {
403403 case a: Int =>
404404 a
405405 case _ =>
406406 0
407407 }
408408 let HighestPushAddressValue = if (if ((height > ((PrizeHeightValue + ActualDelay) + WaitTime)))
409409 then (HighestPushValue > 0)
410410 else false)
411411 then ""
412412 else HighestPushAddress
413413 let PrizeHeightValueNew = if (if ((height > ((PrizeHeightValue + ActualDelay) + WaitTime)))
414414 then (HighestPushValue > 0)
415415 else false)
416416 then height
417417 else PrizeHeightValue
418418 let currentKey = toBase58String(i.caller.bytes)
419419 let currentAmount = match getInteger(this, UserStakedTokenKey) {
420420 case a: Int =>
421421 a
422422 case _ =>
423423 0
424424 }
425425 let newAmount = (currentAmount - amount)
426426 let StakeBalanceAmount = (StakeBalance - amount)
427427 let UserLastStakeBlockNewValue = if ((StakeBalanceAmount == 0))
428428 then 0
429429 else UserLastStakeBlockValue
430430 if ((0 > amount))
431431 then throw("Can't withdraw negative amount")
432432 else if ((0 > newAmount))
433433 then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((currentAmount / 100000000))))
434434 else if ((100000000 > assetBalance(this, GovernToken)))
435435 then throw(("Not enough Troika In Contract: " + toString((assetBalance(this, GovernToken) / 100000000))))
436436 else ScriptResult(WriteSet([DataEntry(UserGovernTokenKey, 100000000), DataEntry(UserStakedTokenKey, newAmount), DataEntry("StakeBalance", StakeBalanceAmount), DataEntry("PrizeHeight", PrizeHeightValueNew), DataEntry(UserLastStakeBlock, UserLastStakeBlockNewValue), DataEntry("HighestPushAddress", HighestPushAddressValue)]), TransferSet([ScriptTransfer(i.caller, 100000000, GovernToken), ScriptTransfer(i.caller, amount, StakedToken)]))
437437 }
438438
439439
440440
441441 @Callable(i)
442442 func WithdrawBigStakeReward () = {
443443 let WaitTime = (1 * 1)
444444 let StakedToken = base58'Hoej8L1ezqQY4Miex4Z4J7uJ33LCdcubV3DsubGHEqWP'
445445 let GovernToken = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
446446 let LastBigStakerRewardBlock = (toBase58String(i.caller.bytes) + "LastBigStakerRewardBlock")
447447 let BigStakerReward = (toBase58String(i.caller.bytes) + "_BigStaker")
448448 let UserGovernTokenKey = (toBase58String(i.caller.bytes) + "_Earnings")
449449 let LimiWithdrawReward = 1
450450 let UserGovernTokenAmount = match getInteger(this, UserGovernTokenKey) {
451451 case a: Int =>
452452 a
453453 case _ =>
454454 0
455455 }
456456 let LastBigStakerRewardBlockValue = match getInteger(this, LastBigStakerRewardBlock) {
457457 case a: Int =>
458458 a
459459 case _ =>
460460 0
461461 }
462462 let BigStakerRewardTotalValue = match getInteger(this, "BigStakerRewardTotal") {
463463 case a: Int =>
464464 a
465465 case _ =>
466466 0
467467 }
468468 let PrizeAmount = match getInteger(this, "FundBox") {
469469 case a: Int =>
470470 a
471471 case _ =>
472472 0
473473 }
474474 let HeightTransactFundBox = match getInteger(this, "PrizeHeight") {
475475 case a: Int =>
476476 a
477477 case _ =>
478478 0
479479 }
480480 let PrizeHeightValue = if (if ((HeightTransactFundBox == 0))
481481 then (PrizeAmount == 0)
482482 else false)
483483 then 0
484484 else if (if ((HeightTransactFundBox == 0))
485485 then (PrizeAmount != 0)
486486 else false)
487487 then height
488488 else if (if ((HeightTransactFundBox != 0))
489489 then (PrizeAmount != 0)
490490 else false)
491491 then HeightTransactFundBox
492492 else 0
493493 let ActualDelay = match getInteger(this, "Delay") {
494494 case a: Int =>
495495 a
496496 case _ =>
497497 0
498498 }
499499 let HighestPushValue = match getInteger(this, "HighestPush") {
500500 case a: Int =>
501501 a
502502 case _ =>
503503 0
504504 }
505505 let HighestPushAddress = match getInteger(this, "HighestPushAddress") {
506506 case a: Int =>
507507 a
508508 case _ =>
509509 0
510510 }
511511 let HighestPushAddressValue = if (if ((height > ((PrizeHeightValue + ActualDelay) + WaitTime)))
512512 then (HighestPushValue > 0)
513513 else false)
514514 then ""
515515 else HighestPushAddress
516516 let PrizeHeightValueNew = if (if ((height > ((PrizeHeightValue + ActualDelay) + WaitTime)))
517517 then (HighestPushValue > 0)
518518 else false)
519519 then height
520520 else PrizeHeightValue
521521 let currentKey = toBase58String(i.caller.bytes)
522522 let amount = match getInteger(this, BigStakerReward) {
523523 case a: Int =>
524524 a
525525 case _ =>
526526 0
527527 }
528528 let StakeBalanceAmount = (BigStakerRewardTotalValue - amount)
529529 let BigStakerRewardTax = ((UserGovernTokenAmount / 1000) * (1000 - ((1000 * (height - LastBigStakerRewardBlockValue)) / (LimiWithdrawReward * 1440))))
530- if ((BigStakerRewardTax > 0))
531- then throw(("Can't withdraw negative amount " + toString((BigStakerRewardTax / 100000000))))
530+ if ((0 > amount))
531+ then throw("Can't withdraw negative amount ")
532532 else if (((1000 * 100000000) > UserGovernTokenAmount))
533533 then throw(("Not enough Earned Troikan Tokens to do transaction, you need at least 1000 Troikans, you have: " + toString((UserGovernTokenAmount / 100000000))))
534534 else ScriptResult(WriteSet([DataEntry(BigStakerReward, 0), DataEntry("BigStakerRewardTotal", StakeBalanceAmount), DataEntry(UserGovernTokenKey, (UserGovernTokenAmount - BigStakerRewardTax)), DataEntry("PrizeHeight", PrizeHeightValue), DataEntry(LastBigStakerRewardBlock, height), DataEntry("HighestPushAddress", HighestPushAddressValue)]), TransferSet([ScriptTransfer(i.caller, amount, StakedToken)]))
535535 }
536536
537537
538538
539539 @Callable(i)
540540 func HarvestGovernToiken (amount) = {
541541 let StakedToken = base58'Hoej8L1ezqQY4Miex4Z4J7uJ33LCdcubV3DsubGHEqWP'
542542 let GovernToken = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
543543 let ContractWalletStakeBalance = assetBalance(this, StakedToken)
544544 let UserGovernTokenKey = (toBase58String(i.caller.bytes) + "_Earnings")
545545 let StakeBalance = match getInteger(this, "StakeBalance") {
546546 case a: Int =>
547547 a
548548 case _ =>
549549 0
550550 }
551551 let PrizeAmount = match getInteger(this, "FundBox") {
552552 case a: Int =>
553553 a
554554 case _ =>
555555 0
556556 }
557557 let HeightTransactFundBox = match getInteger(this, "PrizeHeight") {
558558 case a: Int =>
559559 a
560560 case _ =>
561561 0
562562 }
563563 let PrizeHeightValue = if (if ((HeightTransactFundBox == 0))
564564 then (PrizeAmount == 0)
565565 else false)
566566 then 0
567567 else if (if ((HeightTransactFundBox == 0))
568568 then (PrizeAmount != 0)
569569 else false)
570570 then height
571571 else if (if ((HeightTransactFundBox != 0))
572572 then (PrizeAmount != 0)
573573 else false)
574574 then HeightTransactFundBox
575575 else 0
576576 let currentKey = toBase58String(i.caller.bytes)
577577 let currentAmount = match getInteger(this, UserGovernTokenKey) {
578578 case a: Int =>
579579 a
580580 case _ =>
581581 0
582582 }
583583 let newAmount = (currentAmount - amount)
584584 if ((0 > amount))
585585 then throw("Can't withdraw negative amount")
586586 else if ((0 > newAmount))
587587 then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((currentAmount / 100000000))))
588588 else ScriptResult(WriteSet([DataEntry(UserGovernTokenKey, newAmount), DataEntry("PrizeHeight", PrizeHeightValue)]), TransferSet([ScriptTransfer(i.caller, amount, GovernToken)]))
589589 }
590590
591591
592592
593593 @Callable(i)
594594 func delayprize () = {
595595 let StakedToken = base58'Hoej8L1ezqQY4Miex4Z4J7uJ33LCdcubV3DsubGHEqWP'
596596 let GovernToken = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
597597 let DelayDays = (1 * 1)
598598 let WaitTime = (1 * 1)
599599 let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
600600 let UserWalletSGovernBalance = assetBalance(Address(i.caller.bytes), GovernToken)
601601 let ContractWalletStakeBalance = assetBalance(this, StakedToken)
602602 let StakeBalance = match getInteger(this, "StakeBalance") {
603603 case a: Int =>
604604 a
605605 case _ =>
606606 0
607607 }
608608 let PrizeAmount = match getInteger(this, "FundBox") {
609609 case a: Int =>
610610 a
611611 case _ =>
612612 0
613613 }
614614 let HeightTransactFundBox = match getInteger(this, "PrizeHeight") {
615615 case a: Int =>
616616 a
617617 case _ =>
618618 0
619619 }
620620 let ActualDelay = match getInteger(this, "Delay") {
621621 case a: Int =>
622622 a
623623 case _ =>
624624 0
625625 }
626626 let PrizeHeightValue = if (if ((HeightTransactFundBox == 0))
627627 then (PrizeAmount == 0)
628628 else false)
629629 then 0
630630 else if (if ((HeightTransactFundBox == 0))
631631 then (PrizeAmount != 0)
632632 else false)
633633 then height
634634 else if (if ((HeightTransactFundBox != 0))
635635 then (PrizeAmount != 0)
636636 else false)
637637 then HeightTransactFundBox
638638 else 0
639639 let HighestPushValue = match getInteger(this, "HighestPush") {
640640 case a: Int =>
641641 a
642642 case _ =>
643643 0
644644 }
645645 let HighestPushAddress = match getInteger(this, "HighestPushAddress") {
646646 case a: Int =>
647647 a
648648 case _ =>
649649 0
650650 }
651651 let HighestPushAddressValue = if (if ((height > ((PrizeHeightValue + ActualDelay) + WaitTime)))
652652 then (HighestPushValue > 0)
653653 else false)
654654 then ""
655655 else HighestPushAddress
656656 let PrizeHeightValueNew = if (if ((height > ((PrizeHeightValue + ActualDelay) + WaitTime)))
657657 then (HighestPushValue > 0)
658658 else false)
659659 then height
660660 else PrizeHeightValue
661661 let ActualDelayCost = match getInteger(this, "DelayCost") {
662662 case a: Int =>
663663 a
664664 case _ =>
665665 10
666666 }
667667 let pmt = extract(i.payment)
668668 let DevBoxBalance = match getInteger(this, "DevBox") {
669669 case a: Int =>
670670 a
671671 case _ =>
672672 0
673673 }
674674 if (if (isDefined(pmt.assetId))
675675 then (extract(pmt.assetId) == GovernToken)
676676 else false)
677677 then if ((PrizeAmount > 0))
678678 then {
679679 let UserGovernTokenAmount = pmt.amount
680680 let DevBoxAmount = (DevBoxBalance + ((pmt.amount * 5) / 1000))
681681 let NewDelayCost = if ((ActualDelayCost == 0))
682682 then 1000000000
683683 else (2 * ActualDelayCost)
684684 if ((UserGovernTokenAmount >= NewDelayCost))
685685 then {
686686 let NewDelay = (ActualDelay + DelayDays)
687687 WriteSet([DataEntry("Delay", NewDelay), DataEntry("DelayCost", NewDelayCost), DataEntry("PrizeHeight", PrizeHeightValueNew), DataEntry("DevBox", DevBoxAmount), DataEntry("HighestPushAddress", HighestPushAddressValue)])
688688 }
689689 else throw((("To delay the release of the reward ONE DAY later than expected, you need " + toString(NewDelayCost)) + "TROIKAs"))
690690 }
691691 else throw("You cannot delay the reward before reward is received! Please wait until a reward is available")
692692 else throw("Can Use only Troika Token to Delay Reward")
693693 }
694694
695695
696696
697697 @Callable(i)
698698 func ClaimPrize () = {
699699 let StakedToken = base58'Hoej8L1ezqQY4Miex4Z4J7uJ33LCdcubV3DsubGHEqWP'
700700 let GovernToken = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
701701 let UserStakedTokenKey = (toBase58String(i.caller.bytes) + "_Staking")
702702 let UserPush = (toBase58String(i.caller.bytes) + "_Push")
703703 let UserLastStakeBlock = (toBase58String(i.caller.bytes) + "_UserLastStakeBlock")
704704 let minStakeBlock = 7
705705 let minref = 0
706706 let ContractGovTokenBalance = assetBalance(this, GovernToken)
707707 let ContractWalletStakeBalance = assetBalance(this, StakedToken)
708708 let StakeBalance = match getInteger(this, "StakeBalance") {
709709 case a: Int =>
710710 a
711711 case _ =>
712712 0
713713 }
714714 let PrizeAmount = match getInteger(this, "FundBox") {
715715 case a: Int =>
716716 a
717717 case _ =>
718718 0
719719 }
720720 let UserPushValue = match getInteger(this, UserPush) {
721721 case a: Int =>
722722 a
723723 case _ =>
724724 0
725725 }
726726 let UserLastStakeBlockValue = match getInteger(this, UserLastStakeBlock) {
727727 case a: Int =>
728728 a
729729 case _ =>
730730 0
731731 }
732732 let UserStakedTokenAmount = match getInteger(this, UserStakedTokenKey) {
733733 case a: Int =>
734734 a
735735 case _ =>
736736 0
737737 }
738738 let ActualDelay = match getInteger(this, "Delay") {
739739 case a: Int =>
740740 a
741741 case _ =>
742742 0
743743 }
744744 let PrizeWinner = getStringValue(this, "HighestPushAddress")
745745 let PrizeHeight = match getInteger(this, "PrizeHeight") {
746746 case a: Int =>
747747 a
748748 case _ =>
749749 0
750750 }
751751 let HighestPushValue = match getInteger(this, "HighestPush") {
752752 case a: Int =>
753753 a
754754 case _ =>
755755 0
756756 }
757757 let UserRefsNum = (toBase58String(i.caller.bytes) + "_refs")
758758 let UserRefsNumValue = match getInteger(this, UserRefsNum) {
759759 case a: Int =>
760760 a
761761 case _ =>
762762 0
763763 }
764764 if (if ((PrizeAmount == 0))
765765 then true
766766 else (10000000000 > ContractGovTokenBalance))
767767 then throw("No prize to Claim or Not enough Govern Token en Contract (Min 100 Troika)")
768768 else if ((toBase58String(i.caller.bytes) != PrizeWinner))
769769 then throw("You are not the winner hence cannot claim the reward ")
770770 else if (if ((100000000 > UserStakedTokenAmount))
771771 then (minStakeBlock > UserLastStakeBlockValue)
772772 else false)
773773 then throw("You have to Stake ASIMI Token to claim reward ")
774774 else if (if ((height > (PrizeHeight + ActualDelay)))
775775 then (UserPushValue >= HighestPushValue)
776776 else false)
777777 then if ((UserRefsNumValue >= minref))
778778 then ScriptResult(WriteSet([DataEntry(PrizeWinner, PrizeAmount), DataEntry("FundBox", 0), DataEntry("HighestPush", 0), DataEntry(UserPush, 0), DataEntry("HighestPushAddress", ""), DataEntry("PrizeHeight", 0), DataEntry("Delay", 0), DataEntry("DelayCost", 0), DataEntry("LastWinner", PrizeWinner), DataEntry("LastPrize", PrizeAmount)]), TransferSet([ScriptTransfer(i.caller, PrizeAmount, StakedToken), ScriptTransfer(i.caller, 1000000000, GovernToken)]))
779779 else throw("You have to have 10 referrals already staking for a minimum of 10 days to Claim the prize")
780780 else throw("You have to be the user with the highest Push and wait till countown is finished, to claim Reward")
781781 }
782782
783783
784784
785785 @Callable(i)
786786 func Addmentor (Mentor) = {
787787 let StakedToken = base58'Hoej8L1ezqQY4Miex4Z4J7uJ33LCdcubV3DsubGHEqWP'
788788 let GovernToken = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
789789 let UserMentorAddress = (toBase58String(i.caller.bytes) + "_Mentor")
790790 if ((Mentor != ""))
791791 then WriteSet([DataEntry(UserMentorAddress, Mentor)])
792792 else throw("Mentor's Address cannot be empty")
793793 }
794794
795795

github/deemru/w8io/3ef1775 
93.43 ms