tx · HAE1vDNXEwwZdEQ9p2LoLnUHAVfdYER5VkaNvrTkX32L

3PH75p2rmMKCV2nyW4TsAdFgFtmc61mJaqA:  -0.01400000 Waves

2021.09.14 18:45 [2767828] smart account 3PH75p2rmMKCV2nyW4TsAdFgFtmc61mJaqA > SELF 0.00000000 Waves

{ "type": 13, "id": "HAE1vDNXEwwZdEQ9p2LoLnUHAVfdYER5VkaNvrTkX32L", "fee": 1400000, "feeAssetId": null, "timestamp": 1631634364276, "version": 2, "chainId": 87, "sender": "3PH75p2rmMKCV2nyW4TsAdFgFtmc61mJaqA", "senderPublicKey": "3GtkwhnMmG1yeozW51o4dJ1x3BDToPaLBXyBWKGdAc2e", "proofs": [ "5bs2zAEmR9b9jzLnFJQtDv2gRywDuEih621S9dQagBdByk7MDfMuc53wjcocAQ9ZyEDMNvwtbz7zzV4BXs6Ykr4s" ], "script": "base64:AAIFAAAAAAAAACYIAhIAEgQKAggIEgQKAggIEgASAwoBCBIDCgEIEgMKAQgSAwoBCAAAACMAAAAAC2VnZ3NBc3NldElkAQAAACArUw61nWwxe7e9sWV0sV1YHdNa4fYrM30QZbs7HFieqAAAAAAKcGVyY2hQcmljZQkAAGgAAAACAAAAAAAAAABkAAAAAAAAD0JAAAAAAAVzY2FsZQAAAAAAAAAnEAAAAAAGc2NhbGUyAAAAAAAAD0JAAAAAABBpbmN1YmF0b3JBZGRyZXNzAQAAABoBVzG/mmi5MDJ8KLMUgT61fi6VglLk6UbbgAAAAAAOYnJlZWRlckFkZHJlc3MBAAAAGgFXUiVeI2B2L5G3u+jw9Ht83LEc5U+wJvDuAAAAABJyZWZDb250cmFjdEFkZHJlc3MBAAAAGgFXoJWHaFIS+neTXowyvvYUIY9fLjbMmBsgAAAAAA1SZWZlcmVyUmV3YXJkAAAAAAAAAAAFAAAAAA5yZWJpcnRoQWRkcmVzcwEAAAAaAVe+4FzDtneMBo7i5BMYZS7q3y5wnzCPJvkAAAAABEdFTlMJAARMAAAAAgIAAAABQQkABEwAAAACAgAAAAFCCQAETAAAAAICAAAAAUMJAARMAAAAAgIAAAABRAkABEwAAAACAgAAAAFFCQAETAAAAAICAAAAAUYJAARMAAAAAgIAAAABRwUAAAADbmlsAQAAABFnZXRSZXdhcmRQZXJCbG9jawAAAAAAAAAAAAAAAqwBAAAACGlzTG9ja2VkAAAAAAQAAAANbWFzdGVyQWRkcmVzcwkBAAAAB0FkZHJlc3MAAAABAQAAABoBV4iyBiHwgMpBojIAIx7/qYkiSDndcBbJCQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAA1tYXN0ZXJBZGRyZXNzAgAAAAdlZ2dsb2NrAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWIFAAAAByRtYXRjaDAFAAAAAWIAAAAAAAAAAAABAAAADXRyeUdldEludGVnZXIAAAABAAAAA2tleQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYgUAAAAHJG1hdGNoMAUAAAABYgAAAAAAAAAAAAEAAAAMdHJ5R2V0U3RyaW5nAAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWECAAAAAAEAAAAJaXNTeW1ib2xBAAAAAgAAAAthY2N1bXVsYXRlZAAAAANzeW0DCQAAAAAAAAIFAAAAA3N5bQIAAAABQQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAAEAAAAJaXNTeW1ib2xCAAAAAgAAAAthY2N1bXVsYXRlZAAAAANzeW0DCQAAAAAAAAIFAAAAA3N5bQIAAAABQgkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAAEAAAAJaXNTeW1ib2xDAAAAAgAAAAthY2N1bXVsYXRlZAAAAANzeW0DCQAAAAAAAAIFAAAAA3N5bQIAAAABQwkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAAEAAAAJaXNTeW1ib2xEAAAAAgAAAAthY2N1bXVsYXRlZAAAAANzeW0DCQAAAAAAAAIFAAAAA3N5bQIAAAABRAkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAAEAAAAJaXNTeW1ib2xFAAAAAgAAAAthY2N1bXVsYXRlZAAAAANzeW0DCQAAAAAAAAIFAAAAA3N5bQIAAAABRQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAAEAAAAJaXNTeW1ib2xGAAAAAgAAAAthY2N1bXVsYXRlZAAAAANzeW0DCQAAAAAAAAIFAAAAA3N5bQIAAAABRgkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAAEAAAAJaXNTeW1ib2xHAAAAAgAAAAthY2N1bXVsYXRlZAAAAANzeW0DCQAAAAAAAAIFAAAAA3N5bQIAAAABRwkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAAEAAAAJaXNTeW1ib2xIAAAAAgAAAAthY2N1bXVsYXRlZAAAAANzeW0DCQAAAAAAAAIFAAAAA3N5bQIAAAABSAkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAQkAAGQAAAACBQAAAAthY2N1bXVsYXRlZAAAAAAAAAAAAAEAAAAQZ2V0QW1vdW50T3JDbGVhcgAAAAEAAAAGYW1vdW50AwkBAAAACGNvbnRhaW5zAAAAAgUAAAAGYW1vdW50AgAAAAEwAgAAAAAFAAAABmFtb3VudAEAAAAGZ2V0R2VuAAAAAQAAAAlhc3NldE5hbWUEAAAACGdlbm90eXBlCQAEtQAAAAIJAQAAAAlkcm9wUmlnaHQAAAACCQABMAAAAAIFAAAACWFzc2V0TmFtZQAAAAAAAAAABQAAAAAAAAAAAwIAAAAACQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAQAAABBnZXRBbW91bnRPckNsZWFyAAAAAQkAASwAAAACCQABpAAAAAEEAAAADSRsaXN0MjIyNDIyNTUFAAAACGdlbm90eXBlBAAAAA0kc2l6ZTIyMjQyMjU1CQABkAAAAAEFAAAADSRsaXN0MjIyNDIyNTUEAAAADSRhY2MwMjIyNDIyNTUAAAAAAAAAAAADCQAAAAAAAAIFAAAADSRzaXplMjIyNDIyNTUAAAAAAAAAAAAFAAAADSRhY2MwMjIyNDIyNTUEAAAADSRhY2MxMjIyNDIyNTUJAQAAAAlpc1N5bWJvbEEAAAACBQAAAA0kYWNjMDIyMjQyMjU1CQABkQAAAAIFAAAADSRsaXN0MjIyNDIyNTUAAAAAAAAAAAADCQAAAAAAAAIFAAAADSRzaXplMjIyNDIyNTUAAAAAAAAAAAEFAAAADSRhY2MxMjIyNDIyNTUEAAAADSRhY2MyMjIyNDIyNTUJAQAAAAlpc1N5bWJvbEEAAAACBQAAAA0kYWNjMTIyMjQyMjU1CQABkQAAAAIFAAAADSRsaXN0MjIyNDIyNTUAAAAAAAAAAAEDCQAAAAAAAAIFAAAADSRzaXplMjIyNDIyNTUAAAAAAAAAAAIFAAAADSRhY2MyMjIyNDIyNTUEAAAADSRhY2MzMjIyNDIyNTUJAQAAAAlpc1N5bWJvbEEAAAACBQAAAA0kYWNjMjIyMjQyMjU1CQABkQAAAAIFAAAADSRsaXN0MjIyNDIyNTUAAAAAAAAAAAIDCQAAAAAAAAIFAAAADSRzaXplMjIyNDIyNTUAAAAAAAAAAAMFAAAADSRhY2MzMjIyNDIyNTUEAAAADSRhY2M0MjIyNDIyNTUJAQAAAAlpc1N5bWJvbEEAAAACBQAAAA0kYWNjMzIyMjQyMjU1CQABkQAAAAIFAAAADSRsaXN0MjIyNDIyNTUAAAAAAAAAAAMDCQAAAAAAAAIFAAAADSRzaXplMjIyNDIyNTUAAAAAAAAAAAQFAAAADSRhY2M0MjIyNDIyNTUEAAAADSRhY2M1MjIyNDIyNTUJAQAAAAlpc1N5bWJvbEEAAAACBQAAAA0kYWNjNDIyMjQyMjU1CQABkQAAAAIFAAAADSRsaXN0MjIyNDIyNTUAAAAAAAAAAAQDCQAAAAAAAAIFAAAADSRzaXplMjIyNDIyNTUAAAAAAAAAAAUFAAAADSRhY2M1MjIyNDIyNTUEAAAADSRhY2M2MjIyNDIyNTUJAQAAAAlpc1N5bWJvbEEAAAACBQAAAA0kYWNjNTIyMjQyMjU1CQABkQAAAAIFAAAADSRsaXN0MjIyNDIyNTUAAAAAAAAAAAUDCQAAAAAAAAIFAAAADSRzaXplMjIyNDIyNTUAAAAAAAAAAAYFAAAADSRhY2M2MjIyNDIyNTUEAAAADSRhY2M3MjIyNDIyNTUJAQAAAAlpc1N5bWJvbEEAAAACBQAAAA0kYWNjNjIyMjQyMjU1CQABkQAAAAIFAAAADSRsaXN0MjIyNDIyNTUAAAAAAAAAAAYDCQAAAAAAAAIFAAAADSRzaXplMjIyNDIyNTUAAAAAAAAAAAcFAAAADSRhY2M3MjIyNDIyNTUEAAAADSRhY2M4MjIyNDIyNTUJAQAAAAlpc1N5bWJvbEEAAAACBQAAAA0kYWNjNzIyMjQyMjU1CQABkQAAAAIFAAAADSRsaXN0MjIyNDIyNTUAAAAAAAAAAAcDCQAAAAAAAAIFAAAADSRzaXplMjIyNDIyNTUAAAAAAAAAAAgFAAAADSRhY2M4MjIyNDIyNTUEAAAADSRhY2M5MjIyNDIyNTUJAQAAAAlpc1N5bWJvbEEAAAACBQAAAA0kYWNjODIyMjQyMjU1CQABkQAAAAIFAAAADSRsaXN0MjIyNDIyNTUAAAAAAAAAAAgJAAACAAAAAQIAAAASTGlzdCBzaXplIGV4Y2VlZCA4AgAAAAFBCQEAAAAQZ2V0QW1vdW50T3JDbGVhcgAAAAEJAAEsAAAAAgkAAaQAAAABBAAAAA0kbGlzdDIyOTIyMzIzBQAAAAhnZW5vdHlwZQQAAAANJHNpemUyMjkyMjMyMwkAAZAAAAABBQAAAA0kbGlzdDIyOTIyMzIzBAAAAA0kYWNjMDIyOTIyMzIzAAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTIyOTIyMzIzAAAAAAAAAAAABQAAAA0kYWNjMDIyOTIyMzIzBAAAAA0kYWNjMTIyOTIyMzIzCQEAAAAJaXNTeW1ib2xCAAAAAgUAAAANJGFjYzAyMjkyMjMyMwkAAZEAAAACBQAAAA0kbGlzdDIyOTIyMzIzAAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTIyOTIyMzIzAAAAAAAAAAABBQAAAA0kYWNjMTIyOTIyMzIzBAAAAA0kYWNjMjIyOTIyMzIzCQEAAAAJaXNTeW1ib2xCAAAAAgUAAAANJGFjYzEyMjkyMjMyMwkAAZEAAAACBQAAAA0kbGlzdDIyOTIyMzIzAAAAAAAAAAABAwkAAAAAAAACBQAAAA0kc2l6ZTIyOTIyMzIzAAAAAAAAAAACBQAAAA0kYWNjMjIyOTIyMzIzBAAAAA0kYWNjMzIyOTIyMzIzCQEAAAAJaXNTeW1ib2xCAAAAAgUAAAANJGFjYzIyMjkyMjMyMwkAAZEAAAACBQAAAA0kbGlzdDIyOTIyMzIzAAAAAAAAAAACAwkAAAAAAAACBQAAAA0kc2l6ZTIyOTIyMzIzAAAAAAAAAAADBQAAAA0kYWNjMzIyOTIyMzIzBAAAAA0kYWNjNDIyOTIyMzIzCQEAAAAJaXNTeW1ib2xCAAAAAgUAAAANJGFjYzMyMjkyMjMyMwkAAZEAAAACBQAAAA0kbGlzdDIyOTIyMzIzAAAAAAAAAAADAwkAAAAAAAACBQAAAA0kc2l6ZTIyOTIyMzIzAAAAAAAAAAAEBQAAAA0kYWNjNDIyOTIyMzIzBAAAAA0kYWNjNTIyOTIyMzIzCQEAAAAJaXNTeW1ib2xCAAAAAgUAAAANJGFjYzQyMjkyMjMyMwkAAZEAAAACBQAAAA0kbGlzdDIyOTIyMzIzAAAAAAAAAAAEAwkAAAAAAAACBQAAAA0kc2l6ZTIyOTIyMzIzAAAAAAAAAAAFBQAAAA0kYWNjNTIyOTIyMzIzBAAAAA0kYWNjNjIyOTIyMzIzCQEAAAAJaXNTeW1ib2xCAAAAAgUAAAANJGFjYzUyMjkyMjMyMwkAAZEAAAACBQAAAA0kbGlzdDIyOTIyMzIzAAAAAAAAAAAFAwkAAAAAAAACBQAAAA0kc2l6ZTIyOTIyMzIzAAAAAAAAAAAGBQAAAA0kYWNjNjIyOTIyMzIzBAAAAA0kYWNjNzIyOTIyMzIzCQEAAAAJaXNTeW1ib2xCAAAAAgUAAAANJGFjYzYyMjkyMjMyMwkAAZEAAAACBQAAAA0kbGlzdDIyOTIyMzIzAAAAAAAAAAAGAwkAAAAAAAACBQAAAA0kc2l6ZTIyOTIyMzIzAAAAAAAAAAAHBQAAAA0kYWNjNzIyOTIyMzIzBAAAAA0kYWNjODIyOTIyMzIzCQEAAAAJaXNTeW1ib2xCAAAAAgUAAAANJGFjYzcyMjkyMjMyMwkAAZEAAAACBQAAAA0kbGlzdDIyOTIyMzIzAAAAAAAAAAAHAwkAAAAAAAACBQAAAA0kc2l6ZTIyOTIyMzIzAAAAAAAAAAAIBQAAAA0kYWNjODIyOTIyMzIzBAAAAA0kYWNjOTIyOTIyMzIzCQEAAAAJaXNTeW1ib2xCAAAAAgUAAAANJGFjYzgyMjkyMjMyMwkAAZEAAAACBQAAAA0kbGlzdDIyOTIyMzIzAAAAAAAAAAAICQAAAgAAAAECAAAAEkxpc3Qgc2l6ZSBleGNlZWQgOAIAAAABQgkBAAAAEGdldEFtb3VudE9yQ2xlYXIAAAABCQABLAAAAAIJAAGkAAAAAQQAAAANJGxpc3QyMzYwMjM5MQUAAAAIZ2Vub3R5cGUEAAAADSRzaXplMjM2MDIzOTEJAAGQAAAAAQUAAAANJGxpc3QyMzYwMjM5MQQAAAANJGFjYzAyMzYwMjM5MQAAAAAAAAAAAAMJAAAAAAAAAgUAAAANJHNpemUyMzYwMjM5MQAAAAAAAAAAAAUAAAANJGFjYzAyMzYwMjM5MQQAAAANJGFjYzEyMzYwMjM5MQkBAAAACWlzU3ltYm9sQwAAAAIFAAAADSRhY2MwMjM2MDIzOTEJAAGRAAAAAgUAAAANJGxpc3QyMzYwMjM5MQAAAAAAAAAAAAMJAAAAAAAAAgUAAAANJHNpemUyMzYwMjM5MQAAAAAAAAAAAQUAAAANJGFjYzEyMzYwMjM5MQQAAAANJGFjYzIyMzYwMjM5MQkBAAAACWlzU3ltYm9sQwAAAAIFAAAADSRhY2MxMjM2MDIzOTEJAAGRAAAAAgUAAAANJGxpc3QyMzYwMjM5MQAAAAAAAAAAAQMJAAAAAAAAAgUAAAANJHNpemUyMzYwMjM5MQAAAAAAAAAAAgUAAAANJGFjYzIyMzYwMjM5MQQAAAANJGFjYzMyMzYwMjM5MQkBAAAACWlzU3ltYm9sQwAAAAIFAAAADSRhY2MyMjM2MDIzOTEJAAGRAAAAAgUAAAANJGxpc3QyMzYwMjM5MQAAAAAAAAAAAgMJAAAAAAAAAgUAAAANJHNpemUyMzYwMjM5MQAAAAAAAAAAAwUAAAANJGFjYzMyMzYwMjM5MQQAAAANJGFjYzQyMzYwMjM5MQkBAAAACWlzU3ltYm9sQwAAAAIFAAAADSRhY2MzMjM2MDIzOTEJAAGRAAAAAgUAAAANJGxpc3QyMzYwMjM5MQAAAAAAAAAAAwMJAAAAAAAAAgUAAAANJHNpemUyMzYwMjM5MQAAAAAAAAAABAUAAAANJGFjYzQyMzYwMjM5MQQAAAANJGFjYzUyMzYwMjM5MQkBAAAACWlzU3ltYm9sQwAAAAIFAAAADSRhY2M0MjM2MDIzOTEJAAGRAAAAAgUAAAANJGxpc3QyMzYwMjM5MQAAAAAAAAAABAMJAAAAAAAAAgUAAAANJHNpemUyMzYwMjM5MQAAAAAAAAAABQUAAAANJGFjYzUyMzYwMjM5MQQAAAANJGFjYzYyMzYwMjM5MQkBAAAACWlzU3ltYm9sQwAAAAIFAAAADSRhY2M1MjM2MDIzOTEJAAGRAAAAAgUAAAANJGxpc3QyMzYwMjM5MQAAAAAAAAAABQMJAAAAAAAAAgUAAAANJHNpemUyMzYwMjM5MQAAAAAAAAAABgUAAAANJGFjYzYyMzYwMjM5MQQAAAANJGFjYzcyMzYwMjM5MQkBAAAACWlzU3ltYm9sQwAAAAIFAAAADSRhY2M2MjM2MDIzOTEJAAGRAAAAAgUAAAANJGxpc3QyMzYwMjM5MQAAAAAAAAAABgMJAAAAAAAAAgUAAAANJHNpemUyMzYwMjM5MQAAAAAAAAAABwUAAAANJGFjYzcyMzYwMjM5MQQAAAANJGFjYzgyMzYwMjM5MQkBAAAACWlzU3ltYm9sQwAAAAIFAAAADSRhY2M3MjM2MDIzOTEJAAGRAAAAAgUAAAANJGxpc3QyMzYwMjM5MQAAAAAAAAAABwMJAAAAAAAAAgUAAAANJHNpemUyMzYwMjM5MQAAAAAAAAAACAUAAAANJGFjYzgyMzYwMjM5MQQAAAANJGFjYzkyMzYwMjM5MQkBAAAACWlzU3ltYm9sQwAAAAIFAAAADSRhY2M4MjM2MDIzOTEJAAGRAAAAAgUAAAANJGxpc3QyMzYwMjM5MQAAAAAAAAAACAkAAAIAAAABAgAAABJMaXN0IHNpemUgZXhjZWVkIDgCAAAAAUMJAQAAABBnZXRBbW91bnRPckNsZWFyAAAAAQkAASwAAAACCQABpAAAAAEEAAAADSRsaXN0MjQzMDI0NjEFAAAACGdlbm90eXBlBAAAAA0kc2l6ZTI0MzAyNDYxCQABkAAAAAEFAAAADSRsaXN0MjQzMDI0NjEEAAAADSRhY2MwMjQzMDI0NjEAAAAAAAAAAAADCQAAAAAAAAIFAAAADSRzaXplMjQzMDI0NjEAAAAAAAAAAAAFAAAADSRhY2MwMjQzMDI0NjEEAAAADSRhY2MxMjQzMDI0NjEJAQAAAAlpc1N5bWJvbEQAAAACBQAAAA0kYWNjMDI0MzAyNDYxCQABkQAAAAIFAAAADSRsaXN0MjQzMDI0NjEAAAAAAAAAAAADCQAAAAAAAAIFAAAADSRzaXplMjQzMDI0NjEAAAAAAAAAAAEFAAAADSRhY2MxMjQzMDI0NjEEAAAADSRhY2MyMjQzMDI0NjEJAQAAAAlpc1N5bWJvbEQAAAACBQAAAA0kYWNjMTI0MzAyNDYxCQABkQAAAAIFAAAADSRsaXN0MjQzMDI0NjEAAAAAAAAAAAEDCQAAAAAAAAIFAAAADSRzaXplMjQzMDI0NjEAAAAAAAAAAAIFAAAADSRhY2MyMjQzMDI0NjEEAAAADSRhY2MzMjQzMDI0NjEJAQAAAAlpc1N5bWJvbEQAAAACBQAAAA0kYWNjMjI0MzAyNDYxCQABkQAAAAIFAAAADSRsaXN0MjQzMDI0NjEAAAAAAAAAAAIDCQAAAAAAAAIFAAAADSRzaXplMjQzMDI0NjEAAAAAAAAAAAMFAAAADSRhY2MzMjQzMDI0NjEEAAAADSRhY2M0MjQzMDI0NjEJAQAAAAlpc1N5bWJvbEQAAAACBQAAAA0kYWNjMzI0MzAyNDYxCQABkQAAAAIFAAAADSRsaXN0MjQzMDI0NjEAAAAAAAAAAAMDCQAAAAAAAAIFAAAADSRzaXplMjQzMDI0NjEAAAAAAAAAAAQFAAAADSRhY2M0MjQzMDI0NjEEAAAADSRhY2M1MjQzMDI0NjEJAQAAAAlpc1N5bWJvbEQAAAACBQAAAA0kYWNjNDI0MzAyNDYxCQABkQAAAAIFAAAADSRsaXN0MjQzMDI0NjEAAAAAAAAAAAQDCQAAAAAAAAIFAAAADSRzaXplMjQzMDI0NjEAAAAAAAAAAAUFAAAADSRhY2M1MjQzMDI0NjEEAAAADSRhY2M2MjQzMDI0NjEJAQAAAAlpc1N5bWJvbEQAAAACBQAAAA0kYWNjNTI0MzAyNDYxCQABkQAAAAIFAAAADSRsaXN0MjQzMDI0NjEAAAAAAAAAAAUDCQAAAAAAAAIFAAAADSRzaXplMjQzMDI0NjEAAAAAAAAAAAYFAAAADSRhY2M2MjQzMDI0NjEEAAAADSRhY2M3MjQzMDI0NjEJAQAAAAlpc1N5bWJvbEQAAAACBQAAAA0kYWNjNjI0MzAyNDYxCQABkQAAAAIFAAAADSRsaXN0MjQzMDI0NjEAAAAAAAAAAAYDCQAAAAAAAAIFAAAADSRzaXplMjQzMDI0NjEAAAAAAAAAAAcFAAAADSRhY2M3MjQzMDI0NjEEAAAADSRhY2M4MjQzMDI0NjEJAQAAAAlpc1N5bWJvbEQAAAACBQAAAA0kYWNjNzI0MzAyNDYxCQABkQAAAAIFAAAADSRsaXN0MjQzMDI0NjEAAAAAAAAAAAcDCQAAAAAAAAIFAAAADSRzaXplMjQzMDI0NjEAAAAAAAAAAAgFAAAADSRhY2M4MjQzMDI0NjEEAAAADSRhY2M5MjQz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MjI2MzYyNjY3CQABkQAAAAIFAAAADSRsaXN0MjYzNjI2NjcAAAAAAAAAAAIDCQAAAAAAAAIFAAAADSRzaXplMjYzNjI2NjcAAAAAAAAAAAMFAAAADSRhY2MzMjYzNjI2NjcEAAAADSRhY2M0MjYzNjI2NjcJAQAAAAlpc1N5bWJvbEcAAAACBQAAAA0kYWNjMzI2MzYyNjY3CQABkQAAAAIFAAAADSRsaXN0MjYzNjI2NjcAAAAAAAAAAAMDCQAAAAAAAAIFAAAADSRzaXplMjYzNjI2NjcAAAAAAAAAAAQFAAAADSRhY2M0MjYzNjI2NjcEAAAADSRhY2M1MjYzNjI2NjcJAQAAAAlpc1N5bWJvbEcAAAACBQAAAA0kYWNjNDI2MzYyNjY3CQABkQAAAAIFAAAADSRsaXN0MjYzNjI2NjcAAAAAAAAAAAQDCQAAAAAAAAIFAAAADSRzaXplMjYzNjI2NjcAAAAAAAAAAAUFAAAADSRhY2M1MjYzNjI2NjcEAAAADSRhY2M2MjYzNjI2NjcJAQAAAAlpc1N5bWJvbEcAAAACBQAAAA0kYWNjNTI2MzYyNjY3CQABkQAAAAIFAAAADSRsaXN0MjYzNjI2NjcAAAAAAAAAAAUDCQAAAAAAAAIFAAAADSRzaXplMjYzNjI2NjcAAAAAAAAAAAYFAAAADSRhY2M2MjYzNjI2NjcEAAAADSRhY2M3MjYzNjI2NjcJAQAAAAlpc1N5bWJvbEcAAAACBQAAAA0kYWNjNjI2MzYyNjY3CQABkQAAAAIFAAAADSRsaXN0MjYzNjI2NjcAAAAAAAAAAAYDCQAAAAAAAAIFAAAADSRzaXplMjYzNjI2NjcAAAAAAAAAAAcFAAAADSRhY2M3MjYzNjI2NjcEAAAADSRhY2M4MjYzNjI2NjcJAQAAAAlpc1N5bWJvbEcAAAACBQAAAA0kYWNjNzI2MzYyNjY3CQABkQAAAAIFAAAADSRsaXN0MjYzNjI2NjcAAAAAAAAAAAcDCQAAAAAAAAIFAAAADSRzaXplMjYzNjI2NjcAAAAAAAAAAAgFAAAADSRhY2M4MjYzNjI2NjcEAAAADSRhY2M5MjYzNjI2NjcJAQAAAAlpc1N5bWJvbEcAAAACBQAAAA0kYWNjODI2MzYyNjY3CQABkQAAAAIFAAAADSRsaXN0MjYzNjI2NjcA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ZW4EAAAAAXMJAQAAAAx0cnlHZXRTdHJpbmcAAAABCQABLAAAAAICAAAAB2Fzc2V0c18FAAAAA2dlbgMJAAAAAAAAAgUAAAABcwIAAAAABQAAAANuaWwJAAS1AAAAAgUAAAABcwIAAAABLAEAAAAMY2FsY0ludGVyZXN0AAAAAwAAABBwcmV2aW91c0ludGVyZXN0AAAAFnByZXZpb3VzSW50ZXJlc3RIZWlnaHQAAAARdG90YWxGYXJtaW5nUG93ZXIJAABkAAAAAgUAAAAQcHJldmlvdXNJbnRlcmVzdAkAAGkAAAACCQAAaAAAAAIJAABoAAAAAgUAAAAFc2NhbGUJAQAAABFnZXRSZXdhcmRQZXJCbG9jawAAAAAJAABlAAAAAgUAAAAGaGVpZ2h0BQAAABZwcmV2aW91c0ludGVyZXN0SGVpZ2h0BQAAABF0b3RhbEZhcm1pbmdQb3dlcgEAAAASZ2V0Q3VycmVudEludGVyZXN0AAAAAAMJAABmAAAAAgkBAAAADXRyeUdldEludGVnZXIAAAABAgAAABJ0b3RhbF9mYXJtaW5nUG93ZXIAAAAAAAAAAAAEAAAAEHByZXZpb3VzSW50ZXJlc3QJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQIAAAAXdG90YWxfbGFzdENoZWNrSW50ZXJlc3QEAAAAFnByZXZpb3VzSW50ZXJlc3RIZWlnaHQJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQIAAAAddG90YWxfbGFzdENoZWNrSW50ZXJlc3RIZWlnaHQEAAAAEXRvdGFsRmFybWluZ1Bvd2VyCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAECAAAAEnRvdGFsX2Zhcm1pbmdQb3dlcgkBAAAADGNhbGNJbnRlcmVzdAAAAAMFAAAAEHByZXZpb3VzSW50ZXJlc3QFAAAAFnByZXZpb3VzSW50ZXJlc3RIZWlnaHQFAAAAEXRvdGFsRmFybWluZ1Bvd2VyAwkBAAAAAiE9AAAAAgkBAAAADXRyeUdldEludGVnZXIAAAABAgAAABF0b3RhbF9zdGFydEhlaWdodAAAAAAAAAAAAAkBAAAADXRyeUdldEludGVnZXIAAAABAgAAABd0b3RhbF9sYXN0Q2hlY2tJbnRlcmVzdAkAAAIAAAABAgAAABxmYXJtaW5nIGlzIG5vdCBsYXVuY2hlZCwgeWV0AQAAABRjYWxjQXNzZXRSZXdhcmREZWx0YQAAAAMAAAAHYWRkcmVzcwAAAAdhc3NldElkAAAAEWFzc2V0RmFybWluZ1Bvd2VyBAAAABZsYXN0Q2hlY2tBc3NldEludGVyZXN0CQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIYWRkcmVzc18FAAAAB2FkZHJlc3MCAAAAB19hc3NldF8FAAAAB2Fzc2V0SWQCAAAAEl9sYXN0Q2hlY2tJbnRlcmVzdAQAAAAPY3VycmVudEludGVyZXN0CQEAAAASZ2V0Q3VycmVudEludGVyZXN0AAAAAAkAAGgAAAACBQAAABFhc3NldEZhcm1pbmdQb3dlcgkAAGUAAAACBQAAAA9jdXJyZW50SW50ZXJlc3QFAAAAFmxhc3RDaGVja0Fzc2V0SW50ZXJlc3QBAAAAFGFkZEFzc2V0SWRUb0dlbkVudHJ5AAAAAgAAAAdhc3NldElkAAAACGFzc2V0R2VuBAAAAAxjdXJyZW50VmFsdWUJAQAAAAx0cnlHZXRTdHJpbmcAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAHYXNzZXRzXwUAAAAIYXNzZXRHZW4CAAAAB19sb2NrZWQDCQAAAAAAAAIFAAAADGN1cnJlbnRWYWx1ZQIAAAAABQAAAAdhc3NldElkCQABLAAAAAIJAAEsAAAAAgUAAAAMY3VycmVudFZhbHVlAgAAAAEsBQAAAAdhc3NldElkAQAAAA5nZXRTdGFrZVJlc3VsdAAAAAMAAAAHYWRkcmVzcwAAAAdhc3NldElkAAAAEWFzc2V0RmFybWluZ1Bvd2VyBAAAAAVhc3NldAkAAlgAAAABBQAAAAdhc3NldElkCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABJ0b3RhbF9mYXJtaW5nUG93ZXIJAABkAAAAAgkBAAAADXRyeUdldEludGVnZXIAAAABAgAAABJ0b3RhbF9mYXJtaW5nUG93ZXIFAAAAEWFzc2V0RmFybWluZ1Bvd2VyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABd0b3RhbF9sYXN0Q2hlY2tJbnRlcmVzdAkBAAAAEmdldEN1cnJlbnRJbnRlcmVzdAAAAAAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAHXRvdGFsX2xhc3RDaGVja0ludGVyZXN0SGVpZ2h0BQAAAAZoZWlnaHQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIYWRkcmVzc18FAAAAB2FkZHJlc3MCAAAAB19hc3NldF8FAAAABWFzc2V0AgAAAA1fZmFybWluZ1Bvd2VyBQAAABFhc3NldEZhcm1pbmdQb3dlcgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhhZGRyZXNzXwUAAAAHYWRkcmVzcwIAAAAHX2Fzc2V0XwUAAAAFYXNzZXQCAAAAEl9sYXN0Q2hlY2tJbnRlcmVzdAkBAAAAEmdldEN1cnJlbnRJbnRlcmVzdAAAAAAFAAAAA25pbAEAAAAQZ2V0VW5zdGFrZVJlc3VsdAAAAAUAAAAHYWRkcmVzcwAAAAdhc3NldElkAAAAC3Jld2FyZERlbHRhAAAAD3dpdGhkcmF3bkFtb3VudAAAABFhc3NldEZhcm1pbmdQb3dlcgQAAAAFYXNzZXQJAAJYAAAAAQUAAAAHYXNzZXRJZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAASdG90YWxfZmFybWluZ1Bvd2VyCQAAZQAAAAIJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQIAAAASdG90YWxfZmFybWluZ1Bvd2VyBQAAABFhc3NldEZhcm1pbmdQb3dlcgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAXdG90YWxfbGFzdENoZWNrSW50ZXJlc3QJAQAAABJnZXRDdXJyZW50SW50ZXJlc3QAAAAACQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAB10b3RhbF9sYXN0Q2hlY2tJbnRlcmVzdEhlaWdodAUAAAAGaGVpZ2h0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACGFkZHJlc3NfBQAAAAdhZGRyZXNzAgAAAAdfYXNzZXRfBQAAAAVhc3NldAIAAAANX2Zhcm1pbmdQb3dlcgAAAAAAAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhhZGRyZXNzXwUAAAAHYWRkcmVzcwIAAAAHX2Fzc2V0XwUAAAAFYXNzZXQCAAAAEl9sYXN0Q2hlY2tJbnRlcmVzdAkBAAAAEmdldEN1cnJlbnRJbnRlcmVzdAAAAAAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIYWRkcmVzc18FAAAAB2FkZHJlc3MCAAAAB19hc3NldF8FAAAABWFzc2V0AgAAABBfd2l0aGRyYXduQW1vdW50CQAAZAAAAAIJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhhZGRyZXNzXwUAAAAHYWRkcmVzcwIAAAAHX2Fzc2V0XwUAAAAFYXNzZXQCAAAAEF93aXRoZHJhd25BbW91bnQJAABoAAAAAgUAAAAPd2l0aGRyYXduQW1vdW50BQAAAAZzY2FsZTIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIYWRkcmVzc18FAAAAB2FkZHJlc3MCAAAAB19hc3NldF8FAAAABWFzc2V0AgAAABZfbGFzdENoZWNrRmFybWVkQW1vdW50CQAAZAAAAAIJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhhZGRyZXNzXwUAAAAHYWRkcmVzcwIAAAAHX2Fzc2V0XwUAAAAFYXNzZXQCAAAAFl9sYXN0Q2hlY2tGYXJtZWRBbW91bnQFAAAAC3Jld2FyZERlbHRhBQAAAANuaWwAAAAIAAAAAWkBAAAABGluaXQAAAAAAwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAR0aGlzCQAAAgAAAAECAAAACmFkbWluIG9ubHkJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAEXRvdGFsX3N0YXJ0SGVpZ2h0BQAAAAZoZWlnaHQFAAAAA25pbAAAAAFpAQAAAAhidXlQZXJjaAAAAAIAAAAFY29sb3IAAAAOcmVmZXJlckFkZHJlc3MDCQAAZgAAAAIJAQAAAAhpc0xvY2tlZAAAAAAAAAAAAAAAAAAJAAACAAAAAQIAAAAlRUdHIG9wZXJhdGlvbnMgYXJlIHRlbXBvcmFyaWx5IGxvY2tlZAMJAABmAAAAAgAAAAAAAAAAAAkBAAAABXZhbHVlAAAAAQkABE8AAAACCQAETAAAAAICAAAAAUIJAARMAAAAAgIAAAABUgkABEwAAAACAgAAAAFHCQAETAAAAAICAAAAAVkFAAAAA25pbAUAAAAFY29sb3IJAAACAAAAAQIAAAAeeW91IG5lZWQgdG8gc2V0IGNvbG9yIHByb3Blcmx5BAAAAAxmaXJzdFBheW1lbnQJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAADCQEAAAACIT0AAAACCAUAAAAMZmlyc3RQYXltZW50AAAAB2Fzc2V0SWQFAAAAC2VnZ3NBc3NldElkCQAAAgAAAAEJAAEsAAAAAgIAAAA8WW91IGNhbiBhdHRhY2ggb25seSBFR0cgdG9rZW5zIHdpdGggdGhlIGZvbGxvd2luZyBhc3NldCBpZDogCQACWAAAAAEFAAAAC2VnZ3NBc3NldElkAwkBAAAAAiE9AAAAAggFAAAADGZpcnN0UGF5bWVudAAAAAZhbW91bnQFAAAACnBlcmNoUHJpY2UJAAACAAAAAQkAASwAAAACAgAAAENUbyBidXkgYSBwZXJjaCB5b3UgY3VycmVudGx5IG5lZWQgdGhlIGZvbGxvd2luZyBhbW91bnQgb2YgRUdHbGV0czogCQABpAAAAAEFAAAACnBlcmNoUHJpY2UEAAAAFXJlZmVyZXJSZXdhcmRGb3JQZXJjaAkAAGsAAAADCAUAAAAMZmlyc3RQYXltZW50AAAABmFtb3VudAUAAAANUmVmZXJlclJld2FyZAAAAAAAAAAAZAQAAAAHcmVmQ2FsbAkAA/wAAAAECQEAAAAHQWRkcmVzcwAAAAEFAAAAEnJlZkNvbnRyYWN0QWRkcmVzcwIAAAAKcmVmUGF5bWVudAkABEwAAAACBQAAAA5yZWZlcmVyQWRkcmVzcwUAAAADbmlsCQAETAAAAAIJAQAAAA9BdHRhY2hlZFBheW1lbnQAAAACBQAAAAtlZ2dzQXNzZXRJZAUAAAAVcmVmZXJlclJld2FyZEZvclBlcmNoBQAAAANuaWwDCQAAAAAAAAIFAAAAB3JlZkNhbGwFAAAAB3JlZkNhbGwEAAAADnBlcmNoQW1vdW50S2V5CQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhhZGRyZXNzXwkABCUAAAABCAUAAAABaQAAAAZjYWxsZXICAAAAEl9wZXJjaGVzQXZhaWxhYmxlXwUAAAAFY29sb3IEAAAAC3BlcmNoQW1vdW50CQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEFAAAADnBlcmNoQW1vdW50S2V5CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA5wZXJjaEFtb3VudEtleQkAAGQAAAACBQAAAAtwZXJjaEFtb3VudAAAAAAAAAAAAQUAAAADbmlsCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAAFpAQAAAAxhZGRGcmVlUGVyY2gAAAACAAAAB2FkZHJlc3MAAAAFY29sb3IDCQAAZgAAAAIAAAAAAAAAAAAJAQAAAAV2YWx1ZQAAAAEJAARPAAAAAgkABEwAAAACAgAAAAFCCQAETAAAAAICAAAAAVIJAARMAAAAAgIAAAABRwkABEwAAAACAgAAAAFZBQAAAANuaWwFAAAABWNvbG9yCQAAAgAAAAECAAAAHnlvdSBuZWVkIHRvIHNldCBjb2xvciBwcm9wZXJseQMDCQEAAAACIT0AAAACCAUAAAABaQAAAAZjYWxsZXIJAQAAAAdBZGRyZXNzAAAAAQUAAAAOcmViaXJ0aEFkZHJlc3MJAQAAAAIhPQAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAEdGhpcwcJAAACAAAAAQIAAAAMcmViaXJ0aCBvbmx5BAAAAA5wZXJjaEFtb3VudEtleQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIYWRkcmVzc18FAAAAB2FkZHJlc3MCAAAAEl9wZXJjaGVzQXZhaWxhYmxlXwUAAAAFY29sb3IEAAAAC3BlcmNoQW1vdW50CQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEFAAAADnBlcmNoQW1vdW50S2V5CQAFFAAAAAIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAADnBlcmNoQW1vdW50S2V5CQAAZAAAAAIFAAAAC3BlcmNoQW1vdW50AAAAAAAAAAABBQAAAANuaWwCAAAAAAAAAAFpAQAAAAhzdGFrZU5GVAAAAAADCQAAZgAAAAIJAQAAAAhpc0xvY2tlZAAAAAAAAAAAAAAAAAAJAAACAAAAAQIAAAAlRUdHIG9wZXJhdGlvbnMgYXJlIHRlbXBvcmFyaWx5IGxvY2tlZAQAAAAHYXNzZXRJZAkBAAAABXZhbHVlAAAAAQgJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAHYXNzZXRJZAQAAAAHYWRkcmVzcwkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAABWNvbG9yCQEAAAAJdGFrZVJpZ2h0AAAAAggJAQAAAAV2YWx1ZQAAAAEJAAPsAAAAAQUAAAAHYXNzZXRJZAAAAARuYW1lAAAAAAAAAAABBAAAABBhdmFpbGFibGVQZXJjaGVzCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACGFkZHJlc3NfCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgIAAAASX3BlcmNoZXNBdmFpbGFibGVfBQAAAAVjb2xvcgMJAABnAAAAAgAAAAAAAAAAAAUAAAAQYXZhaWxhYmxlUGVyY2hlcwkAAAIAAAABCQABLAAAAAICAAAAI25vIHBlcmNoZXMgYXZhaWxhYmxlIGZvciB0aGUgY29sb3IgBQAAAAVjb2xvcgQAAAALJHQwODk5MzkwNTgJAQAAABRnZXRBc3NldEZhcm1pbmdQb3dlcgAAAAEFAAAAB2Fzc2V0SWQEAAAACGFzc2V0R2VuCAUAAAALJHQwODk5MzkwNTgAAAACXzEEAAAAEWFzc2V0RmFybWluZ1Bvd2VyCAUAAAALJHQwODk5MzkwNTgAAAACXzIEAAAAEGFzc2V0UmV3YXJkRGVsdGEJAQAAABRjYWxjQXNzZXRSZXdhcmREZWx0YQAAAAMFAAAAB2FkZHJlc3MJAAJYAAAAAQUAAAAHYXNzZXRJZAUAAAARYXNzZXRGYXJtaW5nUG93ZXIJAAROAAAAAgkBAAAADmdldFN0YWtlUmVzdWx0AAAAAwUAAAAHYWRkcmVzcwUAAAAHYXNzZXRJZAUAAAARYXNzZXRGYXJtaW5nUG93ZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACGFkZHJlc3NfCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgIAAAASX3BlcmNoZXNBdmFpbGFibGVfBQAAAAVjb2xvcgkAAGUAAAACBQAAABBhdmFpbGFibGVQZXJjaGVzAAAAAAAAAAABBQAAAANuaWwAAAABaQEAAAAKdW5zdGFrZU5GVAAAAAEAAAAFYXNzZXQDCQAAZgAAAAIJAQAAAAhpc0xvY2tlZAAAAAAAAAAAAAAAAAAJAAACAAAAAQIAAAAlRUdHIG9wZXJhdGlvbnMgYXJlIHRlbXBvcmFyaWx5IGxvY2tlZAQAAAAHYXNzZXRJZAkAAlkAAAABBQAAAAVhc3NldAQAAAAHYWRkcmVzcwkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAEWFzc2V0RmFybWluZ1Bvd2VyCQEAAAAdZ2V0TGFzdEtub3duQXNzZXRGYXJtaW5nUG93ZXIAAAACBQAAAAdhZGRyZXNzBQAAAAVhc3NldAQAAAAQYXNzZXRSZXdhcmREZWx0YQkBAAAAFGNhbGNBc3NldFJld2FyZERlbHRhAAAAAwUAAAAHYWRkcmVzcwUAAAAFYXNzZXQFAAAAEWFzc2V0RmFybWluZ1Bvd2VyBAAAAAxmYXJtZWRBbW91bnQJAABkAAAAAgUAAAAQYXNzZXRSZXdhcmREZWx0YQkBAAAADXRyeUdldEludGVnZXIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACGFkZHJlc3NfBQAAAAdhZGRyZXNzAgAAAAdfYXNzZXRfBQAAAAVhc3NldAIAAAAWX2xhc3RDaGVja0Zhcm1lZEFtb3VudAQAAAAP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", "height": 2767828, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BeqMr7KtTHcN1tLpcaSLnqbbvboLCAmEGHnzKCqMDZcy Next: E8natWzahpKPt8XLeBjqAZgMJyY4E6Ked8RfE6QsPXwU Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let eggsAssetId = base58'53bLXGQhnMxAoiWnza2SJQRp7hNQZVHnyrRziLmwdVjb'
4+let eggsAssetId = base58'3v7zGkeHS6KrsvmTRzEzvCxm5cdzkCtM7z5cM6efcjCB'
55
6-let perchPrice = 100
6+let perchPrice = (100 * 1000000)
77
88 let scale = 10000
99
9999 func getGen (assetName) = {
100100 let genotype = split(dropRight(drop(assetName, 5), 3), "")
101101 (((((((getAmountOrClear((toString({
102- let $list22142245 = genotype
103- let $size22142245 = size($list22142245)
104- let $acc022142245 = 0
105- if (($size22142245 == 0))
106- then $acc022142245
102+ let $list22242255 = genotype
103+ let $size22242255 = size($list22242255)
104+ let $acc022242255 = 0
105+ if (($size22242255 == 0))
106+ then $acc022242255
107107 else {
108- let $acc122142245 = isSymbolA($acc022142245, $list22142245[0])
109- if (($size22142245 == 1))
110- then $acc122142245
108+ let $acc122242255 = isSymbolA($acc022242255, $list22242255[0])
109+ if (($size22242255 == 1))
110+ then $acc122242255
111111 else {
112- let $acc222142245 = isSymbolA($acc122142245, $list22142245[1])
113- if (($size22142245 == 2))
114- then $acc222142245
112+ let $acc222242255 = isSymbolA($acc122242255, $list22242255[1])
113+ if (($size22242255 == 2))
114+ then $acc222242255
115115 else {
116- let $acc322142245 = isSymbolA($acc222142245, $list22142245[2])
117- if (($size22142245 == 3))
118- then $acc322142245
116+ let $acc322242255 = isSymbolA($acc222242255, $list22242255[2])
117+ if (($size22242255 == 3))
118+ then $acc322242255
119119 else {
120- let $acc422142245 = isSymbolA($acc322142245, $list22142245[3])
121- if (($size22142245 == 4))
122- then $acc422142245
120+ let $acc422242255 = isSymbolA($acc322242255, $list22242255[3])
121+ if (($size22242255 == 4))
122+ then $acc422242255
123123 else {
124- let $acc522142245 = isSymbolA($acc422142245, $list22142245[4])
125- if (($size22142245 == 5))
126- then $acc522142245
124+ let $acc522242255 = isSymbolA($acc422242255, $list22242255[4])
125+ if (($size22242255 == 5))
126+ then $acc522242255
127127 else {
128- let $acc622142245 = isSymbolA($acc522142245, $list22142245[5])
129- if (($size22142245 == 6))
130- then $acc622142245
128+ let $acc622242255 = isSymbolA($acc522242255, $list22242255[5])
129+ if (($size22242255 == 6))
130+ then $acc622242255
131131 else {
132- let $acc722142245 = isSymbolA($acc622142245, $list22142245[6])
133- if (($size22142245 == 7))
134- then $acc722142245
132+ let $acc722242255 = isSymbolA($acc622242255, $list22242255[6])
133+ if (($size22242255 == 7))
134+ then $acc722242255
135135 else {
136- let $acc822142245 = isSymbolA($acc722142245, $list22142245[7])
137- if (($size22142245 == 8))
138- then $acc822142245
136+ let $acc822242255 = isSymbolA($acc722242255, $list22242255[7])
137+ if (($size22242255 == 8))
138+ then $acc822242255
139139 else {
140- let $acc922142245 = isSymbolA($acc822142245, $list22142245[8])
140+ let $acc922242255 = isSymbolA($acc822242255, $list22242255[8])
141141 throw("List size exceed 8")
142142 }
143143 }
149149 }
150150 }
151151 }) + "A")) + getAmountOrClear((toString({
152- let $list22822313 = genotype
153- let $size22822313 = size($list22822313)
154- let $acc022822313 = 0
155- if (($size22822313 == 0))
156- then $acc022822313
152+ let $list22922323 = genotype
153+ let $size22922323 = size($list22922323)
154+ let $acc022922323 = 0
155+ if (($size22922323 == 0))
156+ then $acc022922323
157157 else {
158- let $acc122822313 = isSymbolB($acc022822313, $list22822313[0])
159- if (($size22822313 == 1))
160- then $acc122822313
158+ let $acc122922323 = isSymbolB($acc022922323, $list22922323[0])
159+ if (($size22922323 == 1))
160+ then $acc122922323
161161 else {
162- let $acc222822313 = isSymbolB($acc122822313, $list22822313[1])
163- if (($size22822313 == 2))
164- then $acc222822313
162+ let $acc222922323 = isSymbolB($acc122922323, $list22922323[1])
163+ if (($size22922323 == 2))
164+ then $acc222922323
165165 else {
166- let $acc322822313 = isSymbolB($acc222822313, $list22822313[2])
167- if (($size22822313 == 3))
168- then $acc322822313
166+ let $acc322922323 = isSymbolB($acc222922323, $list22922323[2])
167+ if (($size22922323 == 3))
168+ then $acc322922323
169169 else {
170- let $acc422822313 = isSymbolB($acc322822313, $list22822313[3])
171- if (($size22822313 == 4))
172- then $acc422822313
170+ let $acc422922323 = isSymbolB($acc322922323, $list22922323[3])
171+ if (($size22922323 == 4))
172+ then $acc422922323
173173 else {
174- let $acc522822313 = isSymbolB($acc422822313, $list22822313[4])
175- if (($size22822313 == 5))
176- then $acc522822313
174+ let $acc522922323 = isSymbolB($acc422922323, $list22922323[4])
175+ if (($size22922323 == 5))
176+ then $acc522922323
177177 else {
178- let $acc622822313 = isSymbolB($acc522822313, $list22822313[5])
179- if (($size22822313 == 6))
180- then $acc622822313
178+ let $acc622922323 = isSymbolB($acc522922323, $list22922323[5])
179+ if (($size22922323 == 6))
180+ then $acc622922323
181181 else {
182- let $acc722822313 = isSymbolB($acc622822313, $list22822313[6])
183- if (($size22822313 == 7))
184- then $acc722822313
182+ let $acc722922323 = isSymbolB($acc622922323, $list22922323[6])
183+ if (($size22922323 == 7))
184+ then $acc722922323
185185 else {
186- let $acc822822313 = isSymbolB($acc722822313, $list22822313[7])
187- if (($size22822313 == 8))
188- then $acc822822313
186+ let $acc822922323 = isSymbolB($acc722922323, $list22922323[7])
187+ if (($size22922323 == 8))
188+ then $acc822922323
189189 else {
190- let $acc922822313 = isSymbolB($acc822822313, $list22822313[8])
190+ let $acc922922323 = isSymbolB($acc822922323, $list22922323[8])
191191 throw("List size exceed 8")
192192 }
193193 }
199199 }
200200 }
201201 }) + "B"))) + getAmountOrClear((toString({
202- let $list23502381 = genotype
203- let $size23502381 = size($list23502381)
204- let $acc023502381 = 0
205- if (($size23502381 == 0))
206- then $acc023502381
202+ let $list23602391 = genotype
203+ let $size23602391 = size($list23602391)
204+ let $acc023602391 = 0
205+ if (($size23602391 == 0))
206+ then $acc023602391
207207 else {
208- let $acc123502381 = isSymbolC($acc023502381, $list23502381[0])
209- if (($size23502381 == 1))
210- then $acc123502381
208+ let $acc123602391 = isSymbolC($acc023602391, $list23602391[0])
209+ if (($size23602391 == 1))
210+ then $acc123602391
211211 else {
212- let $acc223502381 = isSymbolC($acc123502381, $list23502381[1])
213- if (($size23502381 == 2))
214- then $acc223502381
212+ let $acc223602391 = isSymbolC($acc123602391, $list23602391[1])
213+ if (($size23602391 == 2))
214+ then $acc223602391
215215 else {
216- let $acc323502381 = isSymbolC($acc223502381, $list23502381[2])
217- if (($size23502381 == 3))
218- then $acc323502381
216+ let $acc323602391 = isSymbolC($acc223602391, $list23602391[2])
217+ if (($size23602391 == 3))
218+ then $acc323602391
219219 else {
220- let $acc423502381 = isSymbolC($acc323502381, $list23502381[3])
221- if (($size23502381 == 4))
222- then $acc423502381
220+ let $acc423602391 = isSymbolC($acc323602391, $list23602391[3])
221+ if (($size23602391 == 4))
222+ then $acc423602391
223223 else {
224- let $acc523502381 = isSymbolC($acc423502381, $list23502381[4])
225- if (($size23502381 == 5))
226- then $acc523502381
224+ let $acc523602391 = isSymbolC($acc423602391, $list23602391[4])
225+ if (($size23602391 == 5))
226+ then $acc523602391
227227 else {
228- let $acc623502381 = isSymbolC($acc523502381, $list23502381[5])
229- if (($size23502381 == 6))
230- then $acc623502381
228+ let $acc623602391 = isSymbolC($acc523602391, $list23602391[5])
229+ if (($size23602391 == 6))
230+ then $acc623602391
231231 else {
232- let $acc723502381 = isSymbolC($acc623502381, $list23502381[6])
233- if (($size23502381 == 7))
234- then $acc723502381
232+ let $acc723602391 = isSymbolC($acc623602391, $list23602391[6])
233+ if (($size23602391 == 7))
234+ then $acc723602391
235235 else {
236- let $acc823502381 = isSymbolC($acc723502381, $list23502381[7])
237- if (($size23502381 == 8))
238- then $acc823502381
236+ let $acc823602391 = isSymbolC($acc723602391, $list23602391[7])
237+ if (($size23602391 == 8))
238+ then $acc823602391
239239 else {
240- let $acc923502381 = isSymbolC($acc823502381, $list23502381[8])
240+ let $acc923602391 = isSymbolC($acc823602391, $list23602391[8])
241241 throw("List size exceed 8")
242242 }
243243 }
249249 }
250250 }
251251 }) + "C"))) + getAmountOrClear((toString({
252- let $list24202451 = genotype
253- let $size24202451 = size($list24202451)
254- let $acc024202451 = 0
255- if (($size24202451 == 0))
256- then $acc024202451
252+ let $list24302461 = genotype
253+ let $size24302461 = size($list24302461)
254+ let $acc024302461 = 0
255+ if (($size24302461 == 0))
256+ then $acc024302461
257257 else {
258- let $acc124202451 = isSymbolD($acc024202451, $list24202451[0])
259- if (($size24202451 == 1))
260- then $acc124202451
258+ let $acc124302461 = isSymbolD($acc024302461, $list24302461[0])
259+ if (($size24302461 == 1))
260+ then $acc124302461
261261 else {
262- let $acc224202451 = isSymbolD($acc124202451, $list24202451[1])
263- if (($size24202451 == 2))
264- then $acc224202451
262+ let $acc224302461 = isSymbolD($acc124302461, $list24302461[1])
263+ if (($size24302461 == 2))
264+ then $acc224302461
265265 else {
266- let $acc324202451 = isSymbolD($acc224202451, $list24202451[2])
267- if (($size24202451 == 3))
268- then $acc324202451
266+ let $acc324302461 = isSymbolD($acc224302461, $list24302461[2])
267+ if (($size24302461 == 3))
268+ then $acc324302461
269269 else {
270- let $acc424202451 = isSymbolD($acc324202451, $list24202451[3])
271- if (($size24202451 == 4))
272- then $acc424202451
270+ let $acc424302461 = isSymbolD($acc324302461, $list24302461[3])
271+ if (($size24302461 == 4))
272+ then $acc424302461
273273 else {
274- let $acc524202451 = isSymbolD($acc424202451, $list24202451[4])
275- if (($size24202451 == 5))
276- then $acc524202451
274+ let $acc524302461 = isSymbolD($acc424302461, $list24302461[4])
275+ if (($size24302461 == 5))
276+ then $acc524302461
277277 else {
278- let $acc624202451 = isSymbolD($acc524202451, $list24202451[5])
279- if (($size24202451 == 6))
280- then $acc624202451
278+ let $acc624302461 = isSymbolD($acc524302461, $list24302461[5])
279+ if (($size24302461 == 6))
280+ then $acc624302461
281281 else {
282- let $acc724202451 = isSymbolD($acc624202451, $list24202451[6])
283- if (($size24202451 == 7))
284- then $acc724202451
282+ let $acc724302461 = isSymbolD($acc624302461, $list24302461[6])
283+ if (($size24302461 == 7))
284+ then $acc724302461
285285 else {
286- let $acc824202451 = isSymbolD($acc724202451, $list24202451[7])
287- if (($size24202451 == 8))
288- then $acc824202451
286+ let $acc824302461 = isSymbolD($acc724302461, $list24302461[7])
287+ if (($size24302461 == 8))
288+ then $acc824302461
289289 else {
290- let $acc924202451 = isSymbolD($acc824202451, $list24202451[8])
290+ let $acc924302461 = isSymbolD($acc824302461, $list24302461[8])
291291 throw("List size exceed 8")
292292 }
293293 }
299299 }
300300 }
301301 }) + "D"))) + getAmountOrClear((toString({
302- let $list24882519 = genotype
303- let $size24882519 = size($list24882519)
304- let $acc024882519 = 0
305- if (($size24882519 == 0))
306- then $acc024882519
302+ let $list24982529 = genotype
303+ let $size24982529 = size($list24982529)
304+ let $acc024982529 = 0
305+ if (($size24982529 == 0))
306+ then $acc024982529
307307 else {
308- let $acc124882519 = isSymbolE($acc024882519, $list24882519[0])
309- if (($size24882519 == 1))
310- then $acc124882519
308+ let $acc124982529 = isSymbolE($acc024982529, $list24982529[0])
309+ if (($size24982529 == 1))
310+ then $acc124982529
311311 else {
312- let $acc224882519 = isSymbolE($acc124882519, $list24882519[1])
313- if (($size24882519 == 2))
314- then $acc224882519
312+ let $acc224982529 = isSymbolE($acc124982529, $list24982529[1])
313+ if (($size24982529 == 2))
314+ then $acc224982529
315315 else {
316- let $acc324882519 = isSymbolE($acc224882519, $list24882519[2])
317- if (($size24882519 == 3))
318- then $acc324882519
316+ let $acc324982529 = isSymbolE($acc224982529, $list24982529[2])
317+ if (($size24982529 == 3))
318+ then $acc324982529
319319 else {
320- let $acc424882519 = isSymbolE($acc324882519, $list24882519[3])
321- if (($size24882519 == 4))
322- then $acc424882519
320+ let $acc424982529 = isSymbolE($acc324982529, $list24982529[3])
321+ if (($size24982529 == 4))
322+ then $acc424982529
323323 else {
324- let $acc524882519 = isSymbolE($acc424882519, $list24882519[4])
325- if (($size24882519 == 5))
326- then $acc524882519
324+ let $acc524982529 = isSymbolE($acc424982529, $list24982529[4])
325+ if (($size24982529 == 5))
326+ then $acc524982529
327327 else {
328- let $acc624882519 = isSymbolE($acc524882519, $list24882519[5])
329- if (($size24882519 == 6))
330- then $acc624882519
328+ let $acc624982529 = isSymbolE($acc524982529, $list24982529[5])
329+ if (($size24982529 == 6))
330+ then $acc624982529
331331 else {
332- let $acc724882519 = isSymbolE($acc624882519, $list24882519[6])
333- if (($size24882519 == 7))
334- then $acc724882519
332+ let $acc724982529 = isSymbolE($acc624982529, $list24982529[6])
333+ if (($size24982529 == 7))
334+ then $acc724982529
335335 else {
336- let $acc824882519 = isSymbolE($acc724882519, $list24882519[7])
337- if (($size24882519 == 8))
338- then $acc824882519
336+ let $acc824982529 = isSymbolE($acc724982529, $list24982529[7])
337+ if (($size24982529 == 8))
338+ then $acc824982529
339339 else {
340- let $acc924882519 = isSymbolE($acc824882519, $list24882519[8])
340+ let $acc924982529 = isSymbolE($acc824982529, $list24982529[8])
341341 throw("List size exceed 8")
342342 }
343343 }
349349 }
350350 }
351351 }) + "E"))) + getAmountOrClear((toString({
352- let $list25562587 = genotype
353- let $size25562587 = size($list25562587)
354- let $acc025562587 = 0
355- if (($size25562587 == 0))
356- then $acc025562587
352+ let $list25662597 = genotype
353+ let $size25662597 = size($list25662597)
354+ let $acc025662597 = 0
355+ if (($size25662597 == 0))
356+ then $acc025662597
357357 else {
358- let $acc125562587 = isSymbolF($acc025562587, $list25562587[0])
359- if (($size25562587 == 1))
360- then $acc125562587
358+ let $acc125662597 = isSymbolF($acc025662597, $list25662597[0])
359+ if (($size25662597 == 1))
360+ then $acc125662597
361361 else {
362- let $acc225562587 = isSymbolF($acc125562587, $list25562587[1])
363- if (($size25562587 == 2))
364- then $acc225562587
362+ let $acc225662597 = isSymbolF($acc125662597, $list25662597[1])
363+ if (($size25662597 == 2))
364+ then $acc225662597
365365 else {
366- let $acc325562587 = isSymbolF($acc225562587, $list25562587[2])
367- if (($size25562587 == 3))
368- then $acc325562587
366+ let $acc325662597 = isSymbolF($acc225662597, $list25662597[2])
367+ if (($size25662597 == 3))
368+ then $acc325662597
369369 else {
370- let $acc425562587 = isSymbolF($acc325562587, $list25562587[3])
371- if (($size25562587 == 4))
372- then $acc425562587
370+ let $acc425662597 = isSymbolF($acc325662597, $list25662597[3])
371+ if (($size25662597 == 4))
372+ then $acc425662597
373373 else {
374- let $acc525562587 = isSymbolF($acc425562587, $list25562587[4])
375- if (($size25562587 == 5))
376- then $acc525562587
374+ let $acc525662597 = isSymbolF($acc425662597, $list25662597[4])
375+ if (($size25662597 == 5))
376+ then $acc525662597
377377 else {
378- let $acc625562587 = isSymbolF($acc525562587, $list25562587[5])
379- if (($size25562587 == 6))
380- then $acc625562587
378+ let $acc625662597 = isSymbolF($acc525662597, $list25662597[5])
379+ if (($size25662597 == 6))
380+ then $acc625662597
381381 else {
382- let $acc725562587 = isSymbolF($acc625562587, $list25562587[6])
383- if (($size25562587 == 7))
384- then $acc725562587
382+ let $acc725662597 = isSymbolF($acc625662597, $list25662597[6])
383+ if (($size25662597 == 7))
384+ then $acc725662597
385385 else {
386- let $acc825562587 = isSymbolF($acc725562587, $list25562587[7])
387- if (($size25562587 == 8))
388- then $acc825562587
386+ let $acc825662597 = isSymbolF($acc725662597, $list25662597[7])
387+ if (($size25662597 == 8))
388+ then $acc825662597
389389 else {
390- let $acc925562587 = isSymbolF($acc825562587, $list25562587[8])
390+ let $acc925662597 = isSymbolF($acc825662597, $list25662597[8])
391391 throw("List size exceed 8")
392392 }
393393 }
399399 }
400400 }
401401 }) + "F"))) + getAmountOrClear((toString({
402- let $list26262657 = genotype
403- let $size26262657 = size($list26262657)
404- let $acc026262657 = 0
405- if (($size26262657 == 0))
406- then $acc026262657
402+ let $list26362667 = genotype
403+ let $size26362667 = size($list26362667)
404+ let $acc026362667 = 0
405+ if (($size26362667 == 0))
406+ then $acc026362667
407407 else {
408- let $acc126262657 = isSymbolG($acc026262657, $list26262657[0])
409- if (($size26262657 == 1))
410- then $acc126262657
408+ let $acc126362667 = isSymbolG($acc026362667, $list26362667[0])
409+ if (($size26362667 == 1))
410+ then $acc126362667
411411 else {
412- let $acc226262657 = isSymbolG($acc126262657, $list26262657[1])
413- if (($size26262657 == 2))
414- then $acc226262657
412+ let $acc226362667 = isSymbolG($acc126362667, $list26362667[1])
413+ if (($size26362667 == 2))
414+ then $acc226362667
415415 else {
416- let $acc326262657 = isSymbolG($acc226262657, $list26262657[2])
417- if (($size26262657 == 3))
418- then $acc326262657
416+ let $acc326362667 = isSymbolG($acc226362667, $list26362667[2])
417+ if (($size26362667 == 3))
418+ then $acc326362667
419419 else {
420- let $acc426262657 = isSymbolG($acc326262657, $list26262657[3])
421- if (($size26262657 == 4))
422- then $acc426262657
420+ let $acc426362667 = isSymbolG($acc326362667, $list26362667[3])
421+ if (($size26362667 == 4))
422+ then $acc426362667
423423 else {
424- let $acc526262657 = isSymbolG($acc426262657, $list26262657[4])
425- if (($size26262657 == 5))
426- then $acc526262657
424+ let $acc526362667 = isSymbolG($acc426362667, $list26362667[4])
425+ if (($size26362667 == 5))
426+ then $acc526362667
427427 else {
428- let $acc626262657 = isSymbolG($acc526262657, $list26262657[5])
429- if (($size26262657 == 6))
430- then $acc626262657
428+ let $acc626362667 = isSymbolG($acc526362667, $list26362667[5])
429+ if (($size26362667 == 6))
430+ then $acc626362667
431431 else {
432- let $acc726262657 = isSymbolG($acc626262657, $list26262657[6])
433- if (($size26262657 == 7))
434- then $acc726262657
432+ let $acc726362667 = isSymbolG($acc626362667, $list26362667[6])
433+ if (($size26362667 == 7))
434+ then $acc726362667
435435 else {
436- let $acc826262657 = isSymbolG($acc726262657, $list26262657[7])
437- if (($size26262657 == 8))
438- then $acc826262657
436+ let $acc826362667 = isSymbolG($acc726362667, $list26362667[7])
437+ if (($size26362667 == 8))
438+ then $acc826362667
439439 else {
440- let $acc926262657 = isSymbolG($acc826262657, $list26262657[8])
440+ let $acc926362667 = isSymbolG($acc826362667, $list26362667[8])
441441 throw("List size exceed 8")
442442 }
443443 }
449449 }
450450 }
451451 }) + "G"))) + getAmountOrClear((toString({
452- let $list26942725 = genotype
453- let $size26942725 = size($list26942725)
454- let $acc026942725 = 0
455- if (($size26942725 == 0))
456- then $acc026942725
452+ let $list27042735 = genotype
453+ let $size27042735 = size($list27042735)
454+ let $acc027042735 = 0
455+ if (($size27042735 == 0))
456+ then $acc027042735
457457 else {
458- let $acc126942725 = isSymbolH($acc026942725, $list26942725[0])
459- if (($size26942725 == 1))
460- then $acc126942725
458+ let $acc127042735 = isSymbolH($acc027042735, $list27042735[0])
459+ if (($size27042735 == 1))
460+ then $acc127042735
461461 else {
462- let $acc226942725 = isSymbolH($acc126942725, $list26942725[1])
463- if (($size26942725 == 2))
464- then $acc226942725
462+ let $acc227042735 = isSymbolH($acc127042735, $list27042735[1])
463+ if (($size27042735 == 2))
464+ then $acc227042735
465465 else {
466- let $acc326942725 = isSymbolH($acc226942725, $list26942725[2])
467- if (($size26942725 == 3))
468- then $acc326942725
466+ let $acc327042735 = isSymbolH($acc227042735, $list27042735[2])
467+ if (($size27042735 == 3))
468+ then $acc327042735
469469 else {
470- let $acc426942725 = isSymbolH($acc326942725, $list26942725[3])
471- if (($size26942725 == 4))
472- then $acc426942725
470+ let $acc427042735 = isSymbolH($acc327042735, $list27042735[3])
471+ if (($size27042735 == 4))
472+ then $acc427042735
473473 else {
474- let $acc526942725 = isSymbolH($acc426942725, $list26942725[4])
475- if (($size26942725 == 5))
476- then $acc526942725
474+ let $acc527042735 = isSymbolH($acc427042735, $list27042735[4])
475+ if (($size27042735 == 5))
476+ then $acc527042735
477477 else {
478- let $acc626942725 = isSymbolH($acc526942725, $list26942725[5])
479- if (($size26942725 == 6))
480- then $acc626942725
478+ let $acc627042735 = isSymbolH($acc527042735, $list27042735[5])
479+ if (($size27042735 == 6))
480+ then $acc627042735
481481 else {
482- let $acc726942725 = isSymbolH($acc626942725, $list26942725[6])
483- if (($size26942725 == 7))
484- then $acc726942725
482+ let $acc727042735 = isSymbolH($acc627042735, $list27042735[6])
483+ if (($size27042735 == 7))
484+ then $acc727042735
485485 else {
486- let $acc826942725 = isSymbolH($acc726942725, $list26942725[7])
487- if (($size26942725 == 8))
488- then $acc826942725
486+ let $acc827042735 = isSymbolH($acc727042735, $list27042735[7])
487+ if (($size27042735 == 8))
488+ then $acc827042735
489489 else {
490- let $acc926942725 = isSymbolH($acc826942725, $list26942725[8])
490+ let $acc927042735 = isSymbolH($acc827042735, $list27042735[8])
491491 throw("List size exceed 8")
492492 }
493493 }
590590
591591 @Callable(i)
592592 func buyPerch (color,refererAddress) = if ((isLocked() > 0))
593- then throw("egg spendings are temporarily locked")
593+ then throw("EGG operations are temporarily locked")
594594 else if ((0 > value(indexOf(["B", "R", "G", "Y"], color))))
595595 then throw("you need to set color properly")
596596 else {
600600 else if ((firstPayment.amount != perchPrice))
601601 then throw(("To buy a perch you currently need the following amount of EGGlets: " + toString(perchPrice)))
602602 else {
603- let refererRewardForPerch = ((firstPayment.amount / 100) * RefererReward)
603+ let refererRewardForPerch = fraction(firstPayment.amount, RefererReward, 100)
604604 let refCall = invoke(Address(refContractAddress), "refPayment", [refererAddress], [AttachedPayment(eggsAssetId, refererRewardForPerch)])
605605 if ((refCall == refCall))
606606 then {
630630
631631
632632 @Callable(i)
633-func stakeNFT () = {
634- let assetId = value(value(i.payments[0]).assetId)
635- let address = toString(i.caller)
636- let color = takeRight(value(assetInfo(assetId)).name, 1)
637- let availablePerches = tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color))
638- if ((0 >= availablePerches))
639- then throw(("no perches available for the color " + color))
640- else {
641- let $t088378902 = getAssetFarmingPower(assetId)
642- let assetGen = $t088378902._1
643- let assetFarmingPower = $t088378902._2
644- let assetRewardDelta = calcAssetRewardDelta(address, toBase58String(assetId), assetFarmingPower)
645- (getStakeResult(address, assetId, assetFarmingPower) ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (availablePerches - 1))])
646- }
647- }
633+func stakeNFT () = if ((isLocked() > 0))
634+ then throw("EGG operations are temporarily locked")
635+ else {
636+ let assetId = value(value(i.payments[0]).assetId)
637+ let address = toString(i.caller)
638+ let color = takeRight(value(assetInfo(assetId)).name, 1)
639+ let availablePerches = tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color))
640+ if ((0 >= availablePerches))
641+ then throw(("no perches available for the color " + color))
642+ else {
643+ let $t089939058 = getAssetFarmingPower(assetId)
644+ let assetGen = $t089939058._1
645+ let assetFarmingPower = $t089939058._2
646+ let assetRewardDelta = calcAssetRewardDelta(address, toBase58String(assetId), assetFarmingPower)
647+ (getStakeResult(address, assetId, assetFarmingPower) ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (availablePerches - 1))])
648+ }
649+ }
648650
649651
650652
651653 @Callable(i)
652654 func unstakeNFT (asset) = if ((isLocked() > 0))
653- then throw("egg spendings are temporarily locked")
655+ then throw("EGG operations are temporarily locked")
654656 else {
655657 let assetId = fromBase58String(asset)
656658 let address = toString(i.caller)
658660 let assetRewardDelta = calcAssetRewardDelta(address, asset, assetFarmingPower)
659661 let farmedAmount = (assetRewardDelta + tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_lastCheckFarmedAmount")))
660662 let withdrawnAmount = tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount"))
661- let reward = ((farmedAmount - withdrawnAmount) / (scale * 100))
663+ let reward = (((farmedAmount - withdrawnAmount) / (scale * 100)) * 1000000)
662664 let color = takeRight(value(assetInfo(assetId)).name, 1)
663665 if ((0 >= assetFarmingPower))
664666 then throw("asset not available")
666668 then throw("use another function to unstake Jackpot NFT")
667669 else {
668670 let result = getUnstakeResult(address, assetId, assetRewardDelta, reward, assetFarmingPower)
669- (result ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color)) + 1)), ScriptTransfer(i.caller, reward, eggsAssetId), ScriptTransfer(i.caller, 1, assetId)])
671+ $Tuple2((result ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color)) + 1)), ScriptTransfer(i.caller, reward, eggsAssetId), ScriptTransfer(i.caller, 1, assetId)]), reward)
670672 }
671673 }
672674
673675
674676
675677 @Callable(i)
676-func stakeJackpot (color) = {
677- let assetId = value(value(i.payments[0]).assetId)
678- let address = toString(i.caller)
679- let availablePerches = tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color))
680- let assetIssuer = value(assetInfo(assetId)).issuer.bytes
681- if (if ((assetIssuer == incubatorAddress))
682- then true
683- else (assetIssuer == breederAddress))
684- then if ((takeRight(value(value(assetInfo(assetId)).name), 1) != "U"))
685- then throw("jackpot only")
686- else if ((0 >= availablePerches))
687- then throw(("no perches available for the color " + color))
688- else (getStakeResult(address, assetId, 100) ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (availablePerches - 1)), StringEntry((((("address_" + toString(i.caller)) + "_asset_") + toBase58String(assetId)) + "_perchColor"), color)])
689- else throw("asset is not valid")
690- }
678+func stakeJackpot (color) = if ((isLocked() > 0))
679+ then throw("EGG operations are temporarily locked")
680+ else {
681+ let assetId = value(value(i.payments[0]).assetId)
682+ let address = toString(i.caller)
683+ let availablePerches = tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color))
684+ let assetIssuer = value(assetInfo(assetId)).issuer.bytes
685+ if (if ((assetIssuer == incubatorAddress))
686+ then true
687+ else (assetIssuer == breederAddress))
688+ then if ((takeRight(value(value(assetInfo(assetId)).name), 1) != "U"))
689+ then throw("jackpot only")
690+ else if ((0 >= availablePerches))
691+ then throw(("no perches available for the color " + color))
692+ else (getStakeResult(address, assetId, 100) ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (availablePerches - 1)), StringEntry((((("address_" + toString(i.caller)) + "_asset_") + toBase58String(assetId)) + "_perchColor"), color)])
693+ else throw("asset is not valid")
694+ }
691695
692696
693697
694698 @Callable(i)
695699 func unstakeJackpot (asset) = if ((isLocked() > 0))
696- then throw("egg spendings are temporarily locked")
700+ then throw("EGG operations are temporarily locked")
697701 else {
698702 let assetId = fromBase58String(asset)
699703 let address = toString(i.caller)
702706 let assetRewardDelta = calcAssetRewardDelta(address, asset, assetFarmingPower)
703707 let farmedAmount = (assetRewardDelta + tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_lastCheckFarmedAmount")))
704708 let withdrawnAmount = tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount"))
705- let reward = ((farmedAmount - withdrawnAmount) / (scale * 100))
709+ let reward = (((farmedAmount - withdrawnAmount) / (scale * 100)) * 1000000)
706710 if ((takeRight(value(value(assetInfo(assetId)).name), 1) != "U"))
707711 then throw("jackpot only")
708712 else if ((assetFarmingPower > 0))
709713 then {
710714 let result = getUnstakeResult(address, assetId, assetRewardDelta, reward, assetFarmingPower)
711- (result ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color)) + 1)), ScriptTransfer(i.caller, reward, eggsAssetId), ScriptTransfer(i.caller, 1, assetId)])
715+ $Tuple2((result ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color)) + 1)), ScriptTransfer(i.caller, reward, eggsAssetId), ScriptTransfer(i.caller, 1, assetId)]), reward)
712716 }
713717 else throw("")
714718 }
717721
718722 @Callable(i)
719723 func claimReward (asset) = if ((isLocked() > 0))
720- then throw("egg spendings are temporarily locked")
724+ then throw("EGG operations are temporarily locked")
721725 else {
722726 let address = toString(i.caller)
723727 let assetId = fromBase58String(asset)
725729 let assetRewardDelta = calcAssetRewardDelta(address, asset, assetFarmingPower)
726730 let farmedAmount = (assetRewardDelta + tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_lastCheckFarmedAmount")))
727731 let withdrawnAmount = tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount"))
728- let reward = ((farmedAmount - withdrawnAmount) / (scale * 100))
732+ let reward = (((farmedAmount - withdrawnAmount) / (scale * 100)) * 1000000)
729733 if ((0 >= reward))
730734 then throw("you have no EGGs to withdraw")
731735 else $Tuple2([IntegerEntry((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount"), (tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount")) + (reward * scale2))), ScriptTransfer(Address(fromBase58String(address)), reward, eggsAssetId)], reward)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let eggsAssetId = base58'53bLXGQhnMxAoiWnza2SJQRp7hNQZVHnyrRziLmwdVjb'
4+let eggsAssetId = base58'3v7zGkeHS6KrsvmTRzEzvCxm5cdzkCtM7z5cM6efcjCB'
55
6-let perchPrice = 100
6+let perchPrice = (100 * 1000000)
77
88 let scale = 10000
99
1010 let scale2 = 1000000
1111
1212 let incubatorAddress = base58'3P6TwNU39Ykkbeqhn5TE4a2736xsA1vXemM'
1313
1414 let breederAddress = base58'3P9REuLBnYBafDqtEu6hfzs2Rv2haSU158y'
1515
1616 let refContractAddress = base58'3PGZyyPg7Mx91yaNT8k3MWxSQzuzusMUyzX'
1717
1818 let RefererReward = 5
1919
2020 let rebirthAddress = base58'3PKL9tfUmNciXvbSA3zpXr6PnDNnhn936ba'
2121
2222 let GENS = ["A", "B", "C", "D", "E", "F", "G"]
2323
2424 func getRewardPerBlock () = 684
2525
2626
2727 func isLocked () = {
2828 let masterAddress = Address(base58'3PEPftf2kWZDmAaWBjs6BUJa9957kiA2PkU')
2929 match getInteger(masterAddress, "egglock") {
3030 case b: Int =>
3131 b
3232 case _ =>
3333 0
3434 }
3535 }
3636
3737
3838 func tryGetInteger (key) = match getInteger(this, key) {
3939 case b: Int =>
4040 b
4141 case _ =>
4242 0
4343 }
4444
4545
4646 func tryGetString (key) = match getString(this, key) {
4747 case a: String =>
4848 a
4949 case _ =>
5050 ""
5151 }
5252
5353
5454 func isSymbolA (accumulated,sym) = if ((sym == "A"))
5555 then (accumulated + 1)
5656 else (accumulated + 0)
5757
5858
5959 func isSymbolB (accumulated,sym) = if ((sym == "B"))
6060 then (accumulated + 1)
6161 else (accumulated + 0)
6262
6363
6464 func isSymbolC (accumulated,sym) = if ((sym == "C"))
6565 then (accumulated + 1)
6666 else (accumulated + 0)
6767
6868
6969 func isSymbolD (accumulated,sym) = if ((sym == "D"))
7070 then (accumulated + 1)
7171 else (accumulated + 0)
7272
7373
7474 func isSymbolE (accumulated,sym) = if ((sym == "E"))
7575 then (accumulated + 1)
7676 else (accumulated + 0)
7777
7878
7979 func isSymbolF (accumulated,sym) = if ((sym == "F"))
8080 then (accumulated + 1)
8181 else (accumulated + 0)
8282
8383
8484 func isSymbolG (accumulated,sym) = if ((sym == "G"))
8585 then (accumulated + 1)
8686 else (accumulated + 0)
8787
8888
8989 func isSymbolH (accumulated,sym) = if ((sym == "H"))
9090 then (accumulated + 1)
9191 else (accumulated + 0)
9292
9393
9494 func getAmountOrClear (amount) = if (contains(amount, "0"))
9595 then ""
9696 else amount
9797
9898
9999 func getGen (assetName) = {
100100 let genotype = split(dropRight(drop(assetName, 5), 3), "")
101101 (((((((getAmountOrClear((toString({
102- let $list22142245 = genotype
103- let $size22142245 = size($list22142245)
104- let $acc022142245 = 0
105- if (($size22142245 == 0))
106- then $acc022142245
102+ let $list22242255 = genotype
103+ let $size22242255 = size($list22242255)
104+ let $acc022242255 = 0
105+ if (($size22242255 == 0))
106+ then $acc022242255
107107 else {
108- let $acc122142245 = isSymbolA($acc022142245, $list22142245[0])
109- if (($size22142245 == 1))
110- then $acc122142245
108+ let $acc122242255 = isSymbolA($acc022242255, $list22242255[0])
109+ if (($size22242255 == 1))
110+ then $acc122242255
111111 else {
112- let $acc222142245 = isSymbolA($acc122142245, $list22142245[1])
113- if (($size22142245 == 2))
114- then $acc222142245
112+ let $acc222242255 = isSymbolA($acc122242255, $list22242255[1])
113+ if (($size22242255 == 2))
114+ then $acc222242255
115115 else {
116- let $acc322142245 = isSymbolA($acc222142245, $list22142245[2])
117- if (($size22142245 == 3))
118- then $acc322142245
116+ let $acc322242255 = isSymbolA($acc222242255, $list22242255[2])
117+ if (($size22242255 == 3))
118+ then $acc322242255
119119 else {
120- let $acc422142245 = isSymbolA($acc322142245, $list22142245[3])
121- if (($size22142245 == 4))
122- then $acc422142245
120+ let $acc422242255 = isSymbolA($acc322242255, $list22242255[3])
121+ if (($size22242255 == 4))
122+ then $acc422242255
123123 else {
124- let $acc522142245 = isSymbolA($acc422142245, $list22142245[4])
125- if (($size22142245 == 5))
126- then $acc522142245
124+ let $acc522242255 = isSymbolA($acc422242255, $list22242255[4])
125+ if (($size22242255 == 5))
126+ then $acc522242255
127127 else {
128- let $acc622142245 = isSymbolA($acc522142245, $list22142245[5])
129- if (($size22142245 == 6))
130- then $acc622142245
128+ let $acc622242255 = isSymbolA($acc522242255, $list22242255[5])
129+ if (($size22242255 == 6))
130+ then $acc622242255
131131 else {
132- let $acc722142245 = isSymbolA($acc622142245, $list22142245[6])
133- if (($size22142245 == 7))
134- then $acc722142245
132+ let $acc722242255 = isSymbolA($acc622242255, $list22242255[6])
133+ if (($size22242255 == 7))
134+ then $acc722242255
135135 else {
136- let $acc822142245 = isSymbolA($acc722142245, $list22142245[7])
137- if (($size22142245 == 8))
138- then $acc822142245
136+ let $acc822242255 = isSymbolA($acc722242255, $list22242255[7])
137+ if (($size22242255 == 8))
138+ then $acc822242255
139139 else {
140- let $acc922142245 = isSymbolA($acc822142245, $list22142245[8])
140+ let $acc922242255 = isSymbolA($acc822242255, $list22242255[8])
141141 throw("List size exceed 8")
142142 }
143143 }
144144 }
145145 }
146146 }
147147 }
148148 }
149149 }
150150 }
151151 }) + "A")) + getAmountOrClear((toString({
152- let $list22822313 = genotype
153- let $size22822313 = size($list22822313)
154- let $acc022822313 = 0
155- if (($size22822313 == 0))
156- then $acc022822313
152+ let $list22922323 = genotype
153+ let $size22922323 = size($list22922323)
154+ let $acc022922323 = 0
155+ if (($size22922323 == 0))
156+ then $acc022922323
157157 else {
158- let $acc122822313 = isSymbolB($acc022822313, $list22822313[0])
159- if (($size22822313 == 1))
160- then $acc122822313
158+ let $acc122922323 = isSymbolB($acc022922323, $list22922323[0])
159+ if (($size22922323 == 1))
160+ then $acc122922323
161161 else {
162- let $acc222822313 = isSymbolB($acc122822313, $list22822313[1])
163- if (($size22822313 == 2))
164- then $acc222822313
162+ let $acc222922323 = isSymbolB($acc122922323, $list22922323[1])
163+ if (($size22922323 == 2))
164+ then $acc222922323
165165 else {
166- let $acc322822313 = isSymbolB($acc222822313, $list22822313[2])
167- if (($size22822313 == 3))
168- then $acc322822313
166+ let $acc322922323 = isSymbolB($acc222922323, $list22922323[2])
167+ if (($size22922323 == 3))
168+ then $acc322922323
169169 else {
170- let $acc422822313 = isSymbolB($acc322822313, $list22822313[3])
171- if (($size22822313 == 4))
172- then $acc422822313
170+ let $acc422922323 = isSymbolB($acc322922323, $list22922323[3])
171+ if (($size22922323 == 4))
172+ then $acc422922323
173173 else {
174- let $acc522822313 = isSymbolB($acc422822313, $list22822313[4])
175- if (($size22822313 == 5))
176- then $acc522822313
174+ let $acc522922323 = isSymbolB($acc422922323, $list22922323[4])
175+ if (($size22922323 == 5))
176+ then $acc522922323
177177 else {
178- let $acc622822313 = isSymbolB($acc522822313, $list22822313[5])
179- if (($size22822313 == 6))
180- then $acc622822313
178+ let $acc622922323 = isSymbolB($acc522922323, $list22922323[5])
179+ if (($size22922323 == 6))
180+ then $acc622922323
181181 else {
182- let $acc722822313 = isSymbolB($acc622822313, $list22822313[6])
183- if (($size22822313 == 7))
184- then $acc722822313
182+ let $acc722922323 = isSymbolB($acc622922323, $list22922323[6])
183+ if (($size22922323 == 7))
184+ then $acc722922323
185185 else {
186- let $acc822822313 = isSymbolB($acc722822313, $list22822313[7])
187- if (($size22822313 == 8))
188- then $acc822822313
186+ let $acc822922323 = isSymbolB($acc722922323, $list22922323[7])
187+ if (($size22922323 == 8))
188+ then $acc822922323
189189 else {
190- let $acc922822313 = isSymbolB($acc822822313, $list22822313[8])
190+ let $acc922922323 = isSymbolB($acc822922323, $list22922323[8])
191191 throw("List size exceed 8")
192192 }
193193 }
194194 }
195195 }
196196 }
197197 }
198198 }
199199 }
200200 }
201201 }) + "B"))) + getAmountOrClear((toString({
202- let $list23502381 = genotype
203- let $size23502381 = size($list23502381)
204- let $acc023502381 = 0
205- if (($size23502381 == 0))
206- then $acc023502381
202+ let $list23602391 = genotype
203+ let $size23602391 = size($list23602391)
204+ let $acc023602391 = 0
205+ if (($size23602391 == 0))
206+ then $acc023602391
207207 else {
208- let $acc123502381 = isSymbolC($acc023502381, $list23502381[0])
209- if (($size23502381 == 1))
210- then $acc123502381
208+ let $acc123602391 = isSymbolC($acc023602391, $list23602391[0])
209+ if (($size23602391 == 1))
210+ then $acc123602391
211211 else {
212- let $acc223502381 = isSymbolC($acc123502381, $list23502381[1])
213- if (($size23502381 == 2))
214- then $acc223502381
212+ let $acc223602391 = isSymbolC($acc123602391, $list23602391[1])
213+ if (($size23602391 == 2))
214+ then $acc223602391
215215 else {
216- let $acc323502381 = isSymbolC($acc223502381, $list23502381[2])
217- if (($size23502381 == 3))
218- then $acc323502381
216+ let $acc323602391 = isSymbolC($acc223602391, $list23602391[2])
217+ if (($size23602391 == 3))
218+ then $acc323602391
219219 else {
220- let $acc423502381 = isSymbolC($acc323502381, $list23502381[3])
221- if (($size23502381 == 4))
222- then $acc423502381
220+ let $acc423602391 = isSymbolC($acc323602391, $list23602391[3])
221+ if (($size23602391 == 4))
222+ then $acc423602391
223223 else {
224- let $acc523502381 = isSymbolC($acc423502381, $list23502381[4])
225- if (($size23502381 == 5))
226- then $acc523502381
224+ let $acc523602391 = isSymbolC($acc423602391, $list23602391[4])
225+ if (($size23602391 == 5))
226+ then $acc523602391
227227 else {
228- let $acc623502381 = isSymbolC($acc523502381, $list23502381[5])
229- if (($size23502381 == 6))
230- then $acc623502381
228+ let $acc623602391 = isSymbolC($acc523602391, $list23602391[5])
229+ if (($size23602391 == 6))
230+ then $acc623602391
231231 else {
232- let $acc723502381 = isSymbolC($acc623502381, $list23502381[6])
233- if (($size23502381 == 7))
234- then $acc723502381
232+ let $acc723602391 = isSymbolC($acc623602391, $list23602391[6])
233+ if (($size23602391 == 7))
234+ then $acc723602391
235235 else {
236- let $acc823502381 = isSymbolC($acc723502381, $list23502381[7])
237- if (($size23502381 == 8))
238- then $acc823502381
236+ let $acc823602391 = isSymbolC($acc723602391, $list23602391[7])
237+ if (($size23602391 == 8))
238+ then $acc823602391
239239 else {
240- let $acc923502381 = isSymbolC($acc823502381, $list23502381[8])
240+ let $acc923602391 = isSymbolC($acc823602391, $list23602391[8])
241241 throw("List size exceed 8")
242242 }
243243 }
244244 }
245245 }
246246 }
247247 }
248248 }
249249 }
250250 }
251251 }) + "C"))) + getAmountOrClear((toString({
252- let $list24202451 = genotype
253- let $size24202451 = size($list24202451)
254- let $acc024202451 = 0
255- if (($size24202451 == 0))
256- then $acc024202451
252+ let $list24302461 = genotype
253+ let $size24302461 = size($list24302461)
254+ let $acc024302461 = 0
255+ if (($size24302461 == 0))
256+ then $acc024302461
257257 else {
258- let $acc124202451 = isSymbolD($acc024202451, $list24202451[0])
259- if (($size24202451 == 1))
260- then $acc124202451
258+ let $acc124302461 = isSymbolD($acc024302461, $list24302461[0])
259+ if (($size24302461 == 1))
260+ then $acc124302461
261261 else {
262- let $acc224202451 = isSymbolD($acc124202451, $list24202451[1])
263- if (($size24202451 == 2))
264- then $acc224202451
262+ let $acc224302461 = isSymbolD($acc124302461, $list24302461[1])
263+ if (($size24302461 == 2))
264+ then $acc224302461
265265 else {
266- let $acc324202451 = isSymbolD($acc224202451, $list24202451[2])
267- if (($size24202451 == 3))
268- then $acc324202451
266+ let $acc324302461 = isSymbolD($acc224302461, $list24302461[2])
267+ if (($size24302461 == 3))
268+ then $acc324302461
269269 else {
270- let $acc424202451 = isSymbolD($acc324202451, $list24202451[3])
271- if (($size24202451 == 4))
272- then $acc424202451
270+ let $acc424302461 = isSymbolD($acc324302461, $list24302461[3])
271+ if (($size24302461 == 4))
272+ then $acc424302461
273273 else {
274- let $acc524202451 = isSymbolD($acc424202451, $list24202451[4])
275- if (($size24202451 == 5))
276- then $acc524202451
274+ let $acc524302461 = isSymbolD($acc424302461, $list24302461[4])
275+ if (($size24302461 == 5))
276+ then $acc524302461
277277 else {
278- let $acc624202451 = isSymbolD($acc524202451, $list24202451[5])
279- if (($size24202451 == 6))
280- then $acc624202451
278+ let $acc624302461 = isSymbolD($acc524302461, $list24302461[5])
279+ if (($size24302461 == 6))
280+ then $acc624302461
281281 else {
282- let $acc724202451 = isSymbolD($acc624202451, $list24202451[6])
283- if (($size24202451 == 7))
284- then $acc724202451
282+ let $acc724302461 = isSymbolD($acc624302461, $list24302461[6])
283+ if (($size24302461 == 7))
284+ then $acc724302461
285285 else {
286- let $acc824202451 = isSymbolD($acc724202451, $list24202451[7])
287- if (($size24202451 == 8))
288- then $acc824202451
286+ let $acc824302461 = isSymbolD($acc724302461, $list24302461[7])
287+ if (($size24302461 == 8))
288+ then $acc824302461
289289 else {
290- let $acc924202451 = isSymbolD($acc824202451, $list24202451[8])
290+ let $acc924302461 = isSymbolD($acc824302461, $list24302461[8])
291291 throw("List size exceed 8")
292292 }
293293 }
294294 }
295295 }
296296 }
297297 }
298298 }
299299 }
300300 }
301301 }) + "D"))) + getAmountOrClear((toString({
302- let $list24882519 = genotype
303- let $size24882519 = size($list24882519)
304- let $acc024882519 = 0
305- if (($size24882519 == 0))
306- then $acc024882519
302+ let $list24982529 = genotype
303+ let $size24982529 = size($list24982529)
304+ let $acc024982529 = 0
305+ if (($size24982529 == 0))
306+ then $acc024982529
307307 else {
308- let $acc124882519 = isSymbolE($acc024882519, $list24882519[0])
309- if (($size24882519 == 1))
310- then $acc124882519
308+ let $acc124982529 = isSymbolE($acc024982529, $list24982529[0])
309+ if (($size24982529 == 1))
310+ then $acc124982529
311311 else {
312- let $acc224882519 = isSymbolE($acc124882519, $list24882519[1])
313- if (($size24882519 == 2))
314- then $acc224882519
312+ let $acc224982529 = isSymbolE($acc124982529, $list24982529[1])
313+ if (($size24982529 == 2))
314+ then $acc224982529
315315 else {
316- let $acc324882519 = isSymbolE($acc224882519, $list24882519[2])
317- if (($size24882519 == 3))
318- then $acc324882519
316+ let $acc324982529 = isSymbolE($acc224982529, $list24982529[2])
317+ if (($size24982529 == 3))
318+ then $acc324982529
319319 else {
320- let $acc424882519 = isSymbolE($acc324882519, $list24882519[3])
321- if (($size24882519 == 4))
322- then $acc424882519
320+ let $acc424982529 = isSymbolE($acc324982529, $list24982529[3])
321+ if (($size24982529 == 4))
322+ then $acc424982529
323323 else {
324- let $acc524882519 = isSymbolE($acc424882519, $list24882519[4])
325- if (($size24882519 == 5))
326- then $acc524882519
324+ let $acc524982529 = isSymbolE($acc424982529, $list24982529[4])
325+ if (($size24982529 == 5))
326+ then $acc524982529
327327 else {
328- let $acc624882519 = isSymbolE($acc524882519, $list24882519[5])
329- if (($size24882519 == 6))
330- then $acc624882519
328+ let $acc624982529 = isSymbolE($acc524982529, $list24982529[5])
329+ if (($size24982529 == 6))
330+ then $acc624982529
331331 else {
332- let $acc724882519 = isSymbolE($acc624882519, $list24882519[6])
333- if (($size24882519 == 7))
334- then $acc724882519
332+ let $acc724982529 = isSymbolE($acc624982529, $list24982529[6])
333+ if (($size24982529 == 7))
334+ then $acc724982529
335335 else {
336- let $acc824882519 = isSymbolE($acc724882519, $list24882519[7])
337- if (($size24882519 == 8))
338- then $acc824882519
336+ let $acc824982529 = isSymbolE($acc724982529, $list24982529[7])
337+ if (($size24982529 == 8))
338+ then $acc824982529
339339 else {
340- let $acc924882519 = isSymbolE($acc824882519, $list24882519[8])
340+ let $acc924982529 = isSymbolE($acc824982529, $list24982529[8])
341341 throw("List size exceed 8")
342342 }
343343 }
344344 }
345345 }
346346 }
347347 }
348348 }
349349 }
350350 }
351351 }) + "E"))) + getAmountOrClear((toString({
352- let $list25562587 = genotype
353- let $size25562587 = size($list25562587)
354- let $acc025562587 = 0
355- if (($size25562587 == 0))
356- then $acc025562587
352+ let $list25662597 = genotype
353+ let $size25662597 = size($list25662597)
354+ let $acc025662597 = 0
355+ if (($size25662597 == 0))
356+ then $acc025662597
357357 else {
358- let $acc125562587 = isSymbolF($acc025562587, $list25562587[0])
359- if (($size25562587 == 1))
360- then $acc125562587
358+ let $acc125662597 = isSymbolF($acc025662597, $list25662597[0])
359+ if (($size25662597 == 1))
360+ then $acc125662597
361361 else {
362- let $acc225562587 = isSymbolF($acc125562587, $list25562587[1])
363- if (($size25562587 == 2))
364- then $acc225562587
362+ let $acc225662597 = isSymbolF($acc125662597, $list25662597[1])
363+ if (($size25662597 == 2))
364+ then $acc225662597
365365 else {
366- let $acc325562587 = isSymbolF($acc225562587, $list25562587[2])
367- if (($size25562587 == 3))
368- then $acc325562587
366+ let $acc325662597 = isSymbolF($acc225662597, $list25662597[2])
367+ if (($size25662597 == 3))
368+ then $acc325662597
369369 else {
370- let $acc425562587 = isSymbolF($acc325562587, $list25562587[3])
371- if (($size25562587 == 4))
372- then $acc425562587
370+ let $acc425662597 = isSymbolF($acc325662597, $list25662597[3])
371+ if (($size25662597 == 4))
372+ then $acc425662597
373373 else {
374- let $acc525562587 = isSymbolF($acc425562587, $list25562587[4])
375- if (($size25562587 == 5))
376- then $acc525562587
374+ let $acc525662597 = isSymbolF($acc425662597, $list25662597[4])
375+ if (($size25662597 == 5))
376+ then $acc525662597
377377 else {
378- let $acc625562587 = isSymbolF($acc525562587, $list25562587[5])
379- if (($size25562587 == 6))
380- then $acc625562587
378+ let $acc625662597 = isSymbolF($acc525662597, $list25662597[5])
379+ if (($size25662597 == 6))
380+ then $acc625662597
381381 else {
382- let $acc725562587 = isSymbolF($acc625562587, $list25562587[6])
383- if (($size25562587 == 7))
384- then $acc725562587
382+ let $acc725662597 = isSymbolF($acc625662597, $list25662597[6])
383+ if (($size25662597 == 7))
384+ then $acc725662597
385385 else {
386- let $acc825562587 = isSymbolF($acc725562587, $list25562587[7])
387- if (($size25562587 == 8))
388- then $acc825562587
386+ let $acc825662597 = isSymbolF($acc725662597, $list25662597[7])
387+ if (($size25662597 == 8))
388+ then $acc825662597
389389 else {
390- let $acc925562587 = isSymbolF($acc825562587, $list25562587[8])
390+ let $acc925662597 = isSymbolF($acc825662597, $list25662597[8])
391391 throw("List size exceed 8")
392392 }
393393 }
394394 }
395395 }
396396 }
397397 }
398398 }
399399 }
400400 }
401401 }) + "F"))) + getAmountOrClear((toString({
402- let $list26262657 = genotype
403- let $size26262657 = size($list26262657)
404- let $acc026262657 = 0
405- if (($size26262657 == 0))
406- then $acc026262657
402+ let $list26362667 = genotype
403+ let $size26362667 = size($list26362667)
404+ let $acc026362667 = 0
405+ if (($size26362667 == 0))
406+ then $acc026362667
407407 else {
408- let $acc126262657 = isSymbolG($acc026262657, $list26262657[0])
409- if (($size26262657 == 1))
410- then $acc126262657
408+ let $acc126362667 = isSymbolG($acc026362667, $list26362667[0])
409+ if (($size26362667 == 1))
410+ then $acc126362667
411411 else {
412- let $acc226262657 = isSymbolG($acc126262657, $list26262657[1])
413- if (($size26262657 == 2))
414- then $acc226262657
412+ let $acc226362667 = isSymbolG($acc126362667, $list26362667[1])
413+ if (($size26362667 == 2))
414+ then $acc226362667
415415 else {
416- let $acc326262657 = isSymbolG($acc226262657, $list26262657[2])
417- if (($size26262657 == 3))
418- then $acc326262657
416+ let $acc326362667 = isSymbolG($acc226362667, $list26362667[2])
417+ if (($size26362667 == 3))
418+ then $acc326362667
419419 else {
420- let $acc426262657 = isSymbolG($acc326262657, $list26262657[3])
421- if (($size26262657 == 4))
422- then $acc426262657
420+ let $acc426362667 = isSymbolG($acc326362667, $list26362667[3])
421+ if (($size26362667 == 4))
422+ then $acc426362667
423423 else {
424- let $acc526262657 = isSymbolG($acc426262657, $list26262657[4])
425- if (($size26262657 == 5))
426- then $acc526262657
424+ let $acc526362667 = isSymbolG($acc426362667, $list26362667[4])
425+ if (($size26362667 == 5))
426+ then $acc526362667
427427 else {
428- let $acc626262657 = isSymbolG($acc526262657, $list26262657[5])
429- if (($size26262657 == 6))
430- then $acc626262657
428+ let $acc626362667 = isSymbolG($acc526362667, $list26362667[5])
429+ if (($size26362667 == 6))
430+ then $acc626362667
431431 else {
432- let $acc726262657 = isSymbolG($acc626262657, $list26262657[6])
433- if (($size26262657 == 7))
434- then $acc726262657
432+ let $acc726362667 = isSymbolG($acc626362667, $list26362667[6])
433+ if (($size26362667 == 7))
434+ then $acc726362667
435435 else {
436- let $acc826262657 = isSymbolG($acc726262657, $list26262657[7])
437- if (($size26262657 == 8))
438- then $acc826262657
436+ let $acc826362667 = isSymbolG($acc726362667, $list26362667[7])
437+ if (($size26362667 == 8))
438+ then $acc826362667
439439 else {
440- let $acc926262657 = isSymbolG($acc826262657, $list26262657[8])
440+ let $acc926362667 = isSymbolG($acc826362667, $list26362667[8])
441441 throw("List size exceed 8")
442442 }
443443 }
444444 }
445445 }
446446 }
447447 }
448448 }
449449 }
450450 }
451451 }) + "G"))) + getAmountOrClear((toString({
452- let $list26942725 = genotype
453- let $size26942725 = size($list26942725)
454- let $acc026942725 = 0
455- if (($size26942725 == 0))
456- then $acc026942725
452+ let $list27042735 = genotype
453+ let $size27042735 = size($list27042735)
454+ let $acc027042735 = 0
455+ if (($size27042735 == 0))
456+ then $acc027042735
457457 else {
458- let $acc126942725 = isSymbolH($acc026942725, $list26942725[0])
459- if (($size26942725 == 1))
460- then $acc126942725
458+ let $acc127042735 = isSymbolH($acc027042735, $list27042735[0])
459+ if (($size27042735 == 1))
460+ then $acc127042735
461461 else {
462- let $acc226942725 = isSymbolH($acc126942725, $list26942725[1])
463- if (($size26942725 == 2))
464- then $acc226942725
462+ let $acc227042735 = isSymbolH($acc127042735, $list27042735[1])
463+ if (($size27042735 == 2))
464+ then $acc227042735
465465 else {
466- let $acc326942725 = isSymbolH($acc226942725, $list26942725[2])
467- if (($size26942725 == 3))
468- then $acc326942725
466+ let $acc327042735 = isSymbolH($acc227042735, $list27042735[2])
467+ if (($size27042735 == 3))
468+ then $acc327042735
469469 else {
470- let $acc426942725 = isSymbolH($acc326942725, $list26942725[3])
471- if (($size26942725 == 4))
472- then $acc426942725
470+ let $acc427042735 = isSymbolH($acc327042735, $list27042735[3])
471+ if (($size27042735 == 4))
472+ then $acc427042735
473473 else {
474- let $acc526942725 = isSymbolH($acc426942725, $list26942725[4])
475- if (($size26942725 == 5))
476- then $acc526942725
474+ let $acc527042735 = isSymbolH($acc427042735, $list27042735[4])
475+ if (($size27042735 == 5))
476+ then $acc527042735
477477 else {
478- let $acc626942725 = isSymbolH($acc526942725, $list26942725[5])
479- if (($size26942725 == 6))
480- then $acc626942725
478+ let $acc627042735 = isSymbolH($acc527042735, $list27042735[5])
479+ if (($size27042735 == 6))
480+ then $acc627042735
481481 else {
482- let $acc726942725 = isSymbolH($acc626942725, $list26942725[6])
483- if (($size26942725 == 7))
484- then $acc726942725
482+ let $acc727042735 = isSymbolH($acc627042735, $list27042735[6])
483+ if (($size27042735 == 7))
484+ then $acc727042735
485485 else {
486- let $acc826942725 = isSymbolH($acc726942725, $list26942725[7])
487- if (($size26942725 == 8))
488- then $acc826942725
486+ let $acc827042735 = isSymbolH($acc727042735, $list27042735[7])
487+ if (($size27042735 == 8))
488+ then $acc827042735
489489 else {
490- let $acc926942725 = isSymbolH($acc826942725, $list26942725[8])
490+ let $acc927042735 = isSymbolH($acc827042735, $list27042735[8])
491491 throw("List size exceed 8")
492492 }
493493 }
494494 }
495495 }
496496 }
497497 }
498498 }
499499 }
500500 }
501501 }) + "H")))
502502 }
503503
504504
505505 func getAssetOrigin (generation) = if ((generation == "G"))
506506 then incubatorAddress
507507 else breederAddress
508508
509509
510510 func getAssetRarity (genotype,generation) = {
511511 let quantity = getIntegerValue(Address(getAssetOrigin(generation)), (("stats_" + genotype) + "_quantity"))
512512 let power = pow((10000 / quantity), 4, 5, 1, 2, FLOOR)
513513 if ((power > 0))
514514 then power
515515 else 2
516516 }
517517
518518
519519 func getAssetFarmingPower (assetId) = if (if ((value(assetInfo(assetId)).issuer == Address(breederAddress)))
520520 then true
521521 else (value(assetInfo(assetId)).issuer == Address(incubatorAddress)))
522522 then {
523523 let assetName = value(assetInfo(assetId)).name
524524 let generation = take(takeRight(assetName, 2), 1)
525525 let gen = ((getGen(assetName) + "-") + generation)
526526 $Tuple2(gen, getAssetRarity(gen, generation))
527527 }
528528 else throw("not valid NFT")
529529
530530
531531 func getLastKnownAssetFarmingPower (address,assetId) = tryGetInteger((((("address_" + address) + "_asset_") + assetId) + "_farmingPower"))
532532
533533
534534 func getAssetsByGen (gen) = {
535535 let s = tryGetString(("assets_" + gen))
536536 if ((s == ""))
537537 then nil
538538 else split(s, ",")
539539 }
540540
541541
542542 func calcInterest (previousInterest,previousInterestHeight,totalFarmingPower) = (previousInterest + (((scale * getRewardPerBlock()) * (height - previousInterestHeight)) / totalFarmingPower))
543543
544544
545545 func getCurrentInterest () = if ((tryGetInteger("total_farmingPower") > 0))
546546 then {
547547 let previousInterest = tryGetInteger("total_lastCheckInterest")
548548 let previousInterestHeight = tryGetInteger("total_lastCheckInterestHeight")
549549 let totalFarmingPower = tryGetInteger("total_farmingPower")
550550 calcInterest(previousInterest, previousInterestHeight, totalFarmingPower)
551551 }
552552 else if ((tryGetInteger("total_startHeight") != 0))
553553 then tryGetInteger("total_lastCheckInterest")
554554 else throw("farming is not launched, yet")
555555
556556
557557 func calcAssetRewardDelta (address,assetId,assetFarmingPower) = {
558558 let lastCheckAssetInterest = tryGetInteger((((("address_" + address) + "_asset_") + assetId) + "_lastCheckInterest"))
559559 let currentInterest = getCurrentInterest()
560560 (assetFarmingPower * (currentInterest - lastCheckAssetInterest))
561561 }
562562
563563
564564 func addAssetIdToGenEntry (assetId,assetGen) = {
565565 let currentValue = tryGetString((("assets_" + assetGen) + "_locked"))
566566 if ((currentValue == ""))
567567 then assetId
568568 else ((currentValue + ",") + assetId)
569569 }
570570
571571
572572 func getStakeResult (address,assetId,assetFarmingPower) = {
573573 let asset = toBase58String(assetId)
574574 [IntegerEntry("total_farmingPower", (tryGetInteger("total_farmingPower") + assetFarmingPower)), IntegerEntry("total_lastCheckInterest", getCurrentInterest()), IntegerEntry("total_lastCheckInterestHeight", height), IntegerEntry((((("address_" + address) + "_asset_") + asset) + "_farmingPower"), assetFarmingPower), IntegerEntry((((("address_" + address) + "_asset_") + asset) + "_lastCheckInterest"), getCurrentInterest())]
575575 }
576576
577577
578578 func getUnstakeResult (address,assetId,rewardDelta,withdrawnAmount,assetFarmingPower) = {
579579 let asset = toBase58String(assetId)
580580 [IntegerEntry("total_farmingPower", (tryGetInteger("total_farmingPower") - assetFarmingPower)), IntegerEntry("total_lastCheckInterest", getCurrentInterest()), IntegerEntry("total_lastCheckInterestHeight", height), IntegerEntry((((("address_" + address) + "_asset_") + asset) + "_farmingPower"), 0), IntegerEntry((((("address_" + address) + "_asset_") + asset) + "_lastCheckInterest"), getCurrentInterest()), IntegerEntry((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount"), (tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount")) + (withdrawnAmount * scale2))), IntegerEntry((((("address_" + address) + "_asset_") + asset) + "_lastCheckFarmedAmount"), (tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_lastCheckFarmedAmount")) + rewardDelta))]
581581 }
582582
583583
584584 @Callable(i)
585585 func init () = if ((i.caller != this))
586586 then throw("admin only")
587587 else [IntegerEntry("total_startHeight", height)]
588588
589589
590590
591591 @Callable(i)
592592 func buyPerch (color,refererAddress) = if ((isLocked() > 0))
593- then throw("egg spendings are temporarily locked")
593+ then throw("EGG operations are temporarily locked")
594594 else if ((0 > value(indexOf(["B", "R", "G", "Y"], color))))
595595 then throw("you need to set color properly")
596596 else {
597597 let firstPayment = value(i.payments[0])
598598 if ((firstPayment.assetId != eggsAssetId))
599599 then throw(("You can attach only EGG tokens with the following asset id: " + toBase58String(eggsAssetId)))
600600 else if ((firstPayment.amount != perchPrice))
601601 then throw(("To buy a perch you currently need the following amount of EGGlets: " + toString(perchPrice)))
602602 else {
603- let refererRewardForPerch = ((firstPayment.amount / 100) * RefererReward)
603+ let refererRewardForPerch = fraction(firstPayment.amount, RefererReward, 100)
604604 let refCall = invoke(Address(refContractAddress), "refPayment", [refererAddress], [AttachedPayment(eggsAssetId, refererRewardForPerch)])
605605 if ((refCall == refCall))
606606 then {
607607 let perchAmountKey = ((("address_" + toString(i.caller)) + "_perchesAvailable_") + color)
608608 let perchAmount = tryGetInteger(perchAmountKey)
609609 [IntegerEntry(perchAmountKey, (perchAmount + 1))]
610610 }
611611 else throw("Strict value is not equal to itself.")
612612 }
613613 }
614614
615615
616616
617617 @Callable(i)
618618 func addFreePerch (address,color) = if ((0 > value(indexOf(["B", "R", "G", "Y"], color))))
619619 then throw("you need to set color properly")
620620 else if (if ((i.caller != Address(rebirthAddress)))
621621 then (i.caller != this)
622622 else false)
623623 then throw("rebirth only")
624624 else {
625625 let perchAmountKey = ((("address_" + address) + "_perchesAvailable_") + color)
626626 let perchAmount = tryGetInteger(perchAmountKey)
627627 $Tuple2([IntegerEntry(perchAmountKey, (perchAmount + 1))], "")
628628 }
629629
630630
631631
632632 @Callable(i)
633-func stakeNFT () = {
634- let assetId = value(value(i.payments[0]).assetId)
635- let address = toString(i.caller)
636- let color = takeRight(value(assetInfo(assetId)).name, 1)
637- let availablePerches = tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color))
638- if ((0 >= availablePerches))
639- then throw(("no perches available for the color " + color))
640- else {
641- let $t088378902 = getAssetFarmingPower(assetId)
642- let assetGen = $t088378902._1
643- let assetFarmingPower = $t088378902._2
644- let assetRewardDelta = calcAssetRewardDelta(address, toBase58String(assetId), assetFarmingPower)
645- (getStakeResult(address, assetId, assetFarmingPower) ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (availablePerches - 1))])
646- }
647- }
633+func stakeNFT () = if ((isLocked() > 0))
634+ then throw("EGG operations are temporarily locked")
635+ else {
636+ let assetId = value(value(i.payments[0]).assetId)
637+ let address = toString(i.caller)
638+ let color = takeRight(value(assetInfo(assetId)).name, 1)
639+ let availablePerches = tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color))
640+ if ((0 >= availablePerches))
641+ then throw(("no perches available for the color " + color))
642+ else {
643+ let $t089939058 = getAssetFarmingPower(assetId)
644+ let assetGen = $t089939058._1
645+ let assetFarmingPower = $t089939058._2
646+ let assetRewardDelta = calcAssetRewardDelta(address, toBase58String(assetId), assetFarmingPower)
647+ (getStakeResult(address, assetId, assetFarmingPower) ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (availablePerches - 1))])
648+ }
649+ }
648650
649651
650652
651653 @Callable(i)
652654 func unstakeNFT (asset) = if ((isLocked() > 0))
653- then throw("egg spendings are temporarily locked")
655+ then throw("EGG operations are temporarily locked")
654656 else {
655657 let assetId = fromBase58String(asset)
656658 let address = toString(i.caller)
657659 let assetFarmingPower = getLastKnownAssetFarmingPower(address, asset)
658660 let assetRewardDelta = calcAssetRewardDelta(address, asset, assetFarmingPower)
659661 let farmedAmount = (assetRewardDelta + tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_lastCheckFarmedAmount")))
660662 let withdrawnAmount = tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount"))
661- let reward = ((farmedAmount - withdrawnAmount) / (scale * 100))
663+ let reward = (((farmedAmount - withdrawnAmount) / (scale * 100)) * 1000000)
662664 let color = takeRight(value(assetInfo(assetId)).name, 1)
663665 if ((0 >= assetFarmingPower))
664666 then throw("asset not available")
665667 else if ((color == "U"))
666668 then throw("use another function to unstake Jackpot NFT")
667669 else {
668670 let result = getUnstakeResult(address, assetId, assetRewardDelta, reward, assetFarmingPower)
669- (result ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color)) + 1)), ScriptTransfer(i.caller, reward, eggsAssetId), ScriptTransfer(i.caller, 1, assetId)])
671+ $Tuple2((result ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color)) + 1)), ScriptTransfer(i.caller, reward, eggsAssetId), ScriptTransfer(i.caller, 1, assetId)]), reward)
670672 }
671673 }
672674
673675
674676
675677 @Callable(i)
676-func stakeJackpot (color) = {
677- let assetId = value(value(i.payments[0]).assetId)
678- let address = toString(i.caller)
679- let availablePerches = tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color))
680- let assetIssuer = value(assetInfo(assetId)).issuer.bytes
681- if (if ((assetIssuer == incubatorAddress))
682- then true
683- else (assetIssuer == breederAddress))
684- then if ((takeRight(value(value(assetInfo(assetId)).name), 1) != "U"))
685- then throw("jackpot only")
686- else if ((0 >= availablePerches))
687- then throw(("no perches available for the color " + color))
688- else (getStakeResult(address, assetId, 100) ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (availablePerches - 1)), StringEntry((((("address_" + toString(i.caller)) + "_asset_") + toBase58String(assetId)) + "_perchColor"), color)])
689- else throw("asset is not valid")
690- }
678+func stakeJackpot (color) = if ((isLocked() > 0))
679+ then throw("EGG operations are temporarily locked")
680+ else {
681+ let assetId = value(value(i.payments[0]).assetId)
682+ let address = toString(i.caller)
683+ let availablePerches = tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color))
684+ let assetIssuer = value(assetInfo(assetId)).issuer.bytes
685+ if (if ((assetIssuer == incubatorAddress))
686+ then true
687+ else (assetIssuer == breederAddress))
688+ then if ((takeRight(value(value(assetInfo(assetId)).name), 1) != "U"))
689+ then throw("jackpot only")
690+ else if ((0 >= availablePerches))
691+ then throw(("no perches available for the color " + color))
692+ else (getStakeResult(address, assetId, 100) ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (availablePerches - 1)), StringEntry((((("address_" + toString(i.caller)) + "_asset_") + toBase58String(assetId)) + "_perchColor"), color)])
693+ else throw("asset is not valid")
694+ }
691695
692696
693697
694698 @Callable(i)
695699 func unstakeJackpot (asset) = if ((isLocked() > 0))
696- then throw("egg spendings are temporarily locked")
700+ then throw("EGG operations are temporarily locked")
697701 else {
698702 let assetId = fromBase58String(asset)
699703 let address = toString(i.caller)
700704 let color = tryGetString((((("address_" + address) + "_asset_") + asset) + "_perchColor"))
701705 let assetFarmingPower = getLastKnownAssetFarmingPower(address, asset)
702706 let assetRewardDelta = calcAssetRewardDelta(address, asset, assetFarmingPower)
703707 let farmedAmount = (assetRewardDelta + tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_lastCheckFarmedAmount")))
704708 let withdrawnAmount = tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount"))
705- let reward = ((farmedAmount - withdrawnAmount) / (scale * 100))
709+ let reward = (((farmedAmount - withdrawnAmount) / (scale * 100)) * 1000000)
706710 if ((takeRight(value(value(assetInfo(assetId)).name), 1) != "U"))
707711 then throw("jackpot only")
708712 else if ((assetFarmingPower > 0))
709713 then {
710714 let result = getUnstakeResult(address, assetId, assetRewardDelta, reward, assetFarmingPower)
711- (result ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color)) + 1)), ScriptTransfer(i.caller, reward, eggsAssetId), ScriptTransfer(i.caller, 1, assetId)])
715+ $Tuple2((result ++ [IntegerEntry(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color), (tryGetInteger(((("address_" + toString(i.caller)) + "_perchesAvailable_") + color)) + 1)), ScriptTransfer(i.caller, reward, eggsAssetId), ScriptTransfer(i.caller, 1, assetId)]), reward)
712716 }
713717 else throw("")
714718 }
715719
716720
717721
718722 @Callable(i)
719723 func claimReward (asset) = if ((isLocked() > 0))
720- then throw("egg spendings are temporarily locked")
724+ then throw("EGG operations are temporarily locked")
721725 else {
722726 let address = toString(i.caller)
723727 let assetId = fromBase58String(asset)
724728 let assetFarmingPower = getLastKnownAssetFarmingPower(address, asset)
725729 let assetRewardDelta = calcAssetRewardDelta(address, asset, assetFarmingPower)
726730 let farmedAmount = (assetRewardDelta + tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_lastCheckFarmedAmount")))
727731 let withdrawnAmount = tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount"))
728- let reward = ((farmedAmount - withdrawnAmount) / (scale * 100))
732+ let reward = (((farmedAmount - withdrawnAmount) / (scale * 100)) * 1000000)
729733 if ((0 >= reward))
730734 then throw("you have no EGGs to withdraw")
731735 else $Tuple2([IntegerEntry((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount"), (tryGetInteger((((("address_" + address) + "_asset_") + asset) + "_withdrawnAmount")) + (reward * scale2))), ScriptTransfer(Address(fromBase58String(address)), reward, eggsAssetId)], reward)
732736 }
733737
734738
735739 @Verifier(tx)
736740 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
737741

github/deemru/w8io/6500d08 
304.26 ms