tx · C79JPnYjxsGb6TbtibisTo5i1U9enaLp5PiZmrGcXYth 3N6oaapvYkEryHUr4vAiPRXM3iS6kMYXito: -0.05000000 Waves 2021.09.04 23:22 [1688785] smart account 3N6oaapvYkEryHUr4vAiPRXM3iS6kMYXito > SELF 0.00000000 Waves
{ "type": 13, "id": "C79JPnYjxsGb6TbtibisTo5i1U9enaLp5PiZmrGcXYth", "fee": 5000000, "feeAssetId": null, "timestamp": 1630786981030, "version": 2, "chainId": 84, "sender": "3N6oaapvYkEryHUr4vAiPRXM3iS6kMYXito", "senderPublicKey": "7PMrxEzirv6h9Z2zqLE47qrZd6v1AbRZER5Aqfo95Eyr", "proofs": [ "2yEEM6DYGubfJ4r8jUYByf1rDd25PWKNQdGBHTzcJxo68nXTE9kByQiSdXNYa4Uez1jCjBAP3sWQeZAU94gRRW5p" ], "script": "base64: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dEJldEVnZ3MAAAABAAAABmdhbWVJZAkBAAAADXRyeUdldEludGVnZXIAAAABCQEAAAANZ2V0QmV0RWdnc0tleQAAAAEFAAAABmdhbWVJZAEAAAAdZ2V0V2FpdGluZ0V4cGlyYXRpb25IZWlnaHRLZXkAAAABAAAABmdhbWVJZAkAASwAAAACCQABLAAAAAICAAAABGdhbWUJAAGkAAAAAQUAAAAGZ2FtZUlkAgAAABhfd2FpdGluZ0V4cGlyYXRpb25IZWlnaHQBAAAAGmdldFdhaXRpbmdFeHBpcmF0aW9uSGVpZ2h0AAAAAQAAAAZnYW1lSWQJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkBAAAAHWdldFdhaXRpbmdFeHBpcmF0aW9uSGVpZ2h0S2V5AAAAAQUAAAAGZ2FtZUlkAQAAABZnZXRFeHBpcmF0aW9uSGVpZ2h0S2V5AAAAAQAAAAZnYW1lSWQJAAEsAAAAAgkAASwAAAACAgAAAARnYW1lCQABpAAAAAEFAAAABmdhbWVJZAIAAAARX2V4cGlyYXRpb25IZWlnaHQBAAAAE2dldEV4cGlyYXRpb25IZWlnaHQAAAABAAAABmdhbWVJZAkBAAAADXRyeUdldEludGVnZXIAAAABCQEAAAAWZ2V0RXhwaXJhdGlvbkhlaWdodEtleQAAAAEFAAAABmdhbWVJZAEAAAARZ2V0UmFyaXR5UmFuZ2VLZXkAAAACAAAABmdhbWVJZAAAAA1yYW5nZVBvc2l0aW9uCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAARnYW1lCQABpAAAAAEFAAAABmdhbWVJZAIAAAANX3Jhcml0eVJhbmdlXwUAAAANcmFuZ2VQb3NpdGlvbgEAAAAOZ2V0UmFyaXR5UmFuZ2UAAAACAAAABmdhbWVJZAAAAA1yYW5nZVBvc2l0aW9uCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAQAAABFnZXRSYXJpdHlSYW5nZUtleQAAAAIFAAAABmdhbWVJZAUAAAANcmFuZ2VQb3NpdGlvbgEAAAAKZ2V0U3RlcEtleQAAAAEAAAAGZ2FtZUlkCQABLAAAAAIJAAEsAAAAAgIAAAAEZ2FtZQkAAaQAAAABBQAAAAZnYW1lSWQCAAAABV9zdGVwAQAAAAdnZXRTdGVwAAAAAQAAAAZnYW1lSWQJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkBAAAACmdldFN0ZXBLZXkAAAABBQAAAAZnYW1lSWQBAAAADGdldFJhcml0eUtleQAAAAMAAAAGZ2FtZUlkAAAACnBsYXllclJvbGUAAAANcmFuZ2VQb3NpdGlvbgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAEZ2FtZQkAAaQAAAABBQAAAAZnYW1lSWQCAAAAAV8FAAAACnBsYXllclJvbGUCAAAAAV8FAAAADXJhbmdlUG9zaXRpb24CAAAABlJhcml0eQEAAAAJZ2V0UmFyaXR5AAAAAwAAAAZnYW1lSWQAAAAKcGxheWVyUm9sZQAAAA1yYW5nZVBvc2l0aW9uCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAQAAAAxnZXRSYXJpdHlLZXkAAAADBQAAAAZnYW1lSWQFAAAACnBsYXllclJvbGUFAAAADXJhbmdlUG9zaXRpb24BAAAADGdldER1Y2tJZEtleQAAAAMAAAAGZ2FtZUlkAAAACnBsYXllclJvbGUAAAANcmFuZ2VQb3NpdGlvbgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAEZ2FtZQkAAaQAAAABBQAAAAZnYW1lSWQCAAAAAV8FAAAACnBsYXllclJvbGUCAAAAAV8FAAAADXJhbmdlUG9zaXRpb24CAAAABkR1Y2tJZAEAAAAJZ2V0RHVja0lkAAAAAwAAAAZnYW1lSWQAAAAKcGxheWVyUm9sZQAAAA1yYW5nZVBvc2l0aW9uCQEAAAAMdHJ5R2V0U3RyaW5nAAAAAQkBAAAADGdldER1Y2tJZEtleQAAAAMFAAAABmdhbWVJZAUAAAAKcGxheWVyUm9sZQUAAAANcmFuZ2VQb3NpdGlvbgEAAAAMZ2V0Q29tbWl0S2V5AAAAAgAAAAZnYW1lSWQAAAAKcGxheWVyUm9sZQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAARnYW1lCQABpAAAAAEFAAAABmdhbWVJZAIAAAABXwUAAAAKcGxheWVyUm9sZQIAAAAHX2NvbW1pdAEAAAAJZ2V0Q29tbWl0AAAAAgAAAAZnYW1lSWQAAAAKcGxheWVyUm9sZQkBAAAADHRyeUdldFN0cmluZwAAAAEJAQAAAAxnZXRDb21taXRLZXkAAAACBQAAAAZnYW1lSWQFAAAACnBsYXllclJvbGUBAAAAD2dldER1Y2tPcmRlcktleQAAAAIAAAAGZ2FtZUlkAAAACnBsYXllclJvbGUJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAEZ2FtZQkAAaQAAAABBQAAAAZnYW1lSWQCAAAAAV8FAAAACnBsYXllclJvbGUCAAAACl9kdWNrT3JkZXIBAAAADGdldER1Y2tPcmRlcgAAAAIAAAAGZ2FtZUlkAAAACnBsYXllclJvbGUJAQAAAAx0cnlHZXRTdHJpbmcAAAABCQEAAAAPZ2V0RHVja09yZGVyS2V5AAAAAgUAAAAGZ2FtZUlkBQAAAApwbGF5ZXJSb2xlAQAAABBnZXRQbGF5ZXJXaW5zS2V5AAAAAQAAAA1wbGF5ZXJBZGRyZXNzCQABLAAAAAIFAAAADXBsYXllckFkZHJlc3MCAAAABV93aW5zAQAAAA1nZXRQbGF5ZXJXaW5zAAAAAQAAAA1wbGF5ZXJBZGRyZXNzCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAQAAABBnZXRQbGF5ZXJXaW5zS2V5AAAAAQUAAAANcGxheWVyQWRkcmVzcwEAAAARZ2V0UGxheWVyTG9zZXNLZXkAAAABAAAADXBsYXllckFkZHJlc3MJAAEsAAAAAgUAAAANcGxheWVyQWRkcmVzcwIAAAAGX2xvc2VzAQAAAA5nZXRQbGF5ZXJMb3NlcwAAAAEAAAANcGxheWVyQWRkcmVzcwkBAAAADXRyeUdldEludGVnZXIAAAABCQEAAAARZ2V0UGxheWVyTG9zZXNLZXkAAAABBQAAAA1wbGF5ZXJBZGRyZXNzAQAAABFnZXRQbGF5ZXJEcmF3c0tleQAAAAEAAAANcGxheWVyQWRkcmVzcwkAASwAAAACBQAAAA1wbGF5ZXJBZGRyZXNzAgAAAAZfZHJhd3MBAAAADmdldFBsYXllckRyYXdzAAAAAQAAAA1wbGF5ZXJBZGRyZXNzCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAQAAABFnZXRQbGF5ZXJEcmF3c0tleQAAAAEF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MDYwNzY2MTA3AAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTYwNzY2MTA3AAAAAAAAAAAABQAAAA0kYWNjMDYwNzY2MTA3BAAAAA0kYWNjMTYwNzY2MTA3CQEAAAAJaXNTeW1ib2xDAAAAAgUAAAANJGFjYzA2MDc2NjEwNwkAAZEAAAACBQAAAA0kbGlzdDYwNzY2MTA3AAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTYwNzY2MTA3AAAAAAAAAAABBQAAAA0kYWNjMTYwNzY2MTA3BAAAAA0kYWNjMjYwNzY2MTA3CQEAAAAJaXNTeW1ib2xDAAAAAgUAAAANJGFjYzE2MDc2NjEwNwkAAZEAAAACBQAAAA0kbGlzdDYwNzY2MTA3AAAAAAAAAAABAwkAAAAAAAACBQAAAA0kc2l6ZTYwNzY2MTA3AAAAAAAAAAACBQAAAA0kYWNjMjYwNzY2MTA3BAAAAA0kYWNjMzYwNzY2MTA3CQEAAAAJaXNTeW1ib2xDAAAAAgUAAAANJGFjYzI2MDc2NjEwNwkAAZEAAAACBQAAAA0kbGlzdDYwNzY2MTA3AAAAAAAAAAACAwkAAAAAAAACBQAAAA0kc2l6ZTYwNzY2MTA3AAAAAAAAAAADBQAAAA0kYWNjMzYwNzY2MTA3BAAAAA0kYWNjNDYwNzY2MTA3CQEAAAAJaXNTeW1ib2xDAAAAAgUAAAANJGFjYzM2MDc2NjEwNwkAAZEAAAACBQAAAA0kbGlzdDYwNzY2MTA3AAAAAAAAAAADAwkAAAAAAAACBQAAAA0kc2l6ZTYwNzY2MTA3AAAAAAAAAAAEBQAAAA0kYWNjNDYwNzY2MTA3BAAAAA0kYWNjNTYwNzY2MTA3CQEAAAAJaXNTeW1ib2xDAAAAAgUAAAANJGFjYzQ2MDc2NjEwNwkAAZEAAAACBQAAAA0kbGlzdDYwNzY2MTA3AAAAAAAAAAAEAwkAAAAAAAACBQAAAA0kc2l6ZTYwNzY2MTA3AAAAAAAAAAAFBQAAAA0kYWNjNTYwNzY2MTA3BAAAAA0kYWNjNjYwNzY2MTA3CQEAAAAJaXNTeW1ib2xDAAAAAgUAAAANJGFjYzU2MDc2NjEwNwkAAZEAAAACBQAAAA0kbGlzdDYwNzY2MTA3AAAAAAAAAAAFAwkAAAAAAAACBQAAAA0kc2l6ZTYwNzY2MTA3AAAAAAAAAAAGBQAAAA0kYWNjNjYwNzY2MTA3BAAAAA0kYWNjNzYwNzY2MTA3CQEAAAAJaXNTeW1ib2xDAAAAAgUAAAANJGFjYzY2MDc2NjEwNwkAAZEAAAACBQAAAA0kbGlzdDYwNzY2MTA3AAAAAAAAAAAGAwkAAAAAAAACBQAAAA0kc2l6ZTYwNzY2MTA3AAAAAAAAAAAHBQAAAA0kYWNjNzYwNzY2MTA3BAAAAA0kYWNjODYwNzY2MTA3CQEAAAAJaXNTeW1ib2xDAAAAAgUAAAANJGFjYzc2MDc2NjEwNwkAAZEAAAACBQAAAA0kbGlzdDYwNzY2MTA3AAAAAAAAAAAHAwkAAAAAAAACBQAAAA0kc2l6ZTYwNzY2MTA3AAAAAAAAAAAIBQAAAA0kYWNjODYwNzY2MTA3BAAAAA0kYWNjOTYwNzY2MTA3CQEAAAAJaXNTeW1ib2xDAAAAAgUAAAANJGFjYzg2MDc2NjEwNwkAAZEAAAACBQAAAA0kbGlzdDYwNzY2MTA3AAAAAAAAAAAICQAAAgAAAAECAAAAEkxpc3Qgc2l6ZSBleGNlZWQgOAIAAAABQwkBAAAAEGdldEFtb3VudE9yQ2xlYXIAAAABCQABLAAAAAIJAAGkAAAAAQQAAAANJGxpc3Q2MTQ2NjE3NwUAAAAIZ2Vub3R5cGUEAAAADSRzaXplNjE0NjYxNzcJAAGQAAAAAQUAAAANJGxpc3Q2MTQ2NjE3NwQAAAANJGFjYzA2MTQ2NjE3NwAAAAAAAAAAAAMJAAAAAAAAAgUAAAANJHNpemU2MTQ2NjE3NwAAAAAAAAAAAAUAAAANJGFjYzA2MTQ2NjE3NwQAAAANJGFjYzE2MTQ2NjE3NwkBAAAACWlzU3ltYm9sRAAAAAIFAAAADSRhY2MwNjE0NjYxNzcJAAGRAAAAAgUAAAANJGxpc3Q2MTQ2NjE3NwAAAAAAAAAAAAMJAAAAAAAAAgUAAAANJHNpemU2MTQ2NjE3NwAAAAAAAAAAAQUAAAANJGFjYzE2MTQ2NjE3NwQAAAANJGFjYzI2MTQ2NjE3NwkBAAAACWlzU3ltYm9sRAAAAAIFAAAADSRhY2MxNjE0NjYxNzcJAAGRAAAAAgUAAAANJGxpc3Q2MTQ2NjE3NwAAAAAAAAAAAQMJAAAAAAAAAgUAAAANJHNpemU2MTQ2NjE3NwAAAAAAAAAAAgUAAAANJGFjYzI2MTQ2NjE3NwQAAAANJGFjYzM2MTQ2NjE3NwkBAAAACWlzU3ltYm9sRAAAAAIFAAAADSRhY2MyNjE0NjYxNzcJAAGRAAAAAgUAAAANJGxpc3Q2MTQ2NjE3NwAAAAAAAAAAAgMJAAAAAAAAAgUAAAANJHNpemU2MTQ2NjE3NwAAAAAAAAAAAwUAAAANJGFjYzM2MTQ2NjE3NwQAAAANJGFjYzQ2MTQ2NjE3NwkBAAAACWlzU3ltYm9sRAAAAAIFAAAADSRhY2MzNjE0NjYxNzcJAAGRAAAAAgUAAAANJGxpc3Q2MTQ2NjE3NwAAAAAAAAAAAwMJAAAAAAAAAgUAAAANJHNpemU2MTQ2NjE3NwAAAAAAAAAABAUAAAANJGFjYzQ2MTQ2NjE3NwQAAAANJGFjYzU2MTQ2NjE3NwkBAAAACWlzU3ltYm9sRAAAAAIFAAAADSRhY2M0NjE0NjYxNzcJAAGRAAAAAgUAAAANJGxpc3Q2MTQ2NjE3NwAAAAAAAAAABAMJAAAAAAAAAgUAAAANJHNpemU2MTQ2NjE3NwAAAAAAAAAABQUAAAANJGFjYzU2MTQ2NjE3NwQAAAANJGFjYzY2MTQ2NjE3NwkBAAAACWlzU3ltYm9sRAAAAAIFAAAADSRhY2M1NjE0NjYxNzcJAAGRAAAAAgUAAAANJGxpc3Q2MTQ2NjE3NwAAAAAAAAAABQMJAAAAAAAAAgUAAAANJHNpemU2MTQ2NjE3NwAAAAAAAAAABgUAAAANJGFjYzY2MTQ2NjE3NwQAAAANJGFjYzc2MTQ2NjE3NwkBAAAACWlzU3ltYm9sRAAAAAIFAAAADSRhY2M2NjE0NjYxNzcJAAGRAAAAAgUAAAANJGxpc3Q2MTQ2NjE3NwAAAAAAAAAABgMJAAAAAAAAAgUAAAANJHNpemU2MTQ2NjE3NwAAAAAAAAAABwUAAAANJGFjYzc2MTQ2NjE3NwQAAAANJGFjYzg2MTQ2NjE3NwkBAAAACWlzU3ltYm9sRAAAAAIFAAAADSRhY2M3NjE0NjYxNzcJAAGRAAAAAgUAAAANJGxpc3Q2MTQ2NjE3NwAAAAAAAAAABwMJAAAAAAAAAgUAAAANJHNpemU2MTQ2NjE3NwAAAAAAAAAACAUAAAANJGFjYzg2MTQ2NjE3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MzEzBAAAAA0kYWNjMTYyODI2MzEzCQEAAAAJaXNTeW1ib2xGAAAAAgUAAAANJGFjYzA2MjgyNjMxMwkAAZEAAAACBQAAAA0kbGlzdDYyODI2MzEzAAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTYyODI2MzEzAAAAAAAAAAABBQAAAA0kYWNjMTYyODI2MzEzBAAAAA0kYWNjMjYyODI2MzEzCQEAAAAJaXNTeW1ib2xGAAAAAgUAAAANJGFjYzE2MjgyNjMxMwkAAZEAAAACBQAAAA0kbGlzdDYyODI2MzEzAAAAAAAAAAABAwkAAAAAAAACBQAAAA0kc2l6ZTYyODI2MzEzAAAAAAAAAAACBQAAAA0kYWNjMjYyODI2MzEzBAAAAA0kYWNjMzYyODI2MzEzCQEAAAAJaXNTeW1ib2xGAAAAAgUAAAANJGFjYzI2MjgyNjMxMwkAAZEAAAACBQAAAA0kbGlzdDYyODI2MzEzAAAAAAAAAAACAwkAAAAAAAACBQAAAA0kc2l6ZTYyODI2MzEzAAAAAAAAAAADBQAAAA0kYWNjMzYyODI2MzEzBAAAAA0kYWNjNDYyODI2MzEzCQEAAAAJaXNTeW1ib2xGAAAAAgUAAAANJGFjYzM2MjgyNjMxMwkAAZEAAAACBQAAAA0kbGlzdDYyODI2MzEzAAAAAAAAAAADAwkAAAAAAAACBQAAAA0kc2l6ZTYyODI2MzEzAAAAAAAAAAAEBQAAAA0kYWNjNDYyODI2MzEzBAAAAA0kYWNjNTYyODI2MzEzCQEAAAAJaXNTeW1ib2xGAAAAAgUAAAANJGFjYzQ2MjgyNjMxMwkAAZEAAAACBQAAAA0kbGlzdDYyODI2MzEzAAAAAAAAAAAEAwkAAAAAAAACBQAAAA0kc2l6ZTYyODI2MzEzAAAAAAAAAAAFBQAAAA0kYWNjNTYyODI2MzEzBAAAAA0kYWNjNjYyODI2MzEzCQEAAAAJaXNTeW1ib2xGAAAAAgUAAAANJGFjYzU2MjgyNjMxMwkAAZEAAAACBQAAAA0kbGlzdDYyODI2MzEzAAAAAAAAAAAFAwkAAAAAAAACBQAAAA0kc2l6ZTYyODI2MzEzAAAAAAAAAAAGBQAAAA0kYWNjNjYyODI2MzEzBAAAAA0kYWNjNzYyODI2MzEzCQEAAAAJaXNTeW1ib2xGAAAAAgUAAAANJGFjYzY2MjgyNjMxMwkAAZEAAAACBQAAAA0kbGlzdDYyODI2MzEzAAAAAAAAAAAGAwkAAAAAAAACBQAAAA0kc2l6ZTYyODI2MzEzAAAAAAAAAAAHBQAAAA0kYWNjNzYyODI2MzEzBAAAAA0kYWNjODYyODI2MzEzCQEAAAAJaXNTeW1ib2xGAAAAAgUAAAANJGFjYzc2MjgyNjMxMwkAAZEAAAACBQAAAA0kbGlzdDYyODI2MzEzAAAAAAAAAAAHAwkAAAAAAAACBQAAAA0kc2l6ZTYyODI2MzEzAAAAAAAAAAAIBQAAAA0kYWNjODYyODI2MzEzBAAAAA0kYWNjOTYyODI2MzEzCQEAAAAJaXNTeW1ib2xGAAAAAgUAAAANJGFjYzg2MjgyNjMxMwkAAZEAAAACBQAAAA0kbGlzdDYyODI2MzEzAAAAAAAAAAAICQAAAgAAAAECAAAAEkxpc3Qgc2l6ZSBleGNlZWQgOAIAAAABRgkBAAAAEGdldEFtb3VudE9yQ2xlYXIAAAABCQABLAAAAAIJAAGkAAAAAQQAAAANJGxpc3Q2MzUyNjM4MwUAAAAIZ2Vub3R5cGUEAAAADSRzaXplNjM1MjYzODMJAAGQAAAAAQUAAAANJGxpc3Q2MzUyNjM4MwQAAAANJGFjYzA2MzUyNjM4MwAAAAAAAAAAAAMJAAAAAAAAAgUAAAANJHNpemU2MzUyNjM4MwAAAAAAAAAAAAUAAAANJGFjYzA2MzUyNjM4MwQAAAANJGFjYzE2MzUyNjM4MwkBAAAACWlzU3ltYm9sRwAAAAIFAAAADSRhY2MwNjM1MjYzODMJAAGRAAAAAgUAAAANJGxpc3Q2MzUyNjM4MwAAAAAAAAAAAAMJAAAAAAAAAgUAAAANJHNpemU2MzUyNjM4MwAAAAAAAAAAAQUAAAANJGFjYzE2MzUyNjM4MwQAAAANJGFjYzI2MzUyNjM4MwkBAAAACWlzU3ltYm9sRwAAAAIFAAAADSRhY2MxNjM1MjYzODMJAAGRAAAAAgUAAAANJGxpc3Q2MzUyNjM4MwAAAAAAAAAAAQMJAAAAAAAAAgUAAAANJHNpemU2MzUyNjM4MwAAAAAAAAAAAgUAAAANJGFjYzI2MzUyNjM4MwQAAAANJGFjYzM2MzUyNjM4MwkBAAAACWlzU3ltYm9sRwAAAAIFAAAADSRhY2MyNjM1MjYzODMJAAGRAAAAAgUAAAANJGxpc3Q2MzUyNjM4MwAAAAAAAAAAAgMJAAAAAAAAAgUAAAANJHNpemU2MzUyNjM4MwAAAAAAAAAAAwUAAAANJGFjYzM2MzUyNjM4MwQAAAANJGFjYzQ2MzUyNjM4MwkBAAAACWlzU3ltYm9sRwAAAAIFAAAADSRhY2MzNjM1MjYzODMJAAGRAAAAAgUAAAANJGxpc3Q2MzUyNjM4MwAAAAAAAAAAAwMJAAAAAAAAAgUAAAANJHNpemU2MzUyNjM4MwAAAAAAAAAABAUAAAANJGFjYzQ2MzUyNjM4MwQAAAANJGFjYzU2MzUyNjM4MwkBAAAACWlzU3ltYm9sRwAAAAIFAAAADSRhY2M0NjM1MjYzODMJAAGRAAAAAgUAAAANJGxpc3Q2MzUyNjM4MwAAAAAAAAAABAMJAAAAAAAAAgUAAAANJHNpemU2MzUyNjM4MwAAAAAAAAAABQUAAAANJGFjYzU2MzUyNjM4MwQAAAANJGFjYzY2MzUyNjM4MwkBAAAACWlzU3ltYm9sRwAAAAIFAAAADSRhY2M1NjM1MjYzODMJAAGRAAAAAgUAAAANJGxpc3Q2MzUyNjM4MwAAAAAAAAAABQMJAAAAAAAAAgUAAAANJHNpemU2MzUyNjM4MwAAAAAAAAAABgUAAAANJGFjYzY2MzUyNjM4MwQAAAANJGFjYzc2MzUyNjM4MwkBAAAACWlzU3ltYm9sRwAAAAIFAAAADSRhY2M2NjM1MjYzODMJAAGRAAAAAgUAAAANJGxpc3Q2MzUyNjM4MwAAAAAAAAAABgMJAAAAAAAAAgUAAAANJHNpemU2MzUyNjM4MwAAAAAAAAAABwUAAAANJGFjYzc2MzUyNjM4MwQAAAANJGFjYzg2MzUyNjM4MwkBAAAACWlzU3ltYm9sRwAAAAIFAAAADSRhY2M3NjM1MjYzODMJAAGRAAAAAgUAAAANJGxpc3Q2MzUyNjM4MwAAAAAAAAAABwMJAAAAAAAAAgUAAAANJHNpemU2MzUyNjM4MwAAAAAAAAAACAUAAAANJGFjYzg2MzUyNjM4MwQAAAANJGFjYzk2MzUyNjM4MwkBAAAACWlzU3ltYm9sRwAAAAIFAAAADSRhY2M4NjM1MjYzODMJAAGRAAAAAgUAAAAN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CQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAALZ2V0TWFrZXJLZXkAAAABBQAAAAZnYW1lSWQFAAAADWNhbGxlckFkZHJlc3MJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAEGdldFBsYXllclJvbGVLZXkAAAACBQAAAAZnYW1lSWQFAAAADWNhbGxlckFkZHJlc3MCAAAABW1ha2VyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAANZ2V0QmV0RWdnc0tleQAAAAEFAAAABmdhbWVJZAUAAAAEZWdncwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAEWdldFJhcml0eVJhbmdlS2V5AAAAAgUAAAAGZ2FtZUlkAgAAAAV3b3JzdAUAAAAQcmFyaXR5UmFuZ2VXb3JzdAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAEWdldFJhcml0eVJhbmdlS2V5AAAAAgUAAAAGZ2FtZUlkAgAAAAZtZWRpdW0FAAAAEXJhcml0eVJhbmdlTWVkaXVtCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAARZ2V0UmFyaXR5UmFuZ2VLZXkAAAACBQAAAAZnYW1lSWQCAAAABGJlc3QFAAAAD3Jhcml0eVJhbmdlQmVzdAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAHWdldFdhaXRpbmdFeHBpcmF0aW9uSGVpZ2h0S2V5AAAAAQUAAAAGZ2FtZUlkCQAAZAAAAAIFAAAABmhlaWdodAUAAAAHV0FJVElORwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAACmdldFNsb3RLZXkAAAABBQAAAARzbG90BQAAAAZnYW1lSWQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAACm5leHRHYW1lSWQJAABkAAAAAgUAAAAGZ2FtZUlkAAAAAAAAAAABBQAAAANuaWwAAAABaQEAAAAIdGFrZUdhbWUAAAABAAAABHNsb3QEAAAADWNhbGxlckFkZHJlc3MJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAAGZ2FtZUlkCQEAAAAHZ2V0U2xvdAAAAAEFAAAABHNsb3QEAAAAB3BheW1lbnQJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAADCQEAAAACIT0AAAACCQEAAAAUZ2V0UGxheWVyQ3VycmVudEdhbWUAAAABBQAAAA1jYWxsZXJBZGRyZXNzAAAAAAAAAAAACQAAAgAAAAECAAAAH1lvdSBhbHJlYWR5IGhhdmUgYW4gYWN0aXZlIGdhbWUDAwkAAGYAAAACAAAAAAAAAAAABQAAAARzbG90BgkAAGcAAAACBQAAAARzbG90BQAAAAVTTE9UUwkAAAIAAAABAgAAAAxJbnZhbGlkIHNsb3QDCQAAAAAAAAIJAQAAAAdnZXRTbG90AAAAAQUAAAAEc2xvdAAAAAAAAAAAAAkAAAIAAAABAgAAABJUaGlzIHNsb3QgaXMgZW1wdHkDCQEAAAACIT0AAAACCAUAAAAHcGF5bWVudAAAAAdhc3NldElkBQAAAAtlZ2dzQXNzZXRJZAkAAAIAAAABCQABLAAAAAICAAAAPFlvdSBjYW4gYXR0YWNoIG9ubHkgRUdHIHRva2VucyB3aXRoIHRoZSBmb2xsb3dpbmcgYXNzZXQgaWQ6IAkAAlgAAAABBQAAAAtlZ2dzQXNzZXRJZAMJAQAAAAIhPQAAAAIIBQAAAAdwYXltZW50AAAABmFtb3VudAkBAAAACmdldEJldEVnZ3MAAAABBQAAAAZnYW1lSWQJAAACAAAAAQIAAAAYSW5zdWZmaWNpZW50IGVnZ3MgYW1vdW50AwkAAGcAAAACBQAAAAZoZWlnaHQJAQAAABpnZXRXYWl0aW5nRXhwaXJhdGlvbkhlaWdodAAAAAEFAAAABmdhbWVJZAkAAAIAAAABAgAAABRUaGlzIGdhbWUgaXMgZXhwaXJlZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAF2dldFBsYXllckN1cnJlbnRHYW1lS2V5AAAAAQUAAAANY2FsbGVyQWRkcmVzcwUAAAAGZ2FtZUlkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAAtnZXRUYWtlcktleQAAAAEFAAAABmdhbWVJZAUAAAANY2FsbGVyQWRkcmVzcwkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAQZ2V0UGxheWVyUm9sZUtleQAAAAIFAAAABmdhbWVJZAUAAAANY2FsbGVyQWRkcmVzcwIAAAAFdGFrZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAApnZXRTdGVwS2V5AAAAAQUAAAAGZ2FtZUlkAAAAAAAAAAAACQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAWZ2V0RXhwaXJhdGlvbkhlaWdodEtleQAAAAEFAAAABmdhbWVJZAkAAGQAAAACBQAAAAZoZWlnaHQFAAAADHN0ZXBEdXJhdGlvbgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAACmdldFNsb3RLZXkAAAABBQAAAARzbG90AAAAAAAAAAAACQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAAtnYW1lc1BsYXllZAkAAGQAAAACCQEAAAAOZ2V0R2FtZXNQbGF5ZWQAAAAAAAAAAAAAAAABBQAAAANuaWwAAAABaQEAAAAIa2lja0dhbWUAAAABAAAABHNsb3QEAAAABmdhbWVJZAkBAAAAB2dldFNsb3QAAAABBQAAAARzbG90AwMJAABmAAAAAgAAAAAAAAAAAAUAAAAEc2xvdAYJAABnAAAAAgUAAAAEc2xvdAUAAAAFU0xPVFMJAAACAAAAAQIAAAAMSW52YWxpZCBzbG90AwkAAAAAAAACBQAAAAZnYW1lSWQAAAAAAAAAAAAJAAACAAAAAQIAAAANU2xvdCBpcyBlbXB0eQMJAABmAAAAAgkBAAAAGmdldFdhaXRpbmdFeHBpcmF0aW9uSGVpZ2h0AAAAAQUAAAAGZ2FtZUlkBQAAAAZoZWlnaHQJAAACAAAAAQIAAAAbV2FpdGluZyBpcyBub3QgZmluaXNoZWQgeWV0BAAAAAVtYWtlcgkBAAAACGdldE1ha2VyAAAAAQUAAAAGZ2FtZUlkCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAXZ2V0UGxheWVyQ3VycmVudEdhbWVLZXkAAAABBQAAAAVtYWtlcgAAAAAAAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAACmdldFNsb3RLZXkAAAABBQAAAARzbG90AAAAAAAAAAAACQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABBQAAAAVtYWtlcgkBAAAACmdldEJldEVnZ3MAAAABBQAAAAZnYW1lSWQFAAAAC2VnZ3NBc3NldElkBQAAAANuaWwAAAABaQEAAAAJcGlja0R1Y2tzAAAAAAQAAAANY2FsbGVyQWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAAZnYW1lSWQJAQAAABRnZXRQbGF5ZXJDdXJyZW50R2FtZQAAAAEFAAAADWNhbGxlckFkZHJlc3MEAAAACnBsYXllclJvbGUJAQAAAA1nZXRQbGF5ZXJSb2xlAAAAAgUAAAAGZ2FtZUlkBQAAAA1jYWxsZXJBZGRyZXNzBAAAAAhnYW1lU3RlcAkBAAAAB2dldFN0ZXAAAAABBQAAAAZnYW1lSWQEAAAAEHdvcnN0UmFyaXR5UmFuZ2UJAQAAAA5nZXRSYXJpdHlSYW5nZQAAAAIFAAAABmdhbWVJZAIAAAAFd29yc3QEAAAAEW1lZGl1bVJhcml0eVJhbmdlCQEAAAAOZ2V0UmFyaXR5UmFuZ2UAAAACBQAAAAZnYW1lSWQCAAAABm1lZGl1bQQAAAAPYmVzdFJhcml0eVJhbmdlCQEAAAAOZ2V0UmFyaXR5UmFuZ2UAAAACBQAAAAZnYW1lSWQCAAAABGJlc3QEAAAAC3dvcnN0RHVja0lkCQEAAAAFdmFsdWUAAAABCAkBAAAABXZhbHVlAAAAAQkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAdhc3NldElkBAAAAAxtZWRpdW1EdWNrSWQJAQAAAAV2YWx1ZQAAAAEICQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAABAAAAB2Fzc2V0SWQEAAAACmJlc3REdWNrSWQJAQAAAAV2YWx1ZQAAAAEICQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAACAAAAB2Fzc2V0SWQEAAAAC3dvcnN0UmFyaXR5CQEAAAAOZ2V0QXNzZXRSYXJpdHkAAAABBQAAAAt3b3JzdER1Y2tJZAQAAAAMbWVkaXVtUmFyaXR5CQEAAAAOZ2V0QXNzZXRSYXJpdHkAAAABBQAAAAxtZWRpdW1EdWNrSWQEAAAACmJlc3RSYXJpdHkJAQAAAA5nZXRBc3NldFJhcml0eQAAAAEFAAAACmJlc3REdWNrSWQDCQAAAAAAAAIFAAAABmdhbWVJZAAAAAAAAAAAAAkAAAIAAAABAgAAAB1Zb3UgZG9uJ3QgaGF2ZSBhbiBhY3RpdmUgZ2FtZQMJAAAAAAAAAgkBAAAAE2dldEV4cGlyYXRpb25IZWlnaHQAAAABBQAAAAZnYW1lSWQAAAAAAAAAAAAJAAACAAAAAQIAAAATR2FtZSBpcyBub3Qgc3RhcnRlZAMDCQAAAAAAAAIFAAAACGdhbWVTdGVwAAAAAAAAAAAACQEAAAACIT0AAAACBQAAAApwbGF5ZXJSb2xlAgAAAAV0YWtlcgcJAAACAAAAAQIAAAAiSXQgaXMgdGhlIHRha2VyJ3MgdHVybiB0byBwaWNrIG5vdwMDCQAAAAAAAAIFAAAACGdhbWVTdGVwAAAAAAAAAAABCQEAAAACIT0AAAACBQAAAApwbGF5ZXJSb2xlAgAAAAVtYWtlcgcJAAACAAAAAQIAAAAiSXQgaXMgdGhlIG1ha2VyJ3MgdHVybiB0byBwaWNrIG5vdwMJAABmAAAAAgUAAAAIZ2FtZVN0ZXAAAAAAAAAAAAEJAAACAAAAAQIAAAAeRHVja3MgaGF2ZSBhbHJlYWR5IGJlZW4gcGlja2VkAwMJAABmAAAAAgUAAAALd29yc3RSYXJpdHkJAABoAAAAAgUAAAAQd29yc3RSYXJpdHlSYW5nZQAAAAAAAAAACgYJAABnAAAAAgkAAGgAAAACCQAAZQAAAAIFAAAAEHdvcnN0UmFyaXR5UmFuZ2UAAAAAAAAAAAEAAAAAAAAAAAoFAAAAC3dvcnN0UmFyaXR5CQAAAgAAAAECAAAAI1dvcnN0IGR1Y2sgZG9lc24ndCBmaXQgcmFyaXR5IHJhbmdlAwMJAABmAAAAAgUAAAAMbWVkaXVtUmFyaXR5CQAAaAAAAAIFAAAAEW1lZGl1bVJhcml0eVJhbmdlAAAAAAAAAAAKBgkAAGcAAAACCQAAaAAAAAIJAABlAAAAAgUAAAARbWVkaXVtUmFyaXR5UmFuZ2UAAAAAAAAAAAEAAAAAAAAAAAoFAAAADG1lZGl1bVJhcml0eQkAAAIAAAABAgAAACRNZWRpdW0gZHVjayBkb2Vzbid0IGZpdCByYXJpdHkgcmFuZ2UDAwMDCQAAAAAAAAIFAAAAD2Jlc3RSYXJpdHlSYW5nZQAAAAAAAAAABQkAAGcAAAACAAAAAAAAAAAoBQAAAApiZXN0UmFyaXR5BwYJAABmAAAAAgUAAAAKYmVzdFJhcml0eQkAAGgAAAACBQAAAA9iZXN0UmFyaXR5UmFuZ2UAAAAAAAAAAAoGCQAAZwAAAAIJAABoAAAAAgkAAGUAAAACBQAAAA9iZXN0UmFyaXR5UmFuZ2UAAAAAAAAAAAEAAAAAAAAAAAoFAAAACmJlc3RSYXJpdHkJAAACAAAAAQIAAAAiQmVzdCBkdWNrIGRvZXNuJ3QgZml0IHJhcml0eSByYW5nZQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAADGdldFJhcml0eUtleQAAAAMFAAAABmdhbWVJZAUAAAAKcGxheWVyUm9sZQIAAAAFd29yc3QFAAAAC3dvcnN0UmFyaXR5CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAMZ2V0UmFyaXR5S2V5AAAAAwUAAAAGZ2FtZUlkBQAAAApwbGF5ZXJSb2xlAgAAAAZtZWRpdW0FAAAADG1lZGl1bVJhcml0eQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAADGdldFJhcml0eUtleQAAAAMFAAAABmdhbWVJZAUAAAAKcGxheWVyUm9sZQIAAAAEYmVzdAUAAAAKYmVzdFJhcml0eQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAMZ2V0RHVja0lkS2V5AAAAAwUAAAAGZ2FtZUlkBQAAAApwbGF5ZXJSb2xlAgAAAAV3b3JzdAkAAlgAAAABBQAAAAt3b3JzdER1Y2tJZAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAMZ2V0RHVja0lkS2V5AAAAAwUAAAAGZ2FtZUlkBQAAAApwbGF5ZXJSb2xlAgAAAAZtZWRpdW0JAAJYAAAAAQUAAAAMbWVkaXVtRHVja0lkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAAxnZXREdWNrSWRLZXkAAAADBQAAAAZnYW1lSWQFAAAACnBsYXllclJvbGUCAAAABGJlc3QJAAJYAAAAAQUAAAAKYmVzdER1Y2tJZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAACmdldFN0ZXBLZXkAAAABBQAAAAZnYW1lSWQJAABkAAAAAgUAAAAIZ2FtZVN0ZXAAAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABZnZXRFeHBpcmF0aW9uSGVpZ2h0S2V5AAAAAQUAAAAGZ2FtZUlkCQAAZAAAAAIFAAAABmhlaWdodAUAAAAMc3RlcER1cmF0aW9uCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgAAAAAAAAAAAQUAAAALd29yc3REdWNrSWQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyAAAAAAAAAAABBQAAAAxtZWRpdW1EdWNrSWQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyAAAAAAAAAAABBQAAAApiZXN0RHVja0lkBQAAAANuaWwAAAABaQEAAAAGY29tbWl0AAAAAQAAAARoYXNoBAAAAA1jYWxsZXJBZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAABmdhbWVJZAkBAAAAFGdldFBsYXllckN1cnJlbnRHYW1lAAAAAQUAAAANY2FsbGVyQWRkcmVzcwQAAAAKcGxheWVyUm9sZQkBAAAADWdldFBsYXllclJvbGUAAAACBQAAAAZnYW1lSWQFAAAADWNhbGxlckFkZHJlc3MEAAAACGdhbWVTdGVwCQEAAAAHZ2V0U3RlcAAAAAEFAAAABmdhbWVJZAMJAAAAAAAAAgUAAAAGZ2FtZUlkAAAAAAAAAAAACQAAAgAAAAECAAAAHVlvdSBkb24ndCBoYXZlIGFuIGFjdGl2ZSBnYW1lAwkAAGYAAAACAAAAAAAAAAACBQAAAAhnYW1lU3RlcAkAAAIAAAABAgAAABVDb21taXQgaXMgbm90IHN0YXJ0ZWQDAwkAAAAAAAACBQAAAAhnYW1lU3RlcAAAAAAAAAAAAgkBAAAAAiE9AAAAAgUAAAAKcGxheWVyUm9sZQIAAAAFdGFrZXIHCQAAAgAAAAECAAAAIkl0IGlzIHRoZSB0YWtlcidzIHR1cm4gdG8gcGljayBub3cDAwkAAAAAAAACBQAAAAhnYW1lU3RlcAAAAAAAAAAAAwkBAAAAAiE9AAAAAgUAAAAKcGxheWVyUm9sZQIAAAAFbWFrZXIHCQAAAgAAAAECAAAAIkl0IGlzIHRoZSBtYWtlcidzIHR1cm4gdG8gcGljayBub3cDCQAAZgAAAAIFAAAACGdhbWVTdGVwAAAAAAAAAAADCQAAAgAAAAECAAAAEkNvbW1pdCBpcyBmaW5pc2hlZAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAMZ2V0Q29tbWl0S2V5AAAAAgUAAAAGZ2FtZUlkBQAAAApwbGF5ZXJSb2xlBQAAAARoYXNoCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAKZ2V0U3RlcEtleQAAAAEFAAAABmdhbWVJZAkAAGQAAAACBQAAAAhnYW1lU3RlcAAAAAAAAAAAAQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAFmdldEV4cGlyYXRpb25IZWlnaHRLZXkAAAABBQAAAAZnYW1lSWQJAABkAAAAAgUAAAAGaGVpZ2h0BQAAAAxzdGVwRHVyYXRpb24FAAAAA25pbAAAAAFpAQAAAAZyZXZlYWwAAAACAAAACWR1Y2tPcmRlcgAAAARzYWx0BAAAAA1jYWxsZXJBZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAABmdhbWVJZAkBAAAAFGdldFBsYXllckN1cnJlbnRHYW1lAAAAAQUAAAANY2FsbGVyQWRkcmVzcwQAAAAKcGxheWVyUm9sZQkBAAAADWdldFBsYXllclJvbGUAAAACBQAAAAZnYW1lSWQFAAAADWNhbGxlckFkZHJlc3MEAAAACGdhbWVTdGVwCQEAAAAHZ2V0U3RlcAAAAAEFAAAABmdhbWVJZAMJAAAAAAAAAgUAAAAGZ2FtZUlkAAAAAAAAAAAACQAAAgAAAAECAAAAHVlvdSBkb24ndCBoYXZlIGFuIGFjdGl2ZSBnYW1lAwkAAGYAAAACAAAAAAAAAAAEBQAAAAhnYW1lU3RlcAkAAAIAAAABAgAAABVSZXZlYWwgaXMgbm90IHN0YXJ0ZWQDAwkAAAAAAAACBQAAAAhnYW1lU3RlcAAAAAAAAAAABAkBAAAAAiE9AAAAAgUAAAAKcGxheWVyUm9sZQIAAAAFdGFrZXIHCQAAAgAAAAECAAAAIkl0IGlzIHRoZSB0YWtlcidzIHR1cm4gdG8gcGljayBub3cDAwkAAAAAAAACBQAAAAhnYW1lU3RlcAAAAAAAAAAABQkBAAAAAiE9AAAAAgUAAAAKcGxheWVyUm9sZQIAAAAFbWFrZXIHCQAAAgAAAAECAAAAIkl0IGlzIHRoZSBtYWtlcidzIHR1cm4gdG8gcGljayBub3cDCQAAZgAAAAIFAAAACGdhbWVTdGVwAAAAAAAAAAAFCQAAAgAAAAECAAAAElJldmVhbCBpcyBmaW5pc2hlZAMDAwMDAwkBAAAAAiE9AAAAAgUAAAAJZHVja09yZGVyAgAAABF3b3JzdCxtZWRpdW0sYmVzdAkBAAAAAiE9AAAAAgUAAAAJZHVja09yZGVyAgAAABF3b3JzdCxiZXN0LG1lZGl1bQcJAQAAAAIhPQAAAAIFAAAACWR1Y2tPcmRlcgIAAAARbWVkaXVtLHdvcnN0LGJlc3QHCQEAAAACIT0AAAACBQAAAAlkdWNrT3JkZXICAAAAEW1lZGl1bSxiZXN0LHdvcnN0BwkBAAAAAiE9AAAAAgUAAAAJZHVja09yZGVyAgAAABFiZXN0LHdvcnN0LG1lZGl1bQcJAQAAAAIhPQAAAAIFAAAACWR1Y2tPcmRlcgIAAAARYmVzdCxtZWRpdW0sd29yc3QHCQAAAgAAAAECAAAAGFJldmVhbCBkYXRhIGlzIG5vdCB2YWxpZAMJAQAAAAIhPQAAAAIJAAJYAAAAAQkAAfcAAAABCQABmwAAAAEJAAEsAAAAAgUAAAAJZHVja09yZGVyBQAAAARzYWx0CQEAAAAJZ2V0Q29tbWl0AAAAAgUAAAAGZ2FtZUlkBQAAAApwbGF5ZXJSb2xlCQAAAgAAAAECAAAAG1JldmVhbCBkb2Vzbid0IG1hdGNoIGNvbW1pdAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAPZ2V0RHVja09yZGVyS2V5AAAAAgUAAAAGZ2FtZUlkBQAAAApwbGF5ZXJSb2xlBQAAAAlkdWNrT3JkZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAApnZXRTdGVwS2V5AAAAAQUAAAAGZ2FtZUlkCQAAZAAAAAIFAAAACGdhbWVTdGVwAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAWZ2V0RXhwaXJhdGlvbkhlaWdodEtleQAAAAEFAAAABmdhbWVJZAkAAGQAAAACBQAAAAZoZWlnaHQFAAAADHN0ZXBEdXJhdGlvbgUAAAADbmlsAAAAAWkBAAAACGdldFByaXplAAAAAAQAAAANY2FsbGVyQWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAAZnYW1lSWQJAQAAABRnZXRQbGF5ZXJDdXJyZW50R2FtZQAAAAEFAAAADWNhbGxlckFkZHJlc3MEAAAACnBsYXllclJvbGUJAQAAAA1nZXRQbGF5ZXJSb2xlAAAAAgUAAAAGZ2FtZUlkBQAAAA1jYWxsZXJBZGRyZXNzBAAAABRhbm90aGVyUGxheWVyQWRkcmVzcwMJAAAAAAAAAgUAAAAKcGxheWVyUm9sZQIAAAAFbWFrZXIJAQAAAAhnZXRUYWtlcgAAAAEFAAAABmdhbWVJZAkBAAAACGdldE1ha2VyAAAAAQUAAAAGZ2FtZUlkBAAAAAZ3aW5uZXIJAQAAAAlnZXRXaW5uZXIAAAABBQAAAAZnYW1lSWQDCQAAAAAAAAIFAAAABmdhbWVJZAAAAAAAAAAAAAkAAAIAAAABAgAAAB1Zb3UgZG9uJ3QgaGF2ZSBhbiBhY3RpdmUgZ2FtZQMJAAAAAAAAAgUAAAAGd2lubmVyBQAAAApwbGF5ZXJSb2xlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAXZ2V0UGxheWVyQ3VycmVudEdhbWVLZXkAAAABBQAAAA1jYWxsZXJBZGRyZXNzAAAAAAAAAAAACQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAXZ2V0UGxheWVyQ3VycmVudEdhbWVLZXkAAAABBQAAABRhbm90aGVyUGxheWVyQWRkcmVzcwAAAAAAAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAEGdldFBsYXllcldpbnNLZXkAAAABBQAAAA1jYWxsZXJBZGRyZXNzCQAAZAAAAAIJAQAAAA1nZXRQbGF5ZXJXaW5zAAAAAQUAAAANY2FsbGVyQWRkcmVzcwAAAAAAAAAAAQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAEWdldFBsYXllckxvc2VzS2V5AAAAAQUAAAAUYW5vdGhlclBsYXllckFkZHJlc3MJAABkAAAAAgkBAAAADmdldFBsYXllckxvc2VzAAAAAQUAAAAUYW5vdGhlclBsYXllckFkZHJlc3MAAAAAAAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyCQAAaAAAAAIJAQAAAApnZXRCZXRFZ2dzAAAAAQUAAAAGZ2FtZUlkAAAAAAAAAAACBQAAAAtlZ2dzQXNzZXRJZAUAAAADbmlsAwkAAAAAAAACBQAAAAZ3aW5uZXICAAAABGRyYXcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABdnZXRQbGF5ZXJDdXJyZW50R2FtZUtleQAAAAEFAAAADWNhbGxlckFkZHJlc3MAAAAAAAAAAAAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABFnZXRQbGF5ZXJEcmF3c0tleQAAAAEFAAAADWNhbGxlckFkZHJlc3MJAABkAAAAAgkBAAAADmdldFBsYXllckRyYXdzAAAAAQUAAAANY2FsbGVyQWRkcmVzcwAAAAAAAAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIJAQAAAApnZXRCZXRFZ2dzAAAAAQUAAAAGZ2FtZUlkBQAAAAtlZ2dzQXNzZXRJZAUAAAADbmlsCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAXZ2V0UGxheWVyQ3VycmVudEdhbWVLZXkAAAABBQAAAA1jYWxsZXJBZGRyZXNzAAAAAAAAAAAABQAAAANuaWwAAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAACQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tleXm/1O0=", "height": 1688785, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: GHWTMhvPU4FDCmvJR1WnqoDHybpmzweD4XyjJgQHYdf1 Next: 5NXBvXDpLiVQxJNNx2rEuwAtuqVkc3XZZAcNMh9PNGfr Diff:
Old | New | Differences | |
---|---|---|---|
138 | 138 | func V (w,O) = k(U(w, O)) | |
139 | 139 | ||
140 | 140 | ||
141 | - | func W ( | |
141 | + | func W (q) = (q + "_wins") | |
142 | 142 | ||
143 | 143 | ||
144 | - | func X ( | |
144 | + | func X (q) = g(W(q)) | |
145 | 145 | ||
146 | 146 | ||
147 | - | func Y (q) = (q + "_ | |
147 | + | func Y (q) = (q + "_loses") | |
148 | 148 | ||
149 | 149 | ||
150 | 150 | func Z (q) = g(Y(q)) | |
151 | 151 | ||
152 | 152 | ||
153 | - | func aa (q) = (q + "_ | |
153 | + | func aa (q) = (q + "_draws") | |
154 | 154 | ||
155 | 155 | ||
156 | 156 | func ab (q) = g(aa(q)) | |
157 | 157 | ||
158 | 158 | ||
159 | - | func ac ( | |
159 | + | func ac () = "gamesPlayed" | |
160 | 160 | ||
161 | 161 | ||
162 | - | func ad ( | |
162 | + | func ad () = g(ac()) | |
163 | 163 | ||
164 | 164 | ||
165 | - | func ae () = "gamesPlayed" | |
165 | + | func ae (af,ag) = if ((ag == "A")) | |
166 | + | then (af + 1) | |
167 | + | else (af + 0) | |
166 | 168 | ||
167 | 169 | ||
168 | - | func af () = g(ae()) | |
170 | + | func ah (af,ag) = if ((ag == "B")) | |
171 | + | then (af + 1) | |
172 | + | else (af + 0) | |
169 | 173 | ||
170 | 174 | ||
171 | - | func | |
172 | - | then ( | |
173 | - | else ( | |
175 | + | func ai (af,ag) = if ((ag == "C")) | |
176 | + | then (af + 1) | |
177 | + | else (af + 0) | |
174 | 178 | ||
175 | 179 | ||
176 | - | func aj ( | |
177 | - | then ( | |
178 | - | else ( | |
180 | + | func aj (af,ag) = if ((ag == "D")) | |
181 | + | then (af + 1) | |
182 | + | else (af + 0) | |
179 | 183 | ||
180 | 184 | ||
181 | - | func ak ( | |
182 | - | then ( | |
183 | - | else ( | |
185 | + | func ak (af,ag) = if ((ag == "E")) | |
186 | + | then (af + 1) | |
187 | + | else (af + 0) | |
184 | 188 | ||
185 | 189 | ||
186 | - | func al ( | |
187 | - | then ( | |
188 | - | else ( | |
190 | + | func al (af,ag) = if ((ag == "F")) | |
191 | + | then (af + 1) | |
192 | + | else (af + 0) | |
189 | 193 | ||
190 | 194 | ||
191 | - | func am ( | |
192 | - | then ( | |
193 | - | else ( | |
195 | + | func am (af,ag) = if ((ag == "G")) | |
196 | + | then (af + 1) | |
197 | + | else (af + 0) | |
194 | 198 | ||
195 | 199 | ||
196 | - | func an ( | |
197 | - | then ( | |
198 | - | else ( | |
200 | + | func an (af,ag) = if ((ag == "H")) | |
201 | + | then (af + 1) | |
202 | + | else (af + 0) | |
199 | 203 | ||
200 | 204 | ||
201 | - | func ao ( | |
202 | - | then | |
203 | - | else | |
205 | + | func ao (ap) = if (contains(ap, "0")) | |
206 | + | then "" | |
207 | + | else ap | |
204 | 208 | ||
205 | 209 | ||
206 | - | func ap (ah,ai) = if ((ai == "H")) | |
207 | - | then (ah + 1) | |
208 | - | else (ah + 0) | |
209 | - | ||
210 | - | ||
211 | - | func aq (ar) = if (contains(ar, "0")) | |
212 | - | then "" | |
213 | - | else ar | |
214 | - | ||
215 | - | ||
216 | - | func as (at) = { | |
217 | - | let au = split(dropRight(drop(at, 5), 3), "") | |
218 | - | (((((((aq((toString({ | |
219 | - | let av = au | |
220 | - | let aw = size(av) | |
221 | - | let ax = 0 | |
222 | - | if ((aw == 0)) | |
223 | - | then ax | |
210 | + | func aq (ar) = { | |
211 | + | let as = split(dropRight(drop(ar, 5), 3), "") | |
212 | + | (((((((ao((toString({ | |
213 | + | let at = as | |
214 | + | let au = size(at) | |
215 | + | let av = 0 | |
216 | + | if ((au == 0)) | |
217 | + | then av | |
224 | 218 | else { | |
225 | - | let | |
226 | - | if (( | |
227 | - | then | |
219 | + | let aw = ae(av, at[0]) | |
220 | + | if ((au == 1)) | |
221 | + | then aw | |
228 | 222 | else { | |
229 | - | let | |
230 | - | if (( | |
231 | - | then | |
223 | + | let ax = ae(aw, at[1]) | |
224 | + | if ((au == 2)) | |
225 | + | then ax | |
232 | 226 | else { | |
233 | - | let | |
234 | - | if (( | |
235 | - | then | |
227 | + | let ay = ae(ax, at[2]) | |
228 | + | if ((au == 3)) | |
229 | + | then ay | |
236 | 230 | else { | |
237 | - | let | |
238 | - | if (( | |
239 | - | then | |
231 | + | let az = ae(ay, at[3]) | |
232 | + | if ((au == 4)) | |
233 | + | then az | |
240 | 234 | else { | |
241 | - | let | |
242 | - | if (( | |
243 | - | then | |
235 | + | let aA = ae(az, at[4]) | |
236 | + | if ((au == 5)) | |
237 | + | then aA | |
244 | 238 | else { | |
245 | - | let | |
246 | - | if (( | |
247 | - | then | |
239 | + | let aB = ae(aA, at[5]) | |
240 | + | if ((au == 6)) | |
241 | + | then aB | |
248 | 242 | else { | |
249 | - | let | |
250 | - | if (( | |
251 | - | then | |
243 | + | let aC = ae(aB, at[6]) | |
244 | + | if ((au == 7)) | |
245 | + | then aC | |
252 | 246 | else { | |
253 | - | let | |
254 | - | if (( | |
255 | - | then | |
247 | + | let aD = ae(aC, at[7]) | |
248 | + | if ((au == 8)) | |
249 | + | then aD | |
256 | 250 | else { | |
257 | - | let | |
251 | + | let aE = ae(aD, at[8]) | |
258 | 252 | throw("List size exceed 8") | |
259 | 253 | } | |
260 | 254 | } | |
265 | 259 | } | |
266 | 260 | } | |
267 | 261 | } | |
268 | - | }) + "A")) + | |
269 | - | let | |
270 | - | let | |
271 | - | let | |
272 | - | if (( | |
273 | - | then | |
262 | + | }) + "A")) + ao((toString({ | |
263 | + | let aF = as | |
264 | + | let aG = size(aF) | |
265 | + | let aH = 0 | |
266 | + | if ((aG == 0)) | |
267 | + | then aH | |
274 | 268 | else { | |
275 | - | let | |
276 | - | if (( | |
277 | - | then | |
269 | + | let aI = ah(aH, aF[0]) | |
270 | + | if ((aG == 1)) | |
271 | + | then aI | |
278 | 272 | else { | |
279 | - | let | |
280 | - | if (( | |
281 | - | then | |
273 | + | let aJ = ah(aI, aF[1]) | |
274 | + | if ((aG == 2)) | |
275 | + | then aJ | |
282 | 276 | else { | |
283 | - | let | |
284 | - | if (( | |
285 | - | then | |
277 | + | let aK = ah(aJ, aF[2]) | |
278 | + | if ((aG == 3)) | |
279 | + | then aK | |
286 | 280 | else { | |
287 | - | let | |
288 | - | if (( | |
289 | - | then | |
281 | + | let aL = ah(aK, aF[3]) | |
282 | + | if ((aG == 4)) | |
283 | + | then aL | |
290 | 284 | else { | |
291 | - | let | |
292 | - | if (( | |
293 | - | then | |
285 | + | let aM = ah(aL, aF[4]) | |
286 | + | if ((aG == 5)) | |
287 | + | then aM | |
294 | 288 | else { | |
295 | - | let | |
296 | - | if (( | |
297 | - | then | |
289 | + | let aN = ah(aM, aF[5]) | |
290 | + | if ((aG == 6)) | |
291 | + | then aN | |
298 | 292 | else { | |
299 | - | let | |
300 | - | if (( | |
301 | - | then | |
293 | + | let aO = ah(aN, aF[6]) | |
294 | + | if ((aG == 7)) | |
295 | + | then aO | |
302 | 296 | else { | |
303 | - | let | |
304 | - | if (( | |
305 | - | then | |
297 | + | let aP = ah(aO, aF[7]) | |
298 | + | if ((aG == 8)) | |
299 | + | then aP | |
306 | 300 | else { | |
307 | - | let | |
301 | + | let aQ = ah(aP, aF[8]) | |
308 | 302 | throw("List size exceed 8") | |
309 | 303 | } | |
310 | 304 | } | |
315 | 309 | } | |
316 | 310 | } | |
317 | 311 | } | |
318 | - | }) + "B"))) + | |
319 | - | let | |
320 | - | let | |
321 | - | let | |
322 | - | if (( | |
323 | - | then | |
312 | + | }) + "B"))) + ao((toString({ | |
313 | + | let aR = as | |
314 | + | let aS = size(aR) | |
315 | + | let aT = 0 | |
316 | + | if ((aS == 0)) | |
317 | + | then aT | |
324 | 318 | else { | |
325 | - | let | |
326 | - | if (( | |
327 | - | then | |
319 | + | let aU = ai(aT, aR[0]) | |
320 | + | if ((aS == 1)) | |
321 | + | then aU | |
328 | 322 | else { | |
329 | - | let | |
330 | - | if (( | |
331 | - | then | |
323 | + | let aV = ai(aU, aR[1]) | |
324 | + | if ((aS == 2)) | |
325 | + | then aV | |
332 | 326 | else { | |
333 | - | let | |
334 | - | if (( | |
335 | - | then | |
327 | + | let aW = ai(aV, aR[2]) | |
328 | + | if ((aS == 3)) | |
329 | + | then aW | |
336 | 330 | else { | |
337 | - | let | |
338 | - | if (( | |
339 | - | then | |
331 | + | let aX = ai(aW, aR[3]) | |
332 | + | if ((aS == 4)) | |
333 | + | then aX | |
340 | 334 | else { | |
341 | - | let | |
342 | - | if (( | |
343 | - | then | |
335 | + | let aY = ai(aX, aR[4]) | |
336 | + | if ((aS == 5)) | |
337 | + | then aY | |
344 | 338 | else { | |
345 | - | let | |
346 | - | if (( | |
347 | - | then | |
339 | + | let aZ = ai(aY, aR[5]) | |
340 | + | if ((aS == 6)) | |
341 | + | then aZ | |
348 | 342 | else { | |
349 | - | let | |
350 | - | if (( | |
351 | - | then | |
343 | + | let ba = ai(aZ, aR[6]) | |
344 | + | if ((aS == 7)) | |
345 | + | then ba | |
352 | 346 | else { | |
353 | - | let | |
354 | - | if (( | |
355 | - | then | |
347 | + | let bb = ai(ba, aR[7]) | |
348 | + | if ((aS == 8)) | |
349 | + | then bb | |
356 | 350 | else { | |
357 | - | let | |
351 | + | let bc = ai(bb, aR[8]) | |
358 | 352 | throw("List size exceed 8") | |
359 | 353 | } | |
360 | 354 | } | |
365 | 359 | } | |
366 | 360 | } | |
367 | 361 | } | |
368 | - | }) + "C"))) + | |
369 | - | let | |
370 | - | let | |
371 | - | let | |
372 | - | if (( | |
373 | - | then | |
362 | + | }) + "C"))) + ao((toString({ | |
363 | + | let bd = as | |
364 | + | let be = size(bd) | |
365 | + | let bf = 0 | |
366 | + | if ((be == 0)) | |
367 | + | then bf | |
374 | 368 | else { | |
375 | - | let | |
376 | - | if (( | |
377 | - | then | |
369 | + | let bg = aj(bf, bd[0]) | |
370 | + | if ((be == 1)) | |
371 | + | then bg | |
378 | 372 | else { | |
379 | - | let | |
380 | - | if (( | |
381 | - | then | |
373 | + | let bh = aj(bg, bd[1]) | |
374 | + | if ((be == 2)) | |
375 | + | then bh | |
382 | 376 | else { | |
383 | - | let | |
384 | - | if (( | |
385 | - | then | |
377 | + | let bi = aj(bh, bd[2]) | |
378 | + | if ((be == 3)) | |
379 | + | then bi | |
386 | 380 | else { | |
387 | - | let | |
388 | - | if (( | |
389 | - | then | |
381 | + | let bj = aj(bi, bd[3]) | |
382 | + | if ((be == 4)) | |
383 | + | then bj | |
390 | 384 | else { | |
391 | - | let | |
392 | - | if (( | |
393 | - | then | |
385 | + | let bk = aj(bj, bd[4]) | |
386 | + | if ((be == 5)) | |
387 | + | then bk | |
394 | 388 | else { | |
395 | - | let | |
396 | - | if (( | |
397 | - | then | |
389 | + | let bl = aj(bk, bd[5]) | |
390 | + | if ((be == 6)) | |
391 | + | then bl | |
398 | 392 | else { | |
399 | - | let | |
400 | - | if (( | |
401 | - | then | |
393 | + | let bm = aj(bl, bd[6]) | |
394 | + | if ((be == 7)) | |
395 | + | then bm | |
402 | 396 | else { | |
403 | - | let | |
404 | - | if (( | |
405 | - | then | |
397 | + | let bn = aj(bm, bd[7]) | |
398 | + | if ((be == 8)) | |
399 | + | then bn | |
406 | 400 | else { | |
407 | - | let | |
401 | + | let bo = aj(bn, bd[8]) | |
408 | 402 | throw("List size exceed 8") | |
409 | 403 | } | |
410 | 404 | } | |
415 | 409 | } | |
416 | 410 | } | |
417 | 411 | } | |
418 | - | }) + "D"))) + | |
419 | - | let | |
420 | - | let | |
421 | - | let | |
422 | - | if (( | |
423 | - | then | |
412 | + | }) + "D"))) + ao((toString({ | |
413 | + | let bp = as | |
414 | + | let bq = size(bp) | |
415 | + | let br = 0 | |
416 | + | if ((bq == 0)) | |
417 | + | then br | |
424 | 418 | else { | |
425 | - | let | |
426 | - | if (( | |
427 | - | then | |
419 | + | let bs = ak(br, bp[0]) | |
420 | + | if ((bq == 1)) | |
421 | + | then bs | |
428 | 422 | else { | |
429 | - | let | |
430 | - | if (( | |
431 | - | then | |
423 | + | let bt = ak(bs, bp[1]) | |
424 | + | if ((bq == 2)) | |
425 | + | then bt | |
432 | 426 | else { | |
433 | - | let | |
434 | - | if (( | |
435 | - | then | |
427 | + | let bu = ak(bt, bp[2]) | |
428 | + | if ((bq == 3)) | |
429 | + | then bu | |
436 | 430 | else { | |
437 | - | let | |
438 | - | if (( | |
439 | - | then | |
431 | + | let bv = ak(bu, bp[3]) | |
432 | + | if ((bq == 4)) | |
433 | + | then bv | |
440 | 434 | else { | |
441 | - | let | |
442 | - | if (( | |
443 | - | then | |
435 | + | let bw = ak(bv, bp[4]) | |
436 | + | if ((bq == 5)) | |
437 | + | then bw | |
444 | 438 | else { | |
445 | - | let | |
446 | - | if (( | |
447 | - | then | |
439 | + | let bx = ak(bw, bp[5]) | |
440 | + | if ((bq == 6)) | |
441 | + | then bx | |
448 | 442 | else { | |
449 | - | let | |
450 | - | if (( | |
451 | - | then | |
443 | + | let by = ak(bx, bp[6]) | |
444 | + | if ((bq == 7)) | |
445 | + | then by | |
452 | 446 | else { | |
453 | - | let | |
454 | - | if (( | |
455 | - | then | |
447 | + | let bz = ak(by, bp[7]) | |
448 | + | if ((bq == 8)) | |
449 | + | then bz | |
456 | 450 | else { | |
457 | - | let | |
451 | + | let bA = ak(bz, bp[8]) | |
458 | 452 | throw("List size exceed 8") | |
459 | 453 | } | |
460 | 454 | } | |
465 | 459 | } | |
466 | 460 | } | |
467 | 461 | } | |
468 | - | }) + "E"))) + | |
469 | - | let | |
470 | - | let | |
471 | - | let | |
472 | - | if (( | |
473 | - | then | |
462 | + | }) + "E"))) + ao((toString({ | |
463 | + | let bB = as | |
464 | + | let bC = size(bB) | |
465 | + | let bD = 0 | |
466 | + | if ((bC == 0)) | |
467 | + | then bD | |
474 | 468 | else { | |
475 | - | let | |
476 | - | if (( | |
477 | - | then | |
469 | + | let bE = al(bD, bB[0]) | |
470 | + | if ((bC == 1)) | |
471 | + | then bE | |
478 | 472 | else { | |
479 | - | let | |
480 | - | if (( | |
481 | - | then | |
473 | + | let bF = al(bE, bB[1]) | |
474 | + | if ((bC == 2)) | |
475 | + | then bF | |
482 | 476 | else { | |
483 | - | let | |
484 | - | if (( | |
485 | - | then | |
477 | + | let bG = al(bF, bB[2]) | |
478 | + | if ((bC == 3)) | |
479 | + | then bG | |
486 | 480 | else { | |
487 | - | let | |
488 | - | if (( | |
489 | - | then | |
481 | + | let bH = al(bG, bB[3]) | |
482 | + | if ((bC == 4)) | |
483 | + | then bH | |
490 | 484 | else { | |
491 | - | let | |
492 | - | if (( | |
493 | - | then | |
485 | + | let bI = al(bH, bB[4]) | |
486 | + | if ((bC == 5)) | |
487 | + | then bI | |
494 | 488 | else { | |
495 | - | let | |
496 | - | if (( | |
497 | - | then | |
489 | + | let bJ = al(bI, bB[5]) | |
490 | + | if ((bC == 6)) | |
491 | + | then bJ | |
498 | 492 | else { | |
499 | - | let | |
500 | - | if (( | |
501 | - | then | |
493 | + | let bK = al(bJ, bB[6]) | |
494 | + | if ((bC == 7)) | |
495 | + | then bK | |
502 | 496 | else { | |
503 | - | let | |
504 | - | if (( | |
505 | - | then | |
497 | + | let bL = al(bK, bB[7]) | |
498 | + | if ((bC == 8)) | |
499 | + | then bL | |
506 | 500 | else { | |
507 | - | let | |
501 | + | let bM = al(bL, bB[8]) | |
508 | 502 | throw("List size exceed 8") | |
509 | 503 | } | |
510 | 504 | } | |
515 | 509 | } | |
516 | 510 | } | |
517 | 511 | } | |
518 | - | }) + "F"))) + | |
519 | - | let | |
520 | - | let | |
521 | - | let | |
522 | - | if (( | |
523 | - | then | |
512 | + | }) + "F"))) + ao((toString({ | |
513 | + | let bN = as | |
514 | + | let bO = size(bN) | |
515 | + | let bP = 0 | |
516 | + | if ((bO == 0)) | |
517 | + | then bP | |
524 | 518 | else { | |
525 | - | let | |
526 | - | if (( | |
527 | - | then | |
519 | + | let bQ = am(bP, bN[0]) | |
520 | + | if ((bO == 1)) | |
521 | + | then bQ | |
528 | 522 | else { | |
529 | - | let | |
530 | - | if (( | |
531 | - | then | |
523 | + | let bR = am(bQ, bN[1]) | |
524 | + | if ((bO == 2)) | |
525 | + | then bR | |
532 | 526 | else { | |
533 | - | let | |
534 | - | if (( | |
535 | - | then | |
527 | + | let bS = am(bR, bN[2]) | |
528 | + | if ((bO == 3)) | |
529 | + | then bS | |
536 | 530 | else { | |
537 | - | let | |
538 | - | if (( | |
539 | - | then | |
531 | + | let bT = am(bS, bN[3]) | |
532 | + | if ((bO == 4)) | |
533 | + | then bT | |
540 | 534 | else { | |
541 | - | let | |
542 | - | if (( | |
543 | - | then | |
535 | + | let bU = am(bT, bN[4]) | |
536 | + | if ((bO == 5)) | |
537 | + | then bU | |
544 | 538 | else { | |
545 | - | let | |
546 | - | if (( | |
547 | - | then | |
539 | + | let bV = am(bU, bN[5]) | |
540 | + | if ((bO == 6)) | |
541 | + | then bV | |
548 | 542 | else { | |
549 | - | let | |
550 | - | if (( | |
551 | - | then | |
543 | + | let bW = am(bV, bN[6]) | |
544 | + | if ((bO == 7)) | |
545 | + | then bW | |
552 | 546 | else { | |
553 | - | let | |
554 | - | if (( | |
555 | - | then | |
547 | + | let bX = am(bW, bN[7]) | |
548 | + | if ((bO == 8)) | |
549 | + | then bX | |
556 | 550 | else { | |
557 | - | let | |
551 | + | let bY = am(bX, bN[8]) | |
558 | 552 | throw("List size exceed 8") | |
559 | 553 | } | |
560 | 554 | } | |
565 | 559 | } | |
566 | 560 | } | |
567 | 561 | } | |
568 | - | }) + "G"))) + | |
569 | - | let | |
570 | - | let | |
571 | - | let | |
572 | - | if (( | |
573 | - | then | |
562 | + | }) + "G"))) + ao((toString({ | |
563 | + | let bZ = as | |
564 | + | let ca = size(bZ) | |
565 | + | let cb = 0 | |
566 | + | if ((ca == 0)) | |
567 | + | then cb | |
574 | 568 | else { | |
575 | - | let | |
576 | - | if (( | |
577 | - | then | |
569 | + | let cc = an(cb, bZ[0]) | |
570 | + | if ((ca == 1)) | |
571 | + | then cc | |
578 | 572 | else { | |
579 | - | let | |
580 | - | if (( | |
581 | - | then | |
573 | + | let cd = an(cc, bZ[1]) | |
574 | + | if ((ca == 2)) | |
575 | + | then cd | |
582 | 576 | else { | |
583 | - | let | |
584 | - | if (( | |
585 | - | then | |
577 | + | let ce = an(cd, bZ[2]) | |
578 | + | if ((ca == 3)) | |
579 | + | then ce | |
586 | 580 | else { | |
587 | - | let | |
588 | - | if (( | |
589 | - | then | |
581 | + | let cf = an(ce, bZ[3]) | |
582 | + | if ((ca == 4)) | |
583 | + | then cf | |
590 | 584 | else { | |
591 | - | let | |
592 | - | if (( | |
593 | - | then | |
585 | + | let cg = an(cf, bZ[4]) | |
586 | + | if ((ca == 5)) | |
587 | + | then cg | |
594 | 588 | else { | |
595 | - | let | |
596 | - | if (( | |
597 | - | then | |
589 | + | let ch = an(cg, bZ[5]) | |
590 | + | if ((ca == 6)) | |
591 | + | then ch | |
598 | 592 | else { | |
599 | - | let | |
600 | - | if (( | |
601 | - | then | |
593 | + | let ci = an(ch, bZ[6]) | |
594 | + | if ((ca == 7)) | |
595 | + | then ci | |
602 | 596 | else { | |
603 | - | let | |
604 | - | if (( | |
605 | - | then | |
597 | + | let cj = an(ci, bZ[7]) | |
598 | + | if ((ca == 8)) | |
599 | + | then cj | |
606 | 600 | else { | |
607 | - | let | |
601 | + | let ck = an(cj, bZ[8]) | |
608 | 602 | throw("List size exceed 8") | |
609 | 603 | } | |
610 | 604 | } | |
619 | 613 | } | |
620 | 614 | ||
621 | 615 | ||
622 | - | func | |
616 | + | func cl (cm) = if ((cm == "G")) | |
623 | 617 | then a | |
624 | 618 | else b | |
625 | 619 | ||
626 | 620 | ||
627 | - | func | |
621 | + | func cn (co) = if (if ((value(assetInfo(co)).issuer == Address(b))) | |
628 | 622 | then true | |
629 | - | else (value(assetInfo( | |
623 | + | else (value(assetInfo(co)).issuer == Address(a))) | |
630 | 624 | then { | |
631 | - | let | |
632 | - | let | |
633 | - | let | |
634 | - | let | |
635 | - | let | |
636 | - | if (( | |
637 | - | then | |
625 | + | let ar = value(assetInfo(co)).name | |
626 | + | let cm = take(takeRight(ar, 2), 1) | |
627 | + | let cp = ((aq(ar) + "-") + cm) | |
628 | + | let cq = getIntegerValue(Address(cl(cm)), (("stats_" + cp) + "_quantity")) | |
629 | + | let cr = pow((10000 / cq), 4, 5, 1, 2, FLOOR) | |
630 | + | if ((cr > 0)) | |
631 | + | then cr | |
638 | 632 | else 2 | |
639 | 633 | } | |
640 | 634 | else throw("not valid NFT") | |
641 | 635 | ||
642 | 636 | ||
643 | - | func | |
637 | + | func cs (l,j) = if ((l > j)) | |
644 | 638 | then 1 | |
645 | 639 | else if ((j > l)) | |
646 | 640 | then -1 | |
647 | 641 | else 0 | |
648 | 642 | ||
649 | 643 | ||
650 | - | func | |
651 | - | let | |
652 | - | if ((6 > | |
644 | + | func ct (w) = { | |
645 | + | let cu = M(w) | |
646 | + | if ((6 > cu)) | |
653 | 647 | then { | |
654 | - | let | |
655 | - | if (( | |
648 | + | let cv = H(w) | |
649 | + | if ((cv == 0)) | |
656 | 650 | then throw("Game is not started") | |
657 | - | else if (( | |
651 | + | else if ((cv > height)) | |
658 | 652 | then throw("Game is not finished or expired") | |
659 | 653 | else if (((M(w) % 2) == 0)) | |
660 | 654 | then "maker" | |
661 | 655 | else "taker" | |
662 | 656 | } | |
663 | 657 | else { | |
664 | - | let | |
665 | - | let | |
666 | - | let | |
667 | - | let | |
668 | - | let | |
669 | - | let | |
670 | - | let | |
671 | - | let | |
672 | - | let | |
673 | - | if (( | |
658 | + | let cw = split(V(w, "maker"), ",") | |
659 | + | let cx = split(V(w, "taker"), ",") | |
660 | + | let cy = P(w, "maker", cw[0]) | |
661 | + | let cz = P(w, "maker", cw[1]) | |
662 | + | let cA = P(w, "maker", cw[2]) | |
663 | + | let cB = P(w, "taker", cx[0]) | |
664 | + | let cC = P(w, "taker", cx[1]) | |
665 | + | let cD = P(w, "taker", cx[2]) | |
666 | + | let cE = ((cs(cy, cB) + cs(cz, cC)) + cs(cA, cD)) | |
667 | + | if ((cE > 0)) | |
674 | 668 | then "maker" | |
675 | - | else if ((0 > | |
669 | + | else if ((0 > cE)) | |
676 | 670 | then "taker" | |
677 | 671 | else "draw" | |
678 | 672 | } | |
679 | 673 | } | |
680 | 674 | ||
681 | 675 | ||
682 | - | @Callable( | |
683 | - | func makeGame (t,cI | |
684 | - | let | |
685 | - | let | |
686 | - | let | |
687 | - | let | |
676 | + | @Callable(cF) | |
677 | + | func makeGame (t,cG,cH,cI) = { | |
678 | + | let cJ = toBase58String(cF.caller.bytes) | |
679 | + | let cK = u(t) | |
680 | + | let cL = value(cF.payments[0]) | |
681 | + | let cM = cL.amount | |
688 | 682 | let w = n() | |
689 | - | if ((r( | |
683 | + | if ((r(cJ) != 0)) | |
690 | 684 | then throw("You already have an active game") | |
691 | 685 | else if (if ((0 > t)) | |
692 | 686 | then true | |
693 | 687 | else (t >= d)) | |
694 | 688 | then throw("Invalid slot") | |
695 | - | else if (( | |
689 | + | else if ((cK != 0)) | |
696 | 690 | then throw("This slot is busy") | |
697 | - | else if (( | |
691 | + | else if ((cL.assetId != c)) | |
698 | 692 | then throw(("You can attach only EGGs with the following asset id: " + toBase58String(c))) | |
699 | - | else if (( | |
693 | + | else if ((cM != 1)) | |
700 | 694 | then throw("Bet must be 0.01 EGG during beta test") | |
701 | - | else if (if ((1 > | |
695 | + | else if (if ((1 > cG)) | |
702 | 696 | then true | |
703 | - | else ( | |
697 | + | else (cG > 5)) | |
704 | 698 | then throw("Invalid rarity range for the worst duck") | |
705 | - | else if (if ((1 > | |
699 | + | else if (if ((1 > cH)) | |
706 | 700 | then true | |
707 | - | else ( | |
701 | + | else (cH > 5)) | |
708 | 702 | then throw("Invalid rarity range for the medium duck") | |
709 | - | else if (if ((1 > | |
703 | + | else if (if ((1 > cI)) | |
710 | 704 | then true | |
711 | - | else ( | |
705 | + | else (cI > 5)) | |
712 | 706 | then throw("Invalid rarity range for the best duck") | |
713 | - | else if (( | |
707 | + | else if ((cG >= cH)) | |
714 | 708 | then throw("The medium duck must be better than the worst one") | |
715 | - | else if (( | |
709 | + | else if ((cH >= cI)) | |
716 | 710 | then throw("The best duck must be better than the medium one") | |
717 | - | else [IntegerEntry(p( | |
711 | + | else [IntegerEntry(p(cJ), w), StringEntry(y(w), cJ), StringEntry(v(w, cJ), "maker"), IntegerEntry(C(w), cM), IntegerEntry(I(w, "worst"), cG), IntegerEntry(I(w, "medium"), cH), IntegerEntry(I(w, "best"), cI), IntegerEntry(E(w), (height + e)), IntegerEntry(s(t), w), IntegerEntry("nextGameId", (w + 1))] | |
718 | 712 | } | |
719 | 713 | ||
720 | 714 | ||
721 | 715 | ||
722 | - | @Callable( | |
716 | + | @Callable(cF) | |
723 | 717 | func takeGame (t) = { | |
724 | - | let | |
718 | + | let cJ = toBase58String(cF.caller.bytes) | |
725 | 719 | let w = u(t) | |
726 | - | let | |
727 | - | if ((r( | |
720 | + | let cL = value(cF.payments[0]) | |
721 | + | if ((r(cJ) != 0)) | |
728 | 722 | then throw("You already have an active game") | |
729 | 723 | else if (if ((0 > t)) | |
730 | 724 | then true | |
732 | 726 | then throw("Invalid slot") | |
733 | 727 | else if ((u(t) == 0)) | |
734 | 728 | then throw("This slot is empty") | |
735 | - | else if (( | |
729 | + | else if ((cL.assetId != c)) | |
736 | 730 | then throw(("You can attach only EGG tokens with the following asset id: " + toBase58String(c))) | |
737 | - | else if (( | |
731 | + | else if ((cL.amount != D(w))) | |
738 | 732 | then throw("Insufficient eggs amount") | |
739 | 733 | else if ((height >= F(w))) | |
740 | 734 | then throw("This game is expired") | |
741 | - | else [IntegerEntry(p( | |
735 | + | else [IntegerEntry(p(cJ), w), StringEntry(A(w), cJ), StringEntry(v(w, cJ), "taker"), IntegerEntry(L(w), 0), IntegerEntry(G(w), (height + f)), IntegerEntry(s(t), 0), IntegerEntry("gamesPlayed", (ad() + 1))] | |
742 | 736 | } | |
743 | 737 | ||
744 | 738 | ||
745 | 739 | ||
746 | - | @Callable( | |
740 | + | @Callable(cF) | |
747 | 741 | func kickGame (t) = { | |
748 | 742 | let w = u(t) | |
749 | 743 | if (if ((0 > t)) | |
755 | 749 | else if ((F(w) > height)) | |
756 | 750 | then throw("Waiting is not finished yet") | |
757 | 751 | else { | |
758 | - | let | |
759 | - | [IntegerEntry(p( | |
752 | + | let cN = z(w) | |
753 | + | [IntegerEntry(p(cN), 0), IntegerEntry(s(t), 0), ScriptTransfer(Address(fromBase58String(cN)), D(w), c)] | |
760 | 754 | } | |
761 | 755 | } | |
762 | 756 | ||
763 | 757 | ||
764 | 758 | ||
765 | - | @Callable( | |
759 | + | @Callable(cF) | |
766 | 760 | func pickDucks () = { | |
767 | - | let | |
768 | - | let w = r( | |
769 | - | let O = x(w, | |
770 | - | let | |
771 | - | let | |
772 | - | let | |
773 | - | let | |
774 | - | let | |
775 | - | let | |
776 | - | let | |
777 | - | let | |
778 | - | let | |
779 | - | let | |
761 | + | let cJ = toBase58String(cF.caller.bytes) | |
762 | + | let w = r(cJ) | |
763 | + | let O = x(w, cJ) | |
764 | + | let cu = M(w) | |
765 | + | let cO = K(w, "worst") | |
766 | + | let cP = K(w, "medium") | |
767 | + | let cQ = K(w, "best") | |
768 | + | let cR = value(value(cF.payments[0]).assetId) | |
769 | + | let cS = value(value(cF.payments[1]).assetId) | |
770 | + | let cT = value(value(cF.payments[2]).assetId) | |
771 | + | let cU = cn(cR) | |
772 | + | let cV = cn(cS) | |
773 | + | let cW = cn(cT) | |
780 | 774 | if ((w == 0)) | |
781 | 775 | then throw("You don't have an active game") | |
782 | 776 | else if ((H(w) == 0)) | |
783 | 777 | then throw("Game is not started") | |
784 | - | else if (if (( | |
778 | + | else if (if ((cu == 0)) | |
785 | 779 | then (O != "taker") | |
786 | 780 | else false) | |
787 | 781 | then throw("It is the taker's turn to pick now") | |
788 | - | else if (if (( | |
782 | + | else if (if ((cu == 1)) | |
789 | 783 | then (O != "maker") | |
790 | 784 | else false) | |
791 | 785 | then throw("It is the maker's turn to pick now") | |
792 | - | else if (( | |
786 | + | else if ((cu > 1)) | |
793 | 787 | then throw("Ducks have already been picked") | |
794 | - | else if (if (( | |
788 | + | else if (if ((cU > (cO * 10))) | |
795 | 789 | then true | |
796 | - | else ((( | |
790 | + | else (((cO - 1) * 10) >= cU)) | |
797 | 791 | then throw("Worst duck doesn't fit rarity range") | |
798 | - | else if (if (( | |
792 | + | else if (if ((cV > (cP * 10))) | |
799 | 793 | then true | |
800 | - | else ((( | |
794 | + | else (((cP - 1) * 10) >= cV)) | |
801 | 795 | then throw("Medium duck doesn't fit rarity range") | |
802 | - | else if (if (if (if (( | |
803 | - | then (40 >= | |
796 | + | else if (if (if (if ((cQ == 5)) | |
797 | + | then (40 >= cW) | |
804 | 798 | else false) | |
805 | 799 | then true | |
806 | - | else ( | |
800 | + | else (cW > (cQ * 10))) | |
807 | 801 | then true | |
808 | - | else ((( | |
802 | + | else (((cQ - 1) * 10) >= cW)) | |
809 | 803 | then throw("Best duck doesn't fit rarity range") | |
810 | - | else [IntegerEntry(N(w, O, "worst"), | |
804 | + | else [IntegerEntry(N(w, O, "worst"), cU), IntegerEntry(N(w, O, "medium"), cV), IntegerEntry(N(w, O, "best"), cW), StringEntry(Q(w, O, "worst"), toBase58String(cR)), StringEntry(Q(w, O, "medium"), toBase58String(cS)), StringEntry(Q(w, O, "best"), toBase58String(cT)), IntegerEntry(L(w), (cu + 1)), IntegerEntry(G(w), (height + f)), ScriptTransfer(cF.caller, 1, cR), ScriptTransfer(cF.caller, 1, cS), ScriptTransfer(cF.caller, 1, cT)] | |
811 | 805 | } | |
812 | 806 | ||
813 | 807 | ||
814 | 808 | ||
815 | - | @Callable( | |
816 | - | func commit ( | |
817 | - | let | |
818 | - | let w = r( | |
819 | - | let O = x(w, | |
820 | - | let | |
809 | + | @Callable(cF) | |
810 | + | func commit (cX) = { | |
811 | + | let cJ = toBase58String(cF.caller.bytes) | |
812 | + | let w = r(cJ) | |
813 | + | let O = x(w, cJ) | |
814 | + | let cu = M(w) | |
821 | 815 | if ((w == 0)) | |
822 | 816 | then throw("You don't have an active game") | |
823 | - | else if ((2 > | |
817 | + | else if ((2 > cu)) | |
824 | 818 | then throw("Commit is not started") | |
825 | - | else if (if (( | |
819 | + | else if (if ((cu == 2)) | |
826 | 820 | then (O != "taker") | |
827 | 821 | else false) | |
828 | 822 | then throw("It is the taker's turn to pick now") | |
829 | - | else if (if (( | |
823 | + | else if (if ((cu == 3)) | |
830 | 824 | then (O != "maker") | |
831 | 825 | else false) | |
832 | 826 | then throw("It is the maker's turn to pick now") | |
833 | - | else if (( | |
827 | + | else if ((cu > 3)) | |
834 | 828 | then throw("Commit is finished") | |
835 | - | else [StringEntry(S(w, O), | |
829 | + | else [StringEntry(S(w, O), cX), IntegerEntry(L(w), (cu + 1)), IntegerEntry(G(w), (height + f))] | |
836 | 830 | } | |
837 | 831 | ||
838 | 832 | ||
839 | 833 | ||
840 | - | @Callable( | |
841 | - | func reveal ( | |
842 | - | let | |
843 | - | let w = r( | |
844 | - | let O = x(w, | |
845 | - | let | |
834 | + | @Callable(cF) | |
835 | + | func reveal (cY,cZ) = { | |
836 | + | let cJ = toBase58String(cF.caller.bytes) | |
837 | + | let w = r(cJ) | |
838 | + | let O = x(w, cJ) | |
839 | + | let cu = M(w) | |
846 | 840 | if ((w == 0)) | |
847 | 841 | then throw("You don't have an active game") | |
848 | - | else if ((4 > | |
842 | + | else if ((4 > cu)) | |
849 | 843 | then throw("Reveal is not started") | |
850 | - | else if (if (( | |
844 | + | else if (if ((cu == 4)) | |
851 | 845 | then (O != "taker") | |
852 | 846 | else false) | |
853 | 847 | then throw("It is the taker's turn to pick now") | |
854 | - | else if (if (( | |
848 | + | else if (if ((cu == 5)) | |
855 | 849 | then (O != "maker") | |
856 | 850 | else false) | |
857 | 851 | then throw("It is the maker's turn to pick now") | |
858 | - | else if (( | |
852 | + | else if ((cu > 5)) | |
859 | 853 | then throw("Reveal is finished") | |
860 | - | else if (if (if (if (if (if (( | |
861 | - | then ( | |
854 | + | else if (if (if (if (if (if ((cY != "worst,medium,best")) | |
855 | + | then (cY != "worst,best,medium") | |
862 | 856 | else false) | |
863 | - | then ( | |
857 | + | then (cY != "medium,worst,best") | |
864 | 858 | else false) | |
865 | - | then ( | |
859 | + | then (cY != "medium,best,worst") | |
866 | 860 | else false) | |
867 | - | then ( | |
861 | + | then (cY != "best,worst,medium") | |
868 | 862 | else false) | |
869 | - | then ( | |
863 | + | then (cY != "best,medium,worst") | |
870 | 864 | else false) | |
871 | 865 | then throw("Reveal data is not valid") | |
872 | - | else if ((toBase58String(sha256(toBytes(( | |
866 | + | else if ((toBase58String(sha256(toBytes((cY + cZ)))) != T(w, O))) | |
873 | 867 | then throw("Reveal doesn't match commit") | |
874 | - | else [StringEntry(U(w, O), | |
868 | + | else [StringEntry(U(w, O), cY), IntegerEntry(L(w), (cu + 1)), IntegerEntry(G(w), (height + f))] | |
875 | 869 | } | |
876 | 870 | ||
877 | 871 | ||
878 | 872 | ||
879 | - | @Callable( | |
873 | + | @Callable(cF) | |
880 | 874 | func getPrize () = { | |
881 | - | let cL = toBase58String(cH.caller.bytes) | |
882 | - | let w = r(cL) | |
883 | - | let O = x(w, cL) | |
884 | - | let dc = z(w) | |
885 | - | let dd = B(w) | |
886 | - | let de = cv(w) | |
875 | + | let cJ = toBase58String(cF.caller.bytes) | |
876 | + | let w = r(cJ) | |
877 | + | let O = x(w, cJ) | |
878 | + | let da = if ((O == "maker")) | |
879 | + | then B(w) | |
880 | + | else z(w) | |
881 | + | let db = ct(w) | |
887 | 882 | if ((w == 0)) | |
888 | 883 | then throw("You don't have an active game") | |
889 | - | else if (X(w, O)) | |
890 | - | then throw("You have already got the prize") | |
891 | - | else if ((de == O)) | |
892 | - | then [IntegerEntry(p(cL), 0), BooleanEntry(W(w, O), true), IntegerEntry(Y(cL), (Z(cL) + 1)), ScriptTransfer(cH.caller, (D(w) * 2), c)] | |
893 | - | else if ((de == "draw")) | |
894 | - | then [IntegerEntry(p(cL), 0), BooleanEntry(W(w, O), true), IntegerEntry(ac(cL), (ad(cL) + 1)), ScriptTransfer(cH.caller, D(w), c)] | |
895 | - | else [IntegerEntry(p(cL), 0), IntegerEntry(aa(cL), (ab(cL) + 1)), BooleanEntry(W(w, O), true)] | |
884 | + | else if ((db == O)) | |
885 | + | then [IntegerEntry(p(cJ), 0), IntegerEntry(p(da), 0), IntegerEntry(W(cJ), (X(cJ) + 1)), IntegerEntry(Y(da), (Z(da) + 1)), ScriptTransfer(cF.caller, (D(w) * 2), c)] | |
886 | + | else if ((db == "draw")) | |
887 | + | then [IntegerEntry(p(cJ), 0), IntegerEntry(aa(cJ), (ab(cJ) + 1)), ScriptTransfer(cF.caller, D(w), c)] | |
888 | + | else [IntegerEntry(p(cJ), 0)] | |
896 | 889 | } | |
897 | 890 | ||
898 | 891 | ||
899 | - | @Verifier( | |
900 | - | func | |
892 | + | @Verifier(dc) | |
893 | + | func dd () = sigVerify(dc.bodyBytes, dc.proofs[0], dc.senderPublicKey) | |
901 | 894 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = base58'3MtBigTsaeevrcJAEwVcr4quwkqcrtnjoAh' | |
5 | 5 | ||
6 | 6 | let b = base58'3N285kYUMxPi6oZsdWrxhSY34dJHyu4kRN5' | |
7 | 7 | ||
8 | 8 | let c = base58'3VUCuh9dWqe54SdzzNUkXhFXpc8UQynnJVh42B7MjNzN' | |
9 | 9 | ||
10 | 10 | let d = 10 | |
11 | 11 | ||
12 | 12 | let e = 8 | |
13 | 13 | ||
14 | 14 | let f = 5 | |
15 | 15 | ||
16 | 16 | func g (h) = { | |
17 | 17 | let i = getInteger(this, h) | |
18 | 18 | if ($isInstanceOf(i, "Int")) | |
19 | 19 | then { | |
20 | 20 | let j = i | |
21 | 21 | j | |
22 | 22 | } | |
23 | 23 | else 0 | |
24 | 24 | } | |
25 | 25 | ||
26 | 26 | ||
27 | 27 | func k (h) = { | |
28 | 28 | let i = getString(this, h) | |
29 | 29 | if ($isInstanceOf(i, "String")) | |
30 | 30 | then { | |
31 | 31 | let l = i | |
32 | 32 | l | |
33 | 33 | } | |
34 | 34 | else "" | |
35 | 35 | } | |
36 | 36 | ||
37 | 37 | ||
38 | 38 | func m (h) = { | |
39 | 39 | let i = getBoolean(this, h) | |
40 | 40 | if ($isInstanceOf(i, "Boolean")) | |
41 | 41 | then { | |
42 | 42 | let j = i | |
43 | 43 | j | |
44 | 44 | } | |
45 | 45 | else false | |
46 | 46 | } | |
47 | 47 | ||
48 | 48 | ||
49 | 49 | func n () = { | |
50 | 50 | let o = g("nextGameId") | |
51 | 51 | if ((o == 0)) | |
52 | 52 | then 1 | |
53 | 53 | else o | |
54 | 54 | } | |
55 | 55 | ||
56 | 56 | ||
57 | 57 | func p (q) = (q + "_currentGame") | |
58 | 58 | ||
59 | 59 | ||
60 | 60 | func r (q) = g(p(q)) | |
61 | 61 | ||
62 | 62 | ||
63 | 63 | func s (t) = ("slot" + toString(t)) | |
64 | 64 | ||
65 | 65 | ||
66 | 66 | func u (t) = g(s(t)) | |
67 | 67 | ||
68 | 68 | ||
69 | 69 | func v (w,q) = ((("game" + toString(w)) + "_") + q) | |
70 | 70 | ||
71 | 71 | ||
72 | 72 | func x (w,q) = k(v(w, q)) | |
73 | 73 | ||
74 | 74 | ||
75 | 75 | func y (w) = (("game" + toString(w)) + "_maker") | |
76 | 76 | ||
77 | 77 | ||
78 | 78 | func z (w) = k(y(w)) | |
79 | 79 | ||
80 | 80 | ||
81 | 81 | func A (w) = (("game" + toString(w)) + "_taker") | |
82 | 82 | ||
83 | 83 | ||
84 | 84 | func B (w) = k(A(w)) | |
85 | 85 | ||
86 | 86 | ||
87 | 87 | func C (w) = (("game" + toString(w)) + "_betEggs") | |
88 | 88 | ||
89 | 89 | ||
90 | 90 | func D (w) = g(C(w)) | |
91 | 91 | ||
92 | 92 | ||
93 | 93 | func E (w) = (("game" + toString(w)) + "_waitingExpirationHeight") | |
94 | 94 | ||
95 | 95 | ||
96 | 96 | func F (w) = g(E(w)) | |
97 | 97 | ||
98 | 98 | ||
99 | 99 | func G (w) = (("game" + toString(w)) + "_expirationHeight") | |
100 | 100 | ||
101 | 101 | ||
102 | 102 | func H (w) = g(G(w)) | |
103 | 103 | ||
104 | 104 | ||
105 | 105 | func I (w,J) = ((("game" + toString(w)) + "_rarityRange_") + J) | |
106 | 106 | ||
107 | 107 | ||
108 | 108 | func K (w,J) = g(I(w, J)) | |
109 | 109 | ||
110 | 110 | ||
111 | 111 | func L (w) = (("game" + toString(w)) + "_step") | |
112 | 112 | ||
113 | 113 | ||
114 | 114 | func M (w) = g(L(w)) | |
115 | 115 | ||
116 | 116 | ||
117 | 117 | func N (w,O,J) = (((((("game" + toString(w)) + "_") + O) + "_") + J) + "Rarity") | |
118 | 118 | ||
119 | 119 | ||
120 | 120 | func P (w,O,J) = g(N(w, O, J)) | |
121 | 121 | ||
122 | 122 | ||
123 | 123 | func Q (w,O,J) = (((((("game" + toString(w)) + "_") + O) + "_") + J) + "DuckId") | |
124 | 124 | ||
125 | 125 | ||
126 | 126 | func R (w,O,J) = k(Q(w, O, J)) | |
127 | 127 | ||
128 | 128 | ||
129 | 129 | func S (w,O) = (((("game" + toString(w)) + "_") + O) + "_commit") | |
130 | 130 | ||
131 | 131 | ||
132 | 132 | func T (w,O) = k(S(w, O)) | |
133 | 133 | ||
134 | 134 | ||
135 | 135 | func U (w,O) = (((("game" + toString(w)) + "_") + O) + "_duckOrder") | |
136 | 136 | ||
137 | 137 | ||
138 | 138 | func V (w,O) = k(U(w, O)) | |
139 | 139 | ||
140 | 140 | ||
141 | - | func W ( | |
141 | + | func W (q) = (q + "_wins") | |
142 | 142 | ||
143 | 143 | ||
144 | - | func X ( | |
144 | + | func X (q) = g(W(q)) | |
145 | 145 | ||
146 | 146 | ||
147 | - | func Y (q) = (q + "_ | |
147 | + | func Y (q) = (q + "_loses") | |
148 | 148 | ||
149 | 149 | ||
150 | 150 | func Z (q) = g(Y(q)) | |
151 | 151 | ||
152 | 152 | ||
153 | - | func aa (q) = (q + "_ | |
153 | + | func aa (q) = (q + "_draws") | |
154 | 154 | ||
155 | 155 | ||
156 | 156 | func ab (q) = g(aa(q)) | |
157 | 157 | ||
158 | 158 | ||
159 | - | func ac ( | |
159 | + | func ac () = "gamesPlayed" | |
160 | 160 | ||
161 | 161 | ||
162 | - | func ad ( | |
162 | + | func ad () = g(ac()) | |
163 | 163 | ||
164 | 164 | ||
165 | - | func ae () = "gamesPlayed" | |
165 | + | func ae (af,ag) = if ((ag == "A")) | |
166 | + | then (af + 1) | |
167 | + | else (af + 0) | |
166 | 168 | ||
167 | 169 | ||
168 | - | func af () = g(ae()) | |
170 | + | func ah (af,ag) = if ((ag == "B")) | |
171 | + | then (af + 1) | |
172 | + | else (af + 0) | |
169 | 173 | ||
170 | 174 | ||
171 | - | func | |
172 | - | then ( | |
173 | - | else ( | |
175 | + | func ai (af,ag) = if ((ag == "C")) | |
176 | + | then (af + 1) | |
177 | + | else (af + 0) | |
174 | 178 | ||
175 | 179 | ||
176 | - | func aj ( | |
177 | - | then ( | |
178 | - | else ( | |
180 | + | func aj (af,ag) = if ((ag == "D")) | |
181 | + | then (af + 1) | |
182 | + | else (af + 0) | |
179 | 183 | ||
180 | 184 | ||
181 | - | func ak ( | |
182 | - | then ( | |
183 | - | else ( | |
185 | + | func ak (af,ag) = if ((ag == "E")) | |
186 | + | then (af + 1) | |
187 | + | else (af + 0) | |
184 | 188 | ||
185 | 189 | ||
186 | - | func al ( | |
187 | - | then ( | |
188 | - | else ( | |
190 | + | func al (af,ag) = if ((ag == "F")) | |
191 | + | then (af + 1) | |
192 | + | else (af + 0) | |
189 | 193 | ||
190 | 194 | ||
191 | - | func am ( | |
192 | - | then ( | |
193 | - | else ( | |
195 | + | func am (af,ag) = if ((ag == "G")) | |
196 | + | then (af + 1) | |
197 | + | else (af + 0) | |
194 | 198 | ||
195 | 199 | ||
196 | - | func an ( | |
197 | - | then ( | |
198 | - | else ( | |
200 | + | func an (af,ag) = if ((ag == "H")) | |
201 | + | then (af + 1) | |
202 | + | else (af + 0) | |
199 | 203 | ||
200 | 204 | ||
201 | - | func ao ( | |
202 | - | then | |
203 | - | else | |
205 | + | func ao (ap) = if (contains(ap, "0")) | |
206 | + | then "" | |
207 | + | else ap | |
204 | 208 | ||
205 | 209 | ||
206 | - | func ap (ah,ai) = if ((ai == "H")) | |
207 | - | then (ah + 1) | |
208 | - | else (ah + 0) | |
209 | - | ||
210 | - | ||
211 | - | func aq (ar) = if (contains(ar, "0")) | |
212 | - | then "" | |
213 | - | else ar | |
214 | - | ||
215 | - | ||
216 | - | func as (at) = { | |
217 | - | let au = split(dropRight(drop(at, 5), 3), "") | |
218 | - | (((((((aq((toString({ | |
219 | - | let av = au | |
220 | - | let aw = size(av) | |
221 | - | let ax = 0 | |
222 | - | if ((aw == 0)) | |
223 | - | then ax | |
210 | + | func aq (ar) = { | |
211 | + | let as = split(dropRight(drop(ar, 5), 3), "") | |
212 | + | (((((((ao((toString({ | |
213 | + | let at = as | |
214 | + | let au = size(at) | |
215 | + | let av = 0 | |
216 | + | if ((au == 0)) | |
217 | + | then av | |
224 | 218 | else { | |
225 | - | let | |
226 | - | if (( | |
227 | - | then | |
219 | + | let aw = ae(av, at[0]) | |
220 | + | if ((au == 1)) | |
221 | + | then aw | |
228 | 222 | else { | |
229 | - | let | |
230 | - | if (( | |
231 | - | then | |
223 | + | let ax = ae(aw, at[1]) | |
224 | + | if ((au == 2)) | |
225 | + | then ax | |
232 | 226 | else { | |
233 | - | let | |
234 | - | if (( | |
235 | - | then | |
227 | + | let ay = ae(ax, at[2]) | |
228 | + | if ((au == 3)) | |
229 | + | then ay | |
236 | 230 | else { | |
237 | - | let | |
238 | - | if (( | |
239 | - | then | |
231 | + | let az = ae(ay, at[3]) | |
232 | + | if ((au == 4)) | |
233 | + | then az | |
240 | 234 | else { | |
241 | - | let | |
242 | - | if (( | |
243 | - | then | |
235 | + | let aA = ae(az, at[4]) | |
236 | + | if ((au == 5)) | |
237 | + | then aA | |
244 | 238 | else { | |
245 | - | let | |
246 | - | if (( | |
247 | - | then | |
239 | + | let aB = ae(aA, at[5]) | |
240 | + | if ((au == 6)) | |
241 | + | then aB | |
248 | 242 | else { | |
249 | - | let | |
250 | - | if (( | |
251 | - | then | |
243 | + | let aC = ae(aB, at[6]) | |
244 | + | if ((au == 7)) | |
245 | + | then aC | |
252 | 246 | else { | |
253 | - | let | |
254 | - | if (( | |
255 | - | then | |
247 | + | let aD = ae(aC, at[7]) | |
248 | + | if ((au == 8)) | |
249 | + | then aD | |
256 | 250 | else { | |
257 | - | let | |
251 | + | let aE = ae(aD, at[8]) | |
258 | 252 | throw("List size exceed 8") | |
259 | 253 | } | |
260 | 254 | } | |
261 | 255 | } | |
262 | 256 | } | |
263 | 257 | } | |
264 | 258 | } | |
265 | 259 | } | |
266 | 260 | } | |
267 | 261 | } | |
268 | - | }) + "A")) + | |
269 | - | let | |
270 | - | let | |
271 | - | let | |
272 | - | if (( | |
273 | - | then | |
262 | + | }) + "A")) + ao((toString({ | |
263 | + | let aF = as | |
264 | + | let aG = size(aF) | |
265 | + | let aH = 0 | |
266 | + | if ((aG == 0)) | |
267 | + | then aH | |
274 | 268 | else { | |
275 | - | let | |
276 | - | if (( | |
277 | - | then | |
269 | + | let aI = ah(aH, aF[0]) | |
270 | + | if ((aG == 1)) | |
271 | + | then aI | |
278 | 272 | else { | |
279 | - | let | |
280 | - | if (( | |
281 | - | then | |
273 | + | let aJ = ah(aI, aF[1]) | |
274 | + | if ((aG == 2)) | |
275 | + | then aJ | |
282 | 276 | else { | |
283 | - | let | |
284 | - | if (( | |
285 | - | then | |
277 | + | let aK = ah(aJ, aF[2]) | |
278 | + | if ((aG == 3)) | |
279 | + | then aK | |
286 | 280 | else { | |
287 | - | let | |
288 | - | if (( | |
289 | - | then | |
281 | + | let aL = ah(aK, aF[3]) | |
282 | + | if ((aG == 4)) | |
283 | + | then aL | |
290 | 284 | else { | |
291 | - | let | |
292 | - | if (( | |
293 | - | then | |
285 | + | let aM = ah(aL, aF[4]) | |
286 | + | if ((aG == 5)) | |
287 | + | then aM | |
294 | 288 | else { | |
295 | - | let | |
296 | - | if (( | |
297 | - | then | |
289 | + | let aN = ah(aM, aF[5]) | |
290 | + | if ((aG == 6)) | |
291 | + | then aN | |
298 | 292 | else { | |
299 | - | let | |
300 | - | if (( | |
301 | - | then | |
293 | + | let aO = ah(aN, aF[6]) | |
294 | + | if ((aG == 7)) | |
295 | + | then aO | |
302 | 296 | else { | |
303 | - | let | |
304 | - | if (( | |
305 | - | then | |
297 | + | let aP = ah(aO, aF[7]) | |
298 | + | if ((aG == 8)) | |
299 | + | then aP | |
306 | 300 | else { | |
307 | - | let | |
301 | + | let aQ = ah(aP, aF[8]) | |
308 | 302 | throw("List size exceed 8") | |
309 | 303 | } | |
310 | 304 | } | |
311 | 305 | } | |
312 | 306 | } | |
313 | 307 | } | |
314 | 308 | } | |
315 | 309 | } | |
316 | 310 | } | |
317 | 311 | } | |
318 | - | }) + "B"))) + | |
319 | - | let | |
320 | - | let | |
321 | - | let | |
322 | - | if (( | |
323 | - | then | |
312 | + | }) + "B"))) + ao((toString({ | |
313 | + | let aR = as | |
314 | + | let aS = size(aR) | |
315 | + | let aT = 0 | |
316 | + | if ((aS == 0)) | |
317 | + | then aT | |
324 | 318 | else { | |
325 | - | let | |
326 | - | if (( | |
327 | - | then | |
319 | + | let aU = ai(aT, aR[0]) | |
320 | + | if ((aS == 1)) | |
321 | + | then aU | |
328 | 322 | else { | |
329 | - | let | |
330 | - | if (( | |
331 | - | then | |
323 | + | let aV = ai(aU, aR[1]) | |
324 | + | if ((aS == 2)) | |
325 | + | then aV | |
332 | 326 | else { | |
333 | - | let | |
334 | - | if (( | |
335 | - | then | |
327 | + | let aW = ai(aV, aR[2]) | |
328 | + | if ((aS == 3)) | |
329 | + | then aW | |
336 | 330 | else { | |
337 | - | let | |
338 | - | if (( | |
339 | - | then | |
331 | + | let aX = ai(aW, aR[3]) | |
332 | + | if ((aS == 4)) | |
333 | + | then aX | |
340 | 334 | else { | |
341 | - | let | |
342 | - | if (( | |
343 | - | then | |
335 | + | let aY = ai(aX, aR[4]) | |
336 | + | if ((aS == 5)) | |
337 | + | then aY | |
344 | 338 | else { | |
345 | - | let | |
346 | - | if (( | |
347 | - | then | |
339 | + | let aZ = ai(aY, aR[5]) | |
340 | + | if ((aS == 6)) | |
341 | + | then aZ | |
348 | 342 | else { | |
349 | - | let | |
350 | - | if (( | |
351 | - | then | |
343 | + | let ba = ai(aZ, aR[6]) | |
344 | + | if ((aS == 7)) | |
345 | + | then ba | |
352 | 346 | else { | |
353 | - | let | |
354 | - | if (( | |
355 | - | then | |
347 | + | let bb = ai(ba, aR[7]) | |
348 | + | if ((aS == 8)) | |
349 | + | then bb | |
356 | 350 | else { | |
357 | - | let | |
351 | + | let bc = ai(bb, aR[8]) | |
358 | 352 | throw("List size exceed 8") | |
359 | 353 | } | |
360 | 354 | } | |
361 | 355 | } | |
362 | 356 | } | |
363 | 357 | } | |
364 | 358 | } | |
365 | 359 | } | |
366 | 360 | } | |
367 | 361 | } | |
368 | - | }) + "C"))) + | |
369 | - | let | |
370 | - | let | |
371 | - | let | |
372 | - | if (( | |
373 | - | then | |
362 | + | }) + "C"))) + ao((toString({ | |
363 | + | let bd = as | |
364 | + | let be = size(bd) | |
365 | + | let bf = 0 | |
366 | + | if ((be == 0)) | |
367 | + | then bf | |
374 | 368 | else { | |
375 | - | let | |
376 | - | if (( | |
377 | - | then | |
369 | + | let bg = aj(bf, bd[0]) | |
370 | + | if ((be == 1)) | |
371 | + | then bg | |
378 | 372 | else { | |
379 | - | let | |
380 | - | if (( | |
381 | - | then | |
373 | + | let bh = aj(bg, bd[1]) | |
374 | + | if ((be == 2)) | |
375 | + | then bh | |
382 | 376 | else { | |
383 | - | let | |
384 | - | if (( | |
385 | - | then | |
377 | + | let bi = aj(bh, bd[2]) | |
378 | + | if ((be == 3)) | |
379 | + | then bi | |
386 | 380 | else { | |
387 | - | let | |
388 | - | if (( | |
389 | - | then | |
381 | + | let bj = aj(bi, bd[3]) | |
382 | + | if ((be == 4)) | |
383 | + | then bj | |
390 | 384 | else { | |
391 | - | let | |
392 | - | if (( | |
393 | - | then | |
385 | + | let bk = aj(bj, bd[4]) | |
386 | + | if ((be == 5)) | |
387 | + | then bk | |
394 | 388 | else { | |
395 | - | let | |
396 | - | if (( | |
397 | - | then | |
389 | + | let bl = aj(bk, bd[5]) | |
390 | + | if ((be == 6)) | |
391 | + | then bl | |
398 | 392 | else { | |
399 | - | let | |
400 | - | if (( | |
401 | - | then | |
393 | + | let bm = aj(bl, bd[6]) | |
394 | + | if ((be == 7)) | |
395 | + | then bm | |
402 | 396 | else { | |
403 | - | let | |
404 | - | if (( | |
405 | - | then | |
397 | + | let bn = aj(bm, bd[7]) | |
398 | + | if ((be == 8)) | |
399 | + | then bn | |
406 | 400 | else { | |
407 | - | let | |
401 | + | let bo = aj(bn, bd[8]) | |
408 | 402 | throw("List size exceed 8") | |
409 | 403 | } | |
410 | 404 | } | |
411 | 405 | } | |
412 | 406 | } | |
413 | 407 | } | |
414 | 408 | } | |
415 | 409 | } | |
416 | 410 | } | |
417 | 411 | } | |
418 | - | }) + "D"))) + | |
419 | - | let | |
420 | - | let | |
421 | - | let | |
422 | - | if (( | |
423 | - | then | |
412 | + | }) + "D"))) + ao((toString({ | |
413 | + | let bp = as | |
414 | + | let bq = size(bp) | |
415 | + | let br = 0 | |
416 | + | if ((bq == 0)) | |
417 | + | then br | |
424 | 418 | else { | |
425 | - | let | |
426 | - | if (( | |
427 | - | then | |
419 | + | let bs = ak(br, bp[0]) | |
420 | + | if ((bq == 1)) | |
421 | + | then bs | |
428 | 422 | else { | |
429 | - | let | |
430 | - | if (( | |
431 | - | then | |
423 | + | let bt = ak(bs, bp[1]) | |
424 | + | if ((bq == 2)) | |
425 | + | then bt | |
432 | 426 | else { | |
433 | - | let | |
434 | - | if (( | |
435 | - | then | |
427 | + | let bu = ak(bt, bp[2]) | |
428 | + | if ((bq == 3)) | |
429 | + | then bu | |
436 | 430 | else { | |
437 | - | let | |
438 | - | if (( | |
439 | - | then | |
431 | + | let bv = ak(bu, bp[3]) | |
432 | + | if ((bq == 4)) | |
433 | + | then bv | |
440 | 434 | else { | |
441 | - | let | |
442 | - | if (( | |
443 | - | then | |
435 | + | let bw = ak(bv, bp[4]) | |
436 | + | if ((bq == 5)) | |
437 | + | then bw | |
444 | 438 | else { | |
445 | - | let | |
446 | - | if (( | |
447 | - | then | |
439 | + | let bx = ak(bw, bp[5]) | |
440 | + | if ((bq == 6)) | |
441 | + | then bx | |
448 | 442 | else { | |
449 | - | let | |
450 | - | if (( | |
451 | - | then | |
443 | + | let by = ak(bx, bp[6]) | |
444 | + | if ((bq == 7)) | |
445 | + | then by | |
452 | 446 | else { | |
453 | - | let | |
454 | - | if (( | |
455 | - | then | |
447 | + | let bz = ak(by, bp[7]) | |
448 | + | if ((bq == 8)) | |
449 | + | then bz | |
456 | 450 | else { | |
457 | - | let | |
451 | + | let bA = ak(bz, bp[8]) | |
458 | 452 | throw("List size exceed 8") | |
459 | 453 | } | |
460 | 454 | } | |
461 | 455 | } | |
462 | 456 | } | |
463 | 457 | } | |
464 | 458 | } | |
465 | 459 | } | |
466 | 460 | } | |
467 | 461 | } | |
468 | - | }) + "E"))) + | |
469 | - | let | |
470 | - | let | |
471 | - | let | |
472 | - | if (( | |
473 | - | then | |
462 | + | }) + "E"))) + ao((toString({ | |
463 | + | let bB = as | |
464 | + | let bC = size(bB) | |
465 | + | let bD = 0 | |
466 | + | if ((bC == 0)) | |
467 | + | then bD | |
474 | 468 | else { | |
475 | - | let | |
476 | - | if (( | |
477 | - | then | |
469 | + | let bE = al(bD, bB[0]) | |
470 | + | if ((bC == 1)) | |
471 | + | then bE | |
478 | 472 | else { | |
479 | - | let | |
480 | - | if (( | |
481 | - | then | |
473 | + | let bF = al(bE, bB[1]) | |
474 | + | if ((bC == 2)) | |
475 | + | then bF | |
482 | 476 | else { | |
483 | - | let | |
484 | - | if (( | |
485 | - | then | |
477 | + | let bG = al(bF, bB[2]) | |
478 | + | if ((bC == 3)) | |
479 | + | then bG | |
486 | 480 | else { | |
487 | - | let | |
488 | - | if (( | |
489 | - | then | |
481 | + | let bH = al(bG, bB[3]) | |
482 | + | if ((bC == 4)) | |
483 | + | then bH | |
490 | 484 | else { | |
491 | - | let | |
492 | - | if (( | |
493 | - | then | |
485 | + | let bI = al(bH, bB[4]) | |
486 | + | if ((bC == 5)) | |
487 | + | then bI | |
494 | 488 | else { | |
495 | - | let | |
496 | - | if (( | |
497 | - | then | |
489 | + | let bJ = al(bI, bB[5]) | |
490 | + | if ((bC == 6)) | |
491 | + | then bJ | |
498 | 492 | else { | |
499 | - | let | |
500 | - | if (( | |
501 | - | then | |
493 | + | let bK = al(bJ, bB[6]) | |
494 | + | if ((bC == 7)) | |
495 | + | then bK | |
502 | 496 | else { | |
503 | - | let | |
504 | - | if (( | |
505 | - | then | |
497 | + | let bL = al(bK, bB[7]) | |
498 | + | if ((bC == 8)) | |
499 | + | then bL | |
506 | 500 | else { | |
507 | - | let | |
501 | + | let bM = al(bL, bB[8]) | |
508 | 502 | throw("List size exceed 8") | |
509 | 503 | } | |
510 | 504 | } | |
511 | 505 | } | |
512 | 506 | } | |
513 | 507 | } | |
514 | 508 | } | |
515 | 509 | } | |
516 | 510 | } | |
517 | 511 | } | |
518 | - | }) + "F"))) + | |
519 | - | let | |
520 | - | let | |
521 | - | let | |
522 | - | if (( | |
523 | - | then | |
512 | + | }) + "F"))) + ao((toString({ | |
513 | + | let bN = as | |
514 | + | let bO = size(bN) | |
515 | + | let bP = 0 | |
516 | + | if ((bO == 0)) | |
517 | + | then bP | |
524 | 518 | else { | |
525 | - | let | |
526 | - | if (( | |
527 | - | then | |
519 | + | let bQ = am(bP, bN[0]) | |
520 | + | if ((bO == 1)) | |
521 | + | then bQ | |
528 | 522 | else { | |
529 | - | let | |
530 | - | if (( | |
531 | - | then | |
523 | + | let bR = am(bQ, bN[1]) | |
524 | + | if ((bO == 2)) | |
525 | + | then bR | |
532 | 526 | else { | |
533 | - | let | |
534 | - | if (( | |
535 | - | then | |
527 | + | let bS = am(bR, bN[2]) | |
528 | + | if ((bO == 3)) | |
529 | + | then bS | |
536 | 530 | else { | |
537 | - | let | |
538 | - | if (( | |
539 | - | then | |
531 | + | let bT = am(bS, bN[3]) | |
532 | + | if ((bO == 4)) | |
533 | + | then bT | |
540 | 534 | else { | |
541 | - | let | |
542 | - | if (( | |
543 | - | then | |
535 | + | let bU = am(bT, bN[4]) | |
536 | + | if ((bO == 5)) | |
537 | + | then bU | |
544 | 538 | else { | |
545 | - | let | |
546 | - | if (( | |
547 | - | then | |
539 | + | let bV = am(bU, bN[5]) | |
540 | + | if ((bO == 6)) | |
541 | + | then bV | |
548 | 542 | else { | |
549 | - | let | |
550 | - | if (( | |
551 | - | then | |
543 | + | let bW = am(bV, bN[6]) | |
544 | + | if ((bO == 7)) | |
545 | + | then bW | |
552 | 546 | else { | |
553 | - | let | |
554 | - | if (( | |
555 | - | then | |
547 | + | let bX = am(bW, bN[7]) | |
548 | + | if ((bO == 8)) | |
549 | + | then bX | |
556 | 550 | else { | |
557 | - | let | |
551 | + | let bY = am(bX, bN[8]) | |
558 | 552 | throw("List size exceed 8") | |
559 | 553 | } | |
560 | 554 | } | |
561 | 555 | } | |
562 | 556 | } | |
563 | 557 | } | |
564 | 558 | } | |
565 | 559 | } | |
566 | 560 | } | |
567 | 561 | } | |
568 | - | }) + "G"))) + | |
569 | - | let | |
570 | - | let | |
571 | - | let | |
572 | - | if (( | |
573 | - | then | |
562 | + | }) + "G"))) + ao((toString({ | |
563 | + | let bZ = as | |
564 | + | let ca = size(bZ) | |
565 | + | let cb = 0 | |
566 | + | if ((ca == 0)) | |
567 | + | then cb | |
574 | 568 | else { | |
575 | - | let | |
576 | - | if (( | |
577 | - | then | |
569 | + | let cc = an(cb, bZ[0]) | |
570 | + | if ((ca == 1)) | |
571 | + | then cc | |
578 | 572 | else { | |
579 | - | let | |
580 | - | if (( | |
581 | - | then | |
573 | + | let cd = an(cc, bZ[1]) | |
574 | + | if ((ca == 2)) | |
575 | + | then cd | |
582 | 576 | else { | |
583 | - | let | |
584 | - | if (( | |
585 | - | then | |
577 | + | let ce = an(cd, bZ[2]) | |
578 | + | if ((ca == 3)) | |
579 | + | then ce | |
586 | 580 | else { | |
587 | - | let | |
588 | - | if (( | |
589 | - | then | |
581 | + | let cf = an(ce, bZ[3]) | |
582 | + | if ((ca == 4)) | |
583 | + | then cf | |
590 | 584 | else { | |
591 | - | let | |
592 | - | if (( | |
593 | - | then | |
585 | + | let cg = an(cf, bZ[4]) | |
586 | + | if ((ca == 5)) | |
587 | + | then cg | |
594 | 588 | else { | |
595 | - | let | |
596 | - | if (( | |
597 | - | then | |
589 | + | let ch = an(cg, bZ[5]) | |
590 | + | if ((ca == 6)) | |
591 | + | then ch | |
598 | 592 | else { | |
599 | - | let | |
600 | - | if (( | |
601 | - | then | |
593 | + | let ci = an(ch, bZ[6]) | |
594 | + | if ((ca == 7)) | |
595 | + | then ci | |
602 | 596 | else { | |
603 | - | let | |
604 | - | if (( | |
605 | - | then | |
597 | + | let cj = an(ci, bZ[7]) | |
598 | + | if ((ca == 8)) | |
599 | + | then cj | |
606 | 600 | else { | |
607 | - | let | |
601 | + | let ck = an(cj, bZ[8]) | |
608 | 602 | throw("List size exceed 8") | |
609 | 603 | } | |
610 | 604 | } | |
611 | 605 | } | |
612 | 606 | } | |
613 | 607 | } | |
614 | 608 | } | |
615 | 609 | } | |
616 | 610 | } | |
617 | 611 | } | |
618 | 612 | }) + "H"))) | |
619 | 613 | } | |
620 | 614 | ||
621 | 615 | ||
622 | - | func | |
616 | + | func cl (cm) = if ((cm == "G")) | |
623 | 617 | then a | |
624 | 618 | else b | |
625 | 619 | ||
626 | 620 | ||
627 | - | func | |
621 | + | func cn (co) = if (if ((value(assetInfo(co)).issuer == Address(b))) | |
628 | 622 | then true | |
629 | - | else (value(assetInfo( | |
623 | + | else (value(assetInfo(co)).issuer == Address(a))) | |
630 | 624 | then { | |
631 | - | let | |
632 | - | let | |
633 | - | let | |
634 | - | let | |
635 | - | let | |
636 | - | if (( | |
637 | - | then | |
625 | + | let ar = value(assetInfo(co)).name | |
626 | + | let cm = take(takeRight(ar, 2), 1) | |
627 | + | let cp = ((aq(ar) + "-") + cm) | |
628 | + | let cq = getIntegerValue(Address(cl(cm)), (("stats_" + cp) + "_quantity")) | |
629 | + | let cr = pow((10000 / cq), 4, 5, 1, 2, FLOOR) | |
630 | + | if ((cr > 0)) | |
631 | + | then cr | |
638 | 632 | else 2 | |
639 | 633 | } | |
640 | 634 | else throw("not valid NFT") | |
641 | 635 | ||
642 | 636 | ||
643 | - | func | |
637 | + | func cs (l,j) = if ((l > j)) | |
644 | 638 | then 1 | |
645 | 639 | else if ((j > l)) | |
646 | 640 | then -1 | |
647 | 641 | else 0 | |
648 | 642 | ||
649 | 643 | ||
650 | - | func | |
651 | - | let | |
652 | - | if ((6 > | |
644 | + | func ct (w) = { | |
645 | + | let cu = M(w) | |
646 | + | if ((6 > cu)) | |
653 | 647 | then { | |
654 | - | let | |
655 | - | if (( | |
648 | + | let cv = H(w) | |
649 | + | if ((cv == 0)) | |
656 | 650 | then throw("Game is not started") | |
657 | - | else if (( | |
651 | + | else if ((cv > height)) | |
658 | 652 | then throw("Game is not finished or expired") | |
659 | 653 | else if (((M(w) % 2) == 0)) | |
660 | 654 | then "maker" | |
661 | 655 | else "taker" | |
662 | 656 | } | |
663 | 657 | else { | |
664 | - | let | |
665 | - | let | |
666 | - | let | |
667 | - | let | |
668 | - | let | |
669 | - | let | |
670 | - | let | |
671 | - | let | |
672 | - | let | |
673 | - | if (( | |
658 | + | let cw = split(V(w, "maker"), ",") | |
659 | + | let cx = split(V(w, "taker"), ",") | |
660 | + | let cy = P(w, "maker", cw[0]) | |
661 | + | let cz = P(w, "maker", cw[1]) | |
662 | + | let cA = P(w, "maker", cw[2]) | |
663 | + | let cB = P(w, "taker", cx[0]) | |
664 | + | let cC = P(w, "taker", cx[1]) | |
665 | + | let cD = P(w, "taker", cx[2]) | |
666 | + | let cE = ((cs(cy, cB) + cs(cz, cC)) + cs(cA, cD)) | |
667 | + | if ((cE > 0)) | |
674 | 668 | then "maker" | |
675 | - | else if ((0 > | |
669 | + | else if ((0 > cE)) | |
676 | 670 | then "taker" | |
677 | 671 | else "draw" | |
678 | 672 | } | |
679 | 673 | } | |
680 | 674 | ||
681 | 675 | ||
682 | - | @Callable( | |
683 | - | func makeGame (t,cI | |
684 | - | let | |
685 | - | let | |
686 | - | let | |
687 | - | let | |
676 | + | @Callable(cF) | |
677 | + | func makeGame (t,cG,cH,cI) = { | |
678 | + | let cJ = toBase58String(cF.caller.bytes) | |
679 | + | let cK = u(t) | |
680 | + | let cL = value(cF.payments[0]) | |
681 | + | let cM = cL.amount | |
688 | 682 | let w = n() | |
689 | - | if ((r( | |
683 | + | if ((r(cJ) != 0)) | |
690 | 684 | then throw("You already have an active game") | |
691 | 685 | else if (if ((0 > t)) | |
692 | 686 | then true | |
693 | 687 | else (t >= d)) | |
694 | 688 | then throw("Invalid slot") | |
695 | - | else if (( | |
689 | + | else if ((cK != 0)) | |
696 | 690 | then throw("This slot is busy") | |
697 | - | else if (( | |
691 | + | else if ((cL.assetId != c)) | |
698 | 692 | then throw(("You can attach only EGGs with the following asset id: " + toBase58String(c))) | |
699 | - | else if (( | |
693 | + | else if ((cM != 1)) | |
700 | 694 | then throw("Bet must be 0.01 EGG during beta test") | |
701 | - | else if (if ((1 > | |
695 | + | else if (if ((1 > cG)) | |
702 | 696 | then true | |
703 | - | else ( | |
697 | + | else (cG > 5)) | |
704 | 698 | then throw("Invalid rarity range for the worst duck") | |
705 | - | else if (if ((1 > | |
699 | + | else if (if ((1 > cH)) | |
706 | 700 | then true | |
707 | - | else ( | |
701 | + | else (cH > 5)) | |
708 | 702 | then throw("Invalid rarity range for the medium duck") | |
709 | - | else if (if ((1 > | |
703 | + | else if (if ((1 > cI)) | |
710 | 704 | then true | |
711 | - | else ( | |
705 | + | else (cI > 5)) | |
712 | 706 | then throw("Invalid rarity range for the best duck") | |
713 | - | else if (( | |
707 | + | else if ((cG >= cH)) | |
714 | 708 | then throw("The medium duck must be better than the worst one") | |
715 | - | else if (( | |
709 | + | else if ((cH >= cI)) | |
716 | 710 | then throw("The best duck must be better than the medium one") | |
717 | - | else [IntegerEntry(p( | |
711 | + | else [IntegerEntry(p(cJ), w), StringEntry(y(w), cJ), StringEntry(v(w, cJ), "maker"), IntegerEntry(C(w), cM), IntegerEntry(I(w, "worst"), cG), IntegerEntry(I(w, "medium"), cH), IntegerEntry(I(w, "best"), cI), IntegerEntry(E(w), (height + e)), IntegerEntry(s(t), w), IntegerEntry("nextGameId", (w + 1))] | |
718 | 712 | } | |
719 | 713 | ||
720 | 714 | ||
721 | 715 | ||
722 | - | @Callable( | |
716 | + | @Callable(cF) | |
723 | 717 | func takeGame (t) = { | |
724 | - | let | |
718 | + | let cJ = toBase58String(cF.caller.bytes) | |
725 | 719 | let w = u(t) | |
726 | - | let | |
727 | - | if ((r( | |
720 | + | let cL = value(cF.payments[0]) | |
721 | + | if ((r(cJ) != 0)) | |
728 | 722 | then throw("You already have an active game") | |
729 | 723 | else if (if ((0 > t)) | |
730 | 724 | then true | |
731 | 725 | else (t >= d)) | |
732 | 726 | then throw("Invalid slot") | |
733 | 727 | else if ((u(t) == 0)) | |
734 | 728 | then throw("This slot is empty") | |
735 | - | else if (( | |
729 | + | else if ((cL.assetId != c)) | |
736 | 730 | then throw(("You can attach only EGG tokens with the following asset id: " + toBase58String(c))) | |
737 | - | else if (( | |
731 | + | else if ((cL.amount != D(w))) | |
738 | 732 | then throw("Insufficient eggs amount") | |
739 | 733 | else if ((height >= F(w))) | |
740 | 734 | then throw("This game is expired") | |
741 | - | else [IntegerEntry(p( | |
735 | + | else [IntegerEntry(p(cJ), w), StringEntry(A(w), cJ), StringEntry(v(w, cJ), "taker"), IntegerEntry(L(w), 0), IntegerEntry(G(w), (height + f)), IntegerEntry(s(t), 0), IntegerEntry("gamesPlayed", (ad() + 1))] | |
742 | 736 | } | |
743 | 737 | ||
744 | 738 | ||
745 | 739 | ||
746 | - | @Callable( | |
740 | + | @Callable(cF) | |
747 | 741 | func kickGame (t) = { | |
748 | 742 | let w = u(t) | |
749 | 743 | if (if ((0 > t)) | |
750 | 744 | then true | |
751 | 745 | else (t >= d)) | |
752 | 746 | then throw("Invalid slot") | |
753 | 747 | else if ((w == 0)) | |
754 | 748 | then throw("Slot is empty") | |
755 | 749 | else if ((F(w) > height)) | |
756 | 750 | then throw("Waiting is not finished yet") | |
757 | 751 | else { | |
758 | - | let | |
759 | - | [IntegerEntry(p( | |
752 | + | let cN = z(w) | |
753 | + | [IntegerEntry(p(cN), 0), IntegerEntry(s(t), 0), ScriptTransfer(Address(fromBase58String(cN)), D(w), c)] | |
760 | 754 | } | |
761 | 755 | } | |
762 | 756 | ||
763 | 757 | ||
764 | 758 | ||
765 | - | @Callable( | |
759 | + | @Callable(cF) | |
766 | 760 | func pickDucks () = { | |
767 | - | let | |
768 | - | let w = r( | |
769 | - | let O = x(w, | |
770 | - | let | |
771 | - | let | |
772 | - | let | |
773 | - | let | |
774 | - | let | |
775 | - | let | |
776 | - | let | |
777 | - | let | |
778 | - | let | |
779 | - | let | |
761 | + | let cJ = toBase58String(cF.caller.bytes) | |
762 | + | let w = r(cJ) | |
763 | + | let O = x(w, cJ) | |
764 | + | let cu = M(w) | |
765 | + | let cO = K(w, "worst") | |
766 | + | let cP = K(w, "medium") | |
767 | + | let cQ = K(w, "best") | |
768 | + | let cR = value(value(cF.payments[0]).assetId) | |
769 | + | let cS = value(value(cF.payments[1]).assetId) | |
770 | + | let cT = value(value(cF.payments[2]).assetId) | |
771 | + | let cU = cn(cR) | |
772 | + | let cV = cn(cS) | |
773 | + | let cW = cn(cT) | |
780 | 774 | if ((w == 0)) | |
781 | 775 | then throw("You don't have an active game") | |
782 | 776 | else if ((H(w) == 0)) | |
783 | 777 | then throw("Game is not started") | |
784 | - | else if (if (( | |
778 | + | else if (if ((cu == 0)) | |
785 | 779 | then (O != "taker") | |
786 | 780 | else false) | |
787 | 781 | then throw("It is the taker's turn to pick now") | |
788 | - | else if (if (( | |
782 | + | else if (if ((cu == 1)) | |
789 | 783 | then (O != "maker") | |
790 | 784 | else false) | |
791 | 785 | then throw("It is the maker's turn to pick now") | |
792 | - | else if (( | |
786 | + | else if ((cu > 1)) | |
793 | 787 | then throw("Ducks have already been picked") | |
794 | - | else if (if (( | |
788 | + | else if (if ((cU > (cO * 10))) | |
795 | 789 | then true | |
796 | - | else ((( | |
790 | + | else (((cO - 1) * 10) >= cU)) | |
797 | 791 | then throw("Worst duck doesn't fit rarity range") | |
798 | - | else if (if (( | |
792 | + | else if (if ((cV > (cP * 10))) | |
799 | 793 | then true | |
800 | - | else ((( | |
794 | + | else (((cP - 1) * 10) >= cV)) | |
801 | 795 | then throw("Medium duck doesn't fit rarity range") | |
802 | - | else if (if (if (if (( | |
803 | - | then (40 >= | |
796 | + | else if (if (if (if ((cQ == 5)) | |
797 | + | then (40 >= cW) | |
804 | 798 | else false) | |
805 | 799 | then true | |
806 | - | else ( | |
800 | + | else (cW > (cQ * 10))) | |
807 | 801 | then true | |
808 | - | else ((( | |
802 | + | else (((cQ - 1) * 10) >= cW)) | |
809 | 803 | then throw("Best duck doesn't fit rarity range") | |
810 | - | else [IntegerEntry(N(w, O, "worst"), | |
804 | + | else [IntegerEntry(N(w, O, "worst"), cU), IntegerEntry(N(w, O, "medium"), cV), IntegerEntry(N(w, O, "best"), cW), StringEntry(Q(w, O, "worst"), toBase58String(cR)), StringEntry(Q(w, O, "medium"), toBase58String(cS)), StringEntry(Q(w, O, "best"), toBase58String(cT)), IntegerEntry(L(w), (cu + 1)), IntegerEntry(G(w), (height + f)), ScriptTransfer(cF.caller, 1, cR), ScriptTransfer(cF.caller, 1, cS), ScriptTransfer(cF.caller, 1, cT)] | |
811 | 805 | } | |
812 | 806 | ||
813 | 807 | ||
814 | 808 | ||
815 | - | @Callable( | |
816 | - | func commit ( | |
817 | - | let | |
818 | - | let w = r( | |
819 | - | let O = x(w, | |
820 | - | let | |
809 | + | @Callable(cF) | |
810 | + | func commit (cX) = { | |
811 | + | let cJ = toBase58String(cF.caller.bytes) | |
812 | + | let w = r(cJ) | |
813 | + | let O = x(w, cJ) | |
814 | + | let cu = M(w) | |
821 | 815 | if ((w == 0)) | |
822 | 816 | then throw("You don't have an active game") | |
823 | - | else if ((2 > | |
817 | + | else if ((2 > cu)) | |
824 | 818 | then throw("Commit is not started") | |
825 | - | else if (if (( | |
819 | + | else if (if ((cu == 2)) | |
826 | 820 | then (O != "taker") | |
827 | 821 | else false) | |
828 | 822 | then throw("It is the taker's turn to pick now") | |
829 | - | else if (if (( | |
823 | + | else if (if ((cu == 3)) | |
830 | 824 | then (O != "maker") | |
831 | 825 | else false) | |
832 | 826 | then throw("It is the maker's turn to pick now") | |
833 | - | else if (( | |
827 | + | else if ((cu > 3)) | |
834 | 828 | then throw("Commit is finished") | |
835 | - | else [StringEntry(S(w, O), | |
829 | + | else [StringEntry(S(w, O), cX), IntegerEntry(L(w), (cu + 1)), IntegerEntry(G(w), (height + f))] | |
836 | 830 | } | |
837 | 831 | ||
838 | 832 | ||
839 | 833 | ||
840 | - | @Callable( | |
841 | - | func reveal ( | |
842 | - | let | |
843 | - | let w = r( | |
844 | - | let O = x(w, | |
845 | - | let | |
834 | + | @Callable(cF) | |
835 | + | func reveal (cY,cZ) = { | |
836 | + | let cJ = toBase58String(cF.caller.bytes) | |
837 | + | let w = r(cJ) | |
838 | + | let O = x(w, cJ) | |
839 | + | let cu = M(w) | |
846 | 840 | if ((w == 0)) | |
847 | 841 | then throw("You don't have an active game") | |
848 | - | else if ((4 > | |
842 | + | else if ((4 > cu)) | |
849 | 843 | then throw("Reveal is not started") | |
850 | - | else if (if (( | |
844 | + | else if (if ((cu == 4)) | |
851 | 845 | then (O != "taker") | |
852 | 846 | else false) | |
853 | 847 | then throw("It is the taker's turn to pick now") | |
854 | - | else if (if (( | |
848 | + | else if (if ((cu == 5)) | |
855 | 849 | then (O != "maker") | |
856 | 850 | else false) | |
857 | 851 | then throw("It is the maker's turn to pick now") | |
858 | - | else if (( | |
852 | + | else if ((cu > 5)) | |
859 | 853 | then throw("Reveal is finished") | |
860 | - | else if (if (if (if (if (if (( | |
861 | - | then ( | |
854 | + | else if (if (if (if (if (if ((cY != "worst,medium,best")) | |
855 | + | then (cY != "worst,best,medium") | |
862 | 856 | else false) | |
863 | - | then ( | |
857 | + | then (cY != "medium,worst,best") | |
864 | 858 | else false) | |
865 | - | then ( | |
859 | + | then (cY != "medium,best,worst") | |
866 | 860 | else false) | |
867 | - | then ( | |
861 | + | then (cY != "best,worst,medium") | |
868 | 862 | else false) | |
869 | - | then ( | |
863 | + | then (cY != "best,medium,worst") | |
870 | 864 | else false) | |
871 | 865 | then throw("Reveal data is not valid") | |
872 | - | else if ((toBase58String(sha256(toBytes(( | |
866 | + | else if ((toBase58String(sha256(toBytes((cY + cZ)))) != T(w, O))) | |
873 | 867 | then throw("Reveal doesn't match commit") | |
874 | - | else [StringEntry(U(w, O), | |
868 | + | else [StringEntry(U(w, O), cY), IntegerEntry(L(w), (cu + 1)), IntegerEntry(G(w), (height + f))] | |
875 | 869 | } | |
876 | 870 | ||
877 | 871 | ||
878 | 872 | ||
879 | - | @Callable( | |
873 | + | @Callable(cF) | |
880 | 874 | func getPrize () = { | |
881 | - | let cL = toBase58String(cH.caller.bytes) | |
882 | - | let w = r(cL) | |
883 | - | let O = x(w, cL) | |
884 | - | let dc = z(w) | |
885 | - | let dd = B(w) | |
886 | - | let de = cv(w) | |
875 | + | let cJ = toBase58String(cF.caller.bytes) | |
876 | + | let w = r(cJ) | |
877 | + | let O = x(w, cJ) | |
878 | + | let da = if ((O == "maker")) | |
879 | + | then B(w) | |
880 | + | else z(w) | |
881 | + | let db = ct(w) | |
887 | 882 | if ((w == 0)) | |
888 | 883 | then throw("You don't have an active game") | |
889 | - | else if (X(w, O)) | |
890 | - | then throw("You have already got the prize") | |
891 | - | else if ((de == O)) | |
892 | - | then [IntegerEntry(p(cL), 0), BooleanEntry(W(w, O), true), IntegerEntry(Y(cL), (Z(cL) + 1)), ScriptTransfer(cH.caller, (D(w) * 2), c)] | |
893 | - | else if ((de == "draw")) | |
894 | - | then [IntegerEntry(p(cL), 0), BooleanEntry(W(w, O), true), IntegerEntry(ac(cL), (ad(cL) + 1)), ScriptTransfer(cH.caller, D(w), c)] | |
895 | - | else [IntegerEntry(p(cL), 0), IntegerEntry(aa(cL), (ab(cL) + 1)), BooleanEntry(W(w, O), true)] | |
884 | + | else if ((db == O)) | |
885 | + | then [IntegerEntry(p(cJ), 0), IntegerEntry(p(da), 0), IntegerEntry(W(cJ), (X(cJ) + 1)), IntegerEntry(Y(da), (Z(da) + 1)), ScriptTransfer(cF.caller, (D(w) * 2), c)] | |
886 | + | else if ((db == "draw")) | |
887 | + | then [IntegerEntry(p(cJ), 0), IntegerEntry(aa(cJ), (ab(cJ) + 1)), ScriptTransfer(cF.caller, D(w), c)] | |
888 | + | else [IntegerEntry(p(cJ), 0)] | |
896 | 889 | } | |
897 | 890 | ||
898 | 891 | ||
899 | - | @Verifier( | |
900 | - | func | |
892 | + | @Verifier(dc) | |
893 | + | func dd () = sigVerify(dc.bodyBytes, dc.proofs[0], dc.senderPublicKey) | |
901 | 894 |
github/deemru/w8io/026f985 393.88 ms ◑