tx · 6yyBneDnH7WboRHVkRbVouMRn7fpbh1WHQFwgz5fgTBi 3MuLW72Rskgct4uXSeVEQAYoPhreiLjVGia: -1.00400000 Waves 2019.12.19 11:33 [815546] smart asset 3MuLW72Rskgct4uXSeVEQAYoPhreiLjVGia > SELF 0 TEST
{ "type": 15, "id": "6yyBneDnH7WboRHVkRbVouMRn7fpbh1WHQFwgz5fgTBi", "fee": 100400000, "feeAssetId": null, "timestamp": 1576744397006, "version": 1, "sender": "3MuLW72Rskgct4uXSeVEQAYoPhreiLjVGia", "senderPublicKey": "BMbwthKYkuvSJNf8PjgCARQhGreCu6P7JdYpUU3pEcfz", "proofs": [ "5nEMWSfxbC5ZXbtRDaQk2v5eBa6GDg7wWoYoK8mJeH4W928KBqEh2dVQir4mkGH3NzJWnfPEzABXtrQTkgGte8wt" ], "assetId": "KpqvTUB4jxdaecGwEHybYJaZjzFBHS4b8GfZVLZYtEg", "script": "base64:AwQAAAAQd2hpdGVsaXN0QWRkcmVzcwkBAAAAB0FkZHJlc3MAAAABAQAAABoBVLLimz67CUQJNoVouJYmvTIXbUaFQRQgNQQAAAAUZEFwcFdoaXRlbGlzdEFkZHJlc3MJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVR+ZQJfWyfFbW//7FjY3Cz3zzwo/8TmrxYEAAAACXBBZGRyZXNzMQkBAAAAEWFkZHJlc3NGcm9tU3RyaW5nAAAAAQIAAAAjM05DVkRhVDFBU2JSZDQyaEJTdzRFRzZvakdWUkd0dk1pejEEAAAACXBBZGRyZXNzMgkBAAAAEWFkZHJlc3NGcm9tU3RyaW5nAAAAAQIAAAAjM01zMmtUQXhkcmNYRHh3ZWRmYk5qU2k2ZXdHQ1VxdDNoZVoEAAAACXBBZGRyZXNzMwkBAAAAEWFkZHJlc3NGcm9tU3RyaW5nAAAAAQIAAAAjM042b2dubTd4blFTRmlvd25TMURmMUxhY0pVUVh2ZkRGTGUEAAAACXBBZGRyZXNzNAkBAAAAEWFkZHJlc3NGcm9tU3RyaW5nAAAAAQIAAAAjM010VkNtTjlNWmJXZjlxeGlNRm9FUEJyZGMyZkxwM1N2dUMEAAAACXBBZGRyZXNzNQkBAAAAEWFkZHJlc3NGcm9tU3RyaW5nAAAAAQIAAAAjM011V0c4Z3NUSzRSUUJzbTk3c01DdVVYVzk5SnZSeHdZU2cEAAAAA3ZlcgIAAAANMi4wLjMtdGVzdG5ldAQAAAAKdmFsaWRTdGF0ZQAAAAAAAAAD6AQAAAAHJG1hdGNoMAUAAAACdHgDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAGVNldEFzc2V0U2NyaXB0VHJhbnNhY3Rpb24EAAAAAnR4BQAAAAckbWF0Y2gwBAAAAAtwS2V5MVNpZ25lZAMJAQAAAAlpc0RlZmluZWQAAAABCQAEGgAAAAIJAQAAAAdleHRyYWN0AAAAAQUAAAAJcEFkZHJlc3MxCQACWAAAAAEIBQAAAAJ0eAAAAAJpZAAAAAAAAAAAAQAAAAAAAAAAAAQAAAALcEtleTJTaWduZWQDCQEAAAAJaXNEZWZpbmVkAAAAAQkABBoAAAACCQEAAAAHZXh0cmFjdAAAAAEFAAAACXBBZGRyZXNzMgkAAlgAAAABCAUAAAACdHgAAAACaWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAC3BLZXkzU2lnbmVkAwkBAAAACWlzRGVmaW5lZAAAAAEJAAQaAAAAAgkBAAAAB2V4dHJhY3QAAAABBQAAAAlwQWRkcmVzczMJAAJYAAAAAQgFAAAAAnR4AAAAAmlkAAAAAAAAAAABAAAAAAAAAAAABAAAAAtwS2V5NFNpZ25lZAMJAQAAAAlpc0RlZmluZWQAAAABCQAEGgAAAAIJAQAAAAdleHRyYWN0AAAAAQUAAAAJcEFkZHJlc3M0CQACWAAAAAEIBQAAAAJ0eAAAAAJpZAAAAAAAAAAAAQAAAAAAAAAAAAQAAAALcEtleTVTaWduZWQDCQEAAAAJaXNEZWZpbmVkAAAAAQkABBoAAAACCQEAAAAHZXh0cmFjdAAAAAEFAAAACXBBZGRyZXNzNQkAAlgAAAABCAUAAAACdHgAAAACaWQAAAAAAAAAAAEAAAAAAAAAAAAJAABnAAAAAgkAAGQAAAACCQAAZAAAAAIJAABkAAAAAgkAAGQAAAACBQAAAAtwS2V5MVNpZ25lZAUAAAALcEtleTJTaWduZWQFAAAAC3BLZXkzU2lnbmVkBQAAAAtwS2V5NFNpZ25lZAUAAAALcEtleTVTaWduZWQAAAAAAAAAAAMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAF0ludm9rZVNjcmlwdFRyYW5zYWN0aW9uBAAAAAJ0eAUAAAAHJG1hdGNoMAQAAAAHJG1hdGNoMQkABBoAAAACBQAAABRkQXBwV2hpdGVsaXN0QWRkcmVzcwkAAlgAAAABCAkABCQAAAABCAUAAAACdHgAAAAEZEFwcAAAAAVieXRlcwMJAAABAAAAAgUAAAAHJG1hdGNoMQIAAAADSW50BAAAAAZ1bnVzZWQFAAAAByRtYXRjaDEGBwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAATVHJhbnNmZXJUcmFuc2FjdGlvbgQAAAACdHgFAAAAByRtYXRjaDAEAAAACWFsbG93U2VuZAQAAAAHJG1hdGNoMQkABBoAAAACBQAAABRkQXBwV2hpdGVsaXN0QWRkcmVzcwkAAlgAAAABCAgFAAAAAnR4AAAABnNlbmRlcgAAAAVieXRlcwMJAAABAAAAAgUAAAAHJG1hdGNoMQIAAAADSW50BAAAAAZ1bnVzZWQFAAAAByRtYXRjaDEGBwQAAAAWcmVjaXBpZW50QWRkcmVzc0Zyb21UeAkAAlgAAAABCAkABCQAAAABCAUAAAACdHgAAAAJcmVjaXBpZW50AAAABWJ5dGVzBAAAAA5pc0FjY291bnRBbGxvdwQAAAAHJG1hdGNoMQkABBoAAAACBQAAABB3aGl0ZWxpc3RBZGRyZXNzBQAAABZyZWNpcGllbnRBZGRyZXNzRnJvbVR4AwkAAAEAAAACBQAAAAckbWF0Y2gxAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDEFAAAAAWEA/////////wEDCQAAZwAAAAIFAAAADmlzQWNjb3VudEFsbG93BQAAAAp2YWxpZFN0YXRlBQAAAAlhbGxvd1NlbmQHB6T41hg=", "chainId": 84, "height": 815546, "spentComplexity": 0 } View: original | compacted Prev: Ft7gHvYBVgwj9umAc7K78FhMDsiCEwyt1yjFaBxmB7fc Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 3 #-} | |
2 | 2 | {-# CONTENT_TYPE EXPRESSION #-} | |
3 | 3 | let whitelistAddress = Address(base58'3N6DwWxT82nGJUwBwd7L514r2u71gr7WhwJ') | |
4 | 4 | let dAppWhitelistAddress = Address(base58'3N1SPvLZgv6FMfe5WNUtnPzt3okYxcJhYnR') | |
5 | 5 | let pAddress1 = addressFromString("3NCVDaT1ASbRd42hBSw4EG6ojGVRGtvMiz1") | |
6 | 6 | let pAddress2 = addressFromString("3Ms2kTAxdrcXDxwedfbNjSi6ewGCUqt3heZ") | |
7 | 7 | let pAddress3 = addressFromString("3N6ognm7xnQSFiownS1Df1LacJUQXvfDFLe") | |
8 | 8 | let pAddress4 = addressFromString("3MtVCmN9MZbWf9qxiMFoEPBrdc2fLp3SvuC") | |
9 | 9 | let pAddress5 = addressFromString("3MuWG8gsTK4RQBsm97sMCuUXW99JvRxwYSg") | |
10 | 10 | let ver = "2.0.3-testnet" | |
11 | 11 | let validState = 1000 | |
12 | 12 | match tx { | |
13 | 13 | case tx: SetAssetScriptTransaction => | |
14 | 14 | let pKey1Signed = if (isDefined(getInteger(extract(pAddress1), toBase58String(tx.id)))) | |
15 | 15 | then 1 | |
16 | 16 | else 0 | |
17 | 17 | let pKey2Signed = if (isDefined(getInteger(extract(pAddress2), toBase58String(tx.id)))) | |
18 | 18 | then 1 | |
19 | 19 | else 0 | |
20 | 20 | let pKey3Signed = if (isDefined(getInteger(extract(pAddress3), toBase58String(tx.id)))) | |
21 | 21 | then 1 | |
22 | 22 | else 0 | |
23 | 23 | let pKey4Signed = if (isDefined(getInteger(extract(pAddress4), toBase58String(tx.id)))) | |
24 | 24 | then 1 | |
25 | 25 | else 0 | |
26 | 26 | let pKey5Signed = if (isDefined(getInteger(extract(pAddress5), toBase58String(tx.id)))) | |
27 | 27 | then 1 | |
28 | 28 | else 0 | |
29 | 29 | (((((pKey1Signed + pKey2Signed) + pKey3Signed) + pKey4Signed) + pKey5Signed) >= 3) | |
30 | 30 | case tx: InvokeScriptTransaction => | |
31 | 31 | match getInteger(dAppWhitelistAddress, toBase58String(addressFromRecipient(tx.dApp).bytes)) { | |
32 | 32 | case unused: Int => | |
33 | 33 | true | |
34 | 34 | case _ => | |
35 | 35 | false | |
36 | 36 | } | |
37 | 37 | case tx: TransferTransaction => | |
38 | 38 | let allowSend = match getInteger(dAppWhitelistAddress, toBase58String(tx.sender.bytes)) { | |
39 | 39 | case unused: Int => | |
40 | 40 | true | |
41 | 41 | case _ => | |
42 | 42 | false | |
43 | 43 | } | |
44 | 44 | let recipientAddressFromTx = toBase58String(addressFromRecipient(tx.recipient).bytes) | |
45 | 45 | let isAccountAllow = match getInteger(whitelistAddress, recipientAddressFromTx) { | |
46 | 46 | case a: Int => | |
47 | 47 | a | |
48 | 48 | case _ => | |
49 | 49 | -255 | |
50 | 50 | } | |
51 | 51 | if ((isAccountAllow >= validState)) | |
52 | 52 | then allowSend | |
53 | 53 | else false | |
54 | 54 | case _ => | |
55 | 55 | false | |
56 | 56 | } |
github/deemru/w8io/c3f4982 23.27 ms ◑