tx · AqxJ4u6KLXSx265bKFU6AJBpH8Ab8ZiEFZpxQeRL86UL

3Mt4pmCGGRuWGuNy3pyyRij45rySapd44Mw:  -0.01000000 Waves

2022.05.05 19:29 [2038636] smart account 3Mt4pmCGGRuWGuNy3pyyRij45rySapd44Mw > SELF 0.00000000 Waves

{ "type": 13, "id": "AqxJ4u6KLXSx265bKFU6AJBpH8Ab8ZiEFZpxQeRL86UL", "fee": 1000000, "feeAssetId": null, "timestamp": 1651768176591, "version": 2, "chainId": 84, "sender": "3Mt4pmCGGRuWGuNy3pyyRij45rySapd44Mw", "senderPublicKey": "88pVWRX5DjU6wHFa5a8qeFQ3fuykBy1BXq7Z8pjdxhsc", "proofs": [ "5BeCKbBqLU9YAmPXTqbdS4hbQybxWsAbh7476hPk2T2huj5wSXkHKhHVjViw7zqmVdivxwJm4MzK9qjx7vsmhrEq" ], "script": "base64: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", "height": 2038636, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CQUjTXGdGLE3Q5CoX5saT2BnohQ8pDPLjEr6dPS3C1JP Next: 2ZACk6Q92aY5sDKH3xZk6VAey3o1ch3FFb2kFU1DtSgt Diff:
OldNewDifferences
55
66 @Callable(i)
77 func Stake () = {
8- let StakedToken = base58'EbLVSrAi6vS3AkLwBinzZCvAXP2yYiFJEzj1MBVHcwZ5'
8+ let StakedToken = base58'51bthK9ab3y4G4gj88qeoQ4XuYM2ex2hape7yc6QzAyS'
99 let pmt = extract(i.payment)
1010 if (if ((pmt.amount > 0))
1111 then (pmt.assetId == StakedToken)
3131
3232 @Callable(i)
3333 func WithdrawStakedFunds (amount) = {
34- let StakedToken = base58'EbLVSrAi6vS3AkLwBinzZCvAXP2yYiFJEzj1MBVHcwZ5'
35- let GovernToken = base58'DHZVHe6JzD61zTwH4ZnHnmo3w7oKGABXwgBt4S8KkzUP'
34+ let StakedToken = base58'51bthK9ab3y4G4gj88qeoQ4XuYM2ex2hape7yc6QzAyS'
3635 let UserLastStakeBlock = (toBase58String(i.caller.bytes) + "_UserLastStakeBlock")
3736 let UserStakedTokenKey = (toBase58String(i.caller.bytes) + "_Staking")
3837 let ActualDelay = (1440 * 7)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func Stake () = {
8- let StakedToken = base58'EbLVSrAi6vS3AkLwBinzZCvAXP2yYiFJEzj1MBVHcwZ5'
8+ let StakedToken = base58'51bthK9ab3y4G4gj88qeoQ4XuYM2ex2hape7yc6QzAyS'
99 let pmt = extract(i.payment)
1010 if (if ((pmt.amount > 0))
1111 then (pmt.assetId == StakedToken)
1212 else false)
1313 then {
1414 let UserStakedTokenKey = (toBase58String(i.caller.bytes) + "_Stake")
1515 let UserGovernTokenKey = (toBase58String(i.caller.bytes) + "_Earnings")
1616 let UserLastStakeBlock = (toBase58String(i.caller.bytes) + "_UserLastStakeBlock")
1717 let currentAmountStakedToken = match getInteger(this, UserStakedTokenKey) {
1818 case a: Int =>
1919 a
2020 case _ =>
2121 0
2222 }
2323 let newAmountStakedToken = (currentAmountStakedToken + pmt.amount)
2424 let ContractWalletStakeBalance = assetBalance(this, StakedToken)
2525 WriteSet([DataEntry(UserStakedTokenKey, newAmountStakedToken), DataEntry(UserLastStakeBlock, height)])
2626 }
2727 else throw("Can deposit only StakeToken")
2828 }
2929
3030
3131
3232 @Callable(i)
3333 func WithdrawStakedFunds (amount) = {
34- let StakedToken = base58'EbLVSrAi6vS3AkLwBinzZCvAXP2yYiFJEzj1MBVHcwZ5'
35- let GovernToken = base58'DHZVHe6JzD61zTwH4ZnHnmo3w7oKGABXwgBt4S8KkzUP'
34+ let StakedToken = base58'51bthK9ab3y4G4gj88qeoQ4XuYM2ex2hape7yc6QzAyS'
3635 let UserLastStakeBlock = (toBase58String(i.caller.bytes) + "_UserLastStakeBlock")
3736 let UserStakedTokenKey = (toBase58String(i.caller.bytes) + "_Staking")
3837 let ActualDelay = (1440 * 7)
3938 let UserLastStakeBlockValue = match getInteger(this, UserLastStakeBlock) {
4039 case a: Int =>
4140 a
4241 case _ =>
4342 0
4443 }
4544 let currentKey = toBase58String(i.caller.bytes)
4645 let currentAmount = match getInteger(this, UserStakedTokenKey) {
4746 case a: Int =>
4847 a
4948 case _ =>
5049 0
5150 }
5251 let newAmount = (currentAmount - amount)
5352 if ((0 > amount))
5453 then throw("Can't withdraw negative amount")
5554 else if ((0 > newAmount))
5655 then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((currentAmount / 100000000))))
5756 else if (((UserLastStakeBlockValue + ActualDelay) > height))
5857 then ScriptResult(WriteSet([DataEntry(UserStakedTokenKey, newAmount), DataEntry(UserLastStakeBlock, 0)]), TransferSet([ScriptTransfer(i.caller, amount, StakedToken)]))
5958 else throw(("Cannot unstake before the minimum period: " + toString(ActualDelay)))
6059 }
6160
6261

github/deemru/w8io/c3f4982 
22.24 ms