tx · DdUATbCJEtsmRL9oRoYyjU2RzHLjSv1yHoTxmC8a245b 3NBbtatUjqD52wYqpXif5DfzfG9vW7yMY6G: -0.01500000 Waves 2019.08.06 20:18 [619341] smart account 3NBbtatUjqD52wYqpXif5DfzfG9vW7yMY6G > SELF 0.00000000 Waves
{ "type": 13, "id": "DdUATbCJEtsmRL9oRoYyjU2RzHLjSv1yHoTxmC8a245b", "fee": 1500000, "feeAssetId": null, "timestamp": 1565111946781, "version": 1, "sender": "3NBbtatUjqD52wYqpXif5DfzfG9vW7yMY6G", "senderPublicKey": "BbbxxZofiPRmQoJkPhRYYw2wXc1jhjDYR2XRAWC1Twgx", "proofs": [ "21iB3adMgWixdQro3uqaaQEcQnYEMWzWtgFxKsFvfh5b1j1XrfzovcaJgGBUwWaYb1YtjX7XMLqok87aD8S19yoS" ], "script": "base64:AAIDAAAAAAAAAAAAAAAaAAAAAAlSU0FQVUJMSUMJAAJbAAAAAQIAAAGPYmFzZTY0Ok1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbXB1WGNJL280cElCNXl3djlET09HYXBUQlV3UlZsTS82K0g2aEZlbE9YdGtyd1kvWUl0bVB4RURwejdyQWVyUVBRZTl0RFBFYUF2L0dubEV6dHliT0ZYZ3U5RHpEZThZb01SRDF2YWtnb0Fjb2dtYlk1OFFENktNajVIa29Wai95VE5JYzlzemo1cWhJbHJBZG1iM0tMTDZoUVU3eTgrSmo2OUJXVlBzYVFna3NwU2RlWXRiMXRIUWM3dDk1bjdPWjU2cjJBN0czK2JRZjZuU01rUGtBaElyRXBiQ201OG9pR0JjemRUZC9McUZTVm90WnNiTDdZaDZTSExmbkhlRCtRZ2NmSnJuYW04T0hNR0pFSlRSWGpJTGVIR2psUkNQOG9WcGlvSHJ5MVMyeFB4NXNWekltMk1NK0N6WWVuQUdsbzBqMjZhdEJoaVVMb1R1bHdEM3BRSURBUUFCAAAAAAZTRVJWRVIJAQAAABxAZXh0clVzZXIoYWRkcmVzc0Zyb21TdHJpbmcpAAAAAQIAAAAjM05DaUcyOExtV3lUaWdXRzEzRTVRbnZkSEJzWkZZWFNTMmoAAAAAB1dBVkVMRVQJAABoAAAAAgkAAGgAAAACAAAAAAAAAABkAAAAAAAAAAPoAAAAAAAAAAPoAAAAABBTRVNTSU9OSURGSVhTSVpFAAAAAAAAAAAsAAAAAA5SQU5EQ1lDTEVQUklDRQkAAGkAAAACCQAAaAAAAAIAAAAAAAAAAAUFAAAAB1dBVkVMRVQAAAAAAAAAA+gAAAAAEE1BWFJBTkRTUEVSQ1lDTEUAAAAAAAAAAA4AAAAACVNUQVRFSU5JVAIAAAAESU5JVAAAAAAIREFUQURPTkUCAAAABVJFQURZAAAAAA1TVEFURUZJTklTSEVEAgAAAAhGSU5JU0hFRAAAAAAISWR4U3RhdGUAAAAAAAAAAAAAAAAAD0lkeE9yZ2FuaXplclB1YgAAAAAAAAAAAQAAAAALSWR4UmFuZEZyb20AAAAAAAAAAAIAAAAACUlkeFJhbmRUbwAAAAAAAAAAAwAAAAANSWR4UmFuZHND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YUtleXNDb3VudAkAAGgAAAACBQAAAAtkYXRhVHhDb3VudAAAAAAAAAAABQQAAAARb3JnYW5pemVyUHViS2V5NTgJAAJYAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BAAAAA1yYW5kc0NvdW50U3RyCQABpAAAAAEFAAAACnJhbmRzQ291bnQEAAAACWluaXRTdGF0ZQkBAAAAEmZvcm1hdFN0YXRlRGF0YVN0cgAAAA4FAAAACVNUQVRFSU5JVAUAAAARb3JnYW5pemVyUHViS2V5NTgJAAGkAAAAAQUAAAAIcmFuZEZyb20JAAGkAAAAAQUAAAAGcmFuZFRvBQAAAA1yYW5kc0NvdW50U3RyBQAAAA1yYW5kc0NvdW50U3RyCQABpAAAAAEFAAAADWRhdGFLZXlzQ291bnQCAAAABG51bGwCAAAAATACAAAAATACAAAAATECAAAAATACAAAAATECAAAAAAkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAACXNlc3Npb25JZAUAAAAJaW5pdFN0YXRlBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAGU0VSVkVSBQAAAAhyYW5kc1BtdAUAAAAEdW5pdAUAAAADbmlsAAAAAWkBAAAABXJlYWR5AAAAAQAAAAlzZXNzaW9uSWQEAAAADmRyYXdQYXJhbXNMaXN0CQEAAAATZXh0cmFjdEdhbWVEYXRhTGlzdAAAAAEFAAAACXNlc3Npb25JZAQAAAAJZHJhd1N0YXRlCQABkQAAAAIFAAAADmRyYXdQYXJhbXNMaXN0BQAAAAhJZHhTdGF0ZQQAAAARb3JnYW5pemVyUHViS2V5NTgJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QFAAAAD0lkeE9yZ2FuaXplclB1YgQAAAANcmFuZHNDb3VudFN0cgkAAZEAAAACBQAAAA5kcmF3UGFyYW1zTGlzdAUAAAANSWR4UmFuZHNDb3VudAQAAAATcmVtYWluUmFuZHNDb3VudFN0cgkAAZEAAAACBQAAAA5kcmF3UGFyYW1zTGlzdAUAAAATSWR4UmVtYWluUmFuZHNDb3VudAQAAAAHZnJvbVN0cgkAAZEAAAACBQAAAA5kcmF3UGFyYW1zTGlzdAUAAAALSWR4UmFuZEZyb20EAAAABXRvU3RyCQABkQAAAAIFAAAADmRyYXdQYXJhbXNMaXN0BQAAAAlJZHhSYW5kVG8EAAAADWRhdGFLZXlzQ291bnQJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QFAAAAEElkeERhdGFLZXlzQ291bnQEAAAAD29yZ2FuaXplclB1YktleQkAAlkAAAABBQAAABFvcmdhbml6ZXJQdWJLZXk1OAMJAQAAAAIhPQAAAAIFAAAACWRyYXdTdGF0ZQUAAAAJU1RBVEVJTklUCQAAAgAAAAEJAAEsAAAAAgUAAAAJc2Vzc2lvbklkAgAAAD4gZHJhdzogbW92aW5nIGludG8gUkVBRFkgc3RhdGUgaXMgYWxsb3dlZCBvbmx5IGZyb20gSU5JVCBzdGF0ZQMJAQAAAAIhPQAAAAIFAAAAD29yZ2FuaXplclB1YktleQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5CQAAAgAAAAEJAAEsAAAAAgUAAAAJc2Vzc2lvbklkAgAAADtkcmF3OiBtb3ZpbmcgaW50byBSRUFEWSBzdGF0ZSBpcyBhbGxvd2VkIGZvciBvcmdhbml6ZXIgb25seQQAAAAKcmVhZHlTdGF0ZQkBAAAAEmZvcm1hdFN0YXRlRGF0YVN0cgAAAA4FAAAACERBVEFET05FBQAAABFvcmdhbml6ZXJQdWJLZXk1OAUAAAAHZnJvbVN0cgUAAAAFdG9TdHIFAAAADXJhbmRzQ291bnRTdHIFAAAAE3JlbWFpblJhbmRzQ291bnRTdHIFAAAADWRhdGFLZXlzQ291bnQJAAJYAAAAAQgFAAAAAWkAAAANdHJhbnNhY3Rpb25JZAIAAAABMAIAAAABMAIAAAABMQIAAAABMAIAAAABMQIAAAAACQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAlzZXNzaW9uSWQFAAAACnJlYWR5U3RhdGUFAAAAA25pbAAAAAFpAQAAAAZyYW5kb20AAAACAAAACXNlc3Npb25JZAAAAAdyc2FTaWduBAAAAA5kcmF3UGFyYW1zTGlzdAkBAAAAE2V4dHJhY3RHYW1lRGF0YUxpc3QAAAABBQAAAAlzZXNzaW9uSWQEAAAACWRyYXdTdGF0ZQkAAZEAAAACBQAAAA5kcmF3UGFyYW1zTGlzdAUAAAAISWR4U3RhdGUEAAAAEW9yZ2FuaXplclB1YktleTU4CQABkQAAAAIFAAAADmRyYXdQYXJhbXNMaXN0BQAAAA9JZHhPcmdhbml6ZXJQdWIEAAAADXJhbmRzQ291bnRTdHIJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QFAAAADUlkeFJhbmRzQ291bnQEAAAAEHJlbWFpblJhbmRzQ291bnQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAA5kcmF3UGFyYW1zTGlzdAUAAAATSWR4UmVtYWluUmFuZHNDb3VudAQAAAAPbGFzdE9mZnNldEJ5dGVzCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QFAAAADUlkeExhc3RPZmZzZXQEAAAADGN1cnJSYW5kc1N0cgkAAZEAAAACBQAAAA5kcmF3UGFyYW1zTGlzdAUAAAAMSWR4Q3VyclJhbmRzBAAAAAdmcm9tU3RyCQABkQAAAAIFAAAADmRyYXdQYXJhbXNMaXN0BQAAAAtJZHhSYW5kRnJvbQQAAAAFdG9TdHIJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QFAAAACUlkeFJhbmRUbwQAAAAMZGF0YURvbmVUeElkCQABkQAAAAIFAAAADmRyYXdQYXJhbXNMaXN0BQAAAA9JZHhEYXRhRG9uZVR4SWQEAAAACHNsb3dJZHgxCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QAAAAAAAAAAAkEAAAACHNsb3dJZHgyCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QAAAAAAAAAAAoEAAAACGZhc3RJZHgxCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QAAAAAAAAAAAsEAAAACGZhc3RJZHgyCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QAAAAAAAAAAAwEAAAABGZyb20JAQAAAA1wYXJzZUludFZhbHVlAAAAAQUAAAAHZnJvbVN0cgQAAAACdG8JAQAAAA1wYXJzZUludFZhbHVlAAAAAQUAAAAFdG9TdHIEAAAAD29yZ2FuaXplclB1YktleQkAAlkAAAABBQAAABFvcmdhbml6ZXJQdWJLZXk1OAMJAQAAAAIhPQAAAAIFAAAACWRyYXdTdGF0ZQUAAAAIREFUQURPTkUJAAACAAAAAQkAASwAAAACBQAAAAlzZXNzaW9uSWQCAAAAOyBkcmF3OiBpdCBtdXN0IGJlIGluIFJFQURZIHN0YXRlIHRvIGdlbmVyYXRlIHJhbmRvbSBudW1iZXJzAwkBAAAAASEAAAABCQAB+AAAAAQFAAAABlNIQTI1NgkAAMsAAAACCQABmwAAAAEFAAAACXNlc3Npb25JZAkAAZsAAAABBQAAAAxkYXRhRG9uZVR4SWQFAAAAB3JzYVNpZ24FAAAACVJTQVBVQkxJQwkAAAIAAAABAgAAABVJbnZhbGlkIFJTQSBzaWduYXR1cmUEAAAAC3JhbmRHZW5JbmZvCQEAAAAMZ2VuZXJhdGVSYW5kAAAACwUAAAAJc2Vzc2lvbklkBQAAAARmcm9tBQAAAAJ0bwUAAAAHcnNhU2lnbgUAAAAMY3VyclJhbmRzU3RyBQAAABByZW1haW5SYW5kc0NvdW50BQAAAA9sYXN0T2Zmc2V0Qnl0ZXMFAAAACHNsb3dJZHgxBQAAAAhzbG93SWR4MgUAAAAIZmFzdElkeDEFAAAACGZhc3RJZHgyBAAAABZuZXdSZW1haW5SYW5kc0NvdW50U3RyCQABkQAAAAIFAAAAC3JhbmRHZW5JbmZvAAAAAAAAAAABBAAAAAhuZXdTdGF0ZQMJAAAAAAAAAgUAAAAWbmV3UmVtYWluUmFuZHNDb3VudFN0cgIAAAABMAUAAAANU1RBVEVGSU5JU0hFRAUAAAAIREFUQURPTkUJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAACXNlc3Npb25JZAkBAAAAEmZvcm1hdFN0YXRlRGF0YVN0cgAAAA4FAAAACG5ld1N0YXRlBQAAABFvcmdhbml6ZXJQdWJLZXk1OAUAAAAHZnJvbVN0cgUAAAAFdG9TdHIFAAAADXJhbmRzQ291bnRTdHIFAAAAFm5ld1JlbWFpblJhbmRzQ291bnRTdHIJAAGRAAAAAgUAAAAOZHJhd1BhcmFtc0xpc3QFAAAAEElkeERhdGFLZXlzQ291bnQFAAAADGRhdGFEb25lVHhJZAkAAZEAAAACBQAAAAtyYW5kR2VuSW5mbwAAAAAAAAAAAgkAAZEAAAACBQAAAAtyYW5kR2VuSW5mbwAAAAAAAAAAAwkAAZEAAAACBQAAAAtyYW5kR2VuSW5mbwAAAAAAAAAABAkAAZEAAAACBQAAAAtyYW5kR2VuSW5mbwAAAAAAAAAABQkAAZEAAAACBQAAAAtyYW5kR2VuSW5mbwAAAAAAAAAABgkAAZEAAAACBQAAAAtyYW5kR2VuSW5mbwAAAAAAAAAAAAUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAQAAAAHJG1hdGNoMAUAAAACdHgDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAD0RhdGFUcmFuc2FjdGlvbgQAAAADZHR4BQAAAAckbWF0Y2gwBAAAAAVkYXRhMAkAAZEAAAACCAUAAAADZHR4AAAABGRhdGEAAAAAAAAAAAAEAAAACXNlc3Npb25JZAkAAS8AAAACCAUAAAAFZGF0YTAAAAADa2V5BQAAABBTRVNTSU9OSURGSVhTSVpFBAAAAA5kcmF3UGFyYW1zTGlzdAkBAAAAE2V4dHJhY3RHYW1lRGF0YUxpc3QAAAABBQAAAAlzZXNzaW9uSWQEAAAACWRyYXdTdGF0ZQkAAZEAAAACBQAAAA5kcmF3UGFyYW1zTGlzdAUAAAAISWR4U3RhdGUEAAAAEW9yZ2FuaXplclB1YktleTU4CQABkQAAAAIFAAAADmRyYXdQYXJhbXNMaXN0BQAAAA9JZHhPcmdhbml6ZXJQdWIEAAAADWRhdGFLZXlzQ291bnQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAA5kcmF3UGFyYW1zTGlzdAUAAAAQSWR4RGF0YUtleXNDb3VudAQAAAAPb3JnYW5pemVyUHViS2V5CQACWQAAAAEFAAAAEW9yZ2FuaXplclB1YktleTU4BAAAABBkYXRhRW50cmllc0NvdW50CQABkAAAAAEIBQAAAANkdHgAAAAEZGF0YQQAAAAIc2lnVmFsaWQJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAABQAAAA9vcmdhbml6ZXJQdWJLZXkEAAAADWRhdGFTaXplVmFsaWQJAAAAAAAAAgUAAAAQZGF0YUVudHJpZXNDb3VudAAAAAAAAAAABQQAAAAJa2V5c1ZhbGlkAwMDAwkBAAAADnZhbGlkYXRlRHR4S2V5AAAAAwUAAAAJc2Vzc2lvbklkBQAAAA1kYXRhS2V5c0NvdW50BQAAAAVkYXRhMAkBAAAADnZhbGlkYXRlRHR4S2V5AAAAAwUAAAAJc2Vzc2lvbklkBQAAAA1kYXRhS2V5c0NvdW50CQABkQAAAAIIBQAAAANkdHgAAAAEZGF0YQAAAAAAAAAAAQcJAQAAAA52YWxpZGF0ZUR0eEtleQAAAAMFAAAACXNlc3Npb25JZAUAAAANZGF0YUtleXNDb3VudAkAAZEAAAACCAUAAAADZHR4AAAABGRhdGEAAAAAAAAAAAIHCQEAAAAOdmFsaWRhdGVEdHhLZXkAAAADBQAAAAlzZXNzaW9uSWQFAAAADWRhdGFLZXlzQ291bnQJAAGRAAAAAggFAAAAA2R0eAAAAARkYXRhAAAAAAAAAAADBwkBAAAADnZhbGlkYXRlRHR4S2V5AAAAAwUAAAAJc2Vzc2lvbklkBQAAAA1kYXRhS2V5c0NvdW50CQABkQAAAAIIBQAAAANkdHgAAAAEZGF0YQAAAAAAAAAABAcDAwMJAAAAAAAAAgUAAAAJZHJhd1N0YXRlBQAAAAlTVEFURUlOSVQFAAAACHNpZ1ZhbGlkBwUAAAANZGF0YVNpemVWYWxpZAcFAAAACWtleXNWYWxpZAcDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAFFNldFNjcmlwdFRyYW5zYWN0aW9uBAAAAARzc3R4BQAAAAckbWF0Y2gwBgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAATVHJhbnNmZXJUcmFuc2FjdGlvbgQAAAADdHR4BQAAAAckbWF0Y2gwBgey4NWG", "chainId": 84, "height": 619341, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 3 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let a = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmpuXcI/o4pIB5ywv9DOOGapTBUwRVlM/6+H6hFelOXtkrwY/YItmPxEDpz7rAerQPQe9tDPEaAv/GnlEztybOFXgu9DzDe8YoMRD1vakgoAcogmbY58QD6KMj5HkoVj/yTNIc9szj5qhIlrAdmb3KLL6hQU7y8+Jj69BWVPsaQgkspSdeYtb1tHQc7t95n7OZ56r2A7G3+bQf6nSMkPkAhIrEpbCm58oiGBczdTd/LqFSVotZsbL7Yh6SHLfnHeD+QgcfJrnam8OHMGJEJTRXjILeHGjlRCP8oVpioHry1S2xPx5sVzIm2MM+CzYenAGlo0j26atBhiULoTulwD3pQIDAQAB") | |
5 | + | ||
6 | + | let b = addressFromStringValue("3NCiG28LmWyTigWG13E5QnvdHBsZFYXSS2j") | |
7 | + | ||
8 | + | let c = ((100 * 1000) * 1000) | |
9 | + | ||
10 | + | let d = 44 | |
11 | + | ||
12 | + | let e = ((5 * c) / 1000) | |
13 | + | ||
14 | + | let f = 14 | |
15 | + | ||
16 | + | let g = "INIT" | |
17 | + | ||
18 | + | let h = "READY" | |
19 | + | ||
20 | + | let i = "FINISHED" | |
21 | + | ||
22 | + | let j = 0 | |
23 | + | ||
24 | + | let k = 1 | |
25 | + | ||
26 | + | let l = 2 | |
27 | + | ||
28 | + | let m = 3 | |
29 | + | ||
30 | + | let n = 4 | |
31 | + | ||
32 | + | let o = 5 | |
33 | + | ||
34 | + | let p = 6 | |
35 | + | ||
36 | + | let q = 7 | |
37 | + | ||
38 | + | let r = 8 | |
39 | + | ||
40 | + | let s = 13 | |
41 | + | ||
42 | + | func t (u) = if ((0 > u)) | |
43 | + | then -(u) | |
44 | + | else u | |
45 | + | ||
46 | + | ||
47 | + | func v (w,x,y,z,A,B,C,D,E,F,G,H,I,J) = { | |
48 | + | let K = ((((((((((((((((((((((((w + "_") + x) + "_") + y) + "_") + z) + "_") + A) + "_") + B) + "_") + C) + "_") + D) + "_") + E) + "_") + F) + "_") + G) + "_") + H) + "_") + I) | |
49 | + | if ((J == "")) | |
50 | + | then ((K + "_") + "-") | |
51 | + | else ((K + "_") + J) | |
52 | + | } | |
53 | + | ||
54 | + | ||
55 | + | func L (M) = { | |
56 | + | let N = getStringValue(this, M) | |
57 | + | split(N, "_") | |
58 | + | } | |
59 | + | ||
60 | + | ||
61 | + | func O (P,Q,R,B,S) = { | |
62 | + | let T = ((t(toInt(S)) % P) + Q) | |
63 | + | let U = toString(T) | |
64 | + | let V = isDefined(indexOf(R, U)) | |
65 | + | if (if (!(V)) | |
66 | + | then (B > 0) | |
67 | + | else false) | |
68 | + | then [((R + "-") + U), "yes"] | |
69 | + | else [R, ""] | |
70 | + | } | |
71 | + | ||
72 | + | ||
73 | + | func W (M,X,Y,Z,R,B,aa,ab,ac,ad,ae) = { | |
74 | + | let af = if (((aa + 1) > 183)) | |
75 | + | then if ((ae > 241)) | |
76 | + | then [0, (ab + 1), (ac + 1), 0, 1] | |
77 | + | else [0, ab, ac, (ad + 1), (ae + 1)] | |
78 | + | else [(aa + 1), ab, ac, ad, ae] | |
79 | + | let ag = af[0] | |
80 | + | let ah = af[1] | |
81 | + | let ai = af[2] | |
82 | + | let aj = af[3] | |
83 | + | let ak = af[4] | |
84 | + | let al = (((((((take(drop(Z, ah), 1) + take(drop(Z, 1), 1)) + take(drop(Z, aj), 1)) + take(drop(Z, 3), 1)) + take(drop(Z, ai), 1)) + take(drop(Z, 5), 1)) + take(drop(Z, 6), 1)) + take(drop(Z, ak), 1)) | |
85 | + | let am = ((sha256(al) + blake2b256(al)) + keccak256(al)) | |
86 | + | let P = ((Y - X) + 1) | |
87 | + | let an = O(P, X, R, B, drop(am, ag)) | |
88 | + | let ao = if ((an[1] != "")) | |
89 | + | then (B - 1) | |
90 | + | else B | |
91 | + | let ap = O(P, X, an[0], ao, drop(am, (ag + 1))) | |
92 | + | let aq = if ((ap[1] != "")) | |
93 | + | then (ao - 1) | |
94 | + | else ao | |
95 | + | let ar = O(P, X, ap[0], aq, drop(am, (ag + 2))) | |
96 | + | let as = if ((ar[1] != "")) | |
97 | + | then (aq - 1) | |
98 | + | else aq | |
99 | + | let at = O(P, X, ar[0], as, drop(am, (ag + 3))) | |
100 | + | let au = if ((at[1] != "")) | |
101 | + | then (as - 1) | |
102 | + | else as | |
103 | + | let av = O(P, X, at[0], au, drop(am, (ag + 4))) | |
104 | + | let aw = if ((av[1] != "")) | |
105 | + | then (au - 1) | |
106 | + | else au | |
107 | + | let ax = O(P, X, av[0], aw, drop(am, (ag + 5))) | |
108 | + | let ay = if ((ax[1] != "")) | |
109 | + | then (aw - 1) | |
110 | + | else aw | |
111 | + | let az = O(P, X, ax[0], ay, drop(am, (ag + 6))) | |
112 | + | let aA = if ((az[1] != "")) | |
113 | + | then (ay - 1) | |
114 | + | else ay | |
115 | + | let aB = O(P, X, az[0], aA, drop(am, (ag + 7))) | |
116 | + | let aC = if ((aB[1] != "")) | |
117 | + | then (aA - 1) | |
118 | + | else aA | |
119 | + | let aD = O(P, X, aB[0], aC, drop(am, (ag + 8))) | |
120 | + | let aE = if ((aD[1] != "")) | |
121 | + | then (aC - 1) | |
122 | + | else aC | |
123 | + | let aF = O(P, X, aD[0], aE, drop(am, (ag + 9))) | |
124 | + | let aG = if ((aF[1] != "")) | |
125 | + | then (aE - 1) | |
126 | + | else aE | |
127 | + | let aH = O(P, X, aF[0], aG, drop(am, (ag + 10))) | |
128 | + | let aI = if ((aH[1] != "")) | |
129 | + | then (aG - 1) | |
130 | + | else aG | |
131 | + | [aH[0], if ((aI == 0)) | |
132 | + | then "0" | |
133 | + | else toString(aI), toString((ag + 10)), toString(ah), toString(ai), toString(aj), toString(ak)] | |
134 | + | } | |
135 | + | ||
136 | + | ||
137 | + | func aJ (M,C,aK) = { | |
138 | + | let aL = split(aK.key, "_") | |
139 | + | if ((size(aL) != 2)) | |
140 | + | then throw("Invalid data key format. It must follow to ${sessionId}_${num}") | |
141 | + | else { | |
142 | + | let aM = aL[0] | |
143 | + | let aN = aL[1] | |
144 | + | if ((M != aM)) | |
145 | + | then throw(((("Several data keys have different sessionId: " + M) + " and ") + aM)) | |
146 | + | else if (isDefined(getString(this, aK.key))) | |
147 | + | then throw(("One of the data keys has already presented in account state: key=" + aK.key)) | |
148 | + | else if ((size(aN) > 4)) | |
149 | + | then throw("Invalid data key format. It must follow to ${sessionId}_${num} where ${num} length couldn't be greater than 4") | |
150 | + | else if ((take(aN, 1) == "0")) | |
151 | + | then throw("Invalid data key format. It must follow to ${sessionId}_${num} where ${num} couldn't start from 0") | |
152 | + | else { | |
153 | + | let aO = parseInt(aN) | |
154 | + | if (isDefined(aO)) | |
155 | + | then { | |
156 | + | let aP = extract(aO) | |
157 | + | if (if ((1 > aP)) | |
158 | + | then true | |
159 | + | else (aP > C)) | |
160 | + | then throw((((("Invalid data key format. It must follow to ${sessionId}_${num}" + " where ${num} must be a valid int value from 1 to ") + toString(C)) + " but actualNum=") + toString(aP))) | |
161 | + | else { | |
162 | + | let aQ = aK.value | |
163 | + | if ($isInstanceOf(aQ, "String")) | |
164 | + | then { | |
165 | + | let aR = aQ | |
166 | + | true | |
167 | + | } | |
168 | + | else throw((M + " draw: only String type is accepted for data transactions")) | |
169 | + | } | |
170 | + | } | |
171 | + | else throw((("Invalid data key format. It must follow to ${sessionId}_${num}" + " where ${num} must be a valid int value from 1 to 7145 but actualNum=") + aN)) | |
172 | + | } | |
173 | + | } | |
174 | + | } | |
175 | + | ||
176 | + | ||
177 | + | func aS (A,aT,aU) = { | |
178 | + | let aV = 1000 | |
179 | + | let aW = ((13 * c) / 100) | |
180 | + | let aX = 50 | |
181 | + | let aY = ((8 * c) / 100) | |
182 | + | let aZ = 5000 | |
183 | + | let ba = ((297 * c) / 100) | |
184 | + | let bb = 1000 | |
185 | + | let bc = ((143 * c) / 100) | |
186 | + | let bd = 50000 | |
187 | + | let be = ((1427 * c) / 100) | |
188 | + | let bf = 5000 | |
189 | + | let bg = ((705 * c) / 100) | |
190 | + | let bh = if ((aV > A)) | |
191 | + | then (aW + ((A / aX) * aY)) | |
192 | + | else if ((aZ > A)) | |
193 | + | then (ba + (((A / bb) - 1) * bc)) | |
194 | + | else if ((bd > A)) | |
195 | + | then (be + (((A / bf) - 1) * bg)) | |
196 | + | else throw("Please contact our sales team to generate more than 50k rands") | |
197 | + | let bi = (bh + aU) | |
198 | + | if (isDefined(aT.assetId)) | |
199 | + | then throw("Only WAVES can be used as a payment for rands generation") | |
200 | + | else if ((bi > aT.amount)) | |
201 | + | then throw(((((("Attached payment is to small to generate " + toString(A)) + " unique randoms numbers and upload at least 1 data tx: actualPmt=") + toString(aT.amount)) + " but minPmt is ") + toString(bi))) | |
202 | + | else bh | |
203 | + | } | |
204 | + | ||
205 | + | ||
206 | + | @Callable(bj) | |
207 | + | func initDraw (y,z,A) = { | |
208 | + | let M = toBase58String(bj.transactionId) | |
209 | + | let bk = ((z - y) + 1) | |
210 | + | let bl = (bk / 2) | |
211 | + | if (if ((0 >= y)) | |
212 | + | then true | |
213 | + | else (0 >= z)) | |
214 | + | then throw("randFrom and randTo must be greater than 0") | |
215 | + | else if ((y >= z)) | |
216 | + | then throw("randFrom must be strict less then randTo") | |
217 | + | else if ((A > bk)) | |
218 | + | then throw(((((((("Impossible to generate " + toString(A)) + " unique numbers for provided random range [") + toString(y)) + ", ") + toString(z)) + "] with actual size ") + toString(bk))) | |
219 | + | else if ((A > bl)) | |
220 | + | then throw(((((((((("randsCount must be less then 50% of passed range length: range=[" + toString(y)) + ", ") + toString(z)) + "], rangeLength=") + toString(bk)) + " randsCount=") + toString(A)) + " allowedRandsCount=") + toString(bl))) | |
221 | + | else if (!(isDefined(bj.payment))) | |
222 | + | then throw("Please provide payment to generate unique random numbers") | |
223 | + | else { | |
224 | + | let aT = extract(bj.payment) | |
225 | + | let aU = ((5 * c) / 1000) | |
226 | + | let bm = aS(A, aT, aU) | |
227 | + | let bn = (aT.amount - bm) | |
228 | + | let bo = (bn / aU) | |
229 | + | let C = (bo * 5) | |
230 | + | let x = toBase58String(bj.callerPublicKey) | |
231 | + | let bp = toString(A) | |
232 | + | let bq = v(g, x, toString(y), toString(z), bp, bp, toString(C), "null", "0", "0", "1", "0", "1", "") | |
233 | + | ScriptResult(WriteSet([DataEntry(M, bq)]), TransferSet([ScriptTransfer(b, bm, unit)])) | |
234 | + | } | |
235 | + | } | |
236 | + | ||
237 | + | ||
238 | + | ||
239 | + | @Callable(bj) | |
240 | + | func ready (M) = { | |
241 | + | let br = L(M) | |
242 | + | let w = br[j] | |
243 | + | let x = br[k] | |
244 | + | let bp = br[n] | |
245 | + | let bs = br[o] | |
246 | + | let bt = br[l] | |
247 | + | let bu = br[m] | |
248 | + | let C = br[p] | |
249 | + | let bv = fromBase58String(x) | |
250 | + | if ((w != g)) | |
251 | + | then throw((M + " draw: moving into READY state is allowed only from INIT state")) | |
252 | + | else if ((bv != bj.callerPublicKey)) | |
253 | + | then throw((M + "draw: moving into READY state is allowed for organizer only")) | |
254 | + | else { | |
255 | + | let bw = v(h, x, bt, bu, bp, bs, C, toBase58String(bj.transactionId), "0", "0", "1", "0", "1", "") | |
256 | + | WriteSet([DataEntry(M, bw)]) | |
257 | + | } | |
258 | + | } | |
259 | + | ||
260 | + | ||
261 | + | ||
262 | + | @Callable(bj) | |
263 | + | func random (M,Z) = { | |
264 | + | let br = L(M) | |
265 | + | let w = br[j] | |
266 | + | let x = br[k] | |
267 | + | let bp = br[n] | |
268 | + | let bx = parseIntValue(br[o]) | |
269 | + | let aa = parseIntValue(br[r]) | |
270 | + | let R = br[s] | |
271 | + | let bt = br[l] | |
272 | + | let bu = br[m] | |
273 | + | let D = br[q] | |
274 | + | let F = parseIntValue(br[9]) | |
275 | + | let G = parseIntValue(br[10]) | |
276 | + | let H = parseIntValue(br[11]) | |
277 | + | let I = parseIntValue(br[12]) | |
278 | + | let X = parseIntValue(bt) | |
279 | + | let Y = parseIntValue(bu) | |
280 | + | let bv = fromBase58String(x) | |
281 | + | if ((w != h)) | |
282 | + | then throw((M + " draw: it must be in READY state to generate random numbers")) | |
283 | + | else if (!(rsaVerify(SHA256, (toBytes(M) + toBytes(D)), Z, a))) | |
284 | + | then throw("Invalid RSA signature") | |
285 | + | else { | |
286 | + | let by = W(M, X, Y, Z, R, bx, aa, F, G, H, I) | |
287 | + | let bz = by[1] | |
288 | + | let bA = if ((bz == "0")) | |
289 | + | then i | |
290 | + | else h | |
291 | + | WriteSet([DataEntry(M, v(bA, x, bt, bu, bp, bz, br[p], D, by[2], by[3], by[4], by[5], by[6], by[0]))]) | |
292 | + | } | |
293 | + | } | |
294 | + | ||
295 | + | ||
296 | + | @Verifier(bB) | |
297 | + | func bC () = { | |
298 | + | let aQ = bB | |
299 | + | if ($isInstanceOf(aQ, "DataTransaction")) | |
300 | + | then { | |
301 | + | let bD = aQ | |
302 | + | let bE = bD.data[0] | |
303 | + | let M = take(bE.key, d) | |
304 | + | let br = L(M) | |
305 | + | let w = br[j] | |
306 | + | let x = br[k] | |
307 | + | let C = parseIntValue(br[p]) | |
308 | + | let bv = fromBase58String(x) | |
309 | + | let bF = size(bD.data) | |
310 | + | let bG = sigVerify(bB.bodyBytes, bB.proofs[0], bv) | |
311 | + | let bH = (bF == 5) | |
312 | + | let bI = if (if (if (if (aJ(M, C, bE)) | |
313 | + | then aJ(M, C, bD.data[1]) | |
314 | + | else false) | |
315 | + | then aJ(M, C, bD.data[2]) | |
316 | + | else false) | |
317 | + | then aJ(M, C, bD.data[3]) | |
318 | + | else false) | |
319 | + | then aJ(M, C, bD.data[4]) | |
320 | + | else false | |
321 | + | if (if (if ((w == g)) | |
322 | + | then bG | |
323 | + | else false) | |
324 | + | then bH | |
325 | + | else false) | |
326 | + | then bI | |
327 | + | else false | |
328 | + | } | |
329 | + | else if ($isInstanceOf(aQ, "SetScriptTransaction")) | |
330 | + | then { | |
331 | + | let bJ = aQ | |
332 | + | true | |
333 | + | } | |
334 | + | else if ($isInstanceOf(aQ, "TransferTransaction")) | |
335 | + | then { | |
336 | + | let bK = aQ | |
337 | + | true | |
338 | + | } | |
339 | + | else false | |
340 | + | } | |
341 | + |
github/deemru/w8io/026f985 45.81 ms ◑