tx · 2TREe5DajSLwggLwzLGFX75QmqYgfqrYKhSWbcDQcfKA

3NCzUsFn22SqL6SiuFpRSo8VRj6XpBzNCTK:  -0.00700000 Waves

2022.06.27 18:46 [2115041] smart account 3NCzUsFn22SqL6SiuFpRSo8VRj6XpBzNCTK > SELF 0.00000000 Waves

{ "type": 13, "id": "2TREe5DajSLwggLwzLGFX75QmqYgfqrYKhSWbcDQcfKA", "fee": 700000, "feeAssetId": null, "timestamp": 1656344789129, "version": 2, "chainId": 84, "sender": "3NCzUsFn22SqL6SiuFpRSo8VRj6XpBzNCTK", "senderPublicKey": "8tc6RQVnwQMdDY1k9GxP7EvBttrJT2a6GeBMQHEsKnW7", "proofs": [ "49jUQqFbJm4xwLLhFa8ois3w6kTcu7bhXzvdzdzHN3KiJGGu2QSbQiFMB3HoqPNnubMk2SsSqVfjfWpptyXYxEqJ" ], "script": "base64:AAIFAAAAAAAAAAgIAhIAEgASAAAAAAYAAAAABWZhcm1zCQAETAAAAAICAAAABGJldGEJAARMAAAAAgIAAAAEbWV0YQkABEwAAAACAgAAAAR6ZXRhBQAAAANuaWwBAAAABmdldFN0cgAAAAEAAAADa2V5BAAAAAckbWF0Y2gwCQAEHQAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFiBQAAAAckbWF0Y2gwBQAAAAFiAgAAAAABAAAABmdldEludAAAAAEAAAADa2V5BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFiBQAAAAckbWF0Y2gwBQAAAAFiAAAAAAAAAAAAAQAAAAVzdGFrZQAAAAIAAAAEZmFybQAAAAZhbW91bnQEAAAAB2Fzc2V0SWQJAAJZAAAAAQkBAAAABmdldFN0cgAAAAEJAAEsAAAAAgUAAAAEZmFybQIAAAADX2lkBAAAAARkQXBwCQEAAAAGZ2V0U3RyAAAAAQkAASwAAAACBQAAAARmYXJtAgAAAANfc3QEAAAAB2JhbGFuY2UJAAPwAAAAAgUAAAAEdGhpcwUAAAAHYXNzZXRJZAMJAAAAAAAAAgUAAAAHYmFsYW5jZQAAAAAAAAAAAAYDCQAAAAAAAAIFAAAABmFtb3VudAD//////////wkAA/wAAAAECQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQUAAAAEZEFwcAIAAAAPc3Rha2VGYXJtVG9rZW5zCQAETAAAAAIHBQAAAANuaWwJAARMAAAAAgkBAAAAD0F0dGFjaGVkUGF5bWVudAAAAAIFAAAAB2Fzc2V0SWQFAAAAB2JhbGFuY2UFAAAAA25pbAMJAABnAAAAAgUAAAAHYmFsYW5jZQUAAAAGYW1vdW50CQAD/AAAAAQJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABBQAAAARkQXBwAgAAAA9zdGFrZUZhcm1Ub2tlbnMJAARMAAAAAgcFAAAAA25pbAkABEwAAAACCQEAAAAPQXR0YWNoZWRQYXltZW50AAAAAgUAAAAHYXNzZXRJZAUAAAAGYW1vdW50BQAAAANuaWwJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAANTG93IGJhbGFuY2U6IAkAAaQAAAABBQAAAAdiYWxhbmNlAgAAAAsgYW5kIG5lZWQ6IAkAAaQAAAABBQAAAAZhbW91bnQBAAAABWNoZWNrAAAAAQAAAANwYmsEAAAABnBia19zdAkAAlgAAAABBQAAAANwYmsEAAAABnBvaW50cwkBAAAAEUBleHRyTmF0aXZlKDEwNTgpAAAAAQIAAAAGcG9pbnRzCQEAAAAIY29udGFpbnMAAAACBQAAAAZwb2ludHMFAAAABnBia19zdAEAAAAEaXRlcgAAAAIAAAADYWNjAAAABGZhcm0EAAAAA3JlegkBAAAABXN0YWtlAAAAAgUAAAAEZmFybQD//////////wQAAAAHJG1hdGNoMAUAAAADcmV6AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAA5TY3JpcHRUcmFuc2ZlcgQAAAABdAUAAAAHJG1hdGNoMAkABE4AAAACBQAAAANhY2MJAARMAAAAAgUAAAADcmV6BQAAAANuaWwFAAAAA2FjYwAAAAMAAAABaQEAAAAIU3Rha2VBbGwAAAAAAwkBAAAABWNoZWNrAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BAAAAAJzdAoAAAAAAiRsBQAAAAVmYXJtcwoAAAAAAiRzCQABkAAAAAEFAAAAAiRsCgAAAAAFJGFjYzAFAAAAA25pbAoBAAAABSRmMF8xAAAAAgAAAAIkYQAAAAIkaQMJAABnAAAAAgUAAAACJGkFAAAAAiRzBQAAAAIkYQkBAAAABGl0ZXIAAAACBQAAAAIkYQkAAZEAAAACBQAAAAIkbAUAAAACJGkKAQAAAAUkZjBfMgAAAAIAAAACJGEAAAACJGkDCQAAZwAAAAIFAAAAAiRpBQAAAAIkcwUAAAACJGEJAAACAAAAAQIAAAATTGlzdCBzaXplIGV4Y2VlZHMgMwkBAAAABSRmMF8yAAAAAgkBAAAABSRmMF8xAAAAAgkBAAAABSRmMF8xAAAAAgkBAAAABSRmMF8xAAAAAgUAAAAFJGFjYzAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAIAAAAAAAAAAAMDCQAAAAAAAAIFAAAAAnN0BQAAAAJzdAMJAAAAAAAAAgkAAZAAAAABBQAAAAJzdAAAAAAAAAAAAAkAAAIAAAABAgAAAA1aZXJvIGJhbGFuY2UhBQAAAAJzdAkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAgUHJpdmF0ZSBGYXJtLiBBY2Nlc3MgcHJvaGliaXRlZCEAAAABaQEAAAAKVW5zdGFrZUFsbAAAAAADCQEAAAAFY2hlY2sAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkJAAACAAAAAQIAAAAHV2VsY29tZQkAAAIAAAABAgAAACBQcml2YXRlIEZhcm0uIEFjY2VzcyBwcm9oaWJpdGVkIQAAAAFpAQAAAAhDbGFpbUFsbAAAAAADCQEAAAAFY2hlY2sAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkJAAACAAAAAQIAAAAHV2VsY29tZQkAAAIAAAABAgAAACBQcml2YXRlIEZhcm0uIEFjY2VzcyBwcm9oaWJpdGVkIQAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5eovdfA==", "height": 2115041, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9PBJzsddDK8fjkiceZHxpQvP6Zhp8FRe1hER6fL4AW9H Next: 94SDFLDRTL11A4Hd235mXc6Y7BJ5n55kgKLX8pCp7g4q Diff:
OldNewDifferences
6868
6969 $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3)
7070 }
71- if ((size(st) == 0))
72- then throw("Zero balance!")
73- else st
71+ if ((st == st))
72+ then if ((size(st) == 0))
73+ then throw("Zero balance!")
74+ else st
75+ else throw("Strict value is not equal to itself.")
7476 }
7577 else throw("Private Farm. Access prohibited!")
7678
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 }
71- if ((size(st) == 0))
72- then throw("Zero balance!")
73- else st
71+ if ((st == st))
72+ then if ((size(st) == 0))
73+ then throw("Zero balance!")
74+ else st
75+ else throw("Strict value is not equal to itself.")
7476 }
7577 else throw("Private Farm. Access prohibited!")
7678
7779
7880
7981 @Callable(i)
8082 func UnstakeAll () = if (check(i.callerPublicKey))
8183 then throw("Welcome")
8284 else throw("Private Farm. Access prohibited!")
8385
8486
8587
8688 @Callable(i)
8789 func ClaimAll () = if (check(i.callerPublicKey))
8890 then throw("Welcome")
8991 else throw("Private Farm. Access prohibited!")
9092
9193
9294 @Verifier(tx)
9395 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
9496

github/deemru/w8io/873ac7e 
22.48 ms