tx · Apok88VcX7XcKyYvs9daCBPLVbJD5vNiVt2jp9UgH2xb

3Mu2wovhHBdYWybGjERmbj75ebjG1NPXpwd:  -0.01000000 Waves

2022.11.05 14:01 [2303709] smart account 3Mu2wovhHBdYWybGjERmbj75ebjG1NPXpwd > SELF 0.00000000 Waves

{ "type": 13, "id": "Apok88VcX7XcKyYvs9daCBPLVbJD5vNiVt2jp9UgH2xb", "fee": 1000000, "feeAssetId": null, "timestamp": 1667645418801, "version": 2, "chainId": 84, "sender": "3Mu2wovhHBdYWybGjERmbj75ebjG1NPXpwd", "senderPublicKey": "ARRCaw7QZhe5ciajz2pLoRUrB3GLdo6aSPdDC1ri51D6", "proofs": [ "51LTuiQHbhsuv1NEHtK4AQqUZRtMCGMiNCvxnYn5rDHz7u4PT3YeqrecpYdWzbj1e7Nhd4qhzZARsdeLWNYPbHR1" ], "script": "base64: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", "height": 2303709, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 6Yn6KzBjbH1Q3qX5csfXvQDRUaypuRug4aEVuz2u4VrA Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let precision = 10000000000
5+
6+@Callable(i)
7+func init () = {
8+ let sWaves = Issue("sWaves", "", 0, 8, true, unit, 0)
9+ let sWavesAssetId = calculateAssetId(sWaves)
10+[StringEntry("sWavesAssetId", toBase58String(sWavesAssetId)), IntegerEntry("ratio", precision), sWaves]
11+ }
12+
13+
14+
15+@Callable(i)
16+func stake () = {
17+ let payment = i.payments[0]
18+ if ((payment.assetId != unit))
19+ then throw("Only WAVES suppoerted")
20+ else if ((size(i.payments) != 1))
21+ then throw("Wrong payments amount")
22+ else {
23+ let ratio = getIntegerValue("ratio")
24+ let toReissue = ((payment.amount * precision) / ratio)
25+ let sWavesAssetId = fromBase58String(getStringValue("sWavesAssetId"))
26+[Reissue(sWavesAssetId, toReissue, true), ScriptTransfer(i.caller, 1, sWavesAssetId)]
27+ }
28+ }
29+
30+
31+
32+@Callable(i)
33+func unstake () = {
34+ let payment = i.payments[0]
35+ let sWavesAssetId = fromBase58String(getStringValue("sWavesAssetId"))
36+ if ((payment.assetId != sWavesAssetId))
37+ then throw("Only sWAVES suppoerted")
38+ else if ((size(i.payments) != 1))
39+ then throw("Wrong payments amount")
40+ else {
41+ let ratio = getIntegerValue("ratio")
42+ let toTransfer = ((payment.amount * ratio) / precision)
43+ let assetId = getStringValue("internalAssetId")
44+[Burn(sWavesAssetId, payment.amount), ScriptTransfer(i.caller, toTransfer, unit)]
45+ }
46+ }
47+
48+
49+@Verifier(tx)
50+func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
51+

github/deemru/w8io/873ac7e 
13.35 ms