tx · GyDRgGApCCt653B1kpgPZRzR9UkNprXHXgMw6Qb8DfJ7

3Mz7zzdQoHabgytXU3UuTAzADXPBBLgFqu8:  -0.01400000 Waves

2019.12.31 19:51 [833521] smart account 3Mz7zzdQoHabgytXU3UuTAzADXPBBLgFqu8 > SELF 0.00000000 Waves

{ "type": 13, "id": "GyDRgGApCCt653B1kpgPZRzR9UkNprXHXgMw6Qb8DfJ7", "fee": 1400000, "feeAssetId": null, "timestamp": 1577811137595, "version": 1, "sender": "3Mz7zzdQoHabgytXU3UuTAzADXPBBLgFqu8", "senderPublicKey": "6uncmj7GmSzxFAGGX8NcToqPxTxWUHW7Aj1WSbMH2qXw", "proofs": [ "2aN5vkPhFx9yhzjuL9L34Eqa8N22R3a17KJRbS4vb7tnV7LhViQLuQUycTFWSXqTfc3fUZPPtYUxwENfLbg1ZLa6" ], "script": "base64:AAIDAAAAAAAAAA4IARIECgIBARIECgIIAgAAACAAAAAACVJTQVBVQkxJQwkAAlsAAAABAgAAAY9iYXNlNjQ6TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFnNGRBUjZYYkJEQVM5aHIvRWozZEp2NkZmYzQ2NngvbU9HTVdVM2xyQUJzM3FhOEJIbXVKR25rZmJwRWYydkF3WVRPV1B2dnpmTTEwT0JiZmxvU3lxM2M5TUt2eVRlMWx1QkxHcVc0dlpVWEl5dlNnejFsaXlVVmVmSVF5M2R5RjlqYmVUWmJDMGJiY1QvN08zREVMKzAxejZBK3JEQ2FjU1owbEdvbFNRNkFuaEx4eklrVnBPUUpickJtQyt4K1p1WlBDTVd6SnluZDVhZU9uN2phai9ta1JWeXhlNmcvME9oV3o0TmlpWlhldU1SQis4bUt5MGZXRC9VbElsWldIc0FTMlptcmtYS3FqTHEwLzB3cjhJTEprem5qU3Fkbkk1SWJqZzN1UXJqLzRBTitpOXIyOGFRNzMvWmtQdFk1U2J3MEFPaUFCQnU3Z0htcTlheVZ4WlFJREFRQUIAAAAAD0dBTUVTQ09VTlRFUktFWQIAAAAJJEdBTUVfTlVNAAAAAA5SRVNFUlZBVElPTktFWQIAAAAQJFJFU0VSVkVEX0FNT1VOVAAAAAAEV0JFVAEAAAAghrQ2qHjTDszY8BetSy4sBB8Hn7rKuRapStdvJa2b0HYAAAAADldBTExFVFdBVkVTQkVUCQEAAAAHQWRkcmVzcwAAAAEBAAAAGgFULxHweE6v1pOfqW4iK2a1H7JT13jPO2j7AAAAAAxXQUxMRVRNQ0FGRUUJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVQvEfB4Tq/Wk5+pbiIrZrUfslPXeM87aPsAAAAAB1dBVkVMRVQAAAAAAAX14QAAAAAAC0ZFRVdBVkVTQkVUAAAAAAAAAAAEAAAAAAlGRUVNQ0FGRUUAAAAAAAAAAAIAAAAABkJFVE1JTgkAAGgAAAACAAAAAAAAAAABBQAAAAdXQVZFTEVUAAAAAAZCRVRNQVgJAABoAAAAAgAAAAAAATEtAAUAAAAHV0FWRUxFVAEAAAANc3RyYWlnaHRVcEJldAAAAAIAAAAEcmFuZAAAAANiZXQDCQAAAAAA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AAAAAAIFAAAAA2JldAAAAAAAAAAAQQYJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABEBgkAAAAAAAACBQAAAANiZXQAAAAAAAAAAFIGCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAAXgcGAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAHgMDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAAQgYJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABFBgkAAAAAAAACBQAAAANiZXQAAAAAAAAAAFIHBgMDCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAB8DAwkAAAAAAAACBQAAAANiZXQAAAAAAAAAAEMGCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAARgYJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABfBwYDAwkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAAgAwMDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAARAYJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABHBgkAAAAAAAACBQAAAANiZXQAAAAAAAAAAFMGCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAAXwcGAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAIQMDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAARQYJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABIBgkAAAAAAAACBQAAAANiZXQAAAAAAAAAAFMHBgMDCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAACIDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAARgYJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABgBwYDAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAIwMDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAARwYJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABUBgkAAAAAAAACBQAAAANiZXQAAAAAAAAAAGAHBgMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAJAMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABIBgkAAAAAAAACBQAAAANiZXQAAAAAAAAAAFQHBgMDCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAACQDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAASAYJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABUBwYHAQAAAAlzdHJlZXRCZXQAAAACAAAABHJhbmQAAAADYmV0AwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABhAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAQYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAgcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABiAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAwcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABjAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAQYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAwcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABkAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAABAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAABQYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAABgcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABlAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAABwYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAACAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAACQcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABmAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAACgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAACwYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAADAcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABnAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAADQYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAADgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAADwcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABoAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAEAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAEQYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAEgcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABpAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAEwYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAFAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAFQcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABqAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAFgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAFwYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAGAcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABrAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAGQYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAGgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAGwcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABsAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAHAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAHQYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAHgcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABtAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAHwYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAIAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAIQcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABuAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAIgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAIwYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAJAcGBwEAAAAJY29ybmVyQmV0AAAAAgAAAARyYW5kAAAAA2JldAMDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAAbwMDAwkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAAABgkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAABBgkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAACBgkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAADBwYDAwkAAAAAAAACBQAAAANiZXQAAAAAAAAAAHADAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAQYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAAAgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAABAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAABQcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAABxAwMDCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAIGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAMGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAUGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAYHBgMDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAAcgMDAwkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAAEBgkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAAFBgkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAAHBgkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAAIBwYDAwkAAAAAAAACBQAAAANiZXQAAAAAAAAAAHMDAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAABQYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAABgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAACAYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAACQcGAwMJAAAAAAAAAgUAAAADYmV0AAAAAAAAAAB0AwMDCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAcGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAgGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAoGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAsHBgMDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAAdQMDAwkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAAIBgkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAAJBgkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAALBgkAAAAAAAACBQAAAARyYW5kAAAAAAAAAAAMBwYDAwkAAAAAAAACBQAAAANiZXQAAAAAAAAAAHYDAwMJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAACgYJAAAAAAAAAgUAAAAEcmFuZAAAAAAAAAAACwYJ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AgUAAAADYmV0AAAAAAAAAACWCQAAZwAAAAIFAAAABHJhbmQAAAAAAAAAABkHCQAAZwAAAAIAAAAAAAAAACQFAAAABHJhbmQHBgcBAAAACGNvbG9yQmV0AAAAAgAAAARyYW5kAAAAA2JldAMDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAAlwMDAwMDAwMDAwMDAwMDAwMDCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAEGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAMGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAUGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAcGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAkGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAwGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAA4GCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAABAGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAABIGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAABMGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAABUGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAABcGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAABkGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAABsGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAB4GCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAACAGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAACIGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAACQHBgMDCQAAAAAAAAIFAAAAA2JldAAAAAAAAAAAmAMDAwMDAwMDAwMDAwMDAwMDCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAIGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAQGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAYGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAgGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAoGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAAsGCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAA0GCQAAAAAAAAIFAAAABHJhbmQAAAAAAAAAAA8GCQAA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AAAAAAAAAAkAAGQAAAACBQAAAAdwcm92TnVtAAAAAAAAAAABAQAAAAxFeHRyYWN0VmFsdWUAAAABAAAABXZhbHVlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAABXZhbHVlAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAABAAAAHlZhbGlkYXRlQW5kSW5jcmVhc2VSZXNlcnZlZEFtdAAAAAEAAAAGd2luQW10BAAAABFuZXdSZXNlcnZlZEFtb3VudAkAAGQAAAACCQEAAAAMRXh0cmFjdFZhbHVlAAAAAQUAAAAOUkVTRVJWQVRJT05LRVkFAAAABndpbkFtdAQAAAAHYmFsYW5jZQkAA+sAAAACBQAAAAR0aGlzBQAAAARXQkVUAwkAAGYAAAACBQAAABFuZXdSZXNlcnZlZEFtb3VudAUAAAAHYmFsYW5jZQkAAAIAAAABAgAAAFZJbnN1ZmZpY2llbnQgZnVuZHMgb24gV2F2ZXNiZXQgRGljZSBhY2NvdW50LiBUcmFuc2FjdGlvbiB3YXMgcmVqZWN0ZWQgZm9yIHlvdXIgc2FmZXR5LgUAAAARbmV3UmVzZXJ2ZWRBbW91bnQBAAAAE0RlY3JlYXNlUmVzZXJ2ZWRBbXQAAAABAAAABndpbkFtdAQAAAARbmV3UmVzZXJ2ZWRBbW91bnQJAABlAAAAAgkBAAAADEV4dHJhY3RWYWx1ZQAAAAEFAAAADlJFU0VSVkFUSU9OS0VZBQAAAAZ3aW5BbXQDCQAAZgAAAAIAAAAAAAAAAAAFAAAAEW5ld1Jlc2VydmVkQW1vdW50CQAAAgAAAAECAAAAP0ludmFsaWQgcm91bGV0dGUgYWNjb3VudCBzdGF0ZSAtIHJlc2VydmVkIGFtb3VudCBpcyBsZXNzIHRoYW4gMAkBAAAACURhdGFFbnRyeQAAAAIFAAAADlJFU0VSVkFUSU9OS0VZBQAAABFuZXdSZXNlcnZlZEFtb3VudAEAAAAPR2VuZXJhdGVSYW5kSW50AAAAAgAAAAZnYW1lSWQAAAAHcnNhU2lnbgQAAAALcnNhU2lnVmFsaWQJAAH4AAAABAUAAAAGU0hBMjU2CQABmwAAAAEFAAAABmdhbWVJZAUAAAAH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c3VsdAAAAAIJAQAAAAtnZXRXcml0ZVNldAAAAAQFAAAACmdhbWVOdW1iZXIFAAAABndpbkFtdAUAAAAGZ2FtZUlkBQAAAAtnYW1lRGF0YVN0cgkBAAAAC1RyYW5zZmVyU2V0AAAAAQUAAAADbmlsAAAAAWkBAAAACHdpdGhkcmF3AAAAAgAAAAZnYW1lSWQAAAAGcnNhU2lnBAAAAAxnYW1lRGF0YUxpc3QJAAS1AAAAAgkBAAAADUV4dHJhY3RTdHJpbmcAAAABBQAAAAZnYW1lSWQCAAAAAV8EAAAACWdhbWVTdGF0ZQkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QAAAAAAAAAAAAEAAAAA2JldAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAADGdhbWVEYXRhTGlzdAAAAAAAAAAAAQQAAAAOcGxheWVyUHViS2V5NTgJAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0AAAAAAAAAAACBAAAAAZ3aW5BbXQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QAAAAAAAAAAAMEAAAADXBsYXllckFkZHJlc3MJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEJAAJZAAAAAQUAAAAOcGxheWVyUHViS2V5NTgEAAAAEWRlY3JlYXNlZFJlc2VydmVzCQEAAAATRGVjcmVhc2VSZXNlcnZlZEFtdAAAAAEFAAAABndpbkFtdAMJAQAAAAIhPQAAAAIFAAAACWdhbWVTdGF0ZQIAAAAJU1VCTUlUVEVECQAAAgAAAAECAAAANUludmFsaWQgZ2FtZSBzdGF0ZSBmb3IgcGFzc2VkIGdhbWVJZC4gR2FtZSBhYm9ydGVkLiAgBAAAAARwcm92CQAEtQAAAAIFAAAABmdhbWVJZAIAAAABXwQAAAAEZ2FtZQkAAZEAAAACBQAAAARwcm92AAAAAAAAAAAABAAAAAdnYW1lTnVtCQEAAAANRXh0cmFjdFN0cmluZwAAAAEFAAAABGdhbWUEAAAABHJhbmQJAQAAAA9HZW5lcmF0ZVJhbmRJbnQAAAACCQEAAAANRXh0cmFjdFN0cmluZwAAAAEFAAAAB2dhbWVOdW0FAAAABnJzYVNpZwQAAAAHcmFuZFN0cgkBAAAACVJhbmRUb1N0cgAAAAEFAAAABHJhbmQDCQEAAAALcm91bGV0dGVXaW4AAAACBQAAAARyYW5kBQAAAANiZXQEAAAADm5ld0dhbWVEYXRhU3RyCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAADV09OAgAAAAFfCQABkQAAAAIFAAAADGdhbWVEYXRhTGlzdAAAAAAAAAAAAQIAAAABXwUAAAAOcGxheWVyUHViS2V5NTgCAAAAAV8JAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0AAAAAAAAAAADAgAAAAFfBQAAAAdyYW5kU3RyCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAGZ2FtZUlkBQAAAA5uZXdHYW1lRGF0YVN0cgkABEwAAAACBQAAABFkZWNyZWFzZWRSZXNlcnZlcwUAAAADbmlsCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAADXBsYXllckFkZHJlc3MFAAAABndpbkFtdAUAAAAEV0JFVAUAAAADbmlsBAAAAA5uZXdHYW1lRGF0YVN0cgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAABExPU1QCAAAAAV8JAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0AAAAAAAAAAABAgAAAAFfBQAAAA5wbGF5ZXJQdWJLZXk1OAIAAAABXwkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QAAAAAAAAAAAMCAAAAAV8FAAAAB3JhbmRTdHIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAABmdhbWVJZAUAAAAObmV3R2FtZURhdGFTdHIFAAAAA25pbAAAAACVHBm0", "chainId": 84, "height": 833521, "spentComplexity": 0 } View: original | compacted Prev: QfGXytF9t7FYLdbsdGb9zRE8L1DvXxEGfFP1abmfN2i Next: 82SGmy6XeMbhHybuwKQ1N7dB8YE4xKA1KgCGzWo22Dhz Diff:
OldNewDifferences
2323
2424 let BETMAX = (20000000 * WAVELET)
2525
26-func splitBet (num,bet) = if (if ((num == 0))
26+func straightUpBet (rand,bet) = if ((rand == bet))
27+ then true
28+ else false
29+
30+
31+func splitBet (rand,bet) = if (if ((rand == 0))
2732 then if (if ((bet == 37))
2833 then true
2934 else (bet == 38))
3035 then true
3136 else (bet == 39)
3237 else false)
33- then 17
34- else if (if ((num == 1))
38+ then true
39+ else if (if ((rand == 1))
3540 then if (if ((bet == 37))
3641 then true
3742 else (bet == 40))
3843 then true
3944 else (bet == 85)
4045 else false)
41- then 17
42- else if (if ((num == 1))
46+ then true
47+ else if (if ((rand == 1))
4348 then if (if ((bet == 37))
4449 then true
4550 else (bet == 40))
4651 then true
4752 else (bet == 85)
4853 else false)
49- then 17
50- else if (if ((num == 2))
54+ then true
55+ else if (if ((rand == 2))
5156 then if (if (if ((bet == 38))
5257 then true
5358 else (bet == 41))
5661 then true
5762 else (bet == 85)
5863 else false)
59- then 17
60- else if (if ((num == 3))
64+ then true
65+ else if (if ((rand == 3))
6166 then if (if ((bet == 39))
6267 then true
6368 else (bet == 42))
6469 then true
6570 else (bet == 73)
6671 else false)
67- then 17
68- else if (if ((num == 4))
72+ then true
73+ else if (if ((rand == 4))
6974 then if (if ((bet == 40))
7075 then true
7176 else (bet == 43))
7277 then true
7378 else (bet == 86)
7479 else false)
75- then 17
76- else if (if ((num == 5))
80+ then true
81+ else if (if ((rand == 5))
7782 then if (if (if ((bet == 41))
7883 then true
7984 else (bet == 44))
8287 then true
8388 else (bet == 86)
8489 else false)
85- then 17
86- else if (if ((num == 6))
90+ then true
91+ else if (if ((rand == 6))
8792 then if (if ((bet == 42))
8893 then true
8994 else (bet == 45))
9095 then true
9196 else (bet == 74)
9297 else false)
93- then 17
94- else if (if ((num == 7))
98+ then true
99+ else if (if ((rand == 7))
95100 then if (if ((bet == 43))
96101 then true
97102 else (bet == 46))
98103 then true
99104 else (bet == 87)
100105 else false)
101- then 17
102- else if (if ((num == 8))
106+ then true
107+ else if (if ((rand == 8))
103108 then if (if (if ((bet == 44))
104109 then true
105110 else (bet == 47))
108113 then true
109114 else (bet == 87)
110115 else false)
111- then 17
112- else if (if ((num == 9))
116+ then true
117+ else if (if ((rand == 9))
113118 then if (if ((bet == 45))
114119 then true
115120 else (bet == 48))
116121 then true
117122 else (bet == 75)
118123 else false)
119- then 17
120- else if (if ((num == 10))
124+ then true
125+ else if (if ((rand == 10))
121126 then if (if ((bet == 46))
122127 then true
123128 else (bet == 49))
124129 then true
125130 else (bet == 88)
126131 else false)
127- then 17
128- else if (if ((num == 11))
132+ then true
133+ else if (if ((rand == 11))
129134 then if (if (if ((bet == 47))
130135 then true
131136 else (bet == 50))
134139 then true
135140 else (bet == 88)
136141 else false)
137- then 17
138- else if (if ((num == 12))
142+ then true
143+ else if (if ((rand == 12))
139144 then if (if ((bet == 48))
140145 then true
141146 else (bet == 51))
142147 then true
143148 else (bet == 76)
144149 else false)
145- then 17
146- else if (if ((num == 13))
150+ then true
151+ else if (if ((rand == 13))
147152 then if (if ((bet == 49))
148153 then true
149154 else (bet == 52))
150155 then true
151156 else (bet == 89)
152157 else false)
153- then 17
154- else if (if ((num == 14))
158+ then true
159+ else if (if ((rand == 14))
155160 then if (if (if ((bet == 50))
156161 then true
157162 else (bet == 53))
160165 then true
161166 else (bet == 89)
162167 else false)
163- then 17
164- else if (if ((num == 15))
168+ then true
169+ else if (if ((rand == 15))
165170 then if (if ((bet == 51))
166171 then true
167172 else (bet == 54))
168173 then true
169174 else (bet == 77)
170175 else false)
171- then 17
172- else if (if ((num == 16))
176+ then true
177+ else if (if ((rand == 16))
173178 then if (if ((bet == 52))
174179 then true
175180 else (bet == 55))
176181 then true
177182 else (bet == 90)
178183 else false)
179- then 17
180- else if (if ((num == 17))
184+ then true
185+ else if (if ((rand == 17))
181186 then if (if (if ((bet == 53))
182187 then true
183188 else (bet == 56))
186191 then true
187192 else (bet == 90)
188193 else false)
189- then 17
190- else if (if ((num == 18))
194+ then true
195+ else if (if ((rand == 18))
191196 then if (if ((bet == 54))
192197 then true
193198 else (bet == 57))
194199 then true
195200 else (bet == 78)
196201 else false)
197- then 17
198- else if (if ((num == 19))
202+ then true
203+ else if (if ((rand == 19))
199204 then if (if ((bet == 55))
200205 then true
201206 else (bet == 58))
202207 then true
203208 else (bet == 91)
204209 else false)
205- then 17
206- else if (if ((num == 20))
210+ then true
211+ else if (if ((rand == 20))
207212 then if (if (if ((bet == 56))
208213 then true
209214 else (bet == 59))
212217 then true
213218 else (bet == 91)
214219 else false)
215- then 17
216- else if (if ((num == 21))
220+ then true
221+ else if (if ((rand == 21))
217222 then if (if ((bet == 57))
218223 then true
219224 else (bet == 60))
220225 then true
221226 else (bet == 79)
222227 else false)
223- then 17
224- else if (if ((num == 22))
228+ then true
229+ else if (if ((rand == 22))
225230 then if (if ((bet == 58))
226231 then true
227232 else (bet == 61))
228233 then true
229234 else (bet == 92)
230235 else false)
231- then 17
232- else if (if ((num == 23))
236+ then true
237+ else if (if ((rand == 23))
233238 then if (if (if ((bet == 59))
234239 then true
235240 else (bet == 62))
238243 then true
239244 else (bet == 92)
240245 else false)
241- then 17
242- else if (if ((num == 24))
246+ then true
247+ else if (if ((rand == 24))
243248 then if (if ((bet == 60))
244249 then true
245250 else (bet == 63))
246251 then true
247252 else (bet == 80)
248253 else false)
249- then 17
250- else if (if ((num == 25))
254+ then true
255+ else if (if ((rand == 25))
251256 then if (if ((bet == 61))
252257 then true
253258 else (bet == 64))
254259 then true
255260 else (bet == 93)
256261 else false)
257- then 17
258- else if (if ((num == 26))
262+ then true
263+ else if (if ((rand == 26))
259264 then if (if (if ((bet == 62))
260265 then true
261266 else (bet == 65))
264269 then true
265270 else (bet == 93)
266271 else false)
267- then 17
268- else if (if ((num == 27))
272+ then true
273+ else if (if ((rand == 27))
269274 then if (if ((bet == 63))
270275 then true
271276 else (bet == 66))
272277 then true
273278 else (bet == 81)
274279 else false)
275- then 17
276- else if (if ((num == 28))
280+ then true
281+ else if (if ((rand == 28))
277282 then if (if ((bet == 64))
278283 then true
279284 else (bet == 67))
280285 then true
281286 else (bet == 94)
282287 else false)
283- then 17
284- else if (if ((num == 29))
288+ then true
289+ else if (if ((rand == 29))
285290 then if (if (if ((bet == 65))
286291 then true
287292 else (bet == 68))
290295 then true
291296 else (bet == 94)
292297 else false)
293- then 17
294- else if (if ((num == 30))
298+ then true
299+ else if (if ((rand == 30))
295300 then if (if ((bet == 66))
296301 then true
297302 else (bet == 69))
298303 then true
299304 else (bet == 82)
300305 else false)
301- then 17
302- else if (if ((num == 31))
306+ then true
307+ else if (if ((rand == 31))
303308 then if (if ((bet == 67))
304309 then true
305310 else (bet == 70))
306311 then true
307312 else (bet == 95)
308313 else false)
309- then 17
310- else if (if ((num == 32))
314+ then true
315+ else if (if ((rand == 32))
311316 then if (if (if ((bet == 68))
312317 then true
313318 else (bet == 71))
316321 then true
317322 else (bet == 95)
318323 else false)
319- then 17
320- else if (if ((num == 33))
324+ then true
325+ else if (if ((rand == 33))
321326 then if (if ((bet == 69))
322327 then true
323328 else (bet == 72))
324329 then true
325330 else (bet == 83)
326331 else false)
327- then 17
328- else if (if ((num == 34))
332+ then true
333+ else if (if ((rand == 34))
329334 then if ((bet == 70))
330335 then true
331336 else (bet == 96)
332337 else false)
333- then 17
334- else if (if (if ((num == 35))
338+ then true
339+ else if (if (if ((rand == 35))
335340 then if (if ((bet == 71))
336341 then true
337342 else (bet == 84))
339344 else (bet == 96)
340345 else false)
341346 then true
342- else if ((num == 36))
347+ else if ((rand == 36))
343348 then if ((bet == 72))
344349 then true
345350 else (bet == 84)
346351 else false)
347- then 17
348- else if (if ((num == 36))
352+ then true
353+ else if (if ((rand == 36))
349354 then if ((bet == 72))
350355 then true
351356 else (bet == 84)
352357 else false)
353- then 17
354- else 0
358+ then true
359+ else false
355360
356361
357-func streetBet (num,bet) = if (if ((bet == 97))
358- then if (if ((num == 0))
362+func streetBet (rand,bet) = if (if ((bet == 97))
363+ then if (if ((rand == 0))
359364 then true
360- else (num == 1))
365+ else (rand == 1))
361366 then true
362- else (num == 2)
367+ else (rand == 2)
363368 else false)
364- then 11
369+ then true
365370 else if (if ((bet == 98))
366- then if (if ((num == 0))
371+ then if (if ((rand == 0))
367372 then true
368- else (num == 2))
373+ else (rand == 2))
369374 then true
370- else (num == 3)
375+ else (rand == 3)
371376 else false)
372- then 11
377+ then true
373378 else if (if ((bet == 99))
374- then if (if ((num == 1))
379+ then if (if ((rand == 1))
375380 then true
376- else (num == 2))
381+ else (rand == 2))
377382 then true
378- else (num == 3)
383+ else (rand == 3)
379384 else false)
380- then 11
385+ then true
381386 else if (if ((bet == 100))
382- then if (if ((num == 4))
387+ then if (if ((rand == 4))
383388 then true
384- else (num == 5))
389+ else (rand == 5))
385390 then true
386- else (num == 6)
391+ else (rand == 6)
387392 else false)
388- then 11
393+ then true
389394 else if (if ((bet == 101))
390- then if (if ((num == 7))
395+ then if (if ((rand == 7))
391396 then true
392- else (num == 8))
397+ else (rand == 8))
393398 then true
394- else (num == 9)
399+ else (rand == 9)
395400 else false)
396- then 11
401+ then true
397402 else if (if ((bet == 102))
398- then if (if ((num == 10))
403+ then if (if ((rand == 10))
399404 then true
400- else (num == 11))
405+ else (rand == 11))
401406 then true
402- else (num == 12)
407+ else (rand == 12)
403408 else false)
404- then 11
409+ then true
405410 else if (if ((bet == 103))
406- then if (if ((num == 13))
411+ then if (if ((rand == 13))
407412 then true
408- else (num == 14))
413+ else (rand == 14))
409414 then true
410- else (num == 15)
415+ else (rand == 15)
411416 else false)
412- then 11
417+ then true
413418 else if (if ((bet == 104))
414- then if (if ((num == 16))
419+ then if (if ((rand == 16))
415420 then true
416- else (num == 17))
421+ else (rand == 17))
417422 then true
418- else (num == 18)
423+ else (rand == 18)
419424 else false)
420- then 11
425+ then true
421426 else if (if ((bet == 105))
422- then if (if ((num == 19))
427+ then if (if ((rand == 19))
423428 then true
424- else (num == 20))
429+ else (rand == 20))
425430 then true
426- else (num == 21)
431+ else (rand == 21)
427432 else false)
428- then 11
433+ then true
429434 else if (if ((bet == 106))
430- then if (if ((num == 22))
435+ then if (if ((rand == 22))
431436 then true
432- else (num == 23))
437+ else (rand == 23))
433438 then true
434- else (num == 24)
439+ else (rand == 24)
435440 else false)
436- then 11
441+ then true
437442 else if (if ((bet == 107))
438- then if (if ((num == 25))
443+ then if (if ((rand == 25))
439444 then true
440- else (num == 26))
445+ else (rand == 26))
441446 then true
442- else (num == 27)
447+ else (rand == 27)
443448 else false)
444- then 11
449+ then true
445450 else if (if ((bet == 108))
446- then if (if ((num == 28))
451+ then if (if ((rand == 28))
447452 then true
448- else (num == 29))
453+ else (rand == 29))
449454 then true
450- else (num == 30)
455+ else (rand == 30)
451456 else false)
452- then 11
457+ then true
453458 else if (if ((bet == 109))
454- then if (if ((num == 31))
459+ then if (if ((rand == 31))
455460 then true
456- else (num == 32))
461+ else (rand == 32))
457462 then true
458- else (num == 33)
463+ else (rand == 33)
459464 else false)
460- then 11
465+ then true
461466 else if (if ((bet == 110))
462- then if (if ((num == 34))
467+ then if (if ((rand == 34))
463468 then true
464- else (num == 35))
469+ else (rand == 35))
465470 then true
466- else (num == 36)
471+ else (rand == 36)
467472 else false)
468- then 11
469- else 0
473+ then true
474+ else false
470475
471476
472-func cornerBet (num,bet) = if (if ((bet == 111))
473- then if (if (if ((num == 0))
477+func cornerBet (rand,bet) = if (if ((bet == 111))
478+ then if (if (if ((rand == 0))
474479 then true
475- else (num == 1))
480+ else (rand == 1))
476481 then true
477- else (num == 2))
482+ else (rand == 2))
478483 then true
479- else (num == 3)
484+ else (rand == 3)
480485 else false)
481- then 8
486+ then true
482487 else if (if ((bet == 112))
483- then if (if (if ((num == 1))
488+ then if (if (if ((rand == 1))
484489 then true
485- else (num == 2))
490+ else (rand == 2))
486491 then true
487- else (num == 4))
492+ else (rand == 4))
488493 then true
489- else (num == 5)
494+ else (rand == 5)
490495 else false)
491- then 8
496+ then true
492497 else if (if ((bet == 113))
493- then if (if (if ((num == 2))
498+ then if (if (if ((rand == 2))
494499 then true
495- else (num == 3))
500+ else (rand == 3))
496501 then true
497- else (num == 5))
502+ else (rand == 5))
498503 then true
499- else (num == 6)
504+ else (rand == 6)
500505 else false)
501- then 8
506+ then true
502507 else if (if ((bet == 114))
503- then if (if (if ((num == 4))
508+ then if (if (if ((rand == 4))
504509 then true
505- else (num == 5))
510+ else (rand == 5))
506511 then true
507- else (num == 7))
512+ else (rand == 7))
508513 then true
509- else (num == 8)
514+ else (rand == 8)
510515 else false)
511- then 8
516+ then true
512517 else if (if ((bet == 115))
513- then if (if (if ((num == 5))
518+ then if (if (if ((rand == 5))
514519 then true
515- else (num == 6))
520+ else (rand == 6))
516521 then true
517- else (num == 8))
522+ else (rand == 8))
518523 then true
519- else (num == 9)
524+ else (rand == 9)
520525 else false)
521- then 8
526+ then true
522527 else if (if ((bet == 116))
523- then if (if (if ((num == 7))
528+ then if (if (if ((rand == 7))
524529 then true
525- else (num == 8))
530+ else (rand == 8))
526531 then true
527- else (num == 10))
532+ else (rand == 10))
528533 then true
529- else (num == 11)
534+ else (rand == 11)
530535 else false)
531- then 8
536+ then true
532537 else if (if ((bet == 117))
533- then if (if (if ((num == 8))
538+ then if (if (if ((rand == 8))
534539 then true
535- else (num == 9))
540+ else (rand == 9))
536541 then true
537- else (num == 11))
542+ else (rand == 11))
538543 then true
539- else (num == 12)
544+ else (rand == 12)
540545 else false)
541- then 8
546+ then true
542547 else if (if ((bet == 118))
543- then if (if (if ((num == 10))
548+ then if (if (if ((rand == 10))
544549 then true
545- else (num == 11))
550+ else (rand == 11))
546551 then true
547- else (num == 13))
552+ else (rand == 13))
548553 then true
549- else (num == 14)
554+ else (rand == 14)
550555 else false)
551- then 8
556+ then true
552557 else if (if ((bet == 119))
553- then if (if (if ((num == 11))
558+ then if (if (if ((rand == 11))
554559 then true
555- else (num == 12))
560+ else (rand == 12))
556561 then true
557- else (num == 14))
562+ else (rand == 14))
558563 then true
559- else (num == 15)
564+ else (rand == 15)
560565 else false)
561- then 8
566+ then true
562567 else if (if ((bet == 120))
563- then if (if (if ((num == 13))
568+ then if (if (if ((rand == 13))
564569 then true
565- else (num == 14))
570+ else (rand == 14))
566571 then true
567- else (num == 16))
572+ else (rand == 16))
568573 then true
569- else (num == 17)
574+ else (rand == 17)
570575 else false)
571- then 8
576+ then true
572577 else if (if ((bet == 121))
573- then if (if (if ((num == 14))
578+ then if (if (if ((rand == 14))
574579 then true
575- else (num == 15))
580+ else (rand == 15))
576581 then true
577- else (num == 17))
582+ else (rand == 17))
578583 then true
579- else (num == 18)
584+ else (rand == 18)
580585 else false)
581- then 8
586+ then true
582587 else if (if ((bet == 122))
583- then if (if (if ((num == 16))
588+ then if (if (if ((rand == 16))
584589 then true
585- else (num == 17))
590+ else (rand == 17))
586591 then true
587- else (num == 19))
592+ else (rand == 19))
588593 then true
589- else (num == 20)
594+ else (rand == 20)
590595 else false)
591- then 8
596+ then true
592597 else if (if ((bet == 123))
593- then if (if (if ((num == 17))
598+ then if (if (if ((rand == 17))
594599 then true
595- else (num == 18))
600+ else (rand == 18))
596601 then true
597- else (num == 20))
602+ else (rand == 20))
598603 then true
599- else (num == 21)
604+ else (rand == 21)
600605 else false)
601- then 8
606+ then true
602607 else if (if ((bet == 124))
603- then if (if (if ((num == 19))
608+ then if (if (if ((rand == 19))
604609 then true
605- else (num == 20))
610+ else (rand == 20))
606611 then true
607- else (num == 22))
612+ else (rand == 22))
608613 then true
609- else (num == 23)
614+ else (rand == 23)
610615 else false)
611- then 8
616+ then true
612617 else if (if ((bet == 125))
613- then if (if (if ((num == 20))
618+ then if (if (if ((rand == 20))
614619 then true
615- else (num == 21))
620+ else (rand == 21))
616621 then true
617- else (num == 23))
622+ else (rand == 23))
618623 then true
619- else (num == 24)
624+ else (rand == 24)
620625 else false)
621- then 8
626+ then true
622627 else if (if ((bet == 126))
623- then if (if (if ((num == 22))
628+ then if (if (if ((rand == 22))
624629 then true
625- else (num == 23))
630+ else (rand == 23))
626631 then true
627- else (num == 25))
632+ else (rand == 25))
628633 then true
629- else (num == 26)
634+ else (rand == 26)
630635 else false)
631- then 8
636+ then true
632637 else if (if ((bet == 127))
633- then if (if (if ((num == 23))
638+ then if (if (if ((rand == 23))
634639 then true
635- else (num == 24))
640+ else (rand == 24))
636641 then true
637- else (num == 26))
642+ else (rand == 26))
638643 then true
639- else (num == 27)
644+ else (rand == 27)
640645 else false)
641- then 8
646+ then true
642647 else if (if ((bet == 128))
643- then if (if (if ((num == 25))
648+ then if (if (if ((rand == 25))
644649 then true
645- else (num == 26))
650+ else (rand == 26))
646651 then true
647- else (num == 28))
652+ else (rand == 28))
648653 then true
649- else (num == 29)
654+ else (rand == 29)
650655 else false)
651- then 8
656+ then true
652657 else if (if ((bet == 129))
653- then if (if (if ((num == 26))
658+ then if (if (if ((rand == 26))
654659 then true
655- else (num == 27))
660+ else (rand == 27))
656661 then true
657- else (num == 29))
662+ else (rand == 29))
658663 then true
659- else (num == 30)
664+ else (rand == 30)
660665 else false)
661- then 8
666+ then true
662667 else if (if ((bet == 130))
663- then if (if (if ((num == 28))
668+ then if (if (if ((rand == 28))
664669 then true
665- else (num == 29))
670+ else (rand == 29))
666671 then true
667- else (num == 31))
672+ else (rand == 31))
668673 then true
669- else (num == 32)
674+ else (rand == 32)
670675 else false)
671- then 8
676+ then true
672677 else if (if ((bet == 131))
673- then if (if (if ((num == 29))
678+ then if (if (if ((rand == 29))
674679 then true
675- else (num == 30))
680+ else (rand == 30))
676681 then true
677- else (num == 32))
682+ else (rand == 32))
678683 then true
679- else (num == 33)
684+ else (rand == 33)
680685 else false)
681- then 8
686+ then true
682687 else if (if ((bet == 132))
683- then if (if (if ((num == 31))
688+ then if (if (if ((rand == 31))
684689 then true
685- else (num == 32))
690+ else (rand == 32))
686691 then true
687- else (num == 34))
692+ else (rand == 34))
688693 then true
689- else (num == 35)
694+ else (rand == 35)
690695 else false)
691- then 8
696+ then true
692697 else if (if ((bet == 133))
693- then if (if (if ((num == 32))
698+ then if (if (if ((rand == 32))
694699 then true
695- else (num == 33))
700+ else (rand == 33))
696701 then true
697- else (num == 35))
702+ else (rand == 35))
698703 then true
699- else (num == 36)
704+ else (rand == 36)
700705 else false)
701- then 8
702- else 0
706+ then true
707+ else false
703708
704709
705-func lineBet (num,bet) = if (if (if ((bet == 134))
706- then (num >= 1)
710+func lineBet (rand,bet) = if (if (if ((bet == 134))
711+ then (rand >= 1)
707712 else false)
708- then (6 >= num)
713+ then (6 >= rand)
709714 else false)
710- then 5
715+ then true
711716 else if (if (if ((bet == 135))
712- then (num >= 4)
717+ then (rand >= 4)
713718 else false)
714- then (9 >= num)
719+ then (9 >= rand)
715720 else false)
716- then 5
721+ then true
717722 else if (if (if ((bet == 136))
718- then (num >= 7)
723+ then (rand >= 7)
719724 else false)
720- then (12 >= num)
725+ then (12 >= rand)
721726 else false)
722- then 5
727+ then true
723728 else if (if (if ((bet == 137))
724- then (num >= 10)
729+ then (rand >= 10)
725730 else false)
726- then (15 >= num)
731+ then (15 >= rand)
727732 else false)
728- then 5
733+ then true
729734 else if (if (if ((bet == 138))
730- then (num >= 13)
735+ then (rand >= 13)
731736 else false)
732- then (18 >= num)
737+ then (18 >= rand)
733738 else false)
734- then 5
739+ then true
735740 else if (if (if ((bet == 139))
736- then (num >= 16)
741+ then (rand >= 16)
737742 else false)
738- then (21 >= num)
743+ then (21 >= rand)
739744 else false)
740- then 5
745+ then true
741746 else if (if (if ((bet == 140))
742- then (num >= 19)
747+ then (rand >= 19)
743748 else false)
744- then (24 >= num)
749+ then (24 >= rand)
745750 else false)
746- then 5
751+ then true
747752 else if (if (if ((bet == 141))
748- then (num >= 22)
753+ then (rand >= 22)
749754 else false)
750- then (27 >= num)
755+ then (27 >= rand)
751756 else false)
752- then 5
757+ then true
753758 else if (if (if ((bet == 142))
754- then (num >= 25)
759+ then (rand >= 25)
755760 else false)
756- then (30 >= num)
761+ then (30 >= rand)
757762 else false)
758- then 5
763+ then true
759764 else if (if (if ((bet == 143))
760- then (num >= 28)
765+ then (rand >= 28)
761766 else false)
762- then (33 >= num)
767+ then (33 >= rand)
763768 else false)
764- then 5
769+ then true
765770 else if (if (if ((bet == 144))
766- then (num >= 31)
771+ then (rand >= 31)
767772 else false)
768- then (36 >= num)
773+ then (36 >= rand)
769774 else false)
770- then 5
771- else 0
775+ then true
776+ else false
772777
773778
774-func columnBet (num,bet) = if (if ((bet == 145))
775- then if (if (if (if (if (if (if (if (if (if (if (if ((num == 0))
779+func columnBet (rand,bet) = if (if ((bet == 145))
780+ then if (if (if (if (if (if (if (if (if (if (if (if ((rand == 0))
776781 then true
777- else (num == 1))
782+ else (rand == 1))
778783 then true
779- else (num == 4))
784+ else (rand == 4))
780785 then true
781- else (num == 7))
786+ else (rand == 7))
782787 then true
783- else (num == 10))
788+ else (rand == 10))
784789 then true
785- else (num == 13))
790+ else (rand == 13))
786791 then true
787- else (num == 16))
792+ else (rand == 16))
788793 then true
789- else (num == 19))
794+ else (rand == 19))
790795 then true
791- else (num == 22))
796+ else (rand == 22))
792797 then true
793- else (num == 25))
798+ else (rand == 25))
794799 then true
795- else (num == 28))
800+ else (rand == 28))
796801 then true
797- else (num == 31))
802+ else (rand == 31))
798803 then true
799- else (num == 34)
804+ else (rand == 34)
800805 else false)
801- then 2
806+ then true
802807 else if (if ((bet == 146))
803- then if (if (if (if (if (if (if (if (if (if (if (if ((num == 0))
808+ then if (if (if (if (if (if (if (if (if (if (if (if ((rand == 0))
804809 then true
805- else (num == 2))
810+ else (rand == 2))
806811 then true
807- else (num == 5))
812+ else (rand == 5))
808813 then true
809- else (num == 8))
814+ else (rand == 8))
810815 then true
811- else (num == 11))
816+ else (rand == 11))
812817 then true
813- else (num == 14))
818+ else (rand == 14))
814819 then true
815- else (num == 17))
820+ else (rand == 17))
816821 then true
817- else (num == 20))
822+ else (rand == 20))
818823 then true
819- else (num == 23))
824+ else (rand == 23))
820825 then true
821- else (num == 26))
826+ else (rand == 26))
822827 then true
823- else (num == 29))
828+ else (rand == 29))
824829 then true
825- else (num == 32))
830+ else (rand == 32))
826831 then true
827- else (num == 35)
832+ else (rand == 35)
828833 else false)
829- then 2
834+ then true
830835 else if (if ((bet == 147))
831- then if (if (if (if (if (if (if (if (if (if (if (if ((num == 0))
836+ then if (if (if (if (if (if (if (if (if (if (if (if ((rand == 0))
832837 then true
833- else (num == 3))
838+ else (rand == 3))
834839 then true
835- else (num == 6))
840+ else (rand == 6))
836841 then true
837- else (num == 9))
842+ else (rand == 9))
838843 then true
839- else (num == 12))
844+ else (rand == 12))
840845 then true
841- else (num == 15))
846+ else (rand == 15))
842847 then true
843- else (num == 18))
848+ else (rand == 18))
844849 then true
845- else (num == 21))
850+ else (rand == 21))
846851 then true
847- else (num == 24))
852+ else (rand == 24))
848853 then true
849- else (num == 27))
854+ else (rand == 27))
850855 then true
851- else (num == 30))
856+ else (rand == 30))
852857 then true
853- else (num == 33))
858+ else (rand == 33))
854859 then true
855- else (num == 36)
860+ else (rand == 36)
856861 else false)
857- then 2
858- else 0
862+ then true
863+ else false
859864
860865
861-func dozenBet (num,bet) = if (if (if ((bet == 148))
862- then (num >= 1)
866+func dozenBet (rand,bet) = if (if (if ((bet == 148))
867+ then (rand >= 1)
863868 else false)
864- then (12 >= num)
869+ then (12 >= rand)
865870 else false)
866- then 2
871+ then true
867872 else if (if (if ((bet == 149))
868- then (num >= 13)
873+ then (rand >= 13)
869874 else false)
870- then (24 >= num)
875+ then (24 >= rand)
871876 else false)
872- then 2
877+ then true
873878 else if (if (if ((bet == 150))
874- then (num >= 25)
879+ then (rand >= 25)
875880 else false)
876- then (36 >= num)
881+ then (36 >= rand)
877882 else false)
878- then 2
879- else 0
883+ then true
884+ else false
880885
881886
882-func colorBet (num,bet) = if (if ((bet == 151))
883- then if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ((num == 1))
887+func colorBet (rand,bet) = if (if ((bet == 151))
888+ then if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ((rand == 1))
884889 then true
885- else (num == 3))
890+ else (rand == 3))
886891 then true
887- else (num == 5))
892+ else (rand == 5))
888893 then true
889- else (num == 7))
894+ else (rand == 7))
890895 then true
891- else (num == 9))
896+ else (rand == 9))
892897 then true
893- else (num == 12))
898+ else (rand == 12))
894899 then true
895- else (num == 14))
900+ else (rand == 14))
896901 then true
897- else (num == 16))
902+ else (rand == 16))
898903 then true
899- else (num == 18))
904+ else (rand == 18))
900905 then true
901- else (num == 19))
906+ else (rand == 19))
902907 then true
903- else (num == 21))
908+ else (rand == 21))
904909 then true
905- else (num == 23))
910+ else (rand == 23))
906911 then true
907- else (num == 25))
912+ else (rand == 25))
908913 then true
909- else (num == 27))
914+ else (rand == 27))
910915 then true
911- else (num == 30))
916+ else (rand == 30))
912917 then true
913- else (num == 32))
918+ else (rand == 32))
914919 then true
915- else (num == 34))
920+ else (rand == 34))
916921 then true
917- else (num == 36)
922+ else (rand == 36)
918923 else false)
919- then 2
924+ then true
920925 else if (if ((bet == 152))
921- then if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ((num == 2))
926+ then if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ((rand == 2))
922927 then true
923- else (num == 4))
928+ else (rand == 4))
924929 then true
925- else (num == 6))
930+ else (rand == 6))
926931 then true
927- else (num == 8))
932+ else (rand == 8))
928933 then true
929- else (num == 10))
934+ else (rand == 10))
930935 then true
931- else (num == 11))
936+ else (rand == 11))
932937 then true
933- else (num == 13))
938+ else (rand == 13))
934939 then true
935- else (num == 15))
940+ else (rand == 15))
936941 then true
937- else (num == 17))
942+ else (rand == 17))
938943 then true
939- else (num == 20))
944+ else (rand == 20))
940945 then true
941- else (num == 22))
946+ else (rand == 22))
942947 then true
943- else (num == 24))
948+ else (rand == 24))
944949 then true
945- else (num == 26))
950+ else (rand == 26))
946951 then true
947- else (num == 28))
952+ else (rand == 28))
948953 then true
949- else (num == 29))
954+ else (rand == 29))
950955 then true
951- else (num == 31))
956+ else (rand == 31))
952957 then true
953- else (num == 33))
958+ else (rand == 33))
954959 then true
955- else (num == 35)
960+ else (rand == 35)
956961 else false)
957- then 2
958- else 0
962+ then true
963+ else false
959964
960965
961-func evenOddBet (num,bet) = {
962- let rem = (num % 2)
963- if (if (if ((num > 0))
966+func evenOddBet (rand,bet) = {
967+ let rem = (rand % 2)
968+ if (if (if ((rand > 0))
964969 then (bet == 153)
965970 else false)
966971 then (rem == 0)
967972 else false)
968- then 1
969- else if (if (if ((num > 0))
973+ then true
974+ else if (if (if ((rand > 0))
970975 then (bet == 154)
971976 else false)
972977 then (rem != 0)
973978 else false)
974- then 1
975- else 0
979+ then true
980+ else false
976981 }
977982
978983
979-func rouletteCalc (num,bet,betValuet) = if (if ((bet >= 0))
984+func lowHighBet (rand,bet) = if (if (if ((bet == 155))
985+ then (rand >= 1)
986+ else false)
987+ then (18 >= rand)
988+ else false)
989+ then true
990+ else if (if (if ((bet == 156))
991+ then (rand >= 19)
992+ else false)
993+ then (36 >= rand)
994+ else false)
995+ then true
996+ else false
997+
998+
999+func rouletteWin (rand,bet) = if (if ((bet >= 0))
9801000 then (36 >= bet)
9811001 else false)
982- then if ((num == bet))
983- then (35 * betValuet)
984- else 0
1002+ then straightUpBet(rand, bet)
9851003 else if (if ((bet >= 37))
9861004 then (96 >= bet)
9871005 else false)
988- then (splitBet(num, bet) * betValuet)
1006+ then splitBet(rand, bet)
9891007 else if (if ((bet >= 97))
9901008 then (110 >= bet)
9911009 else false)
992- then (streetBet(num, bet) * betValuet)
1010+ then streetBet(rand, bet)
9931011 else if (if ((bet >= 111))
9941012 then (133 >= bet)
9951013 else false)
996- then (cornerBet(num, bet) * betValuet)
1014+ then cornerBet(rand, bet)
9971015 else if (if ((bet >= 134))
9981016 then (144 >= bet)
9991017 else false)
1000- then (lineBet(num, bet) * betValuet)
1018+ then lineBet(rand, bet)
10011019 else if (if ((bet >= 145))
10021020 then (147 >= bet)
10031021 else false)
1004- then (columnBet(num, bet) * betValuet)
1022+ then columnBet(rand, bet)
10051023 else if (if ((bet >= 148))
10061024 then (150 >= bet)
10071025 else false)
1008- then (dozenBet(num, bet) * betValuet)
1026+ then dozenBet(rand, bet)
10091027 else if (if ((bet == 151))
10101028 then true
10111029 else (bet == 152))
1012- then (colorBet(num, bet) * betValuet)
1030+ then colorBet(rand, bet)
10131031 else if (if ((bet == 153))
10141032 then true
10151033 else (bet == 154))
1016- then (evenOddBet(num, bet) * betValuet)
1034+ then evenOddBet(rand, bet)
10171035 else if (if ((bet == 155))
10181036 then true
10191037 else (bet == 156))
1020- then if (if (if ((bet == 155))
1021- then (num >= 1)
1022- else false)
1023- then (18 >= num)
1024- else false)
1025- then (1 * betValuet)
1026- else if (if (if ((bet == 156))
1027- then (num >= 19)
1028- else false)
1029- then (36 >= num)
1030- else false)
1031- then (1 * betValuet)
1032- else 0
1033- else throw("Random number out of range, 0 <= rand <= 36")
1038+ then lowHighBet(rand, bet)
1039+ else throw("Random randber out of range, 0 <= rand <= 36")
10341040
10351041
1036-func IncrementGameNum () = {
1037- let gameNum = match getInteger(this, GAMESCOUNTERKEY) {
1042+func getWinAmount (bet,amount) = if (if ((bet >= 0))
1043+ then (36 >= bet)
1044+ else false)
1045+ then (amount * 35)
1046+ else if (if ((bet >= 37))
1047+ then (96 >= bet)
1048+ else false)
1049+ then (amount * 17)
1050+ else if (if ((bet >= 97))
1051+ then (110 >= bet)
1052+ else false)
1053+ then (amount * 11)
1054+ else if (if ((bet >= 111))
1055+ then (133 >= bet)
1056+ else false)
1057+ then (amount * 8)
1058+ else if (if ((bet >= 134))
1059+ then (144 >= bet)
1060+ else false)
1061+ then (amount * 5)
1062+ else if (if ((bet >= 145))
1063+ then (147 >= bet)
1064+ else false)
1065+ then (amount * 2)
1066+ else if (if ((bet >= 148))
1067+ then (150 >= bet)
1068+ else false)
1069+ then (amount * 2)
1070+ else if (if ((bet == 151))
1071+ then true
1072+ else (bet == 152))
1073+ then (amount * 2)
1074+ else if (if ((bet == 153))
1075+ then true
1076+ else (bet == 154))
1077+ then amount
1078+ else if (if ((bet == 155))
1079+ then true
1080+ else (bet == 156))
1081+ then amount
1082+ else throw("Bet number out of range, 0 <= rand <= 156")
1083+
1084+
1085+func IncrementValue (value) = {
1086+ let provNum = match getInteger(this, value) {
10381087 case num: Int =>
10391088 num
10401089 case _ =>
10411090 0
10421091 }
1043- (gameNum + 1)
1092+ (provNum + 1)
10441093 }
10451094
10461095
1047-func ExtractReservedAmt () = match getInteger(this, RESERVATIONKEY) {
1096+func ExtractValue (value) = match getInteger(this, value) {
10481097 case a: Int =>
10491098 a
10501099 case _ =>
10531102
10541103
10551104 func ValidateAndIncreaseReservedAmt (winAmt) = {
1056- let newReservedAmount = (ExtractReservedAmt() + winAmt)
1105+ let newReservedAmount = (ExtractValue(RESERVATIONKEY) + winAmt)
10571106 let balance = assetBalance(this, WBET)
10581107 if ((newReservedAmount > balance))
10591108 then throw("Insufficient funds on Wavesbet Dice account. Transaction was rejected for your safety.")
10611110 }
10621111
10631112
1113+func DecreaseReservedAmt (winAmt) = {
1114+ let newReservedAmount = (ExtractValue(RESERVATIONKEY) - winAmt)
1115+ if ((0 > newReservedAmount))
1116+ then throw("Invalid roulette account state - reserved amount is less than 0")
1117+ else DataEntry(RESERVATIONKEY, newReservedAmount)
1118+ }
1119+
1120+
10641121 func GenerateRandInt (gameId,rsaSign) = {
10651122 let rsaSigValid = rsaVerify(SHA256, toBytes(gameId), rsaSign, RSAPUBLIC)
10661123 if (rsaSigValid)
10671124 then {
1068- let rand = (toInt(sha256(rsaSign)) % 36)
1125+ let rand = (toInt(sha256(rsaSign)) % 37)
10691126 if ((0 > rand))
10701127 then ((-1 * rand) + 1)
10711128 else (rand + 1)
10811138 else throw(("Unsupported r parameter passed: expected=[0,...,36] actual=" + toString(r)))
10821139
10831140
1084-func validateBet (bet,betValue) = if (if ((0 > bet))
1085- then true
1086- else (bet > 156))
1087- then throw("invalid play, play must be between 0 and 156.")
1088- else if ((0 > betValue))
1089- then throw("Bet value must be greater than or equal to 0")
1090- else if ((10 > bet))
1091- then ((("00" + toString(bet)) + "-") + toString(betValue))
1092- else if (if ((bet >= 10))
1093- then (100 > bet)
1094- else false)
1095- then ((("0" + toString(bet)) + "-") + toString(betValue))
1096- else ((toString(bet) + "-") + toString(betValue))
1097-
1098-
1099-func ExtractGameDataList (gameId) = {
1100- let rawDataStr = match getString(this, gameId) {
1141+func ExtractString (id) = {
1142+ let rawDataStr = match getString(this, id) {
11011143 case str: String =>
11021144 str
11031145 case _ =>
1104- throw(("Couldn't find game by " + gameId))
1146+ throw(("Couldn't find string by " + id))
11051147 }
1106- split(rawDataStr, "_")
1148+ rawDataStr
1149+ }
1150+
1151+
1152+func GetGameId (gameNumber) = {
1153+ let str = toString(gameNumber)
1154+ if ((0 > gameNumber))
1155+ then throw("Game number must not have negative value, pass 0 to a new game or an existing game number")
1156+ else if ((gameNumber == 0))
1157+ then ((toString(IncrementValue(GAMESCOUNTERKEY)) + "_") + "1")
1158+ else ((str + "_") + toString(IncrementValue(str)))
1159+ }
1160+
1161+
1162+func getWriteSet (gameNumber,winAmt,gameId,gameDataStr) = {
1163+ let strGameN = toString(gameNumber)
1164+ if ((gameNumber == 0))
1165+ then WriteSet([DataEntry(GAMESCOUNTERKEY, IncrementValue(GAMESCOUNTERKEY)), DataEntry(RESERVATIONKEY, ValidateAndIncreaseReservedAmt(winAmt)), DataEntry(strGameN, 1), DataEntry(gameId, gameDataStr)])
1166+ else WriteSet([DataEntry(RESERVATIONKEY, ValidateAndIncreaseReservedAmt(winAmt)), DataEntry(strGameN, IncrementValue(strGameN)), DataEntry(gameId, gameDataStr)])
11071167 }
11081168
11091169
11101170 @Callable(i)
1111-func playRoulette (bet1,val1,bet2,val2,bet3,val3) = {
1112- let gameId = toBase58String(i.transactionId)
1113- let gameIdUsed = isDefined(getString(this, gameId))
1171+func playRoulette (bet,gameNumber) = {
1172+ let betId = toBase58String(i.transactionId)
11141173 let payment = extract(i.payment)
11151174 let feeAssetId = isDefined(i.feeAssetId)
11161175 let playerBalance = wavesBalance(i.caller)
1117- let playAmount = (((val1 + val2) + val3) * WAVELET)
1176+ let gameId = GetGameId(gameNumber)
1177+ let gameIdUsed = isDefined(getString(this, gameId))
1178+ let winAmt = getWinAmount(bet, payment.amount)
11181179 if ((payment.assetId != WBET))
11191180 then throw("Payment should be in Wavesbet")
11201181 else if ((1000000 > playerBalance))
11231184 then throw("Transaction's fee must be in Waves. Game aborted.")
11241185 else if (gameIdUsed)
11251186 then throw("Passed gameId had been used before. Game aborted.")
1126- else if ((playAmount != payment.amount))
1127- then throw("Payment value is different from bet value. ")
1128- else {
1129- let newGameNum = IncrementGameNum()
1130- let playerPubKey58 = toBase58String(i.callerPublicKey)
1131- let gameDataStr = (((((((("SUBMITTED" + "_") + playerPubKey58) + "_") + validateBet(bet1, val1)) + "_") + validateBet(bet2, val2)) + "_") + validateBet(bet3, val3))
1132- ScriptResult(WriteSet([DataEntry(GAMESCOUNTERKEY, newGameNum), DataEntry(gameId, gameDataStr)]), TransferSet(nil))
1133- }
1187+ else {
1188+ let playerPubKey58 = toBase58String(i.callerPublicKey)
1189+ let gameDataStr = (((((("SUBMITTED" + "_") + toString(bet)) + "_") + playerPubKey58) + "_") + toString(winAmt))
1190+ ScriptResult(getWriteSet(gameNumber, winAmt, gameId, gameDataStr), TransferSet(nil))
1191+ }
11341192 }
11351193
11361194
11371195
11381196 @Callable(i)
11391197 func withdraw (gameId,rsaSig) = {
1140- let gameDataList = ExtractGameDataList(gameId)
1198+ let gameDataList = split(ExtractString(gameId), "_")
11411199 let gameState = gameDataList[0]
1142- let playerPubKey58 = gameDataList[1]
1200+ let bet = parseIntValue(gameDataList[1])
1201+ let playerPubKey58 = gameDataList[2]
1202+ let winAmt = parseIntValue(gameDataList[3])
11431203 let playerAddress = addressFromPublicKey(fromBase58String(playerPubKey58))
1204+ let decreasedReserves = DecreaseReservedAmt(winAmt)
11441205 if ((gameState != "SUBMITTED"))
11451206 then throw("Invalid game state for passed gameId. Game aborted. ")
11461207 else {
1147- let rand = GenerateRandInt(gameId, rsaSig)
1208+ let prov = split(gameId, "_")
1209+ let game = prov[0]
1210+ let gameNum = ExtractString(game)
1211+ let rand = GenerateRandInt(ExtractString(gameNum), rsaSig)
11481212 let randStr = RandToStr(rand)
1149- let result1 = rouletteCalc(rand, parseIntValue(take(gameDataList[2], 3)), parseIntValue(drop(gameDataList[2], 4)))
1150- let result2 = rouletteCalc(rand, parseIntValue(take(gameDataList[3], 3)), parseIntValue(drop(gameDataList[3], 4)))
1151- let result3 = rouletteCalc(rand, parseIntValue(take(gameDataList[4], 3)), parseIntValue(drop(gameDataList[4], 4)))
1152- let winAmt = (((result1 + result2) + result3) * WAVELET)
1153- if ((winAmt > 0))
1213+ if (rouletteWin(rand, bet))
11541214 then {
1155- let newGameDataStr = (((((((((((("WON" + "_") + playerPubKey58) + "_") + gameDataList[2]) + "_") + gameDataList[3]) + "_") + gameDataList[4]) + "_") + toString(winAmt)) + "_") + randStr)
1156- ScriptResult(WriteSet([DataEntry(gameId, newGameDataStr)]), TransferSet([ScriptTransfer(playerAddress, winAmt, WBET)]))
1215+ let newGameDataStr = (((((((("WON" + "_") + gameDataList[1]) + "_") + playerPubKey58) + "_") + gameDataList[3]) + "_") + randStr)
1216+ ScriptResult(WriteSet([DataEntry(gameId, newGameDataStr), decreasedReserves]), TransferSet([ScriptTransfer(playerAddress, winAmt, WBET)]))
11571217 }
11581218 else {
1159- let newGameDataStr = (((((((((((("LOST" + "_") + playerPubKey58) + "_") + gameDataList[2]) + "_") + gameDataList[3]) + "_") + gameDataList[4]) + "_") + toString(winAmt)) + "_") + randStr)
1219+ let newGameDataStr = (((((((("LOST" + "_") + gameDataList[1]) + "_") + playerPubKey58) + "_") + gameDataList[3]) + "_") + randStr)
11601220 WriteSet([DataEntry(gameId, newGameDataStr)])
11611221 }
11621222 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAg4dAR6XbBDAS9hr/Ej3dJv6Ffc466x/mOGMWU3lrABs3qa8BHmuJGnkfbpEf2vAwYTOWPvvzfM10OBbfloSyq3c9MKvyTe1luBLGqW4vZUXIyvSgz1liyUVefIQy3dyF9jbeTZbC0bbcT/7O3DEL+01z6A+rDCacSZ0lGolSQ6AnhLxzIkVpOQJbrBmC+x+ZuZPCMWzJynd5aeOn7jaj/mkRVyxe6g/0OhWz4NiiZXeuMRB+8mKy0fWD/UlIlZWHsAS2ZmrkXKqjLq0/0wr8ILJkznjSqdnI5Ibjg3uQrj/4AN+i9r28aQ73/ZkPtY5Sbw0AOiABBu7gHmq9ayVxZQIDAQAB")
55
66 let GAMESCOUNTERKEY = "$GAME_NUM"
77
88 let RESERVATIONKEY = "$RESERVED_AMOUNT"
99
1010 let WBET = base58'A4q1mYKo11yuH9gmvDodeJoksagcyQzeFE9JtphMWddw'
1111
1212 let WALLETWAVESBET = Address(base58'3MtCy2PCFPyu8A9SRNL4qUo1V17SGLHftD8')
1313
1414 let WALLETMCAFEE = Address(base58'3MtCy2PCFPyu8A9SRNL4qUo1V17SGLHftD8')
1515
1616 let WAVELET = 100000000
1717
1818 let FEEWAVESBET = 4
1919
2020 let FEEMCAFEE = 2
2121
2222 let BETMIN = (1 * WAVELET)
2323
2424 let BETMAX = (20000000 * WAVELET)
2525
26-func splitBet (num,bet) = if (if ((num == 0))
26+func straightUpBet (rand,bet) = if ((rand == bet))
27+ then true
28+ else false
29+
30+
31+func splitBet (rand,bet) = if (if ((rand == 0))
2732 then if (if ((bet == 37))
2833 then true
2934 else (bet == 38))
3035 then true
3136 else (bet == 39)
3237 else false)
33- then 17
34- else if (if ((num == 1))
38+ then true
39+ else if (if ((rand == 1))
3540 then if (if ((bet == 37))
3641 then true
3742 else (bet == 40))
3843 then true
3944 else (bet == 85)
4045 else false)
41- then 17
42- else if (if ((num == 1))
46+ then true
47+ else if (if ((rand == 1))
4348 then if (if ((bet == 37))
4449 then true
4550 else (bet == 40))
4651 then true
4752 else (bet == 85)
4853 else false)
49- then 17
50- else if (if ((num == 2))
54+ then true
55+ else if (if ((rand == 2))
5156 then if (if (if ((bet == 38))
5257 then true
5358 else (bet == 41))
5459 then true
5560 else (bet == 73))
5661 then true
5762 else (bet == 85)
5863 else false)
59- then 17
60- else if (if ((num == 3))
64+ then true
65+ else if (if ((rand == 3))
6166 then if (if ((bet == 39))
6267 then true
6368 else (bet == 42))
6469 then true
6570 else (bet == 73)
6671 else false)
67- then 17
68- else if (if ((num == 4))
72+ then true
73+ else if (if ((rand == 4))
6974 then if (if ((bet == 40))
7075 then true
7176 else (bet == 43))
7277 then true
7378 else (bet == 86)
7479 else false)
75- then 17
76- else if (if ((num == 5))
80+ then true
81+ else if (if ((rand == 5))
7782 then if (if (if ((bet == 41))
7883 then true
7984 else (bet == 44))
8085 then true
8186 else (bet == 74))
8287 then true
8388 else (bet == 86)
8489 else false)
85- then 17
86- else if (if ((num == 6))
90+ then true
91+ else if (if ((rand == 6))
8792 then if (if ((bet == 42))
8893 then true
8994 else (bet == 45))
9095 then true
9196 else (bet == 74)
9297 else false)
93- then 17
94- else if (if ((num == 7))
98+ then true
99+ else if (if ((rand == 7))
95100 then if (if ((bet == 43))
96101 then true
97102 else (bet == 46))
98103 then true
99104 else (bet == 87)
100105 else false)
101- then 17
102- else if (if ((num == 8))
106+ then true
107+ else if (if ((rand == 8))
103108 then if (if (if ((bet == 44))
104109 then true
105110 else (bet == 47))
106111 then true
107112 else (bet == 75))
108113 then true
109114 else (bet == 87)
110115 else false)
111- then 17
112- else if (if ((num == 9))
116+ then true
117+ else if (if ((rand == 9))
113118 then if (if ((bet == 45))
114119 then true
115120 else (bet == 48))
116121 then true
117122 else (bet == 75)
118123 else false)
119- then 17
120- else if (if ((num == 10))
124+ then true
125+ else if (if ((rand == 10))
121126 then if (if ((bet == 46))
122127 then true
123128 else (bet == 49))
124129 then true
125130 else (bet == 88)
126131 else false)
127- then 17
128- else if (if ((num == 11))
132+ then true
133+ else if (if ((rand == 11))
129134 then if (if (if ((bet == 47))
130135 then true
131136 else (bet == 50))
132137 then true
133138 else (bet == 76))
134139 then true
135140 else (bet == 88)
136141 else false)
137- then 17
138- else if (if ((num == 12))
142+ then true
143+ else if (if ((rand == 12))
139144 then if (if ((bet == 48))
140145 then true
141146 else (bet == 51))
142147 then true
143148 else (bet == 76)
144149 else false)
145- then 17
146- else if (if ((num == 13))
150+ then true
151+ else if (if ((rand == 13))
147152 then if (if ((bet == 49))
148153 then true
149154 else (bet == 52))
150155 then true
151156 else (bet == 89)
152157 else false)
153- then 17
154- else if (if ((num == 14))
158+ then true
159+ else if (if ((rand == 14))
155160 then if (if (if ((bet == 50))
156161 then true
157162 else (bet == 53))
158163 then true
159164 else (bet == 77))
160165 then true
161166 else (bet == 89)
162167 else false)
163- then 17
164- else if (if ((num == 15))
168+ then true
169+ else if (if ((rand == 15))
165170 then if (if ((bet == 51))
166171 then true
167172 else (bet == 54))
168173 then true
169174 else (bet == 77)
170175 else false)
171- then 17
172- else if (if ((num == 16))
176+ then true
177+ else if (if ((rand == 16))
173178 then if (if ((bet == 52))
174179 then true
175180 else (bet == 55))
176181 then true
177182 else (bet == 90)
178183 else false)
179- then 17
180- else if (if ((num == 17))
184+ then true
185+ else if (if ((rand == 17))
181186 then if (if (if ((bet == 53))
182187 then true
183188 else (bet == 56))
184189 then true
185190 else (bet == 78))
186191 then true
187192 else (bet == 90)
188193 else false)
189- then 17
190- else if (if ((num == 18))
194+ then true
195+ else if (if ((rand == 18))
191196 then if (if ((bet == 54))
192197 then true
193198 else (bet == 57))
194199 then true
195200 else (bet == 78)
196201 else false)
197- then 17
198- else if (if ((num == 19))
202+ then true
203+ else if (if ((rand == 19))
199204 then if (if ((bet == 55))
200205 then true
201206 else (bet == 58))
202207 then true
203208 else (bet == 91)
204209 else false)
205- then 17
206- else if (if ((num == 20))
210+ then true
211+ else if (if ((rand == 20))
207212 then if (if (if ((bet == 56))
208213 then true
209214 else (bet == 59))
210215 then true
211216 else (bet == 79))
212217 then true
213218 else (bet == 91)
214219 else false)
215- then 17
216- else if (if ((num == 21))
220+ then true
221+ else if (if ((rand == 21))
217222 then if (if ((bet == 57))
218223 then true
219224 else (bet == 60))
220225 then true
221226 else (bet == 79)
222227 else false)
223- then 17
224- else if (if ((num == 22))
228+ then true
229+ else if (if ((rand == 22))
225230 then if (if ((bet == 58))
226231 then true
227232 else (bet == 61))
228233 then true
229234 else (bet == 92)
230235 else false)
231- then 17
232- else if (if ((num == 23))
236+ then true
237+ else if (if ((rand == 23))
233238 then if (if (if ((bet == 59))
234239 then true
235240 else (bet == 62))
236241 then true
237242 else (bet == 80))
238243 then true
239244 else (bet == 92)
240245 else false)
241- then 17
242- else if (if ((num == 24))
246+ then true
247+ else if (if ((rand == 24))
243248 then if (if ((bet == 60))
244249 then true
245250 else (bet == 63))
246251 then true
247252 else (bet == 80)
248253 else false)
249- then 17
250- else if (if ((num == 25))
254+ then true
255+ else if (if ((rand == 25))
251256 then if (if ((bet == 61))
252257 then true
253258 else (bet == 64))
254259 then true
255260 else (bet == 93)
256261 else false)
257- then 17
258- else if (if ((num == 26))
262+ then true
263+ else if (if ((rand == 26))
259264 then if (if (if ((bet == 62))
260265 then true
261266 else (bet == 65))
262267 then true
263268 else (bet == 81))
264269 then true
265270 else (bet == 93)
266271 else false)
267- then 17
268- else if (if ((num == 27))
272+ then true
273+ else if (if ((rand == 27))
269274 then if (if ((bet == 63))
270275 then true
271276 else (bet == 66))
272277 then true
273278 else (bet == 81)
274279 else false)
275- then 17
276- else if (if ((num == 28))
280+ then true
281+ else if (if ((rand == 28))
277282 then if (if ((bet == 64))
278283 then true
279284 else (bet == 67))
280285 then true
281286 else (bet == 94)
282287 else false)
283- then 17
284- else if (if ((num == 29))
288+ then true
289+ else if (if ((rand == 29))
285290 then if (if (if ((bet == 65))
286291 then true
287292 else (bet == 68))
288293 then true
289294 else (bet == 82))
290295 then true
291296 else (bet == 94)
292297 else false)
293- then 17
294- else if (if ((num == 30))
298+ then true
299+ else if (if ((rand == 30))
295300 then if (if ((bet == 66))
296301 then true
297302 else (bet == 69))
298303 then true
299304 else (bet == 82)
300305 else false)
301- then 17
302- else if (if ((num == 31))
306+ then true
307+ else if (if ((rand == 31))
303308 then if (if ((bet == 67))
304309 then true
305310 else (bet == 70))
306311 then true
307312 else (bet == 95)
308313 else false)
309- then 17
310- else if (if ((num == 32))
314+ then true
315+ else if (if ((rand == 32))
311316 then if (if (if ((bet == 68))
312317 then true
313318 else (bet == 71))
314319 then true
315320 else (bet == 83))
316321 then true
317322 else (bet == 95)
318323 else false)
319- then 17
320- else if (if ((num == 33))
324+ then true
325+ else if (if ((rand == 33))
321326 then if (if ((bet == 69))
322327 then true
323328 else (bet == 72))
324329 then true
325330 else (bet == 83)
326331 else false)
327- then 17
328- else if (if ((num == 34))
332+ then true
333+ else if (if ((rand == 34))
329334 then if ((bet == 70))
330335 then true
331336 else (bet == 96)
332337 else false)
333- then 17
334- else if (if (if ((num == 35))
338+ then true
339+ else if (if (if ((rand == 35))
335340 then if (if ((bet == 71))
336341 then true
337342 else (bet == 84))
338343 then true
339344 else (bet == 96)
340345 else false)
341346 then true
342- else if ((num == 36))
347+ else if ((rand == 36))
343348 then if ((bet == 72))
344349 then true
345350 else (bet == 84)
346351 else false)
347- then 17
348- else if (if ((num == 36))
352+ then true
353+ else if (if ((rand == 36))
349354 then if ((bet == 72))
350355 then true
351356 else (bet == 84)
352357 else false)
353- then 17
354- else 0
358+ then true
359+ else false
355360
356361
357-func streetBet (num,bet) = if (if ((bet == 97))
358- then if (if ((num == 0))
362+func streetBet (rand,bet) = if (if ((bet == 97))
363+ then if (if ((rand == 0))
359364 then true
360- else (num == 1))
365+ else (rand == 1))
361366 then true
362- else (num == 2)
367+ else (rand == 2)
363368 else false)
364- then 11
369+ then true
365370 else if (if ((bet == 98))
366- then if (if ((num == 0))
371+ then if (if ((rand == 0))
367372 then true
368- else (num == 2))
373+ else (rand == 2))
369374 then true
370- else (num == 3)
375+ else (rand == 3)
371376 else false)
372- then 11
377+ then true
373378 else if (if ((bet == 99))
374- then if (if ((num == 1))
379+ then if (if ((rand == 1))
375380 then true
376- else (num == 2))
381+ else (rand == 2))
377382 then true
378- else (num == 3)
383+ else (rand == 3)
379384 else false)
380- then 11
385+ then true
381386 else if (if ((bet == 100))
382- then if (if ((num == 4))
387+ then if (if ((rand == 4))
383388 then true
384- else (num == 5))
389+ else (rand == 5))
385390 then true
386- else (num == 6)
391+ else (rand == 6)
387392 else false)
388- then 11
393+ then true
389394 else if (if ((bet == 101))
390- then if (if ((num == 7))
395+ then if (if ((rand == 7))
391396 then true
392- else (num == 8))
397+ else (rand == 8))
393398 then true
394- else (num == 9)
399+ else (rand == 9)
395400 else false)
396- then 11
401+ then true
397402 else if (if ((bet == 102))
398- then if (if ((num == 10))
403+ then if (if ((rand == 10))
399404 then true
400- else (num == 11))
405+ else (rand == 11))
401406 then true
402- else (num == 12)
407+ else (rand == 12)
403408 else false)
404- then 11
409+ then true
405410 else if (if ((bet == 103))
406- then if (if ((num == 13))
411+ then if (if ((rand == 13))
407412 then true
408- else (num == 14))
413+ else (rand == 14))
409414 then true
410- else (num == 15)
415+ else (rand == 15)
411416 else false)
412- then 11
417+ then true
413418 else if (if ((bet == 104))
414- then if (if ((num == 16))
419+ then if (if ((rand == 16))
415420 then true
416- else (num == 17))
421+ else (rand == 17))
417422 then true
418- else (num == 18)
423+ else (rand == 18)
419424 else false)
420- then 11
425+ then true
421426 else if (if ((bet == 105))
422- then if (if ((num == 19))
427+ then if (if ((rand == 19))
423428 then true
424- else (num == 20))
429+ else (rand == 20))
425430 then true
426- else (num == 21)
431+ else (rand == 21)
427432 else false)
428- then 11
433+ then true
429434 else if (if ((bet == 106))
430- then if (if ((num == 22))
435+ then if (if ((rand == 22))
431436 then true
432- else (num == 23))
437+ else (rand == 23))
433438 then true
434- else (num == 24)
439+ else (rand == 24)
435440 else false)
436- then 11
441+ then true
437442 else if (if ((bet == 107))
438- then if (if ((num == 25))
443+ then if (if ((rand == 25))
439444 then true
440- else (num == 26))
445+ else (rand == 26))
441446 then true
442- else (num == 27)
447+ else (rand == 27)
443448 else false)
444- then 11
449+ then true
445450 else if (if ((bet == 108))
446- then if (if ((num == 28))
451+ then if (if ((rand == 28))
447452 then true
448- else (num == 29))
453+ else (rand == 29))
449454 then true
450- else (num == 30)
455+ else (rand == 30)
451456 else false)
452- then 11
457+ then true
453458 else if (if ((bet == 109))
454- then if (if ((num == 31))
459+ then if (if ((rand == 31))
455460 then true
456- else (num == 32))
461+ else (rand == 32))
457462 then true
458- else (num == 33)
463+ else (rand == 33)
459464 else false)
460- then 11
465+ then true
461466 else if (if ((bet == 110))
462- then if (if ((num == 34))
467+ then if (if ((rand == 34))
463468 then true
464- else (num == 35))
469+ else (rand == 35))
465470 then true
466- else (num == 36)
471+ else (rand == 36)
467472 else false)
468- then 11
469- else 0
473+ then true
474+ else false
470475
471476
472-func cornerBet (num,bet) = if (if ((bet == 111))
473- then if (if (if ((num == 0))
477+func cornerBet (rand,bet) = if (if ((bet == 111))
478+ then if (if (if ((rand == 0))
474479 then true
475- else (num == 1))
480+ else (rand == 1))
476481 then true
477- else (num == 2))
482+ else (rand == 2))
478483 then true
479- else (num == 3)
484+ else (rand == 3)
480485 else false)
481- then 8
486+ then true
482487 else if (if ((bet == 112))
483- then if (if (if ((num == 1))
488+ then if (if (if ((rand == 1))
484489 then true
485- else (num == 2))
490+ else (rand == 2))
486491 then true
487- else (num == 4))
492+ else (rand == 4))
488493 then true
489- else (num == 5)
494+ else (rand == 5)
490495 else false)
491- then 8
496+ then true
492497 else if (if ((bet == 113))
493- then if (if (if ((num == 2))
498+ then if (if (if ((rand == 2))
494499 then true
495- else (num == 3))
500+ else (rand == 3))
496501 then true
497- else (num == 5))
502+ else (rand == 5))
498503 then true
499- else (num == 6)
504+ else (rand == 6)
500505 else false)
501- then 8
506+ then true
502507 else if (if ((bet == 114))
503- then if (if (if ((num == 4))
508+ then if (if (if ((rand == 4))
504509 then true
505- else (num == 5))
510+ else (rand == 5))
506511 then true
507- else (num == 7))
512+ else (rand == 7))
508513 then true
509- else (num == 8)
514+ else (rand == 8)
510515 else false)
511- then 8
516+ then true
512517 else if (if ((bet == 115))
513- then if (if (if ((num == 5))
518+ then if (if (if ((rand == 5))
514519 then true
515- else (num == 6))
520+ else (rand == 6))
516521 then true
517- else (num == 8))
522+ else (rand == 8))
518523 then true
519- else (num == 9)
524+ else (rand == 9)
520525 else false)
521- then 8
526+ then true
522527 else if (if ((bet == 116))
523- then if (if (if ((num == 7))
528+ then if (if (if ((rand == 7))
524529 then true
525- else (num == 8))
530+ else (rand == 8))
526531 then true
527- else (num == 10))
532+ else (rand == 10))
528533 then true
529- else (num == 11)
534+ else (rand == 11)
530535 else false)
531- then 8
536+ then true
532537 else if (if ((bet == 117))
533- then if (if (if ((num == 8))
538+ then if (if (if ((rand == 8))
534539 then true
535- else (num == 9))
540+ else (rand == 9))
536541 then true
537- else (num == 11))
542+ else (rand == 11))
538543 then true
539- else (num == 12)
544+ else (rand == 12)
540545 else false)
541- then 8
546+ then true
542547 else if (if ((bet == 118))
543- then if (if (if ((num == 10))
548+ then if (if (if ((rand == 10))
544549 then true
545- else (num == 11))
550+ else (rand == 11))
546551 then true
547- else (num == 13))
552+ else (rand == 13))
548553 then true
549- else (num == 14)
554+ else (rand == 14)
550555 else false)
551- then 8
556+ then true
552557 else if (if ((bet == 119))
553- then if (if (if ((num == 11))
558+ then if (if (if ((rand == 11))
554559 then true
555- else (num == 12))
560+ else (rand == 12))
556561 then true
557- else (num == 14))
562+ else (rand == 14))
558563 then true
559- else (num == 15)
564+ else (rand == 15)
560565 else false)
561- then 8
566+ then true
562567 else if (if ((bet == 120))
563- then if (if (if ((num == 13))
568+ then if (if (if ((rand == 13))
564569 then true
565- else (num == 14))
570+ else (rand == 14))
566571 then true
567- else (num == 16))
572+ else (rand == 16))
568573 then true
569- else (num == 17)
574+ else (rand == 17)
570575 else false)
571- then 8
576+ then true
572577 else if (if ((bet == 121))
573- then if (if (if ((num == 14))
578+ then if (if (if ((rand == 14))
574579 then true
575- else (num == 15))
580+ else (rand == 15))
576581 then true
577- else (num == 17))
582+ else (rand == 17))
578583 then true
579- else (num == 18)
584+ else (rand == 18)
580585 else false)
581- then 8
586+ then true
582587 else if (if ((bet == 122))
583- then if (if (if ((num == 16))
588+ then if (if (if ((rand == 16))
584589 then true
585- else (num == 17))
590+ else (rand == 17))
586591 then true
587- else (num == 19))
592+ else (rand == 19))
588593 then true
589- else (num == 20)
594+ else (rand == 20)
590595 else false)
591- then 8
596+ then true
592597 else if (if ((bet == 123))
593- then if (if (if ((num == 17))
598+ then if (if (if ((rand == 17))
594599 then true
595- else (num == 18))
600+ else (rand == 18))
596601 then true
597- else (num == 20))
602+ else (rand == 20))
598603 then true
599- else (num == 21)
604+ else (rand == 21)
600605 else false)
601- then 8
606+ then true
602607 else if (if ((bet == 124))
603- then if (if (if ((num == 19))
608+ then if (if (if ((rand == 19))
604609 then true
605- else (num == 20))
610+ else (rand == 20))
606611 then true
607- else (num == 22))
612+ else (rand == 22))
608613 then true
609- else (num == 23)
614+ else (rand == 23)
610615 else false)
611- then 8
616+ then true
612617 else if (if ((bet == 125))
613- then if (if (if ((num == 20))
618+ then if (if (if ((rand == 20))
614619 then true
615- else (num == 21))
620+ else (rand == 21))
616621 then true
617- else (num == 23))
622+ else (rand == 23))
618623 then true
619- else (num == 24)
624+ else (rand == 24)
620625 else false)
621- then 8
626+ then true
622627 else if (if ((bet == 126))
623- then if (if (if ((num == 22))
628+ then if (if (if ((rand == 22))
624629 then true
625- else (num == 23))
630+ else (rand == 23))
626631 then true
627- else (num == 25))
632+ else (rand == 25))
628633 then true
629- else (num == 26)
634+ else (rand == 26)
630635 else false)
631- then 8
636+ then true
632637 else if (if ((bet == 127))
633- then if (if (if ((num == 23))
638+ then if (if (if ((rand == 23))
634639 then true
635- else (num == 24))
640+ else (rand == 24))
636641 then true
637- else (num == 26))
642+ else (rand == 26))
638643 then true
639- else (num == 27)
644+ else (rand == 27)
640645 else false)
641- then 8
646+ then true
642647 else if (if ((bet == 128))
643- then if (if (if ((num == 25))
648+ then if (if (if ((rand == 25))
644649 then true
645- else (num == 26))
650+ else (rand == 26))
646651 then true
647- else (num == 28))
652+ else (rand == 28))
648653 then true
649- else (num == 29)
654+ else (rand == 29)
650655 else false)
651- then 8
656+ then true
652657 else if (if ((bet == 129))
653- then if (if (if ((num == 26))
658+ then if (if (if ((rand == 26))
654659 then true
655- else (num == 27))
660+ else (rand == 27))
656661 then true
657- else (num == 29))
662+ else (rand == 29))
658663 then true
659- else (num == 30)
664+ else (rand == 30)
660665 else false)
661- then 8
666+ then true
662667 else if (if ((bet == 130))
663- then if (if (if ((num == 28))
668+ then if (if (if ((rand == 28))
664669 then true
665- else (num == 29))
670+ else (rand == 29))
666671 then true
667- else (num == 31))
672+ else (rand == 31))
668673 then true
669- else (num == 32)
674+ else (rand == 32)
670675 else false)
671- then 8
676+ then true
672677 else if (if ((bet == 131))
673- then if (if (if ((num == 29))
678+ then if (if (if ((rand == 29))
674679 then true
675- else (num == 30))
680+ else (rand == 30))
676681 then true
677- else (num == 32))
682+ else (rand == 32))
678683 then true
679- else (num == 33)
684+ else (rand == 33)
680685 else false)
681- then 8
686+ then true
682687 else if (if ((bet == 132))
683- then if (if (if ((num == 31))
688+ then if (if (if ((rand == 31))
684689 then true
685- else (num == 32))
690+ else (rand == 32))
686691 then true
687- else (num == 34))
692+ else (rand == 34))
688693 then true
689- else (num == 35)
694+ else (rand == 35)
690695 else false)
691- then 8
696+ then true
692697 else if (if ((bet == 133))
693- then if (if (if ((num == 32))
698+ then if (if (if ((rand == 32))
694699 then true
695- else (num == 33))
700+ else (rand == 33))
696701 then true
697- else (num == 35))
702+ else (rand == 35))
698703 then true
699- else (num == 36)
704+ else (rand == 36)
700705 else false)
701- then 8
702- else 0
706+ then true
707+ else false
703708
704709
705-func lineBet (num,bet) = if (if (if ((bet == 134))
706- then (num >= 1)
710+func lineBet (rand,bet) = if (if (if ((bet == 134))
711+ then (rand >= 1)
707712 else false)
708- then (6 >= num)
713+ then (6 >= rand)
709714 else false)
710- then 5
715+ then true
711716 else if (if (if ((bet == 135))
712- then (num >= 4)
717+ then (rand >= 4)
713718 else false)
714- then (9 >= num)
719+ then (9 >= rand)
715720 else false)
716- then 5
721+ then true
717722 else if (if (if ((bet == 136))
718- then (num >= 7)
723+ then (rand >= 7)
719724 else false)
720- then (12 >= num)
725+ then (12 >= rand)
721726 else false)
722- then 5
727+ then true
723728 else if (if (if ((bet == 137))
724- then (num >= 10)
729+ then (rand >= 10)
725730 else false)
726- then (15 >= num)
731+ then (15 >= rand)
727732 else false)
728- then 5
733+ then true
729734 else if (if (if ((bet == 138))
730- then (num >= 13)
735+ then (rand >= 13)
731736 else false)
732- then (18 >= num)
737+ then (18 >= rand)
733738 else false)
734- then 5
739+ then true
735740 else if (if (if ((bet == 139))
736- then (num >= 16)
741+ then (rand >= 16)
737742 else false)
738- then (21 >= num)
743+ then (21 >= rand)
739744 else false)
740- then 5
745+ then true
741746 else if (if (if ((bet == 140))
742- then (num >= 19)
747+ then (rand >= 19)
743748 else false)
744- then (24 >= num)
749+ then (24 >= rand)
745750 else false)
746- then 5
751+ then true
747752 else if (if (if ((bet == 141))
748- then (num >= 22)
753+ then (rand >= 22)
749754 else false)
750- then (27 >= num)
755+ then (27 >= rand)
751756 else false)
752- then 5
757+ then true
753758 else if (if (if ((bet == 142))
754- then (num >= 25)
759+ then (rand >= 25)
755760 else false)
756- then (30 >= num)
761+ then (30 >= rand)
757762 else false)
758- then 5
763+ then true
759764 else if (if (if ((bet == 143))
760- then (num >= 28)
765+ then (rand >= 28)
761766 else false)
762- then (33 >= num)
767+ then (33 >= rand)
763768 else false)
764- then 5
769+ then true
765770 else if (if (if ((bet == 144))
766- then (num >= 31)
771+ then (rand >= 31)
767772 else false)
768- then (36 >= num)
773+ then (36 >= rand)
769774 else false)
770- then 5
771- else 0
775+ then true
776+ else false
772777
773778
774-func columnBet (num,bet) = if (if ((bet == 145))
775- then if (if (if (if (if (if (if (if (if (if (if (if ((num == 0))
779+func columnBet (rand,bet) = if (if ((bet == 145))
780+ then if (if (if (if (if (if (if (if (if (if (if (if ((rand == 0))
776781 then true
777- else (num == 1))
782+ else (rand == 1))
778783 then true
779- else (num == 4))
784+ else (rand == 4))
780785 then true
781- else (num == 7))
786+ else (rand == 7))
782787 then true
783- else (num == 10))
788+ else (rand == 10))
784789 then true
785- else (num == 13))
790+ else (rand == 13))
786791 then true
787- else (num == 16))
792+ else (rand == 16))
788793 then true
789- else (num == 19))
794+ else (rand == 19))
790795 then true
791- else (num == 22))
796+ else (rand == 22))
792797 then true
793- else (num == 25))
798+ else (rand == 25))
794799 then true
795- else (num == 28))
800+ else (rand == 28))
796801 then true
797- else (num == 31))
802+ else (rand == 31))
798803 then true
799- else (num == 34)
804+ else (rand == 34)
800805 else false)
801- then 2
806+ then true
802807 else if (if ((bet == 146))
803- then if (if (if (if (if (if (if (if (if (if (if (if ((num == 0))
808+ then if (if (if (if (if (if (if (if (if (if (if (if ((rand == 0))
804809 then true
805- else (num == 2))
810+ else (rand == 2))
806811 then true
807- else (num == 5))
812+ else (rand == 5))
808813 then true
809- else (num == 8))
814+ else (rand == 8))
810815 then true
811- else (num == 11))
816+ else (rand == 11))
812817 then true
813- else (num == 14))
818+ else (rand == 14))
814819 then true
815- else (num == 17))
820+ else (rand == 17))
816821 then true
817- else (num == 20))
822+ else (rand == 20))
818823 then true
819- else (num == 23))
824+ else (rand == 23))
820825 then true
821- else (num == 26))
826+ else (rand == 26))
822827 then true
823- else (num == 29))
828+ else (rand == 29))
824829 then true
825- else (num == 32))
830+ else (rand == 32))
826831 then true
827- else (num == 35)
832+ else (rand == 35)
828833 else false)
829- then 2
834+ then true
830835 else if (if ((bet == 147))
831- then if (if (if (if (if (if (if (if (if (if (if (if ((num == 0))
836+ then if (if (if (if (if (if (if (if (if (if (if (if ((rand == 0))
832837 then true
833- else (num == 3))
838+ else (rand == 3))
834839 then true
835- else (num == 6))
840+ else (rand == 6))
836841 then true
837- else (num == 9))
842+ else (rand == 9))
838843 then true
839- else (num == 12))
844+ else (rand == 12))
840845 then true
841- else (num == 15))
846+ else (rand == 15))
842847 then true
843- else (num == 18))
848+ else (rand == 18))
844849 then true
845- else (num == 21))
850+ else (rand == 21))
846851 then true
847- else (num == 24))
852+ else (rand == 24))
848853 then true
849- else (num == 27))
854+ else (rand == 27))
850855 then true
851- else (num == 30))
856+ else (rand == 30))
852857 then true
853- else (num == 33))
858+ else (rand == 33))
854859 then true
855- else (num == 36)
860+ else (rand == 36)
856861 else false)
857- then 2
858- else 0
862+ then true
863+ else false
859864
860865
861-func dozenBet (num,bet) = if (if (if ((bet == 148))
862- then (num >= 1)
866+func dozenBet (rand,bet) = if (if (if ((bet == 148))
867+ then (rand >= 1)
863868 else false)
864- then (12 >= num)
869+ then (12 >= rand)
865870 else false)
866- then 2
871+ then true
867872 else if (if (if ((bet == 149))
868- then (num >= 13)
873+ then (rand >= 13)
869874 else false)
870- then (24 >= num)
875+ then (24 >= rand)
871876 else false)
872- then 2
877+ then true
873878 else if (if (if ((bet == 150))
874- then (num >= 25)
879+ then (rand >= 25)
875880 else false)
876- then (36 >= num)
881+ then (36 >= rand)
877882 else false)
878- then 2
879- else 0
883+ then true
884+ else false
880885
881886
882-func colorBet (num,bet) = if (if ((bet == 151))
883- then if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ((num == 1))
887+func colorBet (rand,bet) = if (if ((bet == 151))
888+ then if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ((rand == 1))
884889 then true
885- else (num == 3))
890+ else (rand == 3))
886891 then true
887- else (num == 5))
892+ else (rand == 5))
888893 then true
889- else (num == 7))
894+ else (rand == 7))
890895 then true
891- else (num == 9))
896+ else (rand == 9))
892897 then true
893- else (num == 12))
898+ else (rand == 12))
894899 then true
895- else (num == 14))
900+ else (rand == 14))
896901 then true
897- else (num == 16))
902+ else (rand == 16))
898903 then true
899- else (num == 18))
904+ else (rand == 18))
900905 then true
901- else (num == 19))
906+ else (rand == 19))
902907 then true
903- else (num == 21))
908+ else (rand == 21))
904909 then true
905- else (num == 23))
910+ else (rand == 23))
906911 then true
907- else (num == 25))
912+ else (rand == 25))
908913 then true
909- else (num == 27))
914+ else (rand == 27))
910915 then true
911- else (num == 30))
916+ else (rand == 30))
912917 then true
913- else (num == 32))
918+ else (rand == 32))
914919 then true
915- else (num == 34))
920+ else (rand == 34))
916921 then true
917- else (num == 36)
922+ else (rand == 36)
918923 else false)
919- then 2
924+ then true
920925 else if (if ((bet == 152))
921- then if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ((num == 2))
926+ then if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ((rand == 2))
922927 then true
923- else (num == 4))
928+ else (rand == 4))
924929 then true
925- else (num == 6))
930+ else (rand == 6))
926931 then true
927- else (num == 8))
932+ else (rand == 8))
928933 then true
929- else (num == 10))
934+ else (rand == 10))
930935 then true
931- else (num == 11))
936+ else (rand == 11))
932937 then true
933- else (num == 13))
938+ else (rand == 13))
934939 then true
935- else (num == 15))
940+ else (rand == 15))
936941 then true
937- else (num == 17))
942+ else (rand == 17))
938943 then true
939- else (num == 20))
944+ else (rand == 20))
940945 then true
941- else (num == 22))
946+ else (rand == 22))
942947 then true
943- else (num == 24))
948+ else (rand == 24))
944949 then true
945- else (num == 26))
950+ else (rand == 26))
946951 then true
947- else (num == 28))
952+ else (rand == 28))
948953 then true
949- else (num == 29))
954+ else (rand == 29))
950955 then true
951- else (num == 31))
956+ else (rand == 31))
952957 then true
953- else (num == 33))
958+ else (rand == 33))
954959 then true
955- else (num == 35)
960+ else (rand == 35)
956961 else false)
957- then 2
958- else 0
962+ then true
963+ else false
959964
960965
961-func evenOddBet (num,bet) = {
962- let rem = (num % 2)
963- if (if (if ((num > 0))
966+func evenOddBet (rand,bet) = {
967+ let rem = (rand % 2)
968+ if (if (if ((rand > 0))
964969 then (bet == 153)
965970 else false)
966971 then (rem == 0)
967972 else false)
968- then 1
969- else if (if (if ((num > 0))
973+ then true
974+ else if (if (if ((rand > 0))
970975 then (bet == 154)
971976 else false)
972977 then (rem != 0)
973978 else false)
974- then 1
975- else 0
979+ then true
980+ else false
976981 }
977982
978983
979-func rouletteCalc (num,bet,betValuet) = if (if ((bet >= 0))
984+func lowHighBet (rand,bet) = if (if (if ((bet == 155))
985+ then (rand >= 1)
986+ else false)
987+ then (18 >= rand)
988+ else false)
989+ then true
990+ else if (if (if ((bet == 156))
991+ then (rand >= 19)
992+ else false)
993+ then (36 >= rand)
994+ else false)
995+ then true
996+ else false
997+
998+
999+func rouletteWin (rand,bet) = if (if ((bet >= 0))
9801000 then (36 >= bet)
9811001 else false)
982- then if ((num == bet))
983- then (35 * betValuet)
984- else 0
1002+ then straightUpBet(rand, bet)
9851003 else if (if ((bet >= 37))
9861004 then (96 >= bet)
9871005 else false)
988- then (splitBet(num, bet) * betValuet)
1006+ then splitBet(rand, bet)
9891007 else if (if ((bet >= 97))
9901008 then (110 >= bet)
9911009 else false)
992- then (streetBet(num, bet) * betValuet)
1010+ then streetBet(rand, bet)
9931011 else if (if ((bet >= 111))
9941012 then (133 >= bet)
9951013 else false)
996- then (cornerBet(num, bet) * betValuet)
1014+ then cornerBet(rand, bet)
9971015 else if (if ((bet >= 134))
9981016 then (144 >= bet)
9991017 else false)
1000- then (lineBet(num, bet) * betValuet)
1018+ then lineBet(rand, bet)
10011019 else if (if ((bet >= 145))
10021020 then (147 >= bet)
10031021 else false)
1004- then (columnBet(num, bet) * betValuet)
1022+ then columnBet(rand, bet)
10051023 else if (if ((bet >= 148))
10061024 then (150 >= bet)
10071025 else false)
1008- then (dozenBet(num, bet) * betValuet)
1026+ then dozenBet(rand, bet)
10091027 else if (if ((bet == 151))
10101028 then true
10111029 else (bet == 152))
1012- then (colorBet(num, bet) * betValuet)
1030+ then colorBet(rand, bet)
10131031 else if (if ((bet == 153))
10141032 then true
10151033 else (bet == 154))
1016- then (evenOddBet(num, bet) * betValuet)
1034+ then evenOddBet(rand, bet)
10171035 else if (if ((bet == 155))
10181036 then true
10191037 else (bet == 156))
1020- then if (if (if ((bet == 155))
1021- then (num >= 1)
1022- else false)
1023- then (18 >= num)
1024- else false)
1025- then (1 * betValuet)
1026- else if (if (if ((bet == 156))
1027- then (num >= 19)
1028- else false)
1029- then (36 >= num)
1030- else false)
1031- then (1 * betValuet)
1032- else 0
1033- else throw("Random number out of range, 0 <= rand <= 36")
1038+ then lowHighBet(rand, bet)
1039+ else throw("Random randber out of range, 0 <= rand <= 36")
10341040
10351041
1036-func IncrementGameNum () = {
1037- let gameNum = match getInteger(this, GAMESCOUNTERKEY) {
1042+func getWinAmount (bet,amount) = if (if ((bet >= 0))
1043+ then (36 >= bet)
1044+ else false)
1045+ then (amount * 35)
1046+ else if (if ((bet >= 37))
1047+ then (96 >= bet)
1048+ else false)
1049+ then (amount * 17)
1050+ else if (if ((bet >= 97))
1051+ then (110 >= bet)
1052+ else false)
1053+ then (amount * 11)
1054+ else if (if ((bet >= 111))
1055+ then (133 >= bet)
1056+ else false)
1057+ then (amount * 8)
1058+ else if (if ((bet >= 134))
1059+ then (144 >= bet)
1060+ else false)
1061+ then (amount * 5)
1062+ else if (if ((bet >= 145))
1063+ then (147 >= bet)
1064+ else false)
1065+ then (amount * 2)
1066+ else if (if ((bet >= 148))
1067+ then (150 >= bet)
1068+ else false)
1069+ then (amount * 2)
1070+ else if (if ((bet == 151))
1071+ then true
1072+ else (bet == 152))
1073+ then (amount * 2)
1074+ else if (if ((bet == 153))
1075+ then true
1076+ else (bet == 154))
1077+ then amount
1078+ else if (if ((bet == 155))
1079+ then true
1080+ else (bet == 156))
1081+ then amount
1082+ else throw("Bet number out of range, 0 <= rand <= 156")
1083+
1084+
1085+func IncrementValue (value) = {
1086+ let provNum = match getInteger(this, value) {
10381087 case num: Int =>
10391088 num
10401089 case _ =>
10411090 0
10421091 }
1043- (gameNum + 1)
1092+ (provNum + 1)
10441093 }
10451094
10461095
1047-func ExtractReservedAmt () = match getInteger(this, RESERVATIONKEY) {
1096+func ExtractValue (value) = match getInteger(this, value) {
10481097 case a: Int =>
10491098 a
10501099 case _ =>
10511100 0
10521101 }
10531102
10541103
10551104 func ValidateAndIncreaseReservedAmt (winAmt) = {
1056- let newReservedAmount = (ExtractReservedAmt() + winAmt)
1105+ let newReservedAmount = (ExtractValue(RESERVATIONKEY) + winAmt)
10571106 let balance = assetBalance(this, WBET)
10581107 if ((newReservedAmount > balance))
10591108 then throw("Insufficient funds on Wavesbet Dice account. Transaction was rejected for your safety.")
10601109 else newReservedAmount
10611110 }
10621111
10631112
1113+func DecreaseReservedAmt (winAmt) = {
1114+ let newReservedAmount = (ExtractValue(RESERVATIONKEY) - winAmt)
1115+ if ((0 > newReservedAmount))
1116+ then throw("Invalid roulette account state - reserved amount is less than 0")
1117+ else DataEntry(RESERVATIONKEY, newReservedAmount)
1118+ }
1119+
1120+
10641121 func GenerateRandInt (gameId,rsaSign) = {
10651122 let rsaSigValid = rsaVerify(SHA256, toBytes(gameId), rsaSign, RSAPUBLIC)
10661123 if (rsaSigValid)
10671124 then {
1068- let rand = (toInt(sha256(rsaSign)) % 36)
1125+ let rand = (toInt(sha256(rsaSign)) % 37)
10691126 if ((0 > rand))
10701127 then ((-1 * rand) + 1)
10711128 else (rand + 1)
10721129 }
10731130 else throw("Invalid RSA signature")
10741131 }
10751132
10761133
10771134 func RandToStr (r) = if (if ((r >= 1))
10781135 then (36 >= r)
10791136 else false)
10801137 then toString(r)
10811138 else throw(("Unsupported r parameter passed: expected=[0,...,36] actual=" + toString(r)))
10821139
10831140
1084-func validateBet (bet,betValue) = if (if ((0 > bet))
1085- then true
1086- else (bet > 156))
1087- then throw("invalid play, play must be between 0 and 156.")
1088- else if ((0 > betValue))
1089- then throw("Bet value must be greater than or equal to 0")
1090- else if ((10 > bet))
1091- then ((("00" + toString(bet)) + "-") + toString(betValue))
1092- else if (if ((bet >= 10))
1093- then (100 > bet)
1094- else false)
1095- then ((("0" + toString(bet)) + "-") + toString(betValue))
1096- else ((toString(bet) + "-") + toString(betValue))
1097-
1098-
1099-func ExtractGameDataList (gameId) = {
1100- let rawDataStr = match getString(this, gameId) {
1141+func ExtractString (id) = {
1142+ let rawDataStr = match getString(this, id) {
11011143 case str: String =>
11021144 str
11031145 case _ =>
1104- throw(("Couldn't find game by " + gameId))
1146+ throw(("Couldn't find string by " + id))
11051147 }
1106- split(rawDataStr, "_")
1148+ rawDataStr
1149+ }
1150+
1151+
1152+func GetGameId (gameNumber) = {
1153+ let str = toString(gameNumber)
1154+ if ((0 > gameNumber))
1155+ then throw("Game number must not have negative value, pass 0 to a new game or an existing game number")
1156+ else if ((gameNumber == 0))
1157+ then ((toString(IncrementValue(GAMESCOUNTERKEY)) + "_") + "1")
1158+ else ((str + "_") + toString(IncrementValue(str)))
1159+ }
1160+
1161+
1162+func getWriteSet (gameNumber,winAmt,gameId,gameDataStr) = {
1163+ let strGameN = toString(gameNumber)
1164+ if ((gameNumber == 0))
1165+ then WriteSet([DataEntry(GAMESCOUNTERKEY, IncrementValue(GAMESCOUNTERKEY)), DataEntry(RESERVATIONKEY, ValidateAndIncreaseReservedAmt(winAmt)), DataEntry(strGameN, 1), DataEntry(gameId, gameDataStr)])
1166+ else WriteSet([DataEntry(RESERVATIONKEY, ValidateAndIncreaseReservedAmt(winAmt)), DataEntry(strGameN, IncrementValue(strGameN)), DataEntry(gameId, gameDataStr)])
11071167 }
11081168
11091169
11101170 @Callable(i)
1111-func playRoulette (bet1,val1,bet2,val2,bet3,val3) = {
1112- let gameId = toBase58String(i.transactionId)
1113- let gameIdUsed = isDefined(getString(this, gameId))
1171+func playRoulette (bet,gameNumber) = {
1172+ let betId = toBase58String(i.transactionId)
11141173 let payment = extract(i.payment)
11151174 let feeAssetId = isDefined(i.feeAssetId)
11161175 let playerBalance = wavesBalance(i.caller)
1117- let playAmount = (((val1 + val2) + val3) * WAVELET)
1176+ let gameId = GetGameId(gameNumber)
1177+ let gameIdUsed = isDefined(getString(this, gameId))
1178+ let winAmt = getWinAmount(bet, payment.amount)
11181179 if ((payment.assetId != WBET))
11191180 then throw("Payment should be in Wavesbet")
11201181 else if ((1000000 > playerBalance))
11211182 then throw("There are not enough waves, it takes 0.01 Waves to bet. Game aborted.")
11221183 else if (feeAssetId)
11231184 then throw("Transaction's fee must be in Waves. Game aborted.")
11241185 else if (gameIdUsed)
11251186 then throw("Passed gameId had been used before. Game aborted.")
1126- else if ((playAmount != payment.amount))
1127- then throw("Payment value is different from bet value. ")
1128- else {
1129- let newGameNum = IncrementGameNum()
1130- let playerPubKey58 = toBase58String(i.callerPublicKey)
1131- let gameDataStr = (((((((("SUBMITTED" + "_") + playerPubKey58) + "_") + validateBet(bet1, val1)) + "_") + validateBet(bet2, val2)) + "_") + validateBet(bet3, val3))
1132- ScriptResult(WriteSet([DataEntry(GAMESCOUNTERKEY, newGameNum), DataEntry(gameId, gameDataStr)]), TransferSet(nil))
1133- }
1187+ else {
1188+ let playerPubKey58 = toBase58String(i.callerPublicKey)
1189+ let gameDataStr = (((((("SUBMITTED" + "_") + toString(bet)) + "_") + playerPubKey58) + "_") + toString(winAmt))
1190+ ScriptResult(getWriteSet(gameNumber, winAmt, gameId, gameDataStr), TransferSet(nil))
1191+ }
11341192 }
11351193
11361194
11371195
11381196 @Callable(i)
11391197 func withdraw (gameId,rsaSig) = {
1140- let gameDataList = ExtractGameDataList(gameId)
1198+ let gameDataList = split(ExtractString(gameId), "_")
11411199 let gameState = gameDataList[0]
1142- let playerPubKey58 = gameDataList[1]
1200+ let bet = parseIntValue(gameDataList[1])
1201+ let playerPubKey58 = gameDataList[2]
1202+ let winAmt = parseIntValue(gameDataList[3])
11431203 let playerAddress = addressFromPublicKey(fromBase58String(playerPubKey58))
1204+ let decreasedReserves = DecreaseReservedAmt(winAmt)
11441205 if ((gameState != "SUBMITTED"))
11451206 then throw("Invalid game state for passed gameId. Game aborted. ")
11461207 else {
1147- let rand = GenerateRandInt(gameId, rsaSig)
1208+ let prov = split(gameId, "_")
1209+ let game = prov[0]
1210+ let gameNum = ExtractString(game)
1211+ let rand = GenerateRandInt(ExtractString(gameNum), rsaSig)
11481212 let randStr = RandToStr(rand)
1149- let result1 = rouletteCalc(rand, parseIntValue(take(gameDataList[2], 3)), parseIntValue(drop(gameDataList[2], 4)))
1150- let result2 = rouletteCalc(rand, parseIntValue(take(gameDataList[3], 3)), parseIntValue(drop(gameDataList[3], 4)))
1151- let result3 = rouletteCalc(rand, parseIntValue(take(gameDataList[4], 3)), parseIntValue(drop(gameDataList[4], 4)))
1152- let winAmt = (((result1 + result2) + result3) * WAVELET)
1153- if ((winAmt > 0))
1213+ if (rouletteWin(rand, bet))
11541214 then {
1155- let newGameDataStr = (((((((((((("WON" + "_") + playerPubKey58) + "_") + gameDataList[2]) + "_") + gameDataList[3]) + "_") + gameDataList[4]) + "_") + toString(winAmt)) + "_") + randStr)
1156- ScriptResult(WriteSet([DataEntry(gameId, newGameDataStr)]), TransferSet([ScriptTransfer(playerAddress, winAmt, WBET)]))
1215+ let newGameDataStr = (((((((("WON" + "_") + gameDataList[1]) + "_") + playerPubKey58) + "_") + gameDataList[3]) + "_") + randStr)
1216+ ScriptResult(WriteSet([DataEntry(gameId, newGameDataStr), decreasedReserves]), TransferSet([ScriptTransfer(playerAddress, winAmt, WBET)]))
11571217 }
11581218 else {
1159- let newGameDataStr = (((((((((((("LOST" + "_") + playerPubKey58) + "_") + gameDataList[2]) + "_") + gameDataList[3]) + "_") + gameDataList[4]) + "_") + toString(winAmt)) + "_") + randStr)
1219+ let newGameDataStr = (((((((("LOST" + "_") + gameDataList[1]) + "_") + playerPubKey58) + "_") + gameDataList[3]) + "_") + randStr)
11601220 WriteSet([DataEntry(gameId, newGameDataStr)])
11611221 }
11621222 }
11631223 }
11641224
11651225

github/deemru/w8io/169f3d6 
597.90 ms