tx · Y4n6CNaHLGhmgic5CfGH5Ux1MEDL2j2swvX64QS4odX

3MvCLdwRiQSNrhgumfFunsbyUJUw6ViTMwB:  -0.05000000 Waves

2021.08.19 15:35 [1665244] smart account 3MvCLdwRiQSNrhgumfFunsbyUJUw6ViTMwB > SELF 0.00000000 Waves

{ "type": 13, "id": "Y4n6CNaHLGhmgic5CfGH5Ux1MEDL2j2swvX64QS4odX", "fee": 5000000, "feeAssetId": null, "timestamp": 1629376587097, "version": 2, "chainId": 84, "sender": "3MvCLdwRiQSNrhgumfFunsbyUJUw6ViTMwB", "senderPublicKey": "9Vbnf3b9hhuCerzPXf38mLo8mUGTPNVW3jtQRbymjaSw", "proofs": [ "2BBpkKLBnFJNzF74RhDuhLYFgH9BQG8BRN1oTtCBSHDh1Ti7A7mWLXpNWbppNbh7BNdDzVKF3KtzzAZMhAEmHxrP" ], "script": "base64:AAIFAAAAAAAAADoIAhIGCgQBAQEBEgMKAQESAwoBARIDCgEBEgMKAQESAwoBARIECgIBCBIFCgMBCAgSAwoBARIDCgEBAAAALAAAAAAQaW5jdWJhdG9yQWRkcmVzcwEAAAAaAVQu1YzRxAHn1ekAzs1AJJ6xFAc06V7PK6oAAAAADmJyZWVkZXJBZGRyZXNzAQAAABoBVC7VjNHEAefV6QDOzUAknrEUBzTpXs8rqgAAAAAOZmFybWluZ0FkZHJlc3MBAAAAGgFU8jY5wCvKx9IdZ1jq9byeNi+peiAgajPTAAAAAAtlZ2dzQXNzZXRJZAEAAAAgJQJlzPcEaMi+AVmReOVYWjhmFBOtSkxKt/4FF0gXFoMAAAAACG1ha2VyRmVlAAAAAAAAAAABAAAAAAh0YWtlckZlZQAAAAAAAAAAAQAAAAAFU0xPVFMAAAAAAAAAAAoAAAAAB1dBSVRJTkcAAAAAAAAAAAUAAAAADHN0ZXBEdXJhdGlvbgAAAAAAAAAAAwEAAAANdHJ5R2V0SW50ZWdlcgAAAAEAAAADa2V5BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFiBQAAAAckbWF0Y2gwBQAAAAFiAAAAAAAAAAAAAQAAAAx0cnlHZXRTdHJpbmcAAAABAAAAA2tleQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQIAAAAAAQAAAA10cnlHZXRCb29sZWFuAAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQbAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAdCb29sZWFuBAAAAAFiBQAAAAckbWF0Y2gwBQAAAAFiBwEAAAANZ2V0TmV4dEdhbWVJZAAAAAAEAAAABm5leHRJZAkBAAAADXRyeUdldEludGVnZXIAAAABAgAAAAxuZXh0X2dhbWVfaWQDCQAAAAAAAAIFAAAABm5leHRJZAAAAAAAAAAAAAAAAAAAAAAAAQUAAAAGbmV4dElkAQAAABVnZXRVc2VyQ3VycmVudEdhbWVLZXkAAAABAAAAB2FkZHJlc3MJAAEsAAAAAgIAAAANY3VycmVudF9nYW1lXwUAAAAHYWRkcmVzcwEAAAASZ2V0VXNlckN1cnJlbnRHYW1lAAAAAQAAAAdhZGRyZXNzCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAQAAABVnZXRVc2VyQ3VycmVudEdhbWVLZXkAAAABBQAAAAdhZGRyZXNzAQAAAApnZXRTbG90S2V5AAAAAQAAAARzbG90CQABLAAAAAICAAAABXNsb3RfCQABpAAAAAEFAAAABHNsb3QBAAAAB2dldFNsb3QAAAABAAAABHNsb3QJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkBAAAACmdldFNsb3RLZXkAAAABBQAAAARzbG90AQAAAA9nZXRHYW1lTWFrZXJLZXkAAAABAAAABmdhbWVJZAkAASwAAAACCQABLAAAAAICAAAABWdhbWVfCQABpAAAAAEFAAAABmdhbWVJZAIAAAAGX21ha2VyAQAAAAxnZXRHYW1lTWFrZXIAAAABAAAABmdhbWVJZAkBAAAADHRyeUdldFN0cmluZwAAAAEJAQAAAA9nZXRHYW1lTWFrZXJLZXkAAAABBQAAAAZnYW1lSWQBAAAAD2dldEdhbWVUYWtlcktleQAAAAEAAAAGZ2FtZUlkCQABLAAAAAIJAAEsAAAAAgIAAAAFZ2FtZV8JAAGkAAAAAQUAAAAGZ2FtZUlkAgAAAAZfdGFrZXIBAAAADGdldEdhbWVUYWtlcgAAAAEAAAAGZ2FtZUlkCQEAAAAMdHJ5R2V0U3RyaW5nAAAAAQkBAAAAD2dldEdhbWVUYWtlcktleQAAAAEFAAAABmdhbWVJZAEAAAANZ2V0QmV0RWdnc0tleQAAAAEAAAAGZ2FtZUlkCQABLAAAAAIJAAEsAAAAAgIAAAAFZ2FtZV8JAAGkAAAAAQUAAAAGZ2FtZUlkAgAAAAlfYmV0X2VnZ3MBAAAACmdldEJldEVnZ3MAAAABAAAABmdhbWVJZAkBAAAADXRyeUdldEludGVnZXIAAAABCQEAAAANZ2V0QmV0RWdnc0tleQAAAAEFAAAABmdhbWVJZAEAAAAaZ2V0R2FtZVdhaXRpbmdFbmRIZWlnaHRLZXkAAAABAAAABmdhbWVJZAkAASwAAAACCQABLAAAAAICAAAABWdhbWVfCQABpAAAAAEFAAAABmdhbWVJZAIAAAATX3dhaXRpbmdfZW5kX2hlaWdodAEAAAAXZ2V0R2FtZVdhaXRpbmdFbmRIZWlnaHQAAAABAAAABmdhbWVJZAkBAAAADXRyeUdldEludGVnZXIAAAABCQEAAAAaZ2V0R2FtZVdhaXRpbmdFbmRIZWlnaHRLZXkAAAABBQAAAAZnYW1lSWQBAAAAFGdldEdhbWVPdmVySGVpZ2h0S2V5AAAAAQAAAAZnYW1lSWQJAAEsAAAAAgkAASwAAAACAgAAAAVnYW1lXwkAAaQAAAABBQAAAAZnYW1lSWQCAAAADF9vdmVyX2hlaWdodAEAAAARZ2V0R2FtZU92ZXJIZWlnaHQAAAABAAAABmdhbWVJZAkBAAAADXRyeUdldEludGVnZXIAAAABCQEAAAAaZ2V0R2FtZVdhaXRpbmdFbmRIZWlnaHRLZXkAAAABBQAAAAZnYW1lSWQBAAAAFWdldEdhbWVSYXJpdHlSYW5nZUtleQAAAAIAAAAGZ2FtZUlkAAAADXJhbmdlUG9zaXRpb24JAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAABWdhbWVfCQABpAAAAAEFAAAABmdhbWVJZAIAAAANX3Jhcml0eVJhbmdlXwUAAAANcmFuZ2VQb3NpdGlvbgEAAAASZ2V0R2FtZVJhcml0eVJhbmdlAAAAAgAAAAZnYW1lSWQAAAANcmFuZ2VQb3NpdGlvbgkBAAAADXRyeUdldEludGVnZXIAAAABCQEAAAAVZ2V0R2FtZVJhcml0eVJhbmdlS2V5AAAAAgUAAAAGZ2FtZUlkBQAAAA1yYW5nZVBvc2l0aW9uAQAAAA5nZXRHYW1lU3RlcEtleQAAAAEAAAAGZ2FtZUlkCQABLAAAAAIJAAEsAAAAAgIAAAAFZ2FtZV8JAAGkAAAAAQUAAAAGZ2FtZUlkAgAAAAVfc3RlcAEAAAALZ2V0R2FtZVN0ZXAAAAABAAAABmdhbWVJZAkBAAAADXRyeUdldEludGVnZXIAAAABCQEAAAAOZ2V0R2FtZVN0ZXBLZXkAAAABBQAAAAZnYW1lSWQBAAAADGdldFJhcml0eUtleQAAAAMAAAAGZ2FtZUlkAAAABnBsYXllcgAAAA1yYW5nZVBvc2l0aW9uCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAVnYW1lXwkAAaQAAAABBQAAAAZnYW1lSWQCAAAAAV8FAAAABnBsYXllcgIAAAABXwUAAAANcmFuZ2VQb3NpdGlvbgIAAAAGUmFyaXR5AQAAAAlnZXRSYXJpdHkAAAADAAAABmdhbWVJZAAAAAZwbGF5ZXIAAAANcmFuZ2VQb3NpdGlvbgkBAAAADXRyeUdldEludGVnZXIAAAABCQEAAAAMZ2V0UmFyaXR5S2V5AAAAAwUAAAAGZ2FtZUlkBQAAAAZwbGF5ZXIFAAAADXJhbmdlUG9zaXRpb24BAAAADGdldENvbW1pdEtleQAAAAIAAAAGZ2FtZUlkAAAABnBsYXllcgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAVnYW1lXwkAAaQAAAABBQAAAAZnYW1lSWQCAAAAAV8FAAAABnBsYXllcgIAAAAHX2NvbW1pdAEAAAAJZ2V0Q29tbWl0AAAAAgAAAAZnYW1lSWQAAAAGcGxheWVyCQEAAAAMdHJ5R2V0U3RyaW5nAAAAAQkBAAAADGdldENvbW1pdEtleQAAAAIFAAAABmdhbWVJZAUAAAAGcGxheWVyAQAAAA9nZXREdWNrT3JkZXJLZXkAAAACAAAABmdhbWVJZAAAAAZwbGF5ZXIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAFZ2FtZV8JAAGkAAAAAQUAAAAGZ2FtZUlkAgAAAAFfBQAAAAZwbGF5ZXICAAAACl9kdWNrT3JkZXIBAAAADGdldER1Y2tPcmRlcgAAAAIAAAAGZ2FtZUlkAAAABnBsYXllcgkBAAAADHRyeUdldFN0cmluZwAAAAEJAQAAAA9nZXREdWNrT3JkZXJLZXkAAAACBQAAAAZnYW1lSWQFAAAABnBsYXllcgEAAAAPZ2V0UHJpemVTZW50S2V5AAAAAgAAAAZnYW1lSWQAAAAGcGxheWVyCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAABWdhbWVfCQABpAAAAAEFAAAABmdhbWVJZAIAAAABXwUAAAAGcGxheWVyAgAAAA9fd2l0aGRyYXdTdGF0dXMBAAAADGdldFByaXplU2VudAAAAAIAAAAGZ2FtZUlkAAAABnBsYXllcgkBAAAADXRyeUdldEJvb2xlYW4AAAABCQEAAAAPZ2V0UHJpemVTZW50S2V5AAAAAgUAAAAGZ2FtZUlkBQAAAAZwbGF5ZXIBAAAACHBpY2tEdWNrAAAABwAAAAZnYW1lSWQAAAAKcGxheWVyUm9sZQAAAA1wbGF5ZXJBZGRyZXNzAAAAB2Fzc2V0SWQAAAAGcmFyaXR5AAAADXJhbmdlUG9zaXRpb24AAAAEc3RlcAQAAAALcmFyaXR5UmFuZ2UJAQAAABJnZXRHYW1lUmFyaXR5UmFuZ2UAAAACBQAAAAZnYW1lSWQFAAAADXJhbmdlUG9zaXRpb24DAwMDCQAAAAAAAAIFAAAAC3Jhcml0eVJhbmdlAAAAAAAAAAAFCQAAZgAAAAIAAAAAAAAAACgFAAAABnJhcml0eQcGCQAAZwAAAAIFAAAABnJhcml0eQkAAGgAAAACBQAAAAtyYXJpdHlSYW5nZQAAAAAAAAAACgYJAABmAAAAAgkAAGgAAAACCQAAZQAAAAIFAAAAC3Jhcml0eVJhbmdlAAAAAAAAAAABAAAAAAAAAAAKBQAAAAZyYXJpdHkJAAACAAAAAQIAAAAmVGhpcyBkdWNrIGRvZXNuJ3QgZml0IHRoZSByYXJpdHkgcmFuZ2UJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAAxnZXRSYXJpdHlLZXkAAAADBQAAAAZnYW1lSWQFAAAACnBsYXllclJvbGUFAAAADXJhbmdlUG9zaXRpb24FAAAABnJhcml0eQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAADmdldEdhbWVTdGVwS2V5AAAAAQUAAAAGZ2FtZUlkCQAAZAAAAAIFAAAABHN0ZXAAAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABRnZXRHYW1lT3ZlckhlaWdodEtleQAAAAEFAAAABmdhbWVJZAkAAGQAAAACBQAAAAZoZWlnaHQFAAAADHN0ZXBEdXJhdGlvbgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAA1wbGF5ZXJBZGRyZXNzAAAAAAAAAAABBQAAAAdhc3NldElkBQAAAANuaWwBAAAACGdldFNjb3JlAAAAAgAAAAFhAAAAAWIDCQAAZgAAAAIFAAAAAWEFAAAAAWIAAAAAAAAAAAEDCQAAZgAAAAIFAAAAAWIFAAAAAWEA//////////8AAAAAAAAAAAABAAAACWdldFdpbm5lcgAAAAEAAAAGZ2FtZUlkBAAAAA5tYWtlckR1Y2tPcmRlcgkABLUAAAACCQEAAAAMZ2V0RHVja09yZGVyAAAAAgUAAAAGZ2FtZUlkAgAAAAVtYWtlcgIAAAABLAQAAAAOdGFrZXJEdWNrT3JkZXIJAAS1AAAAAgkBAAAADGdldER1Y2tPcmRlcgAAAAIFAAAABmdhbWVJZAIAAAAFdGFrZXICAAAAASwEAAAADG1ha2VyUmFyaXR5MQkBAAAACWdldFJhcml0eQAAAAMFAAAABmdhbWVJZAIAAAAFbWFrZXIJAAGRAAAAAgUAAAAObWFrZXJEdWNrT3JkZXIAAAAAAAAAAAAEAAAADG1ha2VyUmFyaXR5MgkBAAAACWdldFJhcml0eQAAAAMFAAAABmdhbWVJZAIAAAAFbWFrZXIJAAGRAAAAAgUAAAAObWFrZXJEdWNrT3JkZXIAAAAAAAAAAAEEAAAADG1ha2VyUmFyaXR5MwkBAAAACWdldFJhcml0eQAAAAMFAAAABmdhbWVJZAIAAAAFbWFrZXIJAAGRAAAAAgUAAAAObWFrZXJEdWNrT3JkZXIAAAAAAAAAAAIEAAAADHRha2VyUmFyaXR5MQkBAAAACWdldFJhcml0eQAAAAMFAAAABmdhbWVJZAIAAAAFdGFrZXIJAAGRAAAAAgUAAAAObWFrZXJEdWNrT3JkZXIAAAAAAAAAAAAEAAAADHRha2VyUmFyaXR5MgkBAAAACWdldFJhcml0eQAAAAMFAAAABmdhbWVJZAIAAAAFdGFrZXIJAAGRAAAAAgUAAAAObWFrZXJEdWNrT3JkZXIAAAAAAAAAAAEEAAAADHRha2VyUmFyaXR5MwkBAAAACWdldFJhcml0eQAAAAMFAAAABmdhbWVJZAIAAAAFdGFrZXIJAAGRAAAAAgUAAAAObWFrZXJEdWNrT3JkZXIAAAAAAAAAAAIEAAAACm1ha2VyU2NvcmUJAABkAAAAAgkAAGQAAAACCQEAAAAIZ2V0U2NvcmUAAAACBQAAAAxtYWtlclJhcml0eTEFAAAADHRha2VyUmFyaXR5MQkBAAAACGdldFNjb3JlAAAAAgUAAAAMbWFrZXJSYXJpdHkyBQAAAAx0YWtlclJhcml0eTIJAQAAAAhnZXRTY29yZQAAAAIFAAAADG1ha2VyUmFyaXR5MwUAAAAMdGFrZXJSYXJpdHkzAwkAAGYAAAACBQAAAAptYWtlclNjb3JlAAAAAAAAAAAAAgAAAAVtYWtlcgMJAABmAAAAAgAAAAAAAAAAAAUAAAAKbWFrZXJTY29yZQIAAAAFdGFrZXICAAAABGRyYXcBAAAAEGdldFdpbm5lckV4cGlyZWQAAAABAAAACGdhbWVTdGVwAwMDAwMJAAAAAAAAAgUAAAAIZ2FtZVN0ZXAAAAAAAAAAAAAGCQAAAAAAAAIFAAAACGdhbWVTdGVwAAAAAAAAAAADBgkAAAAAAAACBQAAAAhnYW1lU3RlcAAAAAAAAAAABAYJAAAAAAAAAgUAAAAIZ2FtZVN0ZXAAAAAAAAAAAAcGCQAAAAAAAAIFAAAACGdhbWVTdGVwAAAAAAAAAAAJAgAAAAVtYWtlcgMDAwMDCQAAAAAAAAIFAAAACGdhbWVTdGVwAAAAAAAAAAABBgkAAAAAAAACBQAAAAhnYW1lU3RlcAAAAAAAAAAAAgYJAAAAAAAAAgUAAAAIZ2FtZVN0ZXAAAAAAAAAAAAUGCQAAAAAAAAIFAAAACGdhbWVTdGVwAAAAAAAAAAAGBgkAAAAAAAACBQAAAAhnYW1lU3RlcAAAAAAAAAAACAIAAAAFdGFrZXICAAAABGRyYXcBAAAACXNlbmRQcml6ZQAAAAQAAAAGZ2FtZUlkAAAADXBsYXllckFkZHJlc3MAAAAKcGxheWVyUm9sZQAAAAZ3aW5uZXIDCQEAAAAMZ2V0UHJpemVTZW50AAAAAgUAAAAGZ2FtZUlkBQAAAApwbGF5ZXJSb2xlCQAAAgAAAAECAAAAHllvdSBoYXZlIGFscmVhZHkgZ290IHRoZSBwcml6ZQMJAAAAAAAAAgUAAAAGd2lubmVyBQAAAApwbGF5ZXJSb2xlCQAETAAAAAIJAQAAAAxCb29sZWFuRW50cnkAAAACCQEAAAAPZ2V0UHJpemVTZW50S2V5AAAAAgUAAAAGZ2FtZUlkBQAAAApwbGF5ZXJSb2xlBgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAA1wbGF5ZXJBZGRyZXNzCQAAaAAAAAIJAQAAAApnZXRCZXRFZ2dzAAAAAQUAAAAGZ2FtZUlkAAAAAAAAAAACBQAAAAtlZ2dzQXNzZXRJZAUAAAADbmlsAwkAAAAAAAACBQAAAAZ3aW5uZXICAAAABGRyYXcJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIJAQAAAA9nZXRQcml6ZVNlbnRLZXkAAAACBQAAAAZnYW1lSWQFAAAACnBsYXllclJvbGUGCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAADXBsYXllckFkZHJlc3MJAQAAAApnZXRCZXRFZ2dzAAAAAQUAAAAGZ2FtZUlkBQAAAAtlZ2dzQXNzZXRJZAUAAAADbmlsCQAAAgAAAAECAAAAIVlvdSBsb3NlIGFuZCBkb24ndCBoYXZlIGFueSBwcml6ZQAAAAoAAAABaQEAAAAIbWFrZUdhbWUAAAAEAAAABHNsb3QAAAAQcmFyaXR5UmFuZ2VXb3JzdAAAABFyYXJpdHlSYW5nZU1lZGl1bQAAAA9yYXJpdHlSYW5nZUJlc3QEAAAADWNhbGxlckFkZHJlc3MJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAAKc2xvdEdhbWVJZAkBAAAAB2dldFNsb3QAAAABBQAAAARzbG90BAAAAAdwYXltZW50CQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAARlZ2dzCQAAZQAAAAIIBQAAAAdwYXltZW50AAAABmFtb3VudAUAAAAIbWFrZXJGZWUEAAAABmdhbWVJZAkBAAAADWdldE5leHRHYW1lSWQAAAAAAwkBAAAAAiE9AAAAAggFAAAAB3BheW1lbnQAAAAHYXNzZXRJZAUAAAALZWdnc0Fzc2V0SWQJAAACAAAAAQkAASwAAAACAgAAADZZb3UgY2FuIGF0dGFjaCBvbmx5IEVHR3Mgd2l0aCB0aGUgZm9sbG93aW5nIGFzc2V0IGlkOiAJAAJYAAAAAQUAAAALZWdnc0Fzc2V0SWQDCQAAZgAAAAIAAAAAAAAAAAAFAAAABGVnZ3MJAAACAAAAAQIAAAAPTm90IGVub3VnaCBFR0dzAwkAAAAAAAACBQAAAARlZ2dzAAAAAAAAAAAACQAAAgAAAAECAAAAFFlvdSBjYW4ndCBiZXQgMCBFR0dzAwkBAAAAAiE9AAAAAgkBAAAAEmdldFVzZXJDdXJyZW50R2FtZQAAAAEFAAAADWNhbGxlckFkZHJlc3MAAAAAAAAAAAAJAAACAAAAAQIAAAAfWW91IGFscmVhZHkgaGF2ZSBhbiBhY3RpdmUgZ2FtZQMDCQAAZgAAAAIAAAAAAAAAAAAFAAAABHNsb3QGCQAAZwAAAAIFAAAABHNsb3QFAAAABVNMT1RTCQAAAgAAAAECAAAADEludmFsaWQgc2xvdAMJAQAAAAIhPQAAAAIFAAAACnNsb3RHYW1lSWQAAAAAAAAAAAAJAAACAAAAAQIAAAARVGhpcyBzbG90IGlzIGJ1c3kDAwkAAGYAAAACAAAAAAAAAAABBQAAABByYXJpdHlSYW5nZVdvcnN0BgkAAGYAAAACBQAAABByYXJpdHlSYW5nZVdvcnN0AAAAAAAAAAAFCQAAAgAAAAECAAAALEluc3VmZmljaWVudCByYXJpdHkgcmFuZ2UgZm9yIHRoZSB3b3JzdCBkdWNrAwMJAABmAAAAAgAAAAAAAAAAAQUAAAARcmFyaXR5UmFuZ2VNZWRpdW0GCQAAZgAAAAIFAAAAEXJhcml0eVJhbmdlTWVkaXVtAAAAAAAAAAAFCQAAAgAAAAECAAAALUluc3VmZmljaWVudCByYXJpdHkgcmFuZ2UgZm9yIHRoZSBtZWRpdW0gZHVjawMDCQAAZgAAAAIAAAAAAAAAAAEFAAAAD3Jhcml0eVJhbmdlQmVzdAYJAABmAAAAAgUAAAAPcmFyaXR5UmFuZ2VCZXN0AAAAAAAAAAAFCQAAAgAAAAECAAAAK0luc3VmZmljaWVudCByYXJpdHkgcmFuZ2UgZm9yIHRoZSBiZXN0IGR1Y2sDCQAAZwAAAAIFAAAAEHJhcml0eVJhbmdlV29yc3QFAAAAEXJhcml0eVJhbmdlTWVkaXVtCQAAAgAAAAECAAAAMVRoZSBtZWRpdW0gZHVjayBtdXN0IGJlIGJldHRlciB0aGFuIHRoZSB3b3JzdCBvbmUDCQAAZwAAAAIFAAAAEXJhcml0eVJhbmdlTWVkaXVtBQAAAA9yYXJpdHlSYW5nZUJlc3QJAAACAAAAAQIAAAAwVGhlIGJlc3QgZHVjayBtdXN0IGJlIGJldHRlciB0aGFuIHRoZSBtZWRpdW0gb25lCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAVZ2V0VXNlckN1cnJlbnRHYW1lS2V5AAAAAQUAAAANY2FsbGVyQWRkcmVzcwUAAAAGZ2FtZUlkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAA9nZXRHYW1lTWFrZXJLZXkAAAABBQAAAAZnYW1lSWQFAAAADWNhbGxlckFkZHJlc3MJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAA1nZXRCZXRFZ2dzS2V5AAAAAQUAAAAGZ2FtZUlkBQAAAARlZ2dzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAVZ2V0R2FtZVJhcml0eVJhbmdlS2V5AAAAAgUAAAAGZ2FtZUlkAgAAAAV3b3JzdAUAAAAQcmFyaXR5UmFuZ2VXb3JzdAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAFWdldEdhbWVSYXJpdHlSYW5nZUtleQAAAAIFAAAABmdhbWVJZAIAAAAGbWVkaXVtBQAAABFyYXJpdHlSYW5nZU1lZGl1bQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAFWdldEdhbWVSYXJpdHlSYW5nZUtleQAAAAIFAAAABmdhbWVJZAIAAAAEYmVzdAUAAAAPcmFyaXR5UmFuZ2VCZXN0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAaZ2V0R2FtZVdhaXRpbmdFbmRIZWlnaHRLZXkAAAABBQAAAAZnYW1lSWQJAABkAAAAAgUAAAAGaGVpZ2h0BQAAAAdXQUlUSU5HCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAKZ2V0U2xvdEtleQAAAAEFAAAABHNsb3QFAAAABmdhbWVJZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAMbmV4dF9nYW1lX2lkCQAAZAAAAAIFAAAABmdhbWVJZAAAAAAAAAAAAQUAAAADbmlsAAAAAWkBAAAACHRha2VHYW1lAAAAAQAA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", "height": 1665244, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CBwC6AtuALBkQ92ondLn5A3mtvhJ5UGhbJwNHYZ29pDv Next: GZimgHcdbPNpBBjH8Pque7HKwwUd7FMekniimPBTyazv Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let a = base58'3PEktVux2RhchSN63DsDo4b4mz4QqzKSeDv'
4+let a = base58'3MtBigTsaeevrcJAEwVcr4quwkqcrtnjoAh'
55
6-let b = base58'3PDVuU45H7Eh5dmtNbnRNRStGwULA7NY6Hb'
6+let b = base58'3MtBigTsaeevrcJAEwVcr4quwkqcrtnjoAh'
77
8-let c = base58''
8+let c = base58'3NBznG19rEYUAcnukTRTtwJHBVKQLbobVdC'
99
10-let d = base58'JCGDtrVy64cCJ1wCKfCaiNQMnyYwii71TbE5QeAHfxgF'
10+let d = base58'3VUCuh9dWqe54SdzzNUkXhFXpc8UQynnJVh42B7MjNzN'
1111
1212 let e = 1
1313
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let a = base58'3PEktVux2RhchSN63DsDo4b4mz4QqzKSeDv'
4+let a = base58'3MtBigTsaeevrcJAEwVcr4quwkqcrtnjoAh'
55
6-let b = base58'3PDVuU45H7Eh5dmtNbnRNRStGwULA7NY6Hb'
6+let b = base58'3MtBigTsaeevrcJAEwVcr4quwkqcrtnjoAh'
77
8-let c = base58''
8+let c = base58'3NBznG19rEYUAcnukTRTtwJHBVKQLbobVdC'
99
10-let d = base58'JCGDtrVy64cCJ1wCKfCaiNQMnyYwii71TbE5QeAHfxgF'
10+let d = base58'3VUCuh9dWqe54SdzzNUkXhFXpc8UQynnJVh42B7MjNzN'
1111
1212 let e = 1
1313
1414 let f = 1
1515
1616 let g = 10
1717
1818 let h = 5
1919
2020 let i = 3
2121
2222 func j (k) = {
2323 let l = getInteger(this, k)
2424 if ($isInstanceOf(l, "Int"))
2525 then {
2626 let m = l
2727 m
2828 }
2929 else 0
3030 }
3131
3232
3333 func n (k) = {
3434 let l = getString(this, k)
3535 if ($isInstanceOf(l, "String"))
3636 then {
3737 let o = l
3838 o
3939 }
4040 else ""
4141 }
4242
4343
4444 func p (k) = {
4545 let l = getBoolean(this, k)
4646 if ($isInstanceOf(l, "Boolean"))
4747 then {
4848 let m = l
4949 m
5050 }
5151 else false
5252 }
5353
5454
5555 func q () = {
5656 let r = j("next_game_id")
5757 if ((r == 0))
5858 then 1
5959 else r
6060 }
6161
6262
6363 func s (t) = ("current_game_" + t)
6464
6565
6666 func u (t) = j(s(t))
6767
6868
6969 func v (w) = ("slot_" + toString(w))
7070
7171
7272 func x (w) = j(v(w))
7373
7474
7575 func y (z) = (("game_" + toString(z)) + "_maker")
7676
7777
7878 func A (z) = n(y(z))
7979
8080
8181 func B (z) = (("game_" + toString(z)) + "_taker")
8282
8383
8484 func C (z) = n(B(z))
8585
8686
8787 func D (z) = (("game_" + toString(z)) + "_bet_eggs")
8888
8989
9090 func E (z) = j(D(z))
9191
9292
9393 func F (z) = (("game_" + toString(z)) + "_waiting_end_height")
9494
9595
9696 func G (z) = j(F(z))
9797
9898
9999 func H (z) = (("game_" + toString(z)) + "_over_height")
100100
101101
102102 func I (z) = j(F(z))
103103
104104
105105 func J (z,K) = ((("game_" + toString(z)) + "_rarityRange_") + K)
106106
107107
108108 func L (z,K) = j(J(z, K))
109109
110110
111111 func M (z) = (("game_" + toString(z)) + "_step")
112112
113113
114114 func N (z) = j(M(z))
115115
116116
117117 func O (z,P,K) = (((((("game_" + toString(z)) + "_") + P) + "_") + K) + "Rarity")
118118
119119
120120 func Q (z,P,K) = j(O(z, P, K))
121121
122122
123123 func R (z,P) = (((("game_" + toString(z)) + "_") + P) + "_commit")
124124
125125
126126 func S (z,P) = n(R(z, P))
127127
128128
129129 func T (z,P) = (((("game_" + toString(z)) + "_") + P) + "_duckOrder")
130130
131131
132132 func U (z,P) = n(T(z, P))
133133
134134
135135 func V (z,P) = (((("game_" + toString(z)) + "_") + P) + "_withdrawStatus")
136136
137137
138138 func W (z,P) = p(V(z, P))
139139
140140
141141 func X (z,Y,Z,aa,ab,K,ac) = {
142142 let ad = L(z, K)
143143 if (if (if (if ((ad == 5))
144144 then (40 > ab)
145145 else false)
146146 then true
147147 else (ab >= (ad * 10)))
148148 then true
149149 else (((ad - 1) * 10) > ab))
150150 then throw("This duck doesn't fit the rarity range")
151151 else [IntegerEntry(O(z, Y, K), ab), IntegerEntry(M(z), (ac + 1)), IntegerEntry(H(z), (height + i)), ScriptTransfer(Z, 1, aa)]
152152 }
153153
154154
155155 func ae (o,m) = if ((o > m))
156156 then 1
157157 else if ((m > o))
158158 then -1
159159 else 0
160160
161161
162162 func af (z) = {
163163 let ag = split(U(z, "maker"), ",")
164164 let ah = split(U(z, "taker"), ",")
165165 let ai = Q(z, "maker", ag[0])
166166 let aj = Q(z, "maker", ag[1])
167167 let ak = Q(z, "maker", ag[2])
168168 let al = Q(z, "taker", ag[0])
169169 let am = Q(z, "taker", ag[1])
170170 let an = Q(z, "taker", ag[2])
171171 let ao = ((ae(ai, al) + ae(aj, am)) + ae(ak, an))
172172 if ((ao > 0))
173173 then "maker"
174174 else if ((0 > ao))
175175 then "taker"
176176 else "draw"
177177 }
178178
179179
180180 func ap (aq) = if (if (if (if (if ((aq == 0))
181181 then true
182182 else (aq == 3))
183183 then true
184184 else (aq == 4))
185185 then true
186186 else (aq == 7))
187187 then true
188188 else (aq == 9))
189189 then "maker"
190190 else if (if (if (if (if ((aq == 1))
191191 then true
192192 else (aq == 2))
193193 then true
194194 else (aq == 5))
195195 then true
196196 else (aq == 6))
197197 then true
198198 else (aq == 8))
199199 then "taker"
200200 else "draw"
201201
202202
203203 func ar (z,Z,Y,as) = if (W(z, Y))
204204 then throw("You have already got the prize")
205205 else if ((as == Y))
206206 then [BooleanEntry(V(z, Y), true), ScriptTransfer(Z, (E(z) * 2), d)]
207207 else if ((as == "draw"))
208208 then [BooleanEntry(V(z, Y), true), ScriptTransfer(Z, E(z), d)]
209209 else throw("You lose and don't have any prize")
210210
211211
212212 @Callable(at)
213213 func makeGame (w,au,av,aw) = {
214214 let ax = toBase58String(at.caller.bytes)
215215 let ay = x(w)
216216 let az = value(at.payments[0])
217217 let aA = (az.amount - e)
218218 let z = q()
219219 if ((az.assetId != d))
220220 then throw(("You can attach only EGGs with the following asset id: " + toBase58String(d)))
221221 else if ((0 > aA))
222222 then throw("Not enough EGGs")
223223 else if ((aA == 0))
224224 then throw("You can't bet 0 EGGs")
225225 else if ((u(ax) != 0))
226226 then throw("You already have an active game")
227227 else if (if ((0 > w))
228228 then true
229229 else (w >= g))
230230 then throw("Invalid slot")
231231 else if ((ay != 0))
232232 then throw("This slot is busy")
233233 else if (if ((1 > au))
234234 then true
235235 else (au > 5))
236236 then throw("Insufficient rarity range for the worst duck")
237237 else if (if ((1 > av))
238238 then true
239239 else (av > 5))
240240 then throw("Insufficient rarity range for the medium duck")
241241 else if (if ((1 > aw))
242242 then true
243243 else (aw > 5))
244244 then throw("Insufficient rarity range for the best duck")
245245 else if ((au >= av))
246246 then throw("The medium duck must be better than the worst one")
247247 else if ((av >= aw))
248248 then throw("The best duck must be better than the medium one")
249249 else [IntegerEntry(s(ax), z), StringEntry(y(z), ax), IntegerEntry(D(z), aA), IntegerEntry(J(z, "worst"), au), IntegerEntry(J(z, "medium"), av), IntegerEntry(J(z, "best"), aw), IntegerEntry(F(z), (height + h)), IntegerEntry(v(w), z), IntegerEntry("next_game_id", (z + 1))]
250250 }
251251
252252
253253
254254 @Callable(at)
255255 func takeGame (w) = {
256256 let ax = toBase58String(at.caller.bytes)
257257 let z = x(w)
258258 let az = value(at.payments[0])
259259 if ((x(w) == 0))
260260 then throw("This slot is empty")
261261 else if ((az.assetId != d))
262262 then throw(("You can attach only EGG tokens with the following asset id: " + toBase58String(d)))
263263 else if ((az.amount != (E(z) + f)))
264264 then throw("Insufficient eggs amount")
265265 else if ((C(z) != ""))
266266 then throw("This game is already taken")
267267 else if ((height >= G(z)))
268268 then throw("This game is expired")
269269 else [IntegerEntry(s(ax), z), StringEntry(B(z), ax), IntegerEntry(H(z), (height + i)), IntegerEntry(v(w), 0)]
270270 }
271271
272272
273273
274274 @Callable(at)
275275 func kickGame (w) = {
276276 let z = x(w)
277277 if (if ((0 > w))
278278 then true
279279 else (w >= g))
280280 then throw("Invalid slot")
281281 else if ((z == 0))
282282 then throw("Slot is empty")
283283 else if ((G(z) > height))
284284 then throw("Waiting is not finished yet")
285285 else if ((C(z) != ""))
286286 then throw("This game is started")
287287 else {
288288 let aB = A(z)
289289 [IntegerEntry(s(aB), 0), IntegerEntry(v(w), 0), ScriptTransfer(Address(toBytes(aB)), (E(z) + e), d)]
290290 }
291291 }
292292
293293
294294
295295 @Callable(at)
296296 func pickWorstDuck (z) = {
297297 let ax = toBase58String(at.caller.bytes)
298298 let aa = value(value(at.payments[0]).assetId)
299299 let aq = N(z)
300300 if (if ((value(assetInfo(aa)).issuer != Address(b)))
301301 then (value(assetInfo(aa)).issuer != Address(a))
302302 else false)
303303 then throw("Invalid NFT")
304304 else if ((aq == 0))
305305 then if ((ax != C(z)))
306306 then throw("It is the taker's turn to pick now")
307307 else {
308308 let aC = invoke(Address(c), "getAssetRarityCallable", [aa], nil)
309309 if ((aC == aC))
310310 then {
311311 let ab = {
312312 let l = aC
313313 if ($isInstanceOf(l, "Int"))
314314 then {
315315 let aD = l
316316 aD
317317 }
318318 else throw("Incorrect invoke result")
319319 }
320320 X(z, "taker", at.caller, aa, ab, "worst", 0)
321321 }
322322 else throw("Strict value is not equal to itself.")
323323 }
324324 else if ((aq == 1))
325325 then if ((ax != A(z)))
326326 then throw("It is the maker's turn to pick now")
327327 else {
328328 let aC = invoke(Address(c), "getAssetRarityCallable", [aa], nil)
329329 if ((aC == aC))
330330 then {
331331 let ab = {
332332 let l = aC
333333 if ($isInstanceOf(l, "Int"))
334334 then {
335335 let aD = l
336336 aD
337337 }
338338 else throw("Incorrect invoke result")
339339 }
340340 X(z, "maker", at.caller, aa, ab, "worst", 1)
341341 }
342342 else throw("Strict value is not equal to itself.")
343343 }
344344 else throw("The worst duck has already been picked")
345345 }
346346
347347
348348
349349 @Callable(at)
350350 func pickMediumtDuck (z) = {
351351 let ax = toBase58String(at.caller.bytes)
352352 let aa = value(value(at.payments[0]).assetId)
353353 let aq = N(z)
354354 if (if ((value(assetInfo(aa)).issuer != Address(b)))
355355 then (value(assetInfo(aa)).issuer != Address(a))
356356 else false)
357357 then throw("Invalid NFT")
358358 else if ((2 > aq))
359359 then throw("The medium duck must be picked after the worst one")
360360 else if ((aq == 2))
361361 then if ((ax != A(z)))
362362 then throw("It is the maker's turn to pick now")
363363 else {
364364 let aC = invoke(Address(c), "getAssetRarityCallable", [aa], nil)
365365 if ((aC == aC))
366366 then {
367367 let ab = {
368368 let l = aC
369369 if ($isInstanceOf(l, "Int"))
370370 then {
371371 let aD = l
372372 aD
373373 }
374374 else throw("Incorrect invoke result")
375375 }
376376 X(z, "maker", at.caller, aa, ab, "medium", 2)
377377 }
378378 else throw("Strict value is not equal to itself.")
379379 }
380380 else if ((aq == 3))
381381 then if ((ax != C(z)))
382382 then throw("It is the taker's turn to pick now")
383383 else {
384384 let aC = invoke(Address(c), "getAssetRarityCallable", [aa], nil)
385385 if ((aC == aC))
386386 then {
387387 let ab = {
388388 let l = aC
389389 if ($isInstanceOf(l, "Int"))
390390 then {
391391 let aD = l
392392 aD
393393 }
394394 else throw("Incorrect invoke result")
395395 }
396396 X(z, "taker", at.caller, aa, ab, "medium", 3)
397397 }
398398 else throw("Strict value is not equal to itself.")
399399 }
400400 else throw("The medium duck has already been picked")
401401 }
402402
403403
404404
405405 @Callable(at)
406406 func pickBestDuck (z) = {
407407 let ax = toBase58String(at.caller.bytes)
408408 let aa = value(value(at.payments[0]).assetId)
409409 let aq = N(z)
410410 if (if ((value(assetInfo(aa)).issuer != Address(b)))
411411 then (value(assetInfo(aa)).issuer != Address(a))
412412 else false)
413413 then throw("Invalid NFT")
414414 else if ((4 > aq))
415415 then throw("The best duck must be picked after the worst and the medium ones")
416416 else if ((aq == 4))
417417 then if ((ax != C(z)))
418418 then throw("It is the taker's turn to pick now")
419419 else {
420420 let aC = invoke(Address(c), "getAssetRarityCallable", [aa], nil)
421421 if ((aC == aC))
422422 then {
423423 let ab = {
424424 let l = aC
425425 if ($isInstanceOf(l, "Int"))
426426 then {
427427 let aD = l
428428 aD
429429 }
430430 else throw("Incorrect invoke result")
431431 }
432432 X(z, "taker", at.caller, aa, ab, "best", 4)
433433 }
434434 else throw("Strict value is not equal to itself.")
435435 }
436436 else if ((aq == 5))
437437 then if ((ax != A(z)))
438438 then throw("It is the maker's turn to pick now")
439439 else {
440440 let aC = invoke(Address(c), "getAssetRarityCallable", [aa], nil)
441441 if ((aC == aC))
442442 then {
443443 let ab = {
444444 let l = aC
445445 if ($isInstanceOf(l, "Int"))
446446 then {
447447 let aD = l
448448 aD
449449 }
450450 else throw("Incorrect invoke result")
451451 }
452452 X(z, "maker", at.caller, aa, ab, "best", 5)
453453 }
454454 else throw("Strict value is not equal to itself.")
455455 }
456456 else throw("The best duck has already been picked")
457457 }
458458
459459
460460
461461 @Callable(at)
462462 func commit (z,aE) = {
463463 let ax = toBase58String(at.caller.bytes)
464464 let aq = N(z)
465465 if ((6 > aq))
466466 then throw("Ducks hasn't been picked yet")
467467 else if ((aq == 6))
468468 then if ((ax != A(z)))
469469 then throw("It is the maker's turn to commit now")
470470 else [StringEntry(R(z, "maker"), aE), IntegerEntry(M(z), (aq + 1)), IntegerEntry(H(z), (height + i))]
471471 else if ((aq == 7))
472472 then if ((ax != C(z)))
473473 then throw("It is the taker's turn to commit now")
474474 else [StringEntry(R(z, "taker"), aE), IntegerEntry(M(z), (aq + 1)), IntegerEntry(H(z), (height + i))]
475475 else throw("Commit is finished")
476476 }
477477
478478
479479
480480 @Callable(at)
481481 func reveal (z,aF,aG) = {
482482 let ax = toBase58String(at.caller.bytes)
483483 let aq = N(z)
484484 if ((8 > aq))
485485 then throw("Reveal is not started")
486486 else if (if (if (if (if (if ((aF != "worst,medium,best"))
487487 then true
488488 else (aF != "worst,best,medium"))
489489 then true
490490 else (aF != "medium,worst,best"))
491491 then true
492492 else (aF != "medium,best,worst"))
493493 then true
494494 else (aF != "best,worst,medium"))
495495 then true
496496 else (aF != "best,medium,worst"))
497497 then throw("Invalid duckOrder")
498498 else if ((aq == 8))
499499 then if ((ax != A(z)))
500500 then throw("It is the maker's turn to reveal now")
501501 else if ((toBase58String(sha256(toBytes((aF + aG)))) != S(z, "maker")))
502502 then throw("reveal data is not valid")
503503 else [StringEntry(T(z, "maker"), aF), IntegerEntry(M(z), (aq + 1)), IntegerEntry(H(z), (height + i))]
504504 else if ((aq == 9))
505505 then if ((ax != C(z)))
506506 then throw("It is the taker's turn to reveal now")
507507 else if ((toBase58String(sha256(toBytes((aF + aG)))) != S(z, "taker")))
508508 then throw("reveal data is not valid")
509509 else [StringEntry(T(z, "taker"), aF), IntegerEntry(M(z), (aq + 1)), IntegerEntry(H(z), (height + i))]
510510 else throw("Reveal is finished")
511511 }
512512
513513
514514
515515 @Callable(at)
516516 func getPrize (z) = {
517517 let ax = toBase58String(at.caller.bytes)
518518 let aq = N(z)
519519 if ((aq != 10))
520520 then throw("Game is not finished")
521521 else if ((ax == A(z)))
522522 then ar(z, at.caller, "maker", af(z))
523523 else if ((ax == C(z)))
524524 then ar(z, at.caller, "taker", af(z))
525525 else throw("Invalid caller address")
526526 }
527527
528528
529529
530530 @Callable(at)
531531 func getPrizeExpired (z) = {
532532 let ax = toBase58String(at.caller.bytes)
533533 let aq = N(z)
534534 if ((aq == 10))
535535 then throw("Game is finished, call getPrize instead")
536536 else if ((I(z) > height))
537537 then throw("Game is not expired")
538538 else if ((ax == A(z)))
539539 then ar(z, at.caller, "maker", ap(aq))
540540 else if ((ax == C(z)))
541541 then ar(z, at.caller, "taker", ap(aq))
542542 else throw("Invalid caller address")
543543 }
544544
545545
546546 @Verifier(aH)
547547 func aI () = sigVerify(aH.bodyBytes, aH.proofs[0], aH.senderPublicKey)
548548

github/deemru/w8io/169f3d6 
67.27 ms