tx · J4p9EqPeFV4bJTUsVhChZX2aPwrjtioD2eCPh7zthCnB 3Mxpdp5zFKcQygoSEAuvHwKmeDTrkAqEgp1: -0.01600000 Waves 2022.08.13 07:58 [2182247] smart account 3Mxpdp5zFKcQygoSEAuvHwKmeDTrkAqEgp1 > SELF 0.00000000 Waves
{ "type": 13, "id": "J4p9EqPeFV4bJTUsVhChZX2aPwrjtioD2eCPh7zthCnB", "fee": 1600000, "feeAssetId": null, "timestamp": 1660366720145, "version": 2, "chainId": 84, "sender": "3Mxpdp5zFKcQygoSEAuvHwKmeDTrkAqEgp1", "senderPublicKey": "AxEqxWpyCTdAvD236iNy1uGqdXHaTryrnexWY9d5RQbw", "proofs": [ "2K25oQbe56P7bW7uSDeTcKfSdwm14nQVq4K4PUNg9ACN3Yu2nXgrZtP2DknaT1CfZKhqQFVz9sAKj3dt5jxsL9qA" ], "script": "base64:BgIPCAISBQoDCAgBEgQKAggIEgEQZ2V0QmluYXJ5RGVmYXVsdAMOYWRkcmVzc09yQWxpYXMDa2V5A3ZhbAkBC3ZhbHVlT3JFbHNlAgkAnAgCBQ5hZGRyZXNzT3JBbGlhcwUDa2V5BQN2YWwBFGdldEJpbmFyeVNlbGZEZWZhdWx0AgNrZXkDdmFsCQELdmFsdWVPckVsc2UCCQChCAEFA2tleQUDdmFsARFnZXRCb29sZWFuRGVmYXVsdAMOYWRkcmVzc09yQWxpYXMDa2V5A3ZhbAkBC3ZhbHVlT3JFbHNlAgkAmwgCBQ5hZGRyZXNzT3JBbGlhcwUDa2V5BQN2YWwBFWdldEJvb2xlYW5TZWxmRGVmYXVsdAIDa2V5A3ZhbAkBC3ZhbHVlT3JFbHNlAgkAoAgBBQNrZXkFA3ZhbAERZ2V0SW50ZWdlckRlZmF1bHQDDmFkZHJlc3NPckFsaWFzA2tleQN2YWwJAQt2YWx1ZU9yRWxzZQIJAJoIAgUOYWRkcmVzc09yQWxpYXMFA2tleQUDdmFsARVnZXRJbnRlZ2VyU2VsZkRlZmF1bHQCA2tleQN2YWwJAQt2YWx1ZU9yRWxzZQIJAJ8IAQUDa2V5BQN2YWwBEGdldFN0cmluZ0RlZmF1bHQDDmFkZHJlc3NPckFsaWFzA2tleQN2YWwJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUOYWRkcmVzc09yQWxpYXMFA2tleQUDdmFsARRnZXRTdHJpbmdTZWxmRGVmYXVsdAIDa2V5A3ZhbAkBC3ZhbHVlT3JFbHNlAgkAoggBBQNrZXkFA3ZhbAEPYXNzZXRGcm9tU3RyaW5nAQdhc3NldElkAwkAAAIFB2Fzc2V0SWQCBVdBVkVTBQR1bml0CQDZBAEFB2Fzc2V0SWQBD3N0cmluZ0Zyb21Bc3NldAEFYXNzZXQEByRtYXRjaDAFBWFzc2V0AwkAAQIFByRtYXRjaDACCkJ5dGVWZWN0b3IEAXQFByRtYXRjaDAJANgEAQUBdAIFV0FWRVMBA21hcAIFYWNjdW0EbmV4dAkAzAgCCQC2CQEFBG5leHQFBWFjY3VtAQ1jb252ZXJ0UHJpY2VzAQlvcmRlcmJvb2sKAAIkbAkAtQkCBQlvcmRlcmJvb2sCAV8KAAIkcwkAkAMBBQIkbAoABSRhY2MwBQNuaWwKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBA21hcAIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQIWTGlzdCBzaXplIGV4Y2VlZHMgMTAwMAkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AD4APwBAAEEAQgBDAEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQBeAF8AYABhAGIAYwBkAGUAZgBnAGgAaQBqAGsAbABtAG4AbwBwAHEAcgBzAHQAdQB2AHcAeAB5AHoAewB8AH0AfgB/AIABAIEBAIIBAIMBAIQBAIUBAIYBAIcBAIgBAIkBAIoBAIsBAIwBAI0BAI4BAI8BAJABAJEBAJIBAJMBAJQBAJUBAJYBAJcBAJgBAJkBAJoBAJsBAJwBAJ0BAJ4BAJ8BAKABAKEBAKIBAKMBAKQBAKUBAKYBAKcBAKgBAKkBAKoBAKsBAKwBAK0BAK4BAK8BALABALEBALIBALMBALQBALUBALYBALcBALgBALkBALoBALsBALwBAL0BAL4BAL8BAMABAMEBAMIBAMMBAMQBAMUBAMYBAMcBAMgBAMkBAMoBAMsBAMwBAM0BAM4BAM8BANABANEBANIBANMBANQBANUBANYBANcBANgBANkBANoBANsBANwBAN0BAN4BAN8BAOABAOEBAOIBAOMBAOQBAOUBAOYBAOcBAOgBAOkBAOoBAOsBAOwBAO0BAO4BAO8BAPABAPEBAPIBAPMBAPQBAPUBAPYBAPcBAPgBAPkBAPoBAPsBAPwBAP0BAP4BAP8BAIACAIECAIICAIMCAIQCAIUCAIYCAIcCAIgCAIkCAIoCAIsCAIwCAI0CAI4CAI8CAJACAJECAJICAJMCAJQCAJUCAJYCAJcCAJgCAJkCAJoCAJsCAJwCAJ0CAJ4CAJ8CAKACAKECAKICAKMCAKQCAKUCAKYCAKcCAKgCAKkCAKoCAKsCAKwCAK0CAK4CAK8CALACALECALICALMCALQCALUCALYCALcCALgCALkCALoCALsCALwCAL0CAL4CAL8CAMACAMECAMICAMMCAMQCAMUCAMYCAMcCAMgCAMkCAMoCAMsCAMwCAM0CAM4CAM8CANACANECANICANMCANQCANUCANYCANcCANgCANkCANoCANsCANwCAN0CAN4CAN8CAOACAOECAOICAOMCAOQCAOUCAOYCAOcCAOgCAOkCAOoCAOsCAOwCAO0CAO4CAO8CAPACAPECAPICAPMCAPQCAPUCAPYCAPcCAPgCAPkCAPoCAPsCAPwCAP0CAP4CAP8CAIADAIEDAIIDAIMDAIQDAIUDAIYDAIcDAIgDAIkDAIoDAIsDAIwDAI0DAI4DAI8DAJADAJEDAJIDAJMDAJQDAJUDAJYDAJcDAJgDAJkDAJoDAJsDAJwDAJ0DAJ4DAJ8DAKADAKEDAKIDAKMDAKQDAKUDAKYDAKcDAKgDAKkDAKoDAKsDAKwDAK0DAK4DAK8DALADALEDALIDALMDALQDALUDALYDALcDALgDALkDALoDALsDALwDAL0DAL4DAL8DAMADAMEDAMIDAMMDAMQDAMUDAMYDAMcDAMgDAMkDAMoDAMsDAMwDAM0DAM4DAM8DANADANEDANIDANMDANQDANUDANYDANcDANgDANkDANoDANsDANwDAN0DAN4DAN8DAOADAOEDAOIDAOMDAOQDAOUDAOYDAOcDAOgDAOkDAOoDAOsDAOwDAO0DAO4DAO8DAPADAPEDAPIDAPMDAPQDAPUDAPYDAPcDAPgDAPkDAPoDAPsDAPwDAP0DAP4DAP8DAIAEAIEEAIIEAIMEAIQEAIUEAIYEAIcEAIgEAIkEAIoEAIsEAIwEAI0EAI4EAI8EAJAEAJEEAJIEAJMEAJQEAJUEAJYEAJcEAJgEAJkEAJoEAJsEAJwEAJ0EAJ4EAJ8EAKAEAKEEAKIEAKMEAKQEAKUEAKYEAKcEAKgEAKkEAKoEAKsEAKwEAK0EAK4EAK8EALAEALEEALIEALMEALQEALUEALYEALcEALgEALkEALoEALsEALwEAL0EAL4EAL8EAMAEAMEEAMIEAMMEAMQEAMUEAMYEAMcEAMgEAMkEAMoEAMsEAMwEAM0EAM4EAM8EANAEANEEANIEANMEANQEANUEANYEANcEANgEANkEANoEANsEANwEAN0EAN4EAN8EAOAEAOEEAOIEAOMEAOQEAOUEAOYEAOcEAOgEAOkEAOoEAOsEAOwEAO0EAO4EAO8EAPAEAPEEAPIEAPMEAPQEAPUEAPYEAPcEAPgEAPkEAPoEAPsEAPwEAP0EAP4EAP8EAIAFAIEFAIIFAIMFAIQFAIUFAIYFAIcFAIgFAIkFAIoFAIsFAIwFAI0FAI4FAI8FAJAFAJEFAJIFAJMFAJQFAJUFAJYFAJcFAJgFAJkFAJoFAJsFAJwFAJ0FAJ4FAJ8FAKAFAKEFAKIFAKMFAKQFAKUFAKYFAKcFAKgFAKkFAKoFAKsFAKwFAK0FAK4FAK8FALAFALEFALIFALMFALQFALUFALYFALcFALgFALkFALoFALsFALwFAL0FAL4FAL8FAMAFAMEFAMIFAMMFAMQFAMUFAMYFAMcFAMgFAMkFAMoFAMsFAMwFAM0FAM4FAM8FANAFANEFANIFANMFANQFANUFANYFANcFANgFANkFANoFANsFANwFAN0FAN4FAN8FAOAFAOEFAOIFAOMFAOQFAOUFAOYFAOcFAOgFAOkFAOoFAOsFAOwFAO0FAO4FAO8FAPAFAPEFAPIFAPMFAPQFAPUFAPYFAPcFAPgFAPkFAPoFAPsFAPwFAP0FAP4FAP8FAIAGAIEGAIIGAIMGAIQGAIUGAIYGAIcGAIgGAIkGAIoGAIsGAIwGAI0GAI4GAI8GAJAGAJEGAJIGAJMGAJQGAJUGAJYGAJcGAJgGAJkGAJoGAJsGAJwGAJ0GAJ4GAJ8GAKAGAKEGAKIGAKMGAKQGAKUGAKYGAKcGAKgGAKkGAKoGAKsGAKwGAK0GAK4GAK8GALAGALEGALIGALMGALQGALUGALYGALcGALgGALkGALoGALsGALwGAL0GAL4GAL8GAMAGAMEGAMIGAMMGAMQGAMUGAMYGAMcGAMgGAMkGAMoGAMsGAMwGAM0GAM4GAM8GANAGANEGANIGANMGANQGANUGANYGANcGANgGANkGANoGANsGANwGAN0GAN4GAN8GAOAGAOEGAOIGAOMGAOQGAOUGAOYGAOcGAOgGAOkGAOoGAOsGAOwGAO0GAO4GAO8GAPAGAPEGAPIGAPMGAPQGAPUGAPYGAPcGAPgGAPkGAPoGAPsGAPwGAP0GAP4GAP8GAIAHAIEHAIIHAIMHAIQHAIUHAIYHAIcHAIgHAIkHAIoHAIsHAIwHAI0HAI4HAI8HAJAHAJEHAJIHAJMHAJQHAJUHAJYHAJcHAJgHAJkHAJoHAJsHAJwHAJ0HAJ4HAJ8HAKAHAKEHAKIHAKMHAKQHAKUHAKYHAKcHAKgHAKkHAKoHAKsHAKwHAK0HAK4HAK8HALAHALEHALIHALMHALQHALUHALYHALcHALgHALkHALoHALsHALwHAL0HAL4HAL8HAMAHAMEHAMIHAMMHAMQHAMUHAMYHAMcHAMgHAMkHAMoHAMsHAMwHAM0HAM4HAM8HANAHANEHANIHANMHANQHANUHANYHANcHANgHANkHANoHANsHANwHAN0HAN4HAN8HAOAHAOEHAOIHAOMHAOQHAOUHAOYHAOcHAOgHAQtnZXRCaWRQcmljZQIEYmFzZQVxdW90ZQQDa2V5CQC5CQIJAMwIAgUEYmFzZQkAzAgCBQVxdW90ZQkAzAgCAgNCVVkFA25pbAIBXwQJb3JkZXJib29rCQEUZ2V0U3RyaW5nU2VsZkRlZmF1bHQCBQNrZXkCAAQGcHJpY2VzCQENY29udmVydFByaWNlcwEFCW9yZGVyYm9vawQFcHJpY2UJAJYDAQUGcHJpY2VzBQVwcmljZQELZ2V0QXNrUHJpY2UCBGJhc2UFcXVvdGUEA2tleQkAuQkCCQDMCAIFBGJhc2UJAMwIAgUFcXVvdGUJAMwIAgIEU0VMTAUDbmlsAgFfBAlvcmRlcmJvb2sJARRnZXRTdHJpbmdTZWxmRGVmYXVsdAIFA2tleQIABAZwcmljZXMJAQ1jb252ZXJ0UHJpY2VzAQUJb3JkZXJib29rBAVwcmljZQkAlwMBBQZwcmljZXMFBXByaWNlARBnZXRRdW90ZUFzc2V0SWR4AQVhc3NldAQObnVtUHJpY2VBc3NldHMJARFAZXh0ck5hdGl2ZSgxMDU1KQECEG5leHRRdW90ZUFzc2V0SWQDCQAAAgUFYXNzZXQCBVdBVkVTBQ5udW1QcmljZUFzc2V0cwkBFWdldEludGVnZXJTZWxmRGVmYXVsdAIJAKwCAgUFYXNzZXQCDV9xdW90ZUFzc2V0SWQJAGQCBQ5udW1QcmljZUFzc2V0cwABARNnZXRBc3NldElzc3VlSGVpZ2h0AQVhc3NldAkA6QcBCQDZBAEFBWFzc2V0AQlvcmRlclBhaXICBmFzc2V0MQZhc3NldDIDCQAAAgUGYXNzZXQxBQZhc3NldDIJAAIBAhlhc3NldHMgY2Fubm90IGJlIHRoZSBzYW1lBAlhc3NldDFJZHgJARBnZXRRdW90ZUFzc2V0SWR4AQUGYXNzZXQxBAlhc3NldDJJZHgJARBnZXRRdW90ZUFzc2V0SWR4AQUGYXNzZXQyAwkAZgIFCWFzc2V0MUlkeAUJYXNzZXQySWR4CQDMCAIFBmFzc2V0MQkAzAgCBQZhc3NldDIFA25pbAMJAGYCBQlhc3NldDJJZHgFCWFzc2V0MUlkeAkAzAgCBQZhc3NldDIJAMwIAgUGYXNzZXQxBQNuaWwECWFzc2V0MUludAkAngMBCQDZBAEFBmFzc2V0MQQJYXNzZXQySW50CQCeAwEJANkEAQUGYXNzZXQyBAlhc3NldExpc3QJAMwIAgUJYXNzZXQxSW50CQDMCAIFCWFzc2V0MkludAUDbmlsBAZsYXJnZXIJAJgDAQUJYXNzZXRMaXN0AwkAAAIFBmxhcmdlcgUJYXNzZXQxSW50CQDMCAIFBmFzc2V0MQkAzAgCBQZhc3NldDIFA25pbAkAzAgCBQZhc3NldDIJAMwIAgUGYXNzZXQxBQNuaWwBC2lzVmFsaWRQYWlyAgRiYXNlBXF1b3RlBARwYWlyCQEJb3JkZXJQYWlyAgUEYmFzZQUFcXVvdGUDCQAAAgkAkQMCBQRwYWlyAAAFBGJhc2UGBwIBaQEKbGltaXRPcmRlcgMEYmFzZQVxdW90ZQVwcmljZQMJAQtpc1ZhbGlkUGFpcgIFBGJhc2UFBXF1b3RlBAdwYXltZW50CQCRAwIIBQFpCHBheW1lbnRzAAAECXBhaWRBc3NldAkBD3N0cmluZ0Zyb21Bc3NldAEIBQdwYXltZW50B2Fzc2V0SWQEDm5leHRPcmRlcklkS2V5CQC5CQIJAMwIAgUEYmFzZQkAzAgCBQVxdW90ZQkAzAgCAgtuZXh0T3JkZXJJZAUDbmlsAgFfBAtuZXh0T3JkZXJJZAkBFWdldEludGVnZXJTZWxmRGVmYXVsdAIFDm5leHRPcmRlcklkS2V5AAEDCQAAAgUJcGFpZEFzc2V0BQVxdW90ZQQEc2lkZQIDQlVZBAhvcmRlcktleQkAuQkCCQDMCAICBW9yZGVyCQDMCAIJAKQDAQULbmV4dE9yZGVySWQFA25pbAIBXwQJb3JkZXJEYXRhCQC5CQIJAMwIAgkApQgBCAUBaQZjYWxsZXIJAMwIAgUEYmFzZQkAzAgCBQVxdW90ZQkAzAgCBQRzaWRlCQDMCAIJAKQDAQUFcHJpY2UFA25pbAIBXwQRb3JkZXJQcmljZVNpemVLZXkJALkJAgkAzAgCBQRiYXNlCQDMCAIFBXF1b3RlCQDMCAIFBHNpZGUJAMwIAgkApAMBBQVwcmljZQkAzAgCAgRzaXplBQNuaWwCAV8EEm9yZGVyUHJpY2VTaXplRGF0YQkAZAIJARVnZXRJbnRlZ2VyU2VsZkRlZmF1bHQCBRFvcmRlclByaWNlU2l6ZUtleQAACAUHcGF5bWVudAZhbW91bnQEDm9yZGVySWRMaXN0S2V5CQC5CQIJAMwIAgUEYmFzZQkAzAgCBQVxdW90ZQkAzAgCBQRzaWRlCQDMCAICBm9yZGVycwUDbmlsAgFfBAtvcmRlcklkTGlzdAQHJG1hdGNoMAkAoggBBQ5vcmRlcklkTGlzdEtleQMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAXQFByRtYXRjaDAJALkJAgkAzAgCBQF0CQDMCAIJAKQDAQULbmV4dE9yZGVySWQFA25pbAIBXwkApAMBBQtuZXh0T3JkZXJJZAkAzAgCCQELU3RyaW5nRW50cnkCBQhvcmRlcktleQUJb3JkZXJEYXRhCQDMCAIJAQxJbnRlZ2VyRW50cnkCBRFvcmRlclByaWNlU2l6ZUtleQUSb3JkZXJQcmljZVNpemVEYXRhCQDMCAIJAQtTdHJpbmdFbnRyeQIFDm9yZGVySWRMaXN0S2V5BQtvcmRlcklkTGlzdAkAzAgCCQEMSW50ZWdlckVudHJ5AgUObmV4dE9yZGVySWRLZXkJAGQCBQtuZXh0T3JkZXJJZAABBQNuaWwEBHNpZGUCBFNFTEwECG9yZGVyS2V5CQC5CQIJAMwIAgIFb3JkZXIJAMwIAgkApAMBBQtuZXh0T3JkZXJJZAUDbmlsAgFfBAlvcmRlckRhdGEJALkJAgkAzAgCCQClCAEIBQFpBmNhbGxlcgkAzAgCBQRiYXNlCQDMCAIFBXF1b3RlCQDMCAIFBHNpZGUJAMwIAgkApAMBBQVwcmljZQUDbmlsAgFfBBFvcmRlclByaWNlU2l6ZUtleQkAuQkCCQDMCAIFBGJhc2UJAMwIAgUFcXVvdGUJAMwIAgUEc2lkZQkAzAgCCQCkAwEFBXByaWNlCQDMCAICBHNpemUFA25pbAIBXwQSb3JkZXJQcmljZVNpemVEYXRhCQBkAgkBFWdldEludGVnZXJTZWxmRGVmYXVsdAIFEW9yZGVyUHJpY2VTaXplS2V5AAAIBQdwYXltZW50BmFtb3VudAQOb3JkZXJJZExpc3RLZXkJALkJAgkAzAgCBQRiYXNlCQDMCAIFBXF1b3RlCQDMCAIFBHNpZGUJAMwIAgIGb3JkZXJzBQNuaWwCAV8EC29yZGVySWRMaXN0BAckbWF0Y2gwCQCiCAEFDm9yZGVySWRMaXN0S2V5AwkAAQIFByRtYXRjaDACBlN0cmluZwQBdAUHJG1hdGNoMAkAuQkCCQDMCAIFAXQJAMwIAgkApAMBBQtuZXh0T3JkZXJJZAUDbmlsAgFfCQCkAwEFC25leHRPcmRlcklkCQDMCAIJAQtTdHJpbmdFbnRyeQIFCG9yZGVyS2V5BQlvcmRlckRhdGEJAMwIAgkBDEludGVnZXJFbnRyeQIFEW9yZGVyUHJpY2VTaXplS2V5BRJvcmRlclByaWNlU2l6ZURhdGEJAMwIAgkBC1N0cmluZ0VudHJ5AgUOb3JkZXJJZExpc3RLZXkFC29yZGVySWRMaXN0CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQ5uZXh0T3JkZXJJZEtleQkAZAIFC25leHRPcmRlcklkAAEFA25pbAUDbmlsAWkBC21hcmtldE9yZGVyAgRiYXNlBXF1b3RlAwkBC2lzVmFsaWRQYWlyAgUEYmFzZQUFcXVvdGUEB3BheW1lbnQJAJEDAggFAWkIcGF5bWVudHMAAAUDbmlsBQNuaWwAfRTMpA==", "height": 2182247, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 9y9hsSkKgSvX8YdqdqUPDGKV3nK1TUECBh7qUW11M1yD Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 6 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | func getBinaryDefault (addressOrAlias,key,val) = valueOrElse(getBinary(addressOrAlias, key), val) | |
5 | + | ||
6 | + | ||
7 | + | func getBinarySelfDefault (key,val) = valueOrElse(getBinary(key), val) | |
8 | + | ||
9 | + | ||
10 | + | func getBooleanDefault (addressOrAlias,key,val) = valueOrElse(getBoolean(addressOrAlias, key), val) | |
11 | + | ||
12 | + | ||
13 | + | func getBooleanSelfDefault (key,val) = valueOrElse(getBoolean(key), val) | |
14 | + | ||
15 | + | ||
16 | + | func getIntegerDefault (addressOrAlias,key,val) = valueOrElse(getInteger(addressOrAlias, key), val) | |
17 | + | ||
18 | + | ||
19 | + | func getIntegerSelfDefault (key,val) = valueOrElse(getInteger(key), val) | |
20 | + | ||
21 | + | ||
22 | + | func getStringDefault (addressOrAlias,key,val) = valueOrElse(getString(addressOrAlias, key), val) | |
23 | + | ||
24 | + | ||
25 | + | func getStringSelfDefault (key,val) = valueOrElse(getString(key), val) | |
26 | + | ||
27 | + | ||
28 | + | func assetFromString (assetId) = if ((assetId == "WAVES")) | |
29 | + | then unit | |
30 | + | else fromBase58String(assetId) | |
31 | + | ||
32 | + | ||
33 | + | func stringFromAsset (asset) = match asset { | |
34 | + | case t: ByteVector => | |
35 | + | toBase58String(t) | |
36 | + | case _ => | |
37 | + | "WAVES" | |
38 | + | } | |
39 | + | ||
40 | + | ||
41 | + | func map (accum,next) = parseInt(next) :: accum | |
42 | + | ||
43 | + | ||
44 | + | func convertPrices (orderbook) = { | |
45 | + | let $l = split(orderbook, "_") | |
46 | + | let $s = size($l) | |
47 | + | let $acc0 = nil | |
48 | + | func $f0_1 ($a,$i) = if (($i >= $s)) | |
49 | + | then $a | |
50 | + | else map($a, $l[$i]) | |
51 | + | ||
52 | + | func $f0_2 ($a,$i) = if (($i >= $s)) | |
53 | + | then $a | |
54 | + | else throw("List size exceeds 1000") | |
55 | + | ||
56 | + | $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100), 101), 102), 103), 104), 105), 106), 107), 108), 109), 110), 111), 112), 113), 114), 115), 116), 117), 118), 119), 120), 121), 122), 123), 124), 125), 126), 127), 128), 129), 130), 131), 132), 133), 134), 135), 136), 137), 138), 139), 140), 141), 142), 143), 144), 145), 146), 147), 148), 149), 150), 151), 152), 153), 154), 155), 156), 157), 158), 159), 160), 161), 162), 163), 164), 165), 166), 167), 168), 169), 170), 171), 172), 173), 174), 175), 176), 177), 178), 179), 180), 181), 182), 183), 184), 185), 186), 187), 188), 189), 190), 191), 192), 193), 194), 195), 196), 197), 198), 199), 200), 201), 202), 203), 204), 205), 206), 207), 208), 209), 210), 211), 212), 213), 214), 215), 216), 217), 218), 219), 220), 221), 222), 223), 224), 225), 226), 227), 228), 229), 230), 231), 232), 233), 234), 235), 236), 237), 238), 239), 240), 241), 242), 243), 244), 245), 246), 247), 248), 249), 250), 251), 252), 253), 254), 255), 256), 257), 258), 259), 260), 261), 262), 263), 264), 265), 266), 267), 268), 269), 270), 271), 272), 273), 274), 275), 276), 277), 278), 279), 280), 281), 282), 283), 284), 285), 286), 287), 288), 289), 290), 291), 292), 293), 294), 295), 296), 297), 298), 299), 300), 301), 302), 303), 304), 305), 306), 307), 308), 309), 310), 311), 312), 313), 314), 315), 316), 317), 318), 319), 320), 321), 322), 323), 324), 325), 326), 327), 328), 329), 330), 331), 332), 333), 334), 335), 336), 337), 338), 339), 340), 341), 342), 343), 344), 345), 346), 347), 348), 349), 350), 351), 352), 353), 354), 355), 356), 357), 358), 359), 360), 361), 362), 363), 364), 365), 366), 367), 368), 369), 370), 371), 372), 373), 374), 375), 376), 377), 378), 379), 380), 381), 382), 383), 384), 385), 386), 387), 388), 389), 390), 391), 392), 393), 394), 395), 396), 397), 398), 399), 400), 401), 402), 403), 404), 405), 406), 407), 408), 409), 410), 411), 412), 413), 414), 415), 416), 417), 418), 419), 420), 421), 422), 423), 424), 425), 426), 427), 428), 429), 430), 431), 432), 433), 434), 435), 436), 437), 438), 439), 440), 441), 442), 443), 444), 445), 446), 447), 448), 449), 450), 451), 452), 453), 454), 455), 456), 457), 458), 459), 460), 461), 462), 463), 464), 465), 466), 467), 468), 469), 470), 471), 472), 473), 474), 475), 476), 477), 478), 479), 480), 481), 482), 483), 484), 485), 486), 487), 488), 489), 490), 491), 492), 493), 494), 495), 496), 497), 498), 499), 500), 501), 502), 503), 504), 505), 506), 507), 508), 509), 510), 511), 512), 513), 514), 515), 516), 517), 518), 519), 520), 521), 522), 523), 524), 525), 526), 527), 528), 529), 530), 531), 532), 533), 534), 535), 536), 537), 538), 539), 540), 541), 542), 543), 544), 545), 546), 547), 548), 549), 550), 551), 552), 553), 554), 555), 556), 557), 558), 559), 560), 561), 562), 563), 564), 565), 566), 567), 568), 569), 570), 571), 572), 573), 574), 575), 576), 577), 578), 579), 580), 581), 582), 583), 584), 585), 586), 587), 588), 589), 590), 591), 592), 593), 594), 595), 596), 597), 598), 599), 600), 601), 602), 603), 604), 605), 606), 607), 608), 609), 610), 611), 612), 613), 614), 615), 616), 617), 618), 619), 620), 621), 622), 623), 624), 625), 626), 627), 628), 629), 630), 631), 632), 633), 634), 635), 636), 637), 638), 639), 640), 641), 642), 643), 644), 645), 646), 647), 648), 649), 650), 651), 652), 653), 654), 655), 656), 657), 658), 659), 660), 661), 662), 663), 664), 665), 666), 667), 668), 669), 670), 671), 672), 673), 674), 675), 676), 677), 678), 679), 680), 681), 682), 683), 684), 685), 686), 687), 688), 689), 690), 691), 692), 693), 694), 695), 696), 697), 698), 699), 700), 701), 702), 703), 704), 705), 706), 707), 708), 709), 710), 711), 712), 713), 714), 715), 716), 717), 718), 719), 720), 721), 722), 723), 724), 725), 726), 727), 728), 729), 730), 731), 732), 733), 734), 735), 736), 737), 738), 739), 740), 741), 742), 743), 744), 745), 746), 747), 748), 749), 750), 751), 752), 753), 754), 755), 756), 757), 758), 759), 760), 761), 762), 763), 764), 765), 766), 767), 768), 769), 770), 771), 772), 773), 774), 775), 776), 777), 778), 779), 780), 781), 782), 783), 784), 785), 786), 787), 788), 789), 790), 791), 792), 793), 794), 795), 796), 797), 798), 799), 800), 801), 802), 803), 804), 805), 806), 807), 808), 809), 810), 811), 812), 813), 814), 815), 816), 817), 818), 819), 820), 821), 822), 823), 824), 825), 826), 827), 828), 829), 830), 831), 832), 833), 834), 835), 836), 837), 838), 839), 840), 841), 842), 843), 844), 845), 846), 847), 848), 849), 850), 851), 852), 853), 854), 855), 856), 857), 858), 859), 860), 861), 862), 863), 864), 865), 866), 867), 868), 869), 870), 871), 872), 873), 874), 875), 876), 877), 878), 879), 880), 881), 882), 883), 884), 885), 886), 887), 888), 889), 890), 891), 892), 893), 894), 895), 896), 897), 898), 899), 900), 901), 902), 903), 904), 905), 906), 907), 908), 909), 910), 911), 912), 913), 914), 915), 916), 917), 918), 919), 920), 921), 922), 923), 924), 925), 926), 927), 928), 929), 930), 931), 932), 933), 934), 935), 936), 937), 938), 939), 940), 941), 942), 943), 944), 945), 946), 947), 948), 949), 950), 951), 952), 953), 954), 955), 956), 957), 958), 959), 960), 961), 962), 963), 964), 965), 966), 967), 968), 969), 970), 971), 972), 973), 974), 975), 976), 977), 978), 979), 980), 981), 982), 983), 984), 985), 986), 987), 988), 989), 990), 991), 992), 993), 994), 995), 996), 997), 998), 999), 1000) | |
57 | + | } | |
58 | + | ||
59 | + | ||
60 | + | func getBidPrice (base,quote) = { | |
61 | + | let key = makeString([base, quote, "BUY"], "_") | |
62 | + | let orderbook = getStringSelfDefault(key, "") | |
63 | + | let prices = convertPrices(orderbook) | |
64 | + | let price = max(prices) | |
65 | + | price | |
66 | + | } | |
67 | + | ||
68 | + | ||
69 | + | func getAskPrice (base,quote) = { | |
70 | + | let key = makeString([base, quote, "SELL"], "_") | |
71 | + | let orderbook = getStringSelfDefault(key, "") | |
72 | + | let prices = convertPrices(orderbook) | |
73 | + | let price = min(prices) | |
74 | + | price | |
75 | + | } | |
76 | + | ||
77 | + | ||
78 | + | func getQuoteAssetIdx (asset) = { | |
79 | + | let numPriceAssets = getIntegerValue("nextQuoteAssetId") | |
80 | + | if ((asset == "WAVES")) | |
81 | + | then numPriceAssets | |
82 | + | else getIntegerSelfDefault((asset + "_quoteAssetId"), (numPriceAssets + 1)) | |
83 | + | } | |
84 | + | ||
85 | + | ||
86 | + | func getAssetIssueHeight (asset) = transactionHeightById(fromBase58String(asset)) | |
87 | + | ||
88 | + | ||
89 | + | func orderPair (asset1,asset2) = if ((asset1 == asset2)) | |
90 | + | then throw("assets cannot be the same") | |
91 | + | else { | |
92 | + | let asset1Idx = getQuoteAssetIdx(asset1) | |
93 | + | let asset2Idx = getQuoteAssetIdx(asset2) | |
94 | + | if ((asset1Idx > asset2Idx)) | |
95 | + | then [asset1, asset2] | |
96 | + | else if ((asset2Idx > asset1Idx)) | |
97 | + | then [asset2, asset1] | |
98 | + | else { | |
99 | + | let asset1Int = toBigInt(fromBase58String(asset1)) | |
100 | + | let asset2Int = toBigInt(fromBase58String(asset2)) | |
101 | + | let assetList = [asset1Int, asset2Int] | |
102 | + | let larger = max(assetList) | |
103 | + | if ((larger == asset1Int)) | |
104 | + | then [asset1, asset2] | |
105 | + | else [asset2, asset1] | |
106 | + | } | |
107 | + | } | |
108 | + | ||
109 | + | ||
110 | + | func isValidPair (base,quote) = { | |
111 | + | let pair = orderPair(base, quote) | |
112 | + | if ((pair[0] == base)) | |
113 | + | then true | |
114 | + | else false | |
115 | + | } | |
116 | + | ||
117 | + | ||
118 | + | @Callable(i) | |
119 | + | func limitOrder (base,quote,price) = if (isValidPair(base, quote)) | |
120 | + | then { | |
121 | + | let payment = i.payments[0] | |
122 | + | let paidAsset = stringFromAsset(payment.assetId) | |
123 | + | let nextOrderIdKey = makeString([base, quote, "nextOrderId"], "_") | |
124 | + | let nextOrderId = getIntegerSelfDefault(nextOrderIdKey, 1) | |
125 | + | if ((paidAsset == quote)) | |
126 | + | then { | |
127 | + | let side = "BUY" | |
128 | + | let orderKey = makeString(["order", toString(nextOrderId)], "_") | |
129 | + | let orderData = makeString([toString(i.caller), base, quote, side, toString(price)], "_") | |
130 | + | let orderPriceSizeKey = makeString([base, quote, side, toString(price), "size"], "_") | |
131 | + | let orderPriceSizeData = (getIntegerSelfDefault(orderPriceSizeKey, 0) + payment.amount) | |
132 | + | let orderIdListKey = makeString([base, quote, side, "orders"], "_") | |
133 | + | let orderIdList = match getString(orderIdListKey) { | |
134 | + | case t: String => | |
135 | + | makeString([t, toString(nextOrderId)], "_") | |
136 | + | case _ => | |
137 | + | toString(nextOrderId) | |
138 | + | } | |
139 | + | [StringEntry(orderKey, orderData), IntegerEntry(orderPriceSizeKey, orderPriceSizeData), StringEntry(orderIdListKey, orderIdList), IntegerEntry(nextOrderIdKey, (nextOrderId + 1))] | |
140 | + | } | |
141 | + | else { | |
142 | + | let side = "SELL" | |
143 | + | let orderKey = makeString(["order", toString(nextOrderId)], "_") | |
144 | + | let orderData = makeString([toString(i.caller), base, quote, side, toString(price)], "_") | |
145 | + | let orderPriceSizeKey = makeString([base, quote, side, toString(price), "size"], "_") | |
146 | + | let orderPriceSizeData = (getIntegerSelfDefault(orderPriceSizeKey, 0) + payment.amount) | |
147 | + | let orderIdListKey = makeString([base, quote, side, "orders"], "_") | |
148 | + | let orderIdList = match getString(orderIdListKey) { | |
149 | + | case t: String => | |
150 | + | makeString([t, toString(nextOrderId)], "_") | |
151 | + | case _ => | |
152 | + | toString(nextOrderId) | |
153 | + | } | |
154 | + | [StringEntry(orderKey, orderData), IntegerEntry(orderPriceSizeKey, orderPriceSizeData), StringEntry(orderIdListKey, orderIdList), IntegerEntry(nextOrderIdKey, (nextOrderId + 1))] | |
155 | + | } | |
156 | + | } | |
157 | + | else nil | |
158 | + | ||
159 | + | ||
160 | + | ||
161 | + | @Callable(i) | |
162 | + | func marketOrder (base,quote) = if (isValidPair(base, quote)) | |
163 | + | then { | |
164 | + | let payment = i.payments[0] | |
165 | + | nil | |
166 | + | } | |
167 | + | else nil | |
168 | + | ||
169 | + |
github/deemru/w8io/169f3d6 80.39 ms ◑