tx · C337qM2FryZMoZHj5SBNSixKtewfmsVc2xBCG5Y5nMmz 3Mr1FdiZzG9iTQUtPmQEs1hBVbyQhG6LU93: -0.01500000 Waves 2021.08.04 09:10 [1643207] smart account 3Mr1FdiZzG9iTQUtPmQEs1hBVbyQhG6LU93 > SELF 0.00000000 Waves
{ "type": 13, "id": "C337qM2FryZMoZHj5SBNSixKtewfmsVc2xBCG5Y5nMmz", "fee": 1500000, "feeAssetId": null, "timestamp": 1628057470483, "version": 1, "sender": "3Mr1FdiZzG9iTQUtPmQEs1hBVbyQhG6LU93", "senderPublicKey": "De2GV53Brxd2GCQnLJWRugSidGtrVvPL9kJn2Dh4NTpJ", "proofs": [ "frYUnm81nZtjkkc4CNaWyMr4PTug74sDba6SqgziiK3LoTsHkzw44TW64GsuFJic93fHLPhf4aAhv53PsaBY64A" ], "script": "base64:AAIEAAAAAAAAAA0IAhIDCgEIEgQKAggCAAAANQAAAAAGV0FWRVNEAAAAAAAF9eEAAAAAAAVVU0RORAAAAAAAAA9CQAAAAAAERUdHRAAAAAAAAAAAZAAAAAAIREVDSU1BTFMJAARMAAAAAgUAAAAGV0FWRVNECQAETAAAAAIFAAAABVVTRE5ECQAETAAAAAIFAAAABEVHR0QFAAAAA25pbAAAAAAGQVNTRVRTCQAETAAAAAIFAAAABHVuaXQJAARMAAAAAgkAAlkAAAABAgAAACwyNUZFcUVqUmtxSzZ5Q2tpVDdMejZTQVl6N2dVRkN0eGZDQ2huclZGRDVBVAkABEwAAAACCQACWQAAAAECAAAALEhzRXdXdXVRalVvaHJYMjZGeDh0ZzVlaUw0TEREN3VtNmpxTnFGZ0VSeDZnBQAAAANuaWwAAAAAC0JFVERJVklERVJTCQAETAAAAAIAAAAAAAAAAAEJAARMAAAAAgAAAAAAAAAAAQkABEwAAAACAAAAAAAAAABkBQAAAANuaWwAAAAAC01JTkZFRVdBVkVTCQAAaQAAAAIJAABoAAAAAgAAAAAAAAAABQUAAAAGV0FWRVNEAAAAAAAAAAPoAAAAAARCRVQxAAAAAAAAAAABAAAAAARCRVQyAAAAAAAAAAACAAAAAARCRVQ0AAAAAAAAAAAEAAAAAARCRVQ4AAAAAAAAAAAIAAAAAAVCRVQxNAAAAAAAAAAADgAAAAAIUkFURU1VTFQAAAAAAAAAJxAAAAAABVJBVEUxAAAAAAAAAJrnAAAAAAVSQVRFMgAAAAAAAABgGAAAAAAFUkFURTMAAAAAAAAASjgAAAAABVJBVEU0AAAAAAAAADd4AAAAAAVSQVRFNQAAAAAAAAAsiAAAAAAFUkFURVMJAARMAAAAAgUAAAAFUkFURTEJAARMAAAAAgUAAAAFUkFURTIJAARMAAAAAgUAAAAFUkFURTMJAARMAAAAAgUAAAAFUkFURTQJAARMAAAAAgUAAAAFUkFURTUFAAAAA25pbAAAAAAEQkVUUwkABEwAAAACBQAAAARCRVQxCQAETAAAAAIFAAAABEJFVDIJAARMAAAAAgUAAAAEQkVUNAkABEwAAAACBQAAAARCRVQ4CQAETAAAAAIFAAAABUJFVDE0BQAAAANuaWwAAAAADElkeEdhbWVTdGF0ZQAAAAAAAAAAAAAAAAAPSWR4UGxheWVyQ2hvaWNlAAAAAAAAAAABAAAAABFJZHhQbGF5ZXJQdWJLZXk1OAAAAAAAAAAAAgAAAAAQSWR4U3RhcnRlZEhlaWdodAAAAAAAAAAAAwAAAAAMSWR4V2luQW1vdW50AAAAAAAAAAAEAAAAAApJZHhBc3NldElkAAAAAAAAAAAFAAAAAA5SRVNFUlZBVElPTktFWQkABEwAAAACAgAAABYkUkVTRVJWRURfQU1PVU5UX1dBVkVTCQAETAAAAAICAAAAFSRSRVNFUlZFRF9BTU9VTlRfVVNETgUAAAADbmlsAAAAAA9HQU1FU0NPVU5URVJLRVkCAAAACSRHQU1FX05VTQAAAAAOUlNBUFVCTElDNjRLRVkCAAAADSRSU0FfUFVCTElDNjQAAAAAEFNFUlZFUkFERFJFU1NLRVkCAAAADSRCRU5aX0FERFJFU1MAAAAAEFJBTkRUSU1FRlJBTUVLRVkCAAAAFiRSQU5EX09SQUNMRV9USU1FRlJBTUUAAAAADlNUQVRFU1VCTUlUVEVEAgAAAAlTVUJNSVRURUQAAAAACFNUQVRFV09OAgAAAANXT04AAAAACVNUQVRFTE9TVAIAAAAETE9TVAEAAAAPZ2V0U3RyaW5nT3JGYWlsAAAAAQAAAANrZXkJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkJAAEsAAAAAgUAAAADa2V5AgAAACMga2V5IGlzIG5vdCBzcGVjaWZpZWQgaW4gdGhpcy5zdGF0ZQAAAAAJUlNBUFVCTElDCQACWwAAAAEJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAABBQAAAA5SU0FQVUJMSUM2NEtFWQAAAAAGU0VSVkVSCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABCQEAAAAPZ2V0U3RyaW5nT3JGYWlsAAAAAQUAAAAQU0VSVkVSQUREUkVTU0tFWQAAAAATUkFORE9SQUNMRVRJTUVGUkFNRQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzBQAAABBSQU5EVElNRUZSQU1FS0VZAAAAAAAAABwgAQAAAAhnZXRJbnRPcgAAAAIAAAADa2V5AAAAB2RlZmF1bHQDCQEA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AA1zdGFydGVkSGVpZ2h0AAAACXdpbkFtb3VudAAAAAdhc3NldElkAAAAC3JhbmRPckVtcHR5CQAEuQAAAAIJAARMAAAAAgUAAAAKZ2FtZVN0YXR1cwkABEwAAAACBQAAAAxwbGF5ZXJDaG9pY2UJAARMAAAAAgUAAAAOcGxheWVyUHViS2V5NTgJAARMAAAAAgUAAAANc3RhcnRlZEhlaWdodAkABEwAAAACBQAAAAl3aW5BbW91bnQJAARMAAAAAgUAAAAHYXNzZXRJZAkABEwAAAACAwkAAAAAAAACBQAAAAtyYW5kT3JFbXB0eQIAAAAAAgAAAAAJAAEsAAAAAgIAAAABXwUAAAALcmFuZE9yRW1wdHkFAAAAA25pbAIAAAABXwEAAAAOZm9ybWF0R2FtZURhdGEAAAAHAAAACmdhbWVTdGF0dXMAAAAMcGxheWVyQ2hvaWNlAAAADnBsYXllclB1YktleTU4AAAADXN0YXJ0ZWRIZWlnaHQAAAAJd2luQW1vdW50AAAAB2Fzc2V0SWQAAAALcmFuZE9yRW1wdHkJAQAAAA9mb3JtYXRHYW1lRGF0YVMAAAAHBQAAAApnYW1lU3RhdHVzBQAAAAxwbGF5ZXJDaG9pY2UFAAAADnBsYXllclB1YktleTU4CQABpAAAAAEFAAAADXN0YXJ0ZWRIZWlnaHQJAAGkAAAAAQUAAAAJd2luQW1vdW50CQABpAAAAAEFAAAAB2Fzc2V0SWQFAAAAC3JhbmRPckVtcHR5AQAAAA5maW5pc2hHYW1lRGF0YQAAAAQAAAAMb3JpZ0dhbWVEYXRhAAAACmdhbWVTdGF0dXMAAAAEcmFuZAAAAAx3aW5CeVRpbWVvdXQEAAAADmZpbmlzaEdhbWVEYXRhCQEAAAAPZm9ybWF0R2FtZURhdGFTAAAABwUAAAAKZ2FtZVN0YXR1cwkAAZEAAAACBQAAAAxvcmlnR2FtZURhdGEFAAAAD0lkeFBsYXllckNob2ljZQkAAZEAAAACBQAAAAxvcmlnR2FtZURhdGEFAAAAEUlkeFBsYXllclB1YktleTU4CQABkQAAAAIFAAAADG9yaWdHYW1lRGF0YQUAAAAQSWR4U3RhcnRlZEhlaWdodAkAAZEAAAACBQAAAAxvcmlnR2FtZURhdGEFAAAADElkeFdpbkFtb3VudAkAAZEAAAACBQAAAAxvcmlnR2FtZURhdGEFAAAACklkeEFzc2V0SWQFAAAABHJhbmQDBQAAAAx3aW5CeVRpbWVvdXQJAAEsAAAAAgUAAAAOZmluaXNoR2FtZURhdGECAAAACF9USU1FT1VUBQAAAA5maW5pc2hHYW1lRGF0YQEAAAAPZXh0cmFjdEdhbWVEYXRhAAAAAQAAAAZnYW1lSWQJAAS1AAAAAgQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAAZnYW1lSWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAADc3RyBQAAAAckbWF0Y2gwBQAAAANzdHIJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAABkdhbWU6IAUAAAAGZ2FtZUlkAgAAAAsgbm90IGZvdW5kLgIAAAABXwAAAAIAAAABaQEAAAADYmV0AAAAAQAAAAxwbGF5ZXJDaG9pY2UEAAAABmdhbWVJZAkAAlgAAAABCAUAAAABaQAAAA10cmFuc2FjdGlvbklkAwkAAGcAAAACAAAAAAAAAAABCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzCQAAAgAAAAECAAAAGzIgcGF5bWVudHMgbXVzdCBiZSBhdHRhY2hlZAMJAQAAAAlpc0RlZmluZWQAAAABCQAEHQAAAAIFAAAABHRoaXMFAAAABmdhbWVJZAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAJQmV0IGZvcjogBQAAAAZnYW1lSWQCAAAAEiB3YXMgYWxyZWFkeSBtYWRlLgQAAAAGYmV0UG10CQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAAZmZWVQbXQJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEDCQEAAAAJaXNEZWZpbmVkAAAAAQgFAAAABmZlZVBtdAAAAAdhc3NldElkCQAAAgAAAAECAAAALWZlZVBtdCAoMm5kIHBheW1lbnQpIGFzc2V0SWQgbXVzdCBiZSBpbiBXYXZlcwMJAABmAAAAAgUAAAALTUlORkVFV0FWRVMIBQAAAAZmZWVQbXQAAAAGYW1vdW50CQAAAgAAAAECAAAAK2ZlZVBtdCAoMm5kIHBheW1lbnQpIG11c3QgYmUgPj0gMC4wMDUgV2F2ZXMEAAAAD2ludGVybmFsQXNzZXRJZAkBAAAAFXZhbGlkYXRlQW5kR2V0QXNzZXRJZAAAAAEIBQAAAAZiZXRQbXQAAAAHYXNzZXRJZAQAAAAKY29tbWlzc2lvbggFAAAABmZlZVBtdAAAAAZhbW91bnQEAAAACXdpbkFtb3VudAkBAAAAGnZhbGlkYXRlQmV0QW5kR2V0V2luQW1vdW50AAAAAwgFAAAABmJldFBtdAAAAAZhbW91bnQFAAAAD2ludGVybmFsQXNzZXRJZAUAAAAMcGxheWVyQ2hvaWNlBAAAAA5wbGF5ZXJQdWJLZXk1OAkAAlgAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkEAAAACGdhbWVEYXRhCQEAAAAOZm9ybWF0R2FtZURhdGEAAAAHBQAAAA5TVEFURVNVQk1JVFRFRAUAAAAMcGxheWVyQ2hvaWNlBQAAAA5wbGF5ZXJQdWJLZXk1OAUAAAAGaGVpZ2h0BQAAAAl3aW5BbW91bnQFAAAAD2ludGVybmFsQXNzZXRJZAIAAAAACQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABkQAAAAIFAAAADlJFU0VSVkFUSU9OS0VZBQAAAA9pbnRlcm5hbEFzc2V0SWQJAQAAABVpbmNyZWFzZVJlc2VydmVBbW91bnQAAAACBQAAAAl3aW5BbW91bnQFAAAAD2ludGVybmFsQXNzZXRJZAkABEwAAAACCQEAAAAMaW5jcmVtZW50SW50AAAAAQUAAAAPR0FNRVNDT1VOVEVSS0VZCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAABmdhbWVJZAUAAAAIZ2FtZURhdGEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAGU0VSVkVSBQAAAApjb21taXNzaW9uCAUAAAAGZmVlUG10AAAAB2Fzc2V0SWQFAAAAA25pbAAAAAFpAQAAAAh3aXRoZHJhdwAAAAIAAAAGZ2FtZUlkAAAAB3JzYVNpZ24EAAAACGdhbWVEYXRhCQEAAAAPZXh0cmFjdEdhbWVEYXRhAAAAAQUAAAAGZ2FtZUlkBAAAAAlnYW1lU3RhdGUJAAGRAAAAAgUAAAAIZ2FtZURhdGEFAAAADElkeEdhbWVTdGF0ZQQAAAAMcGxheWVyQ2hvaWNlCQABkQAAAAIFAAAACGdhbWVEYXRhBQAAAA9JZHhQbGF5ZXJDaG9pY2UEAAAADXN0YXJ0ZWRIZWlnaHQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhnYW1lRGF0YQUAAAAQSWR4U3RhcnRlZEhlaWdodAQAAAAJd2luQW1vdW50CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIZ2FtZURhdGEFAAAADElkeFdpbkFtb3VudAQAAAAHYXNzZXRJZAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACGdhbWVEYXRhBQAAAApJZHhBc3NldElkBAAAAA5wbGF5ZXJQdWJLZXk1OAkAAZEAAAACBQAAAAhnYW1lRGF0YQUAAAARSWR4UGxheWVyUHViS2V5NTgEAAAADXBsYXllckFkZHJlc3MJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEJAAJZAAAAAQUAAAAOcGxheWVyUHViS2V5NTgDCQEAAAACIT0AAAACBQAAAAlnYW1lU3RhdGUFAAAADlNUQVRFU1VCTUlUVEVECQAAAgAAAAECAAAAJEludmFsaWQgZ2FtZSBzdGF0ZSBmb3IgcGFzc2VkIGdhbWVJZAMJAQAAAAIhPQAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAGU0VSVkVSCQAAAgAAAAECAAAAK1JlZ3VsYXIgd2l0aGRyYXcgY2FuIGJlIGRvbmUgYnkgc2VydmVyIG9ubHkEAAAADHdpbkJ5VGltZW91dAkAAGYAAAACCQAAZQAAAAIFAAAABmhlaWdodAUAAAANc3RhcnRlZEhlaWdodAUAAAATUkFORE9SQUNMRVRJTUVGUkFNRQQAAAAKcmFuZENob2lzZQMFAAAADHdpbkJ5VGltZW91dAkAAS8AAAACBQAAAAxwbGF5ZXJDaG9pY2UAAAAAAAAAAAEJAQAAABJnZW5lcmF0ZVJhbmRDaG9pc2UAAAACBQAAAAZnYW1lSWQFAAAAB3JzYVNpZ24EAAAACXBsYXllcldpbgkBAAAAC2lzUGxheWVyV2luAAAAAgUAAAAMcGxheWVyQ2hvaWNlBQAAAApyYW5kQ2hvaXNlBAAAAA1uZXdHYW1lU3RhdHVzAwUAAAAJcGxheWVyV2luBQAAAAhTVEFURVdPTgUAAAAJU1RBVEVMT1NUBAAAAAtuZXdHYW1lRGF0YQkBAAAADmZpbmlzaEdhbWVEYXRhAAAABAUAAAAIZ2FtZURhdGEFAAAADW5ld0dhbWVTdGF0dXMFAAAACnJhbmRDaG9pc2UFAAAADHdpbkJ5VGltZW91dAkABE4AAAACCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAABmdhbWVJZAUAAAALbmV3R2FtZURhdGEJAARMAAAAAgkBAAAAFmRlY3JlYXNlUmVzZXJ2ZWRBbW91bnQAAAADBQAAAAZnYW1lSWQFAAAAB2Fzc2V0SWQFAAAACXdpbkFtb3VudAUAAAADbmlsAwUAAAAJcGxheWVyV2luCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAADXBsYXllckFkZHJlc3MFAAAACXdpbkFtb3VudAkAAZEAAAACBQAAAAZBU1NFVFMFAAAAB2Fzc2V0SWQFAAAAA25pbAUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAMJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5BAAAAAckbWF0Y2gwBQAAAAJ0eAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAATVHJhbnNmZXJUcmFuc2FjdGlvbgQAAAADdHR4BQAAAAckbWF0Y2gwBAAAAAdhc3NldElkCQEAAAAVdmFsaWRhdGVBbmRHZXRBc3NldElkAAAAAQgFAAAAA3R0eAAAAAdhc3NldElkCQAAZwAAAAIJAABlAAAAAgkBAAAAD2dldEFzc2V0QmFsYW5jZQAAAAEIBQAAAAN0dHgAAAAHYXNzZXRJZAgFAAAAA3R0eAAAAAZhbW91bnQJAQAAAAhnZXRJbnRPcgAAAAIJAAGRAAAAAgUAAAAOUkVTRVJWQVRJT05LRVkFAAAAB2Fzc2V0SWQAAAAAAAAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAFFNldFNjcmlwdFRyYW5zYWN0aW9uBAAAAANzdHgFAAAAByRtYXRjaDADCQAAAAAAAAIJAQAAAAhnZXRJbnRPcgAAAAIJAAGRAAAAAgUAAAAOUkVTRVJWQVRJT05LRVkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAAAAAAAAAgkBAAAACGdldEludE9yAAAAAgkAAZEAAAACBQAAAA5SRVNFUlZBVElPTktFWQAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAcHB2nIf1g=", "chainId": 84, "height": 1643207, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 7obcaRZQW8VdVGVUP8Nt51F6MBEbVWGTfauVj2B7eTyk Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 4 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let a = 100000000 | |
5 | + | ||
6 | + | let b = 1000000 | |
7 | + | ||
8 | + | let c = 100 | |
9 | + | ||
10 | + | let d = [a, b, c] | |
11 | + | ||
12 | + | let e = [unit, fromBase58String("25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT"), fromBase58String("HsEwWuuQjUohrX26Fx8tg5eiL4LDD7um6jqNqFgERx6g")] | |
13 | + | ||
14 | + | let f = [1, 1, 100] | |
15 | + | ||
16 | + | let g = ((5 * a) / 1000) | |
17 | + | ||
18 | + | let h = 1 | |
19 | + | ||
20 | + | let i = 2 | |
21 | + | ||
22 | + | let j = 4 | |
23 | + | ||
24 | + | let k = 8 | |
25 | + | ||
26 | + | let l = 14 | |
27 | + | ||
28 | + | let m = 10000 | |
29 | + | ||
30 | + | let n = 39655 | |
31 | + | ||
32 | + | let o = 24600 | |
33 | + | ||
34 | + | let p = 19000 | |
35 | + | ||
36 | + | let q = 14200 | |
37 | + | ||
38 | + | let r = 11400 | |
39 | + | ||
40 | + | let s = [n, o, p, q, r] | |
41 | + | ||
42 | + | let t = [h, i, j, k, l] | |
43 | + | ||
44 | + | let u = 0 | |
45 | + | ||
46 | + | let v = 1 | |
47 | + | ||
48 | + | let w = 2 | |
49 | + | ||
50 | + | let x = 3 | |
51 | + | ||
52 | + | let y = 4 | |
53 | + | ||
54 | + | let z = 5 | |
55 | + | ||
56 | + | let A = ["$RESERVED_AMOUNT_WAVES", "$RESERVED_AMOUNT_USDN"] | |
57 | + | ||
58 | + | let B = "$GAME_NUM" | |
59 | + | ||
60 | + | let C = "$RSA_PUBLIC64" | |
61 | + | ||
62 | + | let D = "$BENZ_ADDRESS" | |
63 | + | ||
64 | + | let E = "$RAND_ORACLE_TIMEFRAME" | |
65 | + | ||
66 | + | let F = "SUBMITTED" | |
67 | + | ||
68 | + | let G = "WON" | |
69 | + | ||
70 | + | let H = "LOST" | |
71 | + | ||
72 | + | func I (J) = valueOrErrorMessage(getString(this, J), (J + " key is not specified in this.state")) | |
73 | + | ||
74 | + | ||
75 | + | let K = fromBase64String(I(C)) | |
76 | + | ||
77 | + | let L = addressFromStringValue(I(D)) | |
78 | + | ||
79 | + | let M = valueOrElse(getInteger(this, E), 7200) | |
80 | + | ||
81 | + | func N (J,O) = if (isDefined(getInteger(this, J))) | |
82 | + | then getIntegerValue(this, J) | |
83 | + | else O | |
84 | + | ||
85 | + | ||
86 | + | func P (J,Q) = IntegerEntry(J, Q) | |
87 | + | ||
88 | + | ||
89 | + | func R (J) = P(J, (N(J, -1) + 1)) | |
90 | + | ||
91 | + | ||
92 | + | func S (J,T) = P(J, (N(J, 0) + T)) | |
93 | + | ||
94 | + | ||
95 | + | func U (V) = { | |
96 | + | let W = V | |
97 | + | if ($isInstanceOf(W, "ByteVector")) | |
98 | + | then { | |
99 | + | let X = W | |
100 | + | assetBalance(this, X) | |
101 | + | } | |
102 | + | else wavesBalance(this).available | |
103 | + | } | |
104 | + | ||
105 | + | ||
106 | + | func Y (Z,X) = { | |
107 | + | let aa = (N(A[X], 0) + Z) | |
108 | + | if ((aa > U(e[X]))) | |
109 | + | then throw("Insufficient funds on Dice Roller account. Transaction was rejected for your safety.") | |
110 | + | else aa | |
111 | + | } | |
112 | + | ||
113 | + | ||
114 | + | func ab (ac,X,Z) = if ((0 > (N(A[X], 0) - Z))) | |
115 | + | then throw("Invalid Dice Roller account state - reserved amount is less than 0") | |
116 | + | else S(A[X], -(Z)) | |
117 | + | ||
118 | + | ||
119 | + | func ad (X) = if ((X == e[0])) | |
120 | + | then 0 | |
121 | + | else if ((X == e[1])) | |
122 | + | then 1 | |
123 | + | else if ((X == e[2])) | |
124 | + | then 2 | |
125 | + | else throw("Invalid payment asset") | |
126 | + | ||
127 | + | ||
128 | + | func ae (af,ag,ah) = { | |
129 | + | let ai = size(ah) | |
130 | + | func aj (ak,al) = if (ak) | |
131 | + | then true | |
132 | + | else (af == ((al * d[ag]) / f[ag])) | |
133 | + | ||
134 | + | if (!({ | |
135 | + | let am = t | |
136 | + | let an = size(am) | |
137 | + | let ao = false | |
138 | + | func ap (aq,ar) = if ((ar >= an)) | |
139 | + | then aq | |
140 | + | else aj(aq, am[ar]) | |
141 | + | ||
142 | + | func as (aq,ar) = if ((ar >= an)) | |
143 | + | then aq | |
144 | + | else throw("List size exceeds 5") | |
145 | + | ||
146 | + | as(ap(ap(ap(ap(ap(ao, 0), 1), 2), 3), 4), 5) | |
147 | + | })) | |
148 | + | then throw("Bet amount is not valid") | |
149 | + | else if ((parseInt(ah) == unit)) | |
150 | + | then throw("Invalid player's choice") | |
151 | + | else if (if ((1 > ai)) | |
152 | + | then true | |
153 | + | else (ai > 5)) | |
154 | + | then throw("Invalid dices count in player's choice") | |
155 | + | else ((af * s[(ai - 1)]) / m) | |
156 | + | } | |
157 | + | ||
158 | + | ||
159 | + | func at (ac,au) = { | |
160 | + | let av = rsaVerify_16Kb(SHA256, toBytes(ac), au, K) | |
161 | + | if (!(av)) | |
162 | + | then throw("Invalid RSA signature") | |
163 | + | else { | |
164 | + | let aw = (toInt(sha256(au)) % 6) | |
165 | + | let ax = if ((0 > aw)) | |
166 | + | then (-1 * aw) | |
167 | + | else aw | |
168 | + | toString((ax + 1)) | |
169 | + | } | |
170 | + | } | |
171 | + | ||
172 | + | ||
173 | + | func ay (ah,az) = { | |
174 | + | let aA = size(ah) | |
175 | + | func aB (ak,al) = if (ak) | |
176 | + | then true | |
177 | + | else if ((aA >= al)) | |
178 | + | then (take(drop(ah, (al - 1)), 1) == az) | |
179 | + | else false | |
180 | + | ||
181 | + | let am = [1, 2, 3, 4, 5] | |
182 | + | let an = size(am) | |
183 | + | let ao = false | |
184 | + | func ap (aq,ar) = if ((ar >= an)) | |
185 | + | then aq | |
186 | + | else aB(aq, am[ar]) | |
187 | + | ||
188 | + | func as (aq,ar) = if ((ar >= an)) | |
189 | + | then aq | |
190 | + | else throw("List size exceeds 5") | |
191 | + | ||
192 | + | as(ap(ap(ap(ap(ap(ao, 0), 1), 2), 3), 4), 5) | |
193 | + | } | |
194 | + | ||
195 | + | ||
196 | + | func aC (aD,ah,aE,aF,Z,X,aG) = makeString([aD, ah, aE, aF, Z, X, if ((aG == "")) | |
197 | + | then "" | |
198 | + | else ("_" + aG)], "_") | |
199 | + | ||
200 | + | ||
201 | + | func aH (aD,ah,aE,aF,Z,X,aG) = aC(aD, ah, aE, toString(aF), toString(Z), toString(X), aG) | |
202 | + | ||
203 | + | ||
204 | + | func aI (aJ,aD,aw,aK) = { | |
205 | + | let aI = aC(aD, aJ[v], aJ[w], aJ[x], aJ[y], aJ[z], aw) | |
206 | + | if (aK) | |
207 | + | then (aI + "_TIMEOUT") | |
208 | + | else aI | |
209 | + | } | |
210 | + | ||
211 | + | ||
212 | + | func aL (ac) = split({ | |
213 | + | let W = getString(this, ac) | |
214 | + | if ($isInstanceOf(W, "String")) | |
215 | + | then { | |
216 | + | let aM = W | |
217 | + | aM | |
218 | + | } | |
219 | + | else throw((("Game: " + ac) + " not found.")) | |
220 | + | }, "_") | |
221 | + | ||
222 | + | ||
223 | + | @Callable(aN) | |
224 | + | func bet (ah) = { | |
225 | + | let ac = toBase58String(aN.transactionId) | |
226 | + | if ((1 >= size(aN.payments))) | |
227 | + | then throw("2 payments must be attached") | |
228 | + | else if (isDefined(getString(this, ac))) | |
229 | + | then throw((("Bet for: " + ac) + " was already made.")) | |
230 | + | else { | |
231 | + | let aO = value(aN.payments[0]) | |
232 | + | let aP = value(aN.payments[1]) | |
233 | + | if (isDefined(aP.assetId)) | |
234 | + | then throw("feePmt (2nd payment) assetId must be in Waves") | |
235 | + | else if ((g > aP.amount)) | |
236 | + | then throw("feePmt (2nd payment) must be >= 0.005 Waves") | |
237 | + | else { | |
238 | + | let ag = ad(aO.assetId) | |
239 | + | let aQ = aP.amount | |
240 | + | let Z = ae(aO.amount, ag, ah) | |
241 | + | let aE = toBase58String(aN.callerPublicKey) | |
242 | + | let aR = aH(F, ah, aE, height, Z, ag, "") | |
243 | + | [IntegerEntry(A[ag], Y(Z, ag)), R(B), StringEntry(ac, aR), ScriptTransfer(L, aQ, aP.assetId)] | |
244 | + | } | |
245 | + | } | |
246 | + | } | |
247 | + | ||
248 | + | ||
249 | + | ||
250 | + | @Callable(aN) | |
251 | + | func withdraw (ac,au) = { | |
252 | + | let aR = aL(ac) | |
253 | + | let aS = aR[u] | |
254 | + | let ah = aR[v] | |
255 | + | let aF = parseIntValue(aR[x]) | |
256 | + | let Z = parseIntValue(aR[y]) | |
257 | + | let X = parseIntValue(aR[z]) | |
258 | + | let aE = aR[w] | |
259 | + | let aT = addressFromPublicKey(fromBase58String(aE)) | |
260 | + | if ((aS != F)) | |
261 | + | then throw("Invalid game state for passed gameId") | |
262 | + | else if ((aN.caller != L)) | |
263 | + | then throw("Regular withdraw can be done by server only") | |
264 | + | else { | |
265 | + | let aK = ((height - aF) > M) | |
266 | + | let az = if (aK) | |
267 | + | then take(ah, 1) | |
268 | + | else at(ac, au) | |
269 | + | let aU = ay(ah, az) | |
270 | + | let aV = if (aU) | |
271 | + | then G | |
272 | + | else H | |
273 | + | let aW = aI(aR, aV, az, aK) | |
274 | + | ([StringEntry(ac, aW), ab(ac, X, Z)] ++ (if (aU) | |
275 | + | then [ScriptTransfer(aT, Z, e[X])] | |
276 | + | else nil)) | |
277 | + | } | |
278 | + | } | |
279 | + | ||
280 | + | ||
281 | + | @Verifier(aX) | |
282 | + | func aY () = if (sigVerify(aX.bodyBytes, aX.proofs[0], aX.senderPublicKey)) | |
283 | + | then { | |
284 | + | let W = aX | |
285 | + | if ($isInstanceOf(W, "TransferTransaction")) | |
286 | + | then { | |
287 | + | let aZ = W | |
288 | + | let X = ad(aZ.assetId) | |
289 | + | ((U(aZ.assetId) - aZ.amount) >= N(A[X], 0)) | |
290 | + | } | |
291 | + | else if ($isInstanceOf(W, "SetScriptTransaction")) | |
292 | + | then { | |
293 | + | let ba = W | |
294 | + | if ((N(A[0], 0) == 0)) | |
295 | + | then (N(A[1], 0) == 0) | |
296 | + | else false | |
297 | + | } | |
298 | + | else false | |
299 | + | } | |
300 | + | else false | |
301 | + |
github/deemru/w8io/169f3d6 21.80 ms ◑![]()