tx · JCQZwPvbiaA5PsjzFtxuU73eHxcpTtj5TMkE9UmcmxVw 3Mu2nqkKHbGJRAki6gPoBaLE5RSiJN1m1DC: -0.01500000 Waves 2020.04.29 20:03 [976332] smart account 3Mu2nqkKHbGJRAki6gPoBaLE5RSiJN1m1DC > SELF 0.00000000 Waves
{ "type": 13, "id": "JCQZwPvbiaA5PsjzFtxuU73eHxcpTtj5TMkE9UmcmxVw", "fee": 1500000, "feeAssetId": null, "timestamp": 1588179919600, "version": 1, "sender": "3Mu2nqkKHbGJRAki6gPoBaLE5RSiJN1m1DC", "senderPublicKey": "Fcmt4Df1v4zeGFhgMBx3PFRDq8BYMsKQbkGBhF1jrXZy", "proofs": [ "3JwvRnhWhqZFu64d8M9p8jLJi5LtoGPBh6XcQMx3LusdVAHguwyyYN322ghkhJyMgL5afBhW4rxo6dok5KXNUPYY" ], "script": "base64:AAIDAAAAAAAAAA0IARIDCgEIEgQKAggCAAAAKQAAAAAJUlNBUFVCTElDCQACWwAAAAECAAABj2Jhc2U2NDpNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQW1wdVhjSS9vNHBJQjV5d3Y5RE9PR2FwVEJVd1JWbE0vNitINmhGZWxPWHRrcndZL1lJdG1QeEVEcHo3ckFlclFQUWU5dERQRWFBdi9HbmxFenR5Yk9GWGd1OUR6RGU4WW9NUkQxdmFrZ29BY29nbWJZNThRRDZLTWo1SGtvVmoveVROSWM5c3pqNXFoSWxyQWRtYjNLTEw2aFFVN3k4K0pqNjlCV1ZQc2FRZ2tzcFNkZVl0YjF0SFFjN3Q5NW43T1o1NnIyQTdHMytiUWY2blNNa1BrQWhJckVwYkNtNThvaUdCY3pkVGQvTHFGU1ZvdFpzYkw3WWg2U0hMZm5IZUQrUWdjZkpybmFtOE9ITUdKRUpUUlhqSUxlSEdqbFJDUDhvVnBpb0hyeTFTMnhQeDVzVnpJbTJNTStDelllbkFHbG8wajI2YXRCaGlVTG9UdWx3RDNwUUlEQVFBQgAAAAAGU0VSVkVSCQEAAAAcQGV4dHJVc2VyKGFkZHJlc3NGcm9tU3RyaW5nKQAAAAECAAAAIzNONEFpYjVpdWJXaUdNemRUaDZ3V2lWRFZibzMyb2VWVW1IAAAAABNSQU5ET1JBQ0xFVElNRUZSQU1FAAAAAAAAABDgAAAAAARCRVQxAAAAAAAAAAABAAAAAARCRVQyAAAAAAAAAAACAAAAAARCRVQ0AAAAAAAAAAAEAAAAAARCRVQ4AAAAAAAAAAAIAAAAAAVCRVQxNAAAAAAAAAAADgAAAAAEQkVUUwkABEwAAAACBQAAAARCRVQxCQAETAAAAAIFAAAABEJFVDIJAARMAAAAAgUAAAAEQkVUNAkABEwAAAACBQAAAARCRVQ4CQAETAAAAAIFAAAABUJFVDE0BQAAAANuaWwAAAAABldBVkVTRAAAAAAABfXhAAAAAAAFVVNETkQAAAAAAAAPQkAAAAAACERFQ0lNQUxTCQAETAAAAAIFAAAABldBVkVTRAkABEwAAAACBQAAAAVVU0RORAUAAAADbmlsAAAAAAZBU1NFVFMJAARMAAAAAgUAAAAEdW5pdAkABEwA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bWVJZAkABLUAAAACBAAAAAckbWF0Y2gwCQAEHQAAAAIFAAAABHRoaXMFAAAABmdhbWVJZAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAANzdHIFAAAAByRtYXRjaDAFAAAAA3N0cgkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAGR2FtZTogBQAAAAZnYW1lSWQCAAAACyBub3QgZm91bmQuAgAAAAFfAQAAAAx3aW5TY3JpcHRTZXQAAAAHAAAABmdhbWVJZAAAAA1wbGF5ZXJBZGRyZXNzAAAACXdpbkFtb3VudAAAAAdhc3NldElkAAAADm5ld0dhbWVEYXRhU3RyAAAADHdpbkJ5VGltZW91dAAAABFkZWNyZWFzZWRSZXNlcnZlcwQAAAAOd1NldENvbW1vbkRhdGEJAARMAAAAAgUAAAARZGVjcmVhc2VkUmVzZXJ2ZXMFAAAAA25pbAQAAAAOdFNldENvbW1vbkRhdGEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAANcGxheWVyQWRkcmVzcwUAAAAJd2luQW1vdW50CQABkQAAAAIFAAAABkFTU0VUUwUAAAAHYXNzZXRJZAUAAAADbmlsAwUAAAAMd2luQnlUaW1lb3V0BAAAABZuZXdHYW1lRGF0YVN0ckFkanVzdGVkCQABLAAAAAIFAAAADm5ld0dhbWVEYXRhU3RyAgAAAAhfVElNRU9VVAQAAAAIZ2FtZURhdGEJAQAAAAlEYXRhRW50cnkAAAACBQAAAAZnYW1lSWQFAAAAFm5ld0dhbWVEYXRhU3RyQWRqdXN0ZWQJAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIFAAAACGdhbWVEYXRhBQAAAA53U2V0Q29tbW9uRGF0YQkBAAAAC1RyYW5zZmVyU2V0AAAAAQUAAAAOdFNldENvbW1vbkRhdGEEAAAACGdhbWVEYXRhCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAGZ2FtZUlkBQAAAA5uZXdHYW1lRGF0YVN0cgkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgUAAAAIZ2FtZURhdGEFAAAADndTZXRDb21tb25EYXRhCQEAAAALVHJhbnNmZXJTZXQAAAABBQAAAA50U2V0Q29tbW9uRGF0YQAAAAIAAAABaQEAAAADYmV0AAAAAQAAAAxwbGF5ZXJDaG9pY2UEAAAABmdhbWVJZAkAAlgAAAABCAUAAAABaQAAAA10cmFuc2FjdGlvbklkAwkAAAAAAAACCAUAAAABaQAAAAdwYXltZW50BQAAAAR1bml0CQAAAgAAAAECAAAACk5vIHBheW1lbnQDCQEAAAAJaXNEZWZpbmVkAAAAAQkABB0AAAACBQAAAAR0aGlzBQAAAAZnYW1lSWQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAACUJldCBmb3I6IAUAAAAGZ2FtZUlkAgAAABIgd2FzIGFscmVhZHkgbWFkZS4EAAAAAXAJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAHcGF5bWVudAQAAAAHYXNzZXRJZAkBAAAAFXZhbGlkYXRlQW5kR2V0QXNzZXRJZAAAAAEIBQAAAAFwAAAAB2Fzc2V0SWQEAAAACmNvbW1pc3Npb24JAQAAAA1nZXRDb21taXNzaW9uAAAAAQUAAAAHYXNzZXRJZAQAAAAJd2luQW1vdW50CQEAAAAadmFsaWRhdGVCZXRBbmRHZXRXaW5BbW91bnQAAAADCAUAAAABcAAAAAZhbW91bnQFAAAAB2Fzc2V0SWQFAAAADHBsYXllckNob2ljZQQAAAAIdHhJZFVzZWQJAQAAAAlpc0RlZmluZWQAAAABCQAEHQAAAAIFAAAABHRoaXMFAAAABmdhbWVJZAQAAAAOcGxheWVyUHViS2V5NTgJAAJYAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BAAAAAtnYW1lRGF0YVN0cgkBAAAADmZvcm1hdEdhbWVEYXRhAAAABwUAAAAOU1RBVEVTVUJNSVRURUQFAAAADHBsYXllckNob2ljZQUAAAAOcGxheWVyUHViS2V5NTgFAAAABmhlaWdodAUAAAAJd2luQW1vdW50BQAAAAdhc3NldElkAgAAAAAJAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABkQAAAAIFAAAADlJFU0VSVkFUSU9OS0VZBQAAAAdhc3NldElkCQEAAAAVaW5jcmVhc2VSZXNlcnZlQW1vdW50AAAAAgUAAAAJd2luQW1vdW50BQAAAAdhc3NldElkCQAETAAAAAIJAQAAAAxpbmNyZW1lbnRJbnQAAAABBQAAAA9HQU1FU0NPVU5URVJLRVkJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAABmdhbWVJZAUAAAALZ2FtZURhdGFTdHIFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAAZTRVJWRVIFAAAACmNvbW1pc3Npb24FAAAABHVuaXQFAAAAA25pbAAAAAFpAQAAAAh3aXRoZHJhdwAAAAIAAAAGZ2FtZUlkAAAAB3JzYVNpZ24EAAAACGdhbWVEYXRhCQEAAAAPZXh0cmFjdEdhbWVEYXRhAAAAAQUAAAAGZ2FtZUlkBAAAAAlnYW1lU3RhdGUJAAGRAAAAAgUAAAAIZ2FtZURhdGEFAAAADElkeEdhbWVTdGF0ZQQAAAAMcGxheWVyQ2hvaWNlCQABkQAAAAIFAAAACGdhbWVEYXRhBQAAAA9JZHhQbGF5ZXJDaG9pY2UEAAAADXN0YXJ0ZWRIZWlnaHQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhnYW1lRGF0YQUAAAAQSWR4U3RhcnRlZEhlaWdodAQAAAAJd2luQW1vdW50CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIZ2FtZURhdGEFAAAADElkeFdpbkFtb3VudAQAAAAHYXNzZXRJZAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACGdhbWVEYXRhBQAAAApJZHhBc3NldElkBAAAAA5wbGF5ZXJQdWJLZXk1OAkAAZEAAAACBQAAAAhnYW1lRGF0YQUAAAARSWR4UGxheWVyUHViS2V5NTgEAAAADXBsYXllckFkZHJlc3MJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEJAAJZAAAAAQUAAAAOcGxheWVyUHViS2V5NTgEAAAADHdpbkJ5VGltZW91dAkAAGYAAAACCQAAZQAAAAIFAAAABmhlaWdodAUAAAANc3RhcnRlZEhlaWdodAUAAAATUkFORE9SQUNMRVRJTUVGUkFNRQQAAAARZGVjcmVhc2VkUmVzZXJ2ZXMJAQAAABZkZWNyZWFzZVJlc2VydmVkQW1vdW50AAAAAwUAAAAGZ2FtZUlkBQAAAAdhc3NldElkBQAAAAl3aW5BbW91bnQDCQEAAAACIT0AAAACBQAAAAlnYW1lU3RhdGUFAAAADlNUQVRFU1VCTUlUVEVECQAAAgAAAAECAAAAJEludmFsaWQgZ2FtZSBzdGF0ZSBmb3IgcGFzc2VkIGdhbWVJZAMFAAAADHdpbkJ5VGltZW91dAQAAAAHcmFuZFN0cgkAAS8AAAACBQAAAAxwbGF5ZXJDaG9pY2UAAAAAAAAAAAEEAAAADm5ld0dhbWVEYXRhU3RyCQEAAAAOZm9ybWF0R2FtZURhdGEAAAAHBQAAAAhTVEFURVdPTgUAAAAMcGxheWVyQ2hvaWNlBQAAAA5wbGF5ZXJQdWJLZXk1OAUAAAANc3RhcnRlZEhlaWdodAUAAAAJd2luQW1vdW50BQAAAAdhc3NldElkBQAAAAdyYW5kU3RyCQEAAAAMd2luU2NyaXB0U2V0AAAABwUAAAAGZ2FtZUlkBQAAAA1wbGF5ZXJBZGRyZXNzBQAAAAl3aW5BbW91bnQFAAAAB2Fzc2V0SWQFAAAADm5ld0dhbWVEYXRhU3RyBQAAAAx3aW5CeVRpbWVvdXQFAAAAEWRlY3JlYXNlZFJlc2VydmVzBAAAAAdyYW5kU3RyCQEAAAAPZ2VuZXJhdGVSYW5kSW50AAAAAgUAAAAGZ2FtZUlkBQAAAAdyc2FTaWduAwkBAAAAC2lzUGxheWVyV2luAAAAAgUAAAAMcGxheWVyQ2hvaWNlBQAAAAdyYW5kU3RyBAAAAA5uZXdHYW1lRGF0YVN0cgkBAAAADmZvcm1hdEdhbWVEYXRhAAAABwUAAAAIU1RBVEVXT04FAAAADHBsYXllckNob2ljZQUAAAAOcGxheWVyUHViS2V5NTgFAAAADXN0YXJ0ZWRIZWlnaHQFAAAACXdpbkFtb3VudAUAAAAHYXNzZXRJZAUAAAAHcmFuZFN0cgkBAAAADHdpblNjcmlwdFNldAAAAAcFAAAABmdhbWVJZAUAAAANcGxheWVyQWRkcmVzcwUAAAAJd2luQW1vdW50BQAAAAdhc3NldElkBQAAAA5uZXdHYW1lRGF0YVN0cgUAAAAMd2luQnlUaW1lb3V0BQAAABFkZWNyZWFzZWRSZXNlcnZlcwQAAAAObmV3R2FtZURhdGFTdHIJAQAAAA5mb3JtYXRHYW1lRGF0YQAAAAcFAAAACVNUQVRFTE9TVAUAAAAMcGxheWVyQ2hvaWNlBQAAAA5wbGF5ZXJQdWJLZXk1OAUAAAANc3RhcnRlZEhlaWdodAUAAAAJd2luQW1vdW50BQAAAAdhc3NldElkBQAAAAdyYW5kU3RyCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAZnYW1lSWQFAAAADm5ld0dhbWVEYXRhU3RyCQAETAAAAAIFAAAAEWRlY3JlYXNlZFJlc2VydmVzBQAAAANuaWwAAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAAAwkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXkEAAAAByRtYXRjaDAFAAAAAnR4AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABNUcmFuc2ZlclRyYW5zYWN0aW9uBAAAAAN0dHgFAAAAByRtYXRjaDAEAAAAB2Fzc2V0SWQJAQAAABV2YWxpZGF0ZUFuZEdldEFzc2V0SWQAAAABCAUAAAADdHR4AAAAB2Fzc2V0SWQJAABnAAAAAgkAAGUAAAACCQAD6wAAAAIFAAAABHRoaXMIBQAAAAN0dHgAAAAHYXNzZXRJZAgFAAAAA3R0eAAAAAZhbW91bnQJAQAAAAhnZXRJbnRPcgAAAAIJAAGRAAAAAgUAAAAOUkVTRVJWQVRJT05LRVkFAAAAB2Fzc2V0SWQAAAAAAAAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAFFNldFNjcmlwdFRyYW5zYWN0aW9uBAAAAANzdHgFAAAAByRtYXRjaDADCQAAAAAAAAIJAQAAAAhnZXRJbnRPcgAAAAIJAAGRAAAAAgUAAAAOUkVTRVJWQVRJT05LRVkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAAAAAAAAAgkBAAAACGdldEludE9yAAAAAgkAAZEAAAACBQAAAA5SRVNFUlZBVElPTktFWQAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAcHB+waxSQ=", "chainId": 84, "height": 976332, "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("3N4Aib5iubWiGMzdTh6wWiVDVbo32oeVUmH") | |
7 | + | ||
8 | + | let c = 4320 | |
9 | + | ||
10 | + | let d = 1 | |
11 | + | ||
12 | + | let e = 2 | |
13 | + | ||
14 | + | let f = 4 | |
15 | + | ||
16 | + | let g = 8 | |
17 | + | ||
18 | + | let h = 14 | |
19 | + | ||
20 | + | let i = [d, e, f, g, h] | |
21 | + | ||
22 | + | let j = 100000000 | |
23 | + | ||
24 | + | let k = 1000000 | |
25 | + | ||
26 | + | let l = [j, k] | |
27 | + | ||
28 | + | let m = [unit, fromBase58String("3KFXBGGLCjA5Z2DuW4Dq9fDDrHjJJP1ZEkaoajSzuKsC")] | |
29 | + | ||
30 | + | let n = [((5 * j) / 1000), (((5 * k) / 1000) * 10)] | |
31 | + | ||
32 | + | func o (p) = n[p] | |
33 | + | ||
34 | + | ||
35 | + | let q = 10000 | |
36 | + | ||
37 | + | let r = 19000 | |
38 | + | ||
39 | + | let s = 0 | |
40 | + | ||
41 | + | let t = 1 | |
42 | + | ||
43 | + | let u = 2 | |
44 | + | ||
45 | + | let v = 3 | |
46 | + | ||
47 | + | let w = 4 | |
48 | + | ||
49 | + | let x = 5 | |
50 | + | ||
51 | + | let y = ["$RESERVED_AMOUNT_WAVES", "$RESERVED_AMOUNT_USDN"] | |
52 | + | ||
53 | + | let z = "$GAME_NUM" | |
54 | + | ||
55 | + | let A = "SUBMITTED" | |
56 | + | ||
57 | + | let B = "WON" | |
58 | + | ||
59 | + | let C = "LOST" | |
60 | + | ||
61 | + | func D (E,F) = if (isDefined(getInteger(this, E))) | |
62 | + | then getIntegerValue(this, E) | |
63 | + | else F | |
64 | + | ||
65 | + | ||
66 | + | func G (E,H) = DataEntry(E, H) | |
67 | + | ||
68 | + | ||
69 | + | func I (E) = G(E, (D(E, -1) + 1)) | |
70 | + | ||
71 | + | ||
72 | + | func J (E,K) = G(E, (D(E, 0) + K)) | |
73 | + | ||
74 | + | ||
75 | + | func L (M,p) = { | |
76 | + | let N = (D(y[p], 0) + M) | |
77 | + | if ((N > wavesBalance(this))) | |
78 | + | then throw("Insufficient funds on Dice Roller account. Transaction was rejected for your safety.") | |
79 | + | else N | |
80 | + | } | |
81 | + | ||
82 | + | ||
83 | + | func O (P,p,M) = if ((0 > (D(y[p], 0) - M))) | |
84 | + | then throw("Invalid Dice Roller account state - reserved amount is less than 0") | |
85 | + | else J(y[p], -(M)) | |
86 | + | ||
87 | + | ||
88 | + | func Q (p) = if ((p == m[0])) | |
89 | + | then 0 | |
90 | + | else if ((p == m[1])) | |
91 | + | then 1 | |
92 | + | else throw("Invalid payment asset") | |
93 | + | ||
94 | + | ||
95 | + | func R (S,p,T) = { | |
96 | + | let U = size(T) | |
97 | + | let V = o(p) | |
98 | + | func W (X,Y) = if (X) | |
99 | + | then true | |
100 | + | else (S == ((Y * l[p]) + V)) | |
101 | + | ||
102 | + | if (!({ | |
103 | + | let Z = i | |
104 | + | let aa = size(Z) | |
105 | + | let ab = false | |
106 | + | if ((aa == 0)) | |
107 | + | then ab | |
108 | + | else { | |
109 | + | let ac = W(ab, Z[0]) | |
110 | + | if ((aa == 1)) | |
111 | + | then ac | |
112 | + | else { | |
113 | + | let ad = W(ac, Z[1]) | |
114 | + | if ((aa == 2)) | |
115 | + | then ad | |
116 | + | else { | |
117 | + | let ae = W(ad, Z[2]) | |
118 | + | if ((aa == 3)) | |
119 | + | then ae | |
120 | + | else { | |
121 | + | let af = W(ae, Z[3]) | |
122 | + | if ((aa == 4)) | |
123 | + | then af | |
124 | + | else { | |
125 | + | let ag = W(af, Z[4]) | |
126 | + | if ((aa == 5)) | |
127 | + | then ag | |
128 | + | else { | |
129 | + | let ah = W(ag, Z[5]) | |
130 | + | throw("List size exceed 5") | |
131 | + | } | |
132 | + | } | |
133 | + | } | |
134 | + | } | |
135 | + | } | |
136 | + | } | |
137 | + | })) | |
138 | + | then throw("Bet amount is not valid") | |
139 | + | else if ((parseInt(T) == unit)) | |
140 | + | then throw("Invalid player's choice") | |
141 | + | else if ((U != 1)) | |
142 | + | then throw("Invalid length of player's choice") | |
143 | + | else { | |
144 | + | let ai = (S - V) | |
145 | + | ((ai * r) / q) | |
146 | + | } | |
147 | + | } | |
148 | + | ||
149 | + | ||
150 | + | func aj (P,ak) = { | |
151 | + | let al = rsaVerify(SHA256, toBytes(P), ak, a) | |
152 | + | if (!(al)) | |
153 | + | then throw("Invalid RSA signature") | |
154 | + | else { | |
155 | + | let am = (toInt(sha256(ak)) % 2) | |
156 | + | let an = if ((0 > am)) | |
157 | + | then (-1 * am) | |
158 | + | else am | |
159 | + | toString(an) | |
160 | + | } | |
161 | + | } | |
162 | + | ||
163 | + | ||
164 | + | func ao (T,ap) = { | |
165 | + | let aq = size(T) | |
166 | + | if ((aq == 1)) | |
167 | + | then (T == ap) | |
168 | + | else false | |
169 | + | } | |
170 | + | ||
171 | + | ||
172 | + | func ar (as,T,at,au,M,p,av) = (((((((((((as + "_") + T) + "_") + at) + "_") + toString(au)) + "_") + toString(M)) + "_") + toString(p)) + (if ((av == "")) | |
173 | + | then "" | |
174 | + | else ("_" + av))) | |
175 | + | ||
176 | + | ||
177 | + | func aw (P) = split({ | |
178 | + | let ax = getString(this, P) | |
179 | + | if ($isInstanceOf(ax, "String")) | |
180 | + | then { | |
181 | + | let ay = ax | |
182 | + | ay | |
183 | + | } | |
184 | + | else throw((("Game: " + P) + " not found.")) | |
185 | + | }, "_") | |
186 | + | ||
187 | + | ||
188 | + | func az (P,aA,M,p,aB,aC,aD) = { | |
189 | + | let aE = [aD] | |
190 | + | let aF = [ScriptTransfer(aA, M, m[p])] | |
191 | + | if (aC) | |
192 | + | then { | |
193 | + | let aG = (aB + "_TIMEOUT") | |
194 | + | let aH = DataEntry(P, aG) | |
195 | + | ScriptResult(WriteSet(aH :: aE), TransferSet(aF)) | |
196 | + | } | |
197 | + | else { | |
198 | + | let aH = DataEntry(P, aB) | |
199 | + | ScriptResult(WriteSet(aH :: aE), TransferSet(aF)) | |
200 | + | } | |
201 | + | } | |
202 | + | ||
203 | + | ||
204 | + | @Callable(aI) | |
205 | + | func bet (T) = { | |
206 | + | let P = toBase58String(aI.transactionId) | |
207 | + | if ((aI.payment == unit)) | |
208 | + | then throw("No payment") | |
209 | + | else if (isDefined(getString(this, P))) | |
210 | + | then throw((("Bet for: " + P) + " was already made.")) | |
211 | + | else { | |
212 | + | let aJ = extract(aI.payment) | |
213 | + | let p = Q(aJ.assetId) | |
214 | + | let V = o(p) | |
215 | + | let M = R(aJ.amount, p, T) | |
216 | + | let aK = isDefined(getString(this, P)) | |
217 | + | let at = toBase58String(aI.callerPublicKey) | |
218 | + | let aL = ar(A, T, at, height, M, p, "") | |
219 | + | ScriptResult(WriteSet([DataEntry(y[p], L(M, p)), I(z), DataEntry(P, aL)]), TransferSet([ScriptTransfer(b, V, unit)])) | |
220 | + | } | |
221 | + | } | |
222 | + | ||
223 | + | ||
224 | + | ||
225 | + | @Callable(aI) | |
226 | + | func withdraw (P,ak) = { | |
227 | + | let aH = aw(P) | |
228 | + | let as = aH[s] | |
229 | + | let T = aH[t] | |
230 | + | let au = parseIntValue(aH[v]) | |
231 | + | let M = parseIntValue(aH[w]) | |
232 | + | let p = parseIntValue(aH[x]) | |
233 | + | let at = aH[u] | |
234 | + | let aA = addressFromPublicKey(fromBase58String(at)) | |
235 | + | let aC = ((height - au) > c) | |
236 | + | let aD = O(P, p, M) | |
237 | + | if ((as != A)) | |
238 | + | then throw("Invalid game state for passed gameId") | |
239 | + | else if (aC) | |
240 | + | then { | |
241 | + | let ap = take(T, 1) | |
242 | + | let aB = ar(B, T, at, au, M, p, ap) | |
243 | + | az(P, aA, M, p, aB, aC, aD) | |
244 | + | } | |
245 | + | else { | |
246 | + | let ap = aj(P, ak) | |
247 | + | if (ao(T, ap)) | |
248 | + | then { | |
249 | + | let aB = ar(B, T, at, au, M, p, ap) | |
250 | + | az(P, aA, M, p, aB, aC, aD) | |
251 | + | } | |
252 | + | else { | |
253 | + | let aB = ar(C, T, at, au, M, p, ap) | |
254 | + | WriteSet([DataEntry(P, aB), aD]) | |
255 | + | } | |
256 | + | } | |
257 | + | } | |
258 | + | ||
259 | + | ||
260 | + | @Verifier(aM) | |
261 | + | func aN () = if (sigVerify(aM.bodyBytes, aM.proofs[0], aM.senderPublicKey)) | |
262 | + | then { | |
263 | + | let ax = aM | |
264 | + | if ($isInstanceOf(ax, "TransferTransaction")) | |
265 | + | then { | |
266 | + | let aO = ax | |
267 | + | let p = Q(aO.assetId) | |
268 | + | ((assetBalance(this, aO.assetId) - aO.amount) >= D(y[p], 0)) | |
269 | + | } | |
270 | + | else if ($isInstanceOf(ax, "SetScriptTransaction")) | |
271 | + | then { | |
272 | + | let aP = ax | |
273 | + | if ((D(y[0], 0) == 0)) | |
274 | + | then (D(y[1], 0) == 0) | |
275 | + | else false | |
276 | + | } | |
277 | + | else false | |
278 | + | } | |
279 | + | else false | |
280 | + |
github/deemru/w8io/026f985 20.74 ms ◑