tx · BLH15xtFr1YPUurxjnygYCuGSZnkCiL87hoMqTRSMEhA

3Mu3rHXsZEzEFRmstTmo2ibxjvaHNd4hU6t:  -0.04000000 Waves

2022.05.25 10:09 [2066884] smart account 3Mu3rHXsZEzEFRmstTmo2ibxjvaHNd4hU6t > SELF 0.00000000 Waves

{ "type": 13, "id": "BLH15xtFr1YPUurxjnygYCuGSZnkCiL87hoMqTRSMEhA", "fee": 4000000, "feeAssetId": null, "timestamp": 1653462635633, "version": 2, "chainId": 84, "sender": "3Mu3rHXsZEzEFRmstTmo2ibxjvaHNd4hU6t", "senderPublicKey": "Cn7Ky2YAx4p6dx8e7Mcb9rTQ2Z5TD9MrRbLA8AXDsumJ", "proofs": [ "5Ca4NEoQcBTUV6LNNsvkmVx4yCKveu7U1UnE4xVfXDqE1fYsG3EDwQ6nPwELHyyNxrQb16PENz5uH3eWfAX4jDYM" ], "script": "base64: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", "height": 2066884, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EzQhUP2jKAuUHAL5bE2x3fwRWpNVb5P3FxgTETZEe5eG Next: H5FwM8KhEXCv3Qyop2QvTfnNyVhVskAFY5pEnDpNJbZq Diff:
OldNewDifferences
8080 else throw("Can't invoke this function!")
8181
8282
83-@Verifier(tx)
84-func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
85-
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let token = base58'Fm4qczu6Pepz8KUhh3Heb6LeTVfpSMX5vvNgw3x764CS'
55
66 let lpTCI = base58'DKuHxDzSRjVW5MUhnHqPZDeztYcXvEzpAYNNLDWtb39c'
77
88 let isStopped = false
99
1010 let keyStaked = "STAKED_LP"
1111
1212 let keyCompound = "COMPOUND"
1313
1414 @Callable(i)
1515 func stake () = {
1616 let pmt = value(i.payments[0])
1717 let pmtAmount = pmt.amount
1818 if ((pmt.assetId != token))
1919 then throw("attach USDTUSDNLP tokens only")
2020 else if (isStopped)
2121 then throw("smart contract is on lock")
2222 else {
2323 let updateState = IntegerEntry(keyStaked, pmtAmount)
2424 if ((updateState == updateState))
2525 then {
2626 let tkStaked = valueOrElse(getInteger(this, keyStaked), 0)
2727 let fromCompound = valueOrElse(getInteger(this, keyCompound), 0)
2828 if ((updateState == updateState))
2929 then {
3030 let totalIssued = match assetInfo(lpTCI) {
3131 case asset: Asset =>
3232 asset.quantity
3333 case _ =>
3434 throw("Can't find asset")
3535 }
3636 let forOne = fraction(totalIssued, 100000000, tkStaked)
3737 let toIssue = fraction(pmtAmount, forOne, 100000000)
3838 let LPstake = invoke(Address(base58'3Mx3zmXrMcLFCafMuPtXAzR4ZPVeZYb6qLz'), "stake", nil, [pmt])
3939 if ((LPstake == LPstake))
4040 then {
4141 let LPIssue = Reissue(lpTCI, toIssue, true)
4242 let transfer = ScriptTransfer(i.caller, toIssue, lpTCI)
4343 [LPIssue, transfer]
4444 }
4545 else throw("Strict value is not equal to itself.")
4646 }
4747 else throw("Strict value is not equal to itself.")
4848 }
4949 else throw("Strict value is not equal to itself.")
5050 }
5151 }
5252
5353
5454
5555 @Callable(i)
5656 func compound () = {
5757 let compound = value(i.payments[0])
5858 let ca = compound.amount
5959 if ((compound.assetId != token))
6060 then throw("attach USDTUSDNLP tokens only")
6161 else {
6262 let fromCompound = valueOrElse(getInteger(this, keyCompound), 0)
6363 let totalStaked = valueOrElse(getInteger(this, keyStaked), 0)
6464 let stakeC = invoke(Address(base58'3Mx3zmXrMcLFCafMuPtXAzR4ZPVeZYb6qLz'), "stake", nil, [compound])
6565 if ((stakeC == stakeC))
6666 then {
6767 let updateState = IntegerEntry(keyStaked, (totalStaked + ca))
6868 let tc = IntegerEntry(keyCompound, (fromCompound + ca))
6969 [updateState, tc]
7070 }
7171 else throw("Strict value is not equal to itself.")
7272 }
7373 }
7474
7575
7676
7777 @Callable(i)
7878 func default () = if ((i.caller.bytes == base58'3Mv7nXq2V2Dnn9oSkB5feRt6RxtqnPiAXNH'))
7979 then [IntegerEntry(keyStaked, 0)]
8080 else throw("Can't invoke this function!")
8181
8282
83-@Verifier(tx)
84-func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
85-

github/deemru/w8io/3ef1775 
52.54 ms