tx · FZceuMJ1FieKqe9sjFXW4fcDQoPJVDYX4f2RZs8uvKr9 3MtZ3wui5dwh7umK1QLmJpzuAFXt6G3UPfQ: -0.01000000 Waves 2023.09.27 14:25 [2773751] smart account 3MtZ3wui5dwh7umK1QLmJpzuAFXt6G3UPfQ > SELF 0.00000000 Waves
{ "type": 13, "id": "FZceuMJ1FieKqe9sjFXW4fcDQoPJVDYX4f2RZs8uvKr9", "fee": 1000000, "feeAssetId": null, "timestamp": 1695814038123, "version": 2, "chainId": 84, "sender": "3MtZ3wui5dwh7umK1QLmJpzuAFXt6G3UPfQ", "senderPublicKey": "EbnhRan4ZNByGXwzMJdAbf2qQ1RGzScQexDRzbejozLh", "proofs": [ "3kt89URBoik2RZQSZ1mZrvXSQ6EjmyjUo8CYi2QwYuLdCsBi7TaRNg5BJZmryf1p85hrYiMXE1ffsPxtg6EUhJu6" ], "script": "base64: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", "height": 2773751, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: RAmssaabUeLXsaxrHGVCDi8KW232foFZkMLGdRVzzAj Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 5 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let isConstructedKey = "is_constructed" | |
5 | + | ||
6 | + | @Callable(i) | |
7 | + | func constructor () = if (isDefined(getBoolean(isConstructedKey))) | |
8 | + | then throw("Constructor can be called one time") | |
9 | + | else { | |
10 | + | let stakingAsset1 = Issue("StakingAsset_1", "", 1000000000000000000, 8, false, unit, 0) | |
11 | + | let stakingAsset1Id = calculateAssetId(stakingAsset1) | |
12 | + | let stakingAsset2 = Issue("StakingAsset_2", "", 1000000000000000000, 8, false, unit, 0) | |
13 | + | let stakingAsset2Id = calculateAssetId(stakingAsset1) | |
14 | + | let rewardFirstAsset = Issue("RewardFirstAsset", "", 1000000000000000000, 8, false, unit, 0) | |
15 | + | let rewardFirstAssetId = calculateAssetId(rewardFirstAsset) | |
16 | + | let rewardSecondAsset = Issue("RewardSecondAsset", "", 1000000000000000000, 8, false, unit, 0) | |
17 | + | let rewardSecondAssetId = calculateAssetId(rewardSecondAsset) | |
18 | + | [stakingAsset1, stakingAsset2, rewardFirstAsset, rewardSecondAsset, StringEntry("staking_asset_1", toBase58String(stakingAsset1Id)), StringEntry("staking_asset_2", toBase58String(stakingAsset2Id)), StringEntry("reward_first_asset", toBase58String(rewardFirstAssetId)), StringEntry("reward_second_asset", toBase58String(rewardSecondAssetId))] | |
19 | + | } | |
20 | + | ||
21 | + | ||
22 | + | ||
23 | + | @Callable(i) | |
24 | + | func request (assetId) = if (!(isDefined(getBoolean(isConstructedKey)))) | |
25 | + | then throw("Call constructor first") | |
26 | + | else if ((assetId == 0)) | |
27 | + | then [ScriptTransfer(Address(i.caller.bytes), 10000000000000, fromBase58String(getStringValue("staking_asset_1")))] | |
28 | + | else if ((assetId == 1)) | |
29 | + | then [ScriptTransfer(Address(i.caller.bytes), 10000000000000, fromBase58String(getStringValue("staking_asset_2")))] | |
30 | + | else if ((assetId == 2)) | |
31 | + | then [ScriptTransfer(Address(i.caller.bytes), 10000000000000, fromBase58String(getStringValue("reward_first_asset")))] | |
32 | + | else if ((assetId == 3)) | |
33 | + | then [ScriptTransfer(Address(i.caller.bytes), 10000000000000, fromBase58String(getStringValue("reward_second_asset")))] | |
34 | + | else nil | |
35 | + | ||
36 | + | ||
37 | + | @Verifier(tx) | |
38 | + | func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
39 | + |
github/deemru/w8io/169f3d6 17.57 ms ◑![]()