tx · 94SDFLDRTL11A4Hd235mXc6Y7BJ5n55kgKLX8pCp7g4q

3NCzUsFn22SqL6SiuFpRSo8VRj6XpBzNCTK:  -0.00700000 Waves

2022.06.27 18:50 [2115044] smart account 3NCzUsFn22SqL6SiuFpRSo8VRj6XpBzNCTK > SELF 0.00000000 Waves

{ "type": 13, "id": "94SDFLDRTL11A4Hd235mXc6Y7BJ5n55kgKLX8pCp7g4q", "fee": 700000, "feeAssetId": null, "timestamp": 1656345061788, "version": 2, "chainId": 84, "sender": "3NCzUsFn22SqL6SiuFpRSo8VRj6XpBzNCTK", "senderPublicKey": "8tc6RQVnwQMdDY1k9GxP7EvBttrJT2a6GeBMQHEsKnW7", "proofs": [ "4U2qq25JfZyLygxDU1sq5XzhT53avuXxZv2mNg31gGs1C9bgyBaMPWFbPnEDteYF3mFtg3shDufj6Wh2mebNb4cB" ], "script": "base64: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", "height": 2115044, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2TREe5DajSLwggLwzLGFX75QmqYgfqrYKhSWbcDQcfKA Next: AXHFfVW6daH2YjMeXM5CNKHUHsv6Kg7fhn9cecgGY7Hi Diff:
OldNewDifferences
6969 $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3)
7070 }
7171 if ((st == st))
72- then if ((size(st) == 0))
73- then throw("Zero balance!")
74- else st
72+ then [IntegerEntry("size", size(st))]
7573 else throw("Strict value is not equal to itself.")
7674 }
7775 else throw("Private Farm. Access prohibited!")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let farms = ["beta", "meta", "zeta"]
55
66 func getStr (key) = match getString(this, key) {
77 case b: String =>
88 b
99 case _ =>
1010 ""
1111 }
1212
1313
1414 func getInt (key) = match getInteger(this, key) {
1515 case b: Int =>
1616 b
1717 case _ =>
1818 0
1919 }
2020
2121
2222 func stake (farm,amount) = {
2323 let assetId = fromBase58String(getStr((farm + "_id")))
2424 let dApp = getStr((farm + "_st"))
2525 let balance = assetBalance(this, assetId)
2626 if ((balance == 0))
2727 then true
2828 else if ((amount == -1))
2929 then invoke(Address(fromBase58String(dApp)), "stakeFarmTokens", [false], [AttachedPayment(assetId, balance)])
3030 else if ((balance >= amount))
3131 then invoke(Address(fromBase58String(dApp)), "stakeFarmTokens", [false], [AttachedPayment(assetId, amount)])
3232 else throw(((("Low balance: " + toString(balance)) + " and need: ") + toString(amount)))
3333 }
3434
3535
3636 func check (pbk) = {
3737 let pbk_st = toBase58String(pbk)
3838 let points = getStringValue("points")
3939 contains(points, pbk_st)
4040 }
4141
4242
4343 func iter (acc,farm) = {
4444 let rez = stake(farm, -1)
4545 match rez {
4646 case t: ScriptTransfer =>
4747 (acc ++ [rez])
4848 case _ =>
4949 acc
5050 }
5151 }
5252
5353
5454 @Callable(i)
5555 func StakeAll () = if (check(i.callerPublicKey))
5656 then {
5757 let st = {
5858 let $l = farms
5959 let $s = size($l)
6060 let $acc0 = nil
6161 func $f0_1 ($a,$i) = if (($i >= $s))
6262 then $a
6363 else iter($a, $l[$i])
6464
6565 func $f0_2 ($a,$i) = if (($i >= $s))
6666 then $a
6767 else throw("List size exceeds 3")
6868
6969 $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3)
7070 }
7171 if ((st == st))
72- then if ((size(st) == 0))
73- then throw("Zero balance!")
74- else st
72+ then [IntegerEntry("size", size(st))]
7573 else throw("Strict value is not equal to itself.")
7674 }
7775 else throw("Private Farm. Access prohibited!")
7876
7977
8078
8179 @Callable(i)
8280 func UnstakeAll () = if (check(i.callerPublicKey))
8381 then throw("Welcome")
8482 else throw("Private Farm. Access prohibited!")
8583
8684
8785
8886 @Callable(i)
8987 func ClaimAll () = if (check(i.callerPublicKey))
9088 then throw("Welcome")
9189 else throw("Private Farm. Access prohibited!")
9290
9391
9492 @Verifier(tx)
9593 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
9694

github/deemru/w8io/169f3d6 
34.44 ms