tx · BDuazYs748gsY1LWuUZuPJ5RidSHLB8JQJz4zz7buEbf

3PNX5vxV7cpKcrfMhGHkSzv1wGTY3yvvJfH:  -0.01000000 Waves

2023.09.15 15:07 [3822252] smart account 3PNX5vxV7cpKcrfMhGHkSzv1wGTY3yvvJfH > SELF 0.00000000 Waves

{ "type": 13, "id": "BDuazYs748gsY1LWuUZuPJ5RidSHLB8JQJz4zz7buEbf", "fee": 1000000, "feeAssetId": null, "timestamp": 1694779650954, "version": 2, "chainId": 87, "sender": "3PNX5vxV7cpKcrfMhGHkSzv1wGTY3yvvJfH", "senderPublicKey": "2oT2Sm9zDbTqBjBj9NRGKJDHJgSLDsvx1EV9TBU6su2C", "proofs": [ "RcL2eEGShz44ijKq2QLQ3F28DsneNxjs8u2R5WnN3LvFrg3VBX3sZvXLYdVhsNsHDaz83tkTJCTqxtG9WAV85tv" ], "script": "base64:BgIICAISBAoCGAEEAAx2ZXJpZmllcnNLZXkCCXZlcmlmaWVycwAUdmVyaWZpZXJzUmVxdWlyZWRLZXkCEXZlcmlmaWVyc1JlcXVpcmVkABBpc0NvbnN0cnVjdGVkS2V5Ag1pc0NvbnN0cnVjdGVkAANTRVACAl9fAQFpAQtjb25zdHJ1Y3RvcgIJdmVyaWZpZXJzEXJlcXVpcmVkVmVyaWZpZXJzAwkBCWlzRGVmaW5lZAEJAKAIAQUQaXNDb25zdHJ1Y3RlZEtleQkAAgECI0NvbnN0cnVjdG9yIGNhbiBiZSBjYWxsZWQganVzdCBvbmNlAwkAZgIJAJADAQUJdmVyaWZpZXJzAAgJAAIBAhlNYXggdmVyaWZpZXJzIG51bWJlciBpcyA4AwkAZgIFEXJlcXVpcmVkVmVyaWZpZXJzCQCQAwEFCXZlcmlmaWVycwkAAgECHldyb25nIHJlcXVpcmVkIHZlcmlmaWVycyBjb3VudAkAzAgCCQEMQm9vbGVhbkVudHJ5AgUQaXNDb25zdHJ1Y3RlZEtleQYJAMwIAgkBC1N0cmluZ0VudHJ5AgUMdmVyaWZpZXJzS2V5CQC5CQIFCXZlcmlmaWVycwUDU0VQCQDMCAIJAQxJbnRlZ2VyRW50cnkCBRR2ZXJpZmllcnNSZXF1aXJlZEtleQURcmVxdWlyZWRWZXJpZmllcnMFA25pbAECdHgBBnZlcmlmeQAECXZlcmlmaWVycwkAtQkCCQERQGV4dHJOYXRpdmUoMTA1OCkBBQx2ZXJpZmllcnNLZXkFA1NFUAQRdmVyaWZpZXJzUmVxdWlyZWQJARFAZXh0ck5hdGl2ZSgxMDU1KQEFFHZlcmlmaWVyc1JlcXVpcmVkS2V5CgEDc3VtAgVhY2N1bQRuZXh0BBR2YWxpZGF0ZWRQcm9vZnNDb3VudAgFBWFjY3VtAl8xBBJjdXJyZW50UHJvb2ZzSW5kZXgIBQVhY2N1bQJfMgQKaXNWZXJpZmllZAMJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzBRJjdXJyZW50UHJvb2ZzSW5kZXgJANkEAQUEbmV4dAABAAAJAJQKAgkAZAIFFHZhbGlkYXRlZFByb29mc0NvdW50BQppc1ZlcmlmaWVkCQBkAgUSY3VycmVudFByb29mc0luZGV4AAEEDnZhbGlkYXRpb25EYXRhCgACJGwFCXZlcmlmaWVycwoAAiRzCQCQAwEFAiRsCgAFJGFjYzAJAJQKAgAAAAAKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBA3N1bQIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQITTGlzdCBzaXplIGV4Y2VlZHMgOAkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgJAGcCCAUOdmFsaWRhdGlvbkRhdGECXzEFEXZlcmlmaWVyc1JlcXVpcmVknFHjrA==", "height": 3822252, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 6 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let verifiersKey = "verifiers"
5+
6+let verifiersRequiredKey = "verifiersRequired"
7+
8+let isConstructedKey = "isConstructed"
9+
10+let SEP = "__"
11+
12+@Callable(i)
13+func constructor (verifiers,requiredVerifiers) = if (isDefined(getBoolean(isConstructedKey)))
14+ then throw("Constructor can be called just once")
15+ else if ((size(verifiers) > 8))
16+ then throw("Max verifiers number is 8")
17+ else if ((requiredVerifiers > size(verifiers)))
18+ then throw("Wrong required verifiers count")
19+ else [BooleanEntry(isConstructedKey, true), StringEntry(verifiersKey, makeString(verifiers, SEP)), IntegerEntry(verifiersRequiredKey, requiredVerifiers)]
20+
21+
22+@Verifier(tx)
23+func verify () = {
24+ let verifiers = split(getStringValue(verifiersKey), SEP)
25+ let verifiersRequired = getIntegerValue(verifiersRequiredKey)
26+ func sum (accum,next) = {
27+ let validatedProofsCount = accum._1
28+ let currentProofsIndex = accum._2
29+ let isVerified = if (sigVerify(tx.bodyBytes, tx.proofs[currentProofsIndex], fromBase58String(next)))
30+ then 1
31+ else 0
32+ $Tuple2((validatedProofsCount + isVerified), (currentProofsIndex + 1))
33+ }
34+
35+ let validationData = {
36+ let $l = verifiers
37+ let $s = size($l)
38+ let $acc0 = $Tuple2(0, 0)
39+ func $f0_1 ($a,$i) = if (($i >= $s))
40+ then $a
41+ else sum($a, $l[$i])
42+
43+ func $f0_2 ($a,$i) = if (($i >= $s))
44+ then $a
45+ else throw("List size exceeds 8")
46+
47+ $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8)
48+ }
49+ (validationData._1 >= verifiersRequired)
50+ }
51+

github/deemru/w8io/3ef1775 
19.14 ms