tx · 7Nr11duY6psLb5GBSfYKBoLjccSAxT5cZDyBnJ2YPfKC 3MrmQcYkqD2NWZCPBPxJh9ecDeCSHJaGvTX: -0.01400000 Waves 2020.10.22 14:50 [1231743] smart account 3MrmQcYkqD2NWZCPBPxJh9ecDeCSHJaGvTX > SELF 0.00000000 Waves
{ "type": 13, "id": "7Nr11duY6psLb5GBSfYKBoLjccSAxT5cZDyBnJ2YPfKC", "fee": 1400000, "feeAssetId": null, "timestamp": 1603367477032, "version": 1, "sender": "3MrmQcYkqD2NWZCPBPxJh9ecDeCSHJaGvTX", "senderPublicKey": "3jFYpyJ6e4HkngCSjP4y8XmWbp72HQExbfLDVKd4wZrr", "proofs": [ "2ZJmYxVRqy5yiTiidttWwfmLuVC7G4NrsjUqWo8X5HEDzYrtNi7tx1L35QBkiRawpVksG1rJ9TrE1t2PiJ2PjPcx" ], "script": "base64:AAIEAAAAAAAAAA0IAhIAEgASABIDCgEBAAAADgAAAAAISWRUb2tlbkEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMCAAAADWFzc2V0SWRUb2tlbkEAAAAACElkVG9rZW5CCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzAgAAAA1hc3NldElkVG9rZW5CAAAAAAxhbW91bnRUb2tlbkIJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAADGFtb3VudFRva2VuQgAAAAAMYW1vdW50VG9rZW5BCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzAgAAAAxhbW91bnRUb2tlbkEAAAAAEWFzc2V0SWRUb2tlblNoYXJlCQEAAAARQGV4dHJOYXRpdmUoMTA1MikAAAACBQAAAAR0aGlzAgAAAA5zaGFyZV90b2tlbl9pZAAAAAAQdG9rZW5TaGFyZVN1cHBseQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwIAAAASc2hhcmVfdG9rZW5fc3VwcGx5AAAAAAljb21pc3Npb24AAAAAAAAAB9AAAAAAF2NvbWlzc2lvblNjYWxlRGVsaW1pdGVyAAAAAAAAACcQAAAAAAd2ZXJzaW9uAgAAAAUwLjAuMgAAAAALc2NhbGVWYWx1ZTgAAAAAAAX14QAAAAAAEXNjYWxlVmFsdWU4RGlnaXRzAAAAAAAAAAAIAQAAAAdhc3NldElkAAAAAQAAAAVhc3NldAMJAAAAAAAAAgUAAAAFYXNzZXQCAAAABVdBVkVTBQAAAAR1bml0CQACWQAAAAEFAAAABWFzc2V0AAAAAA1hc3NldElkVG9rZW5BCQEAAAAHYXNzZXRJZAAAAAEFAAAACElkVG9rZW5BAAAAAA1hc3NldElkVG9rZW5CCQEAAAAHYXNzZXRJZAAAAAEFAAAACElkVG9rZW5CAAAABAAAAApjb250ZXh0T2JqAQAAAARmdW5kAAAAAAQAAAAIcGF5bWVudEEJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAACmNvbnRleHRPYmoAAAAIcGF5bWVudHMAAAAAAAAAAAAEAAAACHBheW1lbnRCCQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAApjb250ZXh0T2JqAAAACHBheW1lbnRzAAAAAAAAAAABBAAAABBhc3NldElkUmVjZWl2ZWRBCAUAAAAIcGF5bWVudEEAAAAHYXNzZXRJZAQAAAATdG9rZW5SZWNlaXZlQW1vdW50QQgFAAAACHBheW1lbnRBAAAABmFtb3VudAQAAAAQYXNzZXRJZFJlY2VpdmVkQggFAAAACHBheW1lbnRCAAAAB2Fzc2V0SWQEAAAAE3Rva2VuUmVjZWl2ZUFtb3VudEIIBQAAAAhwYXltZW50QgAAAAZhbW91bnQEAAAAC2RpZ2l0VG9rZW5BBAAAAAckbWF0Y2gwBQAAABBhc3NldElkUmVjZWl2ZWRBAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0BAAAAAFwBQAAAAckbWF0Y2gwAAAAAAAAAAAIAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAFwBQAAAAckbWF0Y2gwCAkBAAAABXZhbHVlAAAAAQkAA+wAAAABBQAAAAFwAAAACGRlY2ltYWxzCQAAAgAAAAECAAAAC01hdGNoIGVycm9yBAAAAAtkaWdpdFRva2VuQgQAAAAHJG1hdGNoMAUAAAAQYXNzZXRJZFJlY2VpdmVkQgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAEVW5pdAQAAAABcAUAAAAHJG1hdGNoMAAAAAAAAAAACAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAKQnl0ZVZlY3RvcgQAAAABcAUAAAAHJG1hdGNoMAgJAQAAAAV2YWx1ZQAAAAEJAAPsAAAAAQUAAAABcAAAAAhkZWNpbWFscwkAAAIAAAABAgAAAAtNYXRjaCBlcnJvcgMJAQAAAAlpc0RlZmluZWQAAAABCQAEGwAAAAIFAAAABHRoaXMCAAAABnN0YXR1cwkAAAIAAAABAgAAAA5hbHJlYWR5IGFjdGl2ZQQAAAAOc2hhcmVUb2tlbk5hbWUJAAEsAAAAAgIAAAAHU2hhcmVUXwkBAAAACXRha2VSaWdodAAAAAIJAAQlAAAAAQUAAAAEdGhpcwAAAAAAAAAABQQAAAASZGlnaXRzSW5TaGFyZVRva2VuCQAAaQAAAAIJAABkAAAAAgUAAAALZGlnaXRUb2tlbkEFAAAAC2RpZ2l0VG9rZW5CAAAAAAAAAAACBAAAABdzaGFyZVRva2VuSW5pdGlhbEFtb3VudAkAAGsAAAADCQAAbAAAAAYFAAAAE3Rva2VuUmVjZWl2ZUFtb3VudEEFAAAAC2RpZ2l0VG9rZW5BAAAAAAAAAAAFAAAAAAAAAAABBQAAAAtkaWdpdFRva2VuQQUAAAAISEFMRkRPV04JAABsAAAABgUAAAATdG9rZW5SZWNlaXZlQW1vdW50QgUAAAALZGlnaXRUb2tlbkIAAAAAAAAAAAUAAAAAAAAAAAEFAAAAC2RpZ2l0VG9rZW5CBQAAAAhIQUxGRE9XTgkAAGwAAAAGAAAAAAAAAAAKAAAAAAAAAAAABQAAABJkaWdpdHNJblNoYXJlVG9rZW4AAAAAAAAAAAAAAAAAAAAAAAAFAAAACEhBTEZET1dOBAAAABFzaGFyZVRva2VuQXNzZXRJZAkABDgAAAABCQAEQgAAAAUFAAAADnNoYXJlVG9rZW5OYW1lBQAAAA5zaGFyZVRva2VuTmFtZQUAAAAXc2hhcmVUb2tlbkluaXRpYWxBbW91bnQFAAAAEmRpZ2l0c0luU2hhcmVUb2tlbgYEAAAAE2Fzc2V0SWRUb2tlblN0cmluZ0EEAAAAByRtYXRjaDAFAAAAEGFzc2V0SWRSZWNlaXZlZEEDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQEAAAAAXQFAAAAByRtYXRjaDACAAAABVdBVkVTAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAF0BQAAAAckbWF0Y2gwCQACWAAAAAEJAQAAAAV2YWx1ZQAAAAEFAAAAEGFzc2V0SWRSZWNlaXZlZEEJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IEAAAAE2Fzc2V0SWRUb2tlblN0cmluZ0IEAAAAByRtYXRjaDAFAAAAEGFzc2V0SWRSZWNlaXZlZEIDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQEAAAAAXQFAAAAByRtYXRjaDACAAAABVdBVkVTAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAF0BQAAAAckbWF0Y2gwCQACWAAAAAEJAQAAAAV2YWx1ZQAAAAEFAAAAEGFzc2V0SWRSZWNlaXZlZEIJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADGFtb3VudFRva2VuQQUAAAATdG9rZW5SZWNlaXZlQW1vdW50QQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAMYW1vdW50VG9rZW5CBQAAABN0b2tlblJlY2VpdmVBbW91bnRCCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAADWFzc2V0SWRUb2tlbkEFAAAAE2Fzc2V0SWRUb2tlblN0cmluZ0EJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAANYXNzZXRJZFRva2VuQgUAAAATYXNzZXRJZFRva2VuU3RyaW5nQgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAOZXhjaGFuZ2VfY291bnQAAAAAAAAAAAAJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAICAAAABnN0YXR1cwYJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAACWNvbWlzc2lvbgUAAAAJY29taXNzaW9uCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABdjb21pc3Npb25TY2FsZURlbGltaXRlcgUAAAAXY29taXNzaW9uU2NhbGVEZWxpbWl0ZXIJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAHdmVyc2lvbgUAAAAHdmVyc2lvbgkABEwAAAACCQAEQgAAAAUFAAAADnNoYXJlVG9rZW5OYW1lBQAAAA5zaGFyZVRva2VuTmFtZQUAAAAXc2hhcmVUb2tlbkluaXRpYWxBbW91bnQAAAAAAAAAAAgGCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAApjb250ZXh0T2JqAAAABmNhbGxlcgUAAAAXc2hhcmVUb2tlbkluaXRpYWxBbW91bnQFAAAAEXNoYXJlVG9rZW5Bc3NldElkCQAETAAAAAIJAQAAAAtCaW5hcnlFbnRyeQAAAAICAAAADnNoYXJlX3Rva2VuX2lkBQAAABFzaGFyZVRva2VuQXNzZXRJZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAASc2hhcmVfdG9rZW5fc3VwcGx5BQAAABdzaGFyZVRva2VuSW5pdGlhbEFtb3VudAUAAAADbmlsAAAACmNvbnRleHRPYmoBAAAADXJlcGxlbmlzaG1lbnQAAAAABAAAAAhwYXltZW50QQkBAAAABXZhbHVlAAAAAQkAAZEAAAACCAUAAAAKY29udGV4dE9iagAAAAhwYXltZW50cwAAAAAAAAAAAAQAAAAIcGF5bWVudEIJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAACmNvbnRleHRPYmoAAAAIcGF5bWVudHMAAAAAAAAAAAEEAAAAEGFzc2V0SWRSZWNlaXZlZEEIBQAAAAhwYXltZW50QQAAAAdhc3NldElkBAAAABN0b2tlblJlY2VpdmVBbW91bnRBCAUAAAAIcGF5bWVudEEAAAAGYW1vdW50BAAAABBhc3NldElkUmVjZWl2ZWRCCAUAAAAIcGF5bWVudEIAAAAHYXNzZXRJZAQAAAATdG9rZW5SZWNlaXZlQW1vdW50QggFAAAACHBheW1lbnRCAAAABmFtb3VudAQAAAARZEFwcFRva2Vuc0Ftb3VudEEJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAADGFtb3VudFRva2VuQQQAAAARZEFwcFRva2Vuc0Ftb3VudEIJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAADGFtb3VudFRva2VuQgMDCQEAAAACIT0AAAACBQAAABBhc3NldElkUmVjZWl2ZWRBBQAAAA1hc3NldElkVG9rZW5BBgkBAAAAAiE9AAAAAgUAAAAQYXNzZXRJZFJlY2VpdmVkQgUAAAANYXNzZXRJZFRva2VuQgkAAAIAAAABAgAAABBpbmNvcnJlY3QgYXNzZXRzBAAAAAp0b2tlblJhdGlvCQAAaQAAAAIJAABrAAAAAwUAAAATdG9rZW5SZWNlaXZlQW1vdW50QQkAAGgAAAACAAAAAOjUpRAAAAAAAAAAAYagBQAAABFkQXBwVG9rZW5zQW1vdW50QQkAAGsAAAADBQAAABFkQXBwVG9rZW5zQW1vdW50QgAAAADo1KUQAAUAAAATdG9rZW5SZWNlaXZlQW1vdW50QgMJAQAAAAEhAAAAAQMJAABmAAAAAgUAAAAKdG9rZW5SYXRpbwAAAAAAAAGGlgkAAGYAAAACAAAAAAAAAYaqBQAAAAp0b2tlblJhdGlvBwkAAAIAAAABAgAAABdpbmNvcnJlY3QgYXNzZXRzIGFtb3VudAQAAAAVc2hhcmVUb2tlblRvUGF5QW1vdW50CQAAawAAAAMFAAAAE3Rva2VuUmVjZWl2ZUFtb3VudEEFAAAAEHRva2VuU2hhcmVTdXBwbHkFAAAAEWRBcHBUb2tlbnNBbW91bnRBAwkAAAAAAAACBQAAABVzaGFyZVRva2VuVG9QYXlBbW91bnQAAAAAAAAAAAAJAAACAAAAAQIAAAApeW91IHRyeSByZXBsYW5zaXNoIHdpdGggdmVyeSBzbWFsbCBhbW91bnQJAARMAAAAAgkBAAAAB1JlaXNzdWUAAAADBQAAABFhc3NldElkVG9rZW5TaGFyZQUAAAAVc2hhcmVUb2tlblRvUGF5QW1vdW50BgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAAKY29udGV4dE9iagAAAAZjYWxsZXIFAAAAFXNoYXJlVG9rZW5Ub1BheUFtb3VudAUAAAARYXNzZXRJZFRva2VuU2hhcmUJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAEnNoYXJlX3Rva2VuX3N1cHBseQkAAGQAAAACBQAAABB0b2tlblNoYXJlU3VwcGx5BQAAABVzaGFyZVRva2VuVG9QYXlBbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADGFtb3VudFRva2VuQQkAAGQAAAACBQAAABFkQXBwVG9rZW5zQW1vdW50QQUAAAATdG9rZW5SZWNlaXZlQW1vdW50QQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAMYW1vdW50VG9rZW5CCQAAZAAAAAIFAAAAEWRBcHBUb2tlbnNBbW91bnRCBQAAABN0b2tlblJlY2VpdmVBbW91bnRCBQAAAANuaWwAAAAKY29udGV4dE9iagEAAAAId2l0aGRyYXcAAAAABAAAABFkQXBwVG9rZW5zQW1vdW50QQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwIAAAAMYW1vdW50VG9rZW5BBAAAABFkQXBwVG9rZW5zQW1vdW50QgkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwIAAAAMYW1vdW50VG9rZW5CBAAAAAdwYXltZW50CQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAApjb250ZXh0T2JqAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAA9hc3NldElkUmVjZWl2ZWQIBQAAAAdwYXltZW50AAAAB2Fzc2V0SWQEAAAAEnRva2VuUmVjZWl2ZUFtb3VudAgFAAAAB3BheW1lbnQAAAAGYW1vdW50AwkBAAAAAiE9AAAAAgUAAAARYXNzZXRJZFRva2VuU2hhcmUFAAAAD2Fzc2V0SWRSZWNlaXZlZAkAAAIAAAABCQABLAAAAAICAAAALXlvdSBuZWVkIHRvIGF0dGFjaCBzaGFyZSB0b2tlbiBmb3IgdGhpcyBkQXBwIAkAAlgAAAABBQAAABFhc3NldElkVG9rZW5TaGFyZQQAAAAMdG9rZW5zVG9QYXlBCQAAawAAAAMFAAAAEnRva2VuUmVjZWl2ZUFtb3VudAUAAAARZEFwcFRva2Vuc0Ftb3VudEEFAAAAEHRva2VuU2hhcmVTdXBwbHkEAAAADHRva2Vuc1RvUGF5QgkAAGsAAAADBQAAABJ0b2tlblJlY2VpdmVBbW91bnQFAAAAEWRBcHBUb2tlbnNBbW91bnRCBQAAABB0b2tlblNoYXJlU3VwcGx5CQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAApjb250ZXh0T2JqAAAABmNhbGxlcgUAAAAMdG9rZW5zVG9QYXlBBQAAAA1hc3NldElkVG9rZW5BCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAApjb250ZXh0T2JqAAAABmNhbGxlcgUAAAAMdG9rZW5zVG9QYXlCBQAAAA1hc3NldElkVG9rZW5CCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAAxhbW91bnRUb2tlbkEJAABlAAAAAgUAAAARZEFwcFRva2Vuc0Ftb3VudEEFAAAADHRva2Vuc1RvUGF5QQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAMYW1vdW50VG9rZW5CCQAAZQAAAAIFAAAAEWRBcHBUb2tlbnNBbW91bnRCBQAAAAx0b2tlbnNUb1BheUIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAEnNoYXJlX3Rva2VuX3N1cHBseQkAAGUAAAACBQAAABB0b2tlblNoYXJlU3VwcGx5BQAAABJ0b2tlblJlY2VpdmVBbW91bnQJAARMAAAAAgkBAAAABEJ1cm4AAAACBQAAABFhc3NldElkVG9rZW5TaGFyZQUAAAASdG9rZW5SZWNlaXZlQW1vdW50BQAAAANuaWwAAAAKY29udGV4dE9iagEAAAAJZXhjaGFuZ2VyAAAAAQAAAA9taW5Ub2tlblJlY2lldmUEAAAAB3BheW1lbnQJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAACmNvbnRleHRPYmoAAAAIcGF5bWVudHMAAAAAAAAAAAAEAAAAD2Fzc2V0SWRSZWNlaXZlZAgFAAAAB3BheW1lbnQAAAAHYXNzZXRJZAQAAAASdG9rZW5SZWNlaXZlQW1vdW50CAUAAAAHcGF5bWVudAAAAAZhbW91bnQEAAAABWNvdW50CQEAAAAFdmFsdWUAAAABCQAEGgAAAAIFAAAABHRoaXMCAAAADmV4Y2hhbmdlX2NvdW50AwkAAAAAAAACBQAAAA9hc3NldElkUmVjZWl2ZWQFAAAADWFzc2V0SWRUb2tlbkIEAAAAD3Rva2VuU2VuZEFtb3VudAkAAGkAAAACCQAAaAAAAAIJAABrAAAAAwUAAAAMYW1vdW50VG9rZW5BBQAAABJ0b2tlblJlY2VpdmVBbW91bnQJAABkAAAAAgUAAAASdG9rZW5SZWNlaXZlQW1vdW50BQAAAAxhbW91bnRUb2tlbkIJAABlAAAAAgUAAAAXY29taXNzaW9uU2NhbGVEZWxpbWl0ZXIFAAAACWNvbWlzc2lvbgUAAAAXY29taXNzaW9uU2NhbGVEZWxpbWl0ZXIDCQAAZgAAAAIFAAAAD21pblRva2VuUmVjaWV2ZQUAAAAPdG9rZW5TZW5kQW1vdW50CQAAAgAAAAECAAAAWVByaWNlIGhhcyBjaGFuZ2VkIGRyYW1hdGljYWx5LiBSZWNlaXZpbmcgdG9rZW4gYW1vdW50IGRvbid0IHNhdGlzZnkgc3BlY2lmaWVkIHByaWNlIGxldmVsBAAAAAthc3NldElkU2VudAUAAAANYXNzZXRJZFRva2VuQQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAMYW1vdW50VG9rZW5BCQAAZQAAAAIFAAAADGFtb3VudFRva2VuQQUAAAAPdG9rZW5TZW5kQW1vdW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAAxhbW91bnRUb2tlbkIJAABkAAAAAgUAAAAMYW1vdW50VG9rZW5CBQAAABJ0b2tlblJlY2VpdmVBbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADmV4Y2hhbmdlX2NvdW50CQAAZAAAAAIFAAAABWNvdW50AAAAAAAAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAApjb250ZXh0T2JqAAAABmNhbGxlcgUAAAAPdG9rZW5TZW5kQW1vdW50BQAAAAthc3NldElkU2VudAUAAAADbmlsAwkAAAAAAAACBQAAAA9hc3NldElkUmVjZWl2ZWQFAAAADWFzc2V0SWRUb2tlbkEEAAAAD3Rva2VuU2VuZEFtb3VudAkAAGkAAAACCQAAaAAAAAIJAABrAAAAAwUAAAAMYW1vdW50VG9rZW5CBQAAABJ0b2tlblJlY2VpdmVBbW91bnQJAABkAAAAAgUAAAASdG9rZW5SZWNlaXZlQW1vdW50BQAAAAxhbW91bnRUb2tlbkEJAABlAAAAAgUAAAAXY29taXNzaW9uU2NhbGVEZWxpbWl0ZXIFAAAACWNvbWlzc2lvbgUAAAAXY29taXNzaW9uU2NhbGVEZWxpbWl0ZXIDCQAAZgAAAAIFAAAAD21pblRva2VuUmVjaWV2ZQUAAAAPdG9rZW5TZW5kQW1vdW50CQAAAgAAAAECAAAAWVByaWNlIGhhcyBjaGFuZ2VkIGRyYW1hdGljYWx5LiBSZWNlaXZpbmcgdG9rZW4gYW1vdW50IGRvbid0IHNhdGlzZnkgc3BlY2lmaWVkIHByaWNlIGxldmVsBAAAAAthc3NldElkU2VudAUAAAANYXNzZXRJZFRva2VuQgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAMYW1vdW50VG9rZW5BCQAAZAAAAAIFAAAADGFtb3VudFRva2VuQQUAAAASdG9rZW5SZWNlaXZlQW1vdW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAAxhbW91bnRUb2tlbkIJAABlAAAAAgUAAAAMYW1vdW50VG9rZW5CBQAAAA90b2tlblNlbmRBbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADmV4Y2hhbmdlX2NvdW50CQAAZAAAAAIFAAAABWNvdW50AAAAAAAAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAApjb250ZXh0T2JqAAAABmNhbGxlcgUAAAAPdG9rZW5TZW5kQW1vdW50BQAAAAthc3NldElkU2VudAUAAAADbmlsCQAAAgAAAAECAAAAFEFzc2V0IGlzIG5vdCBhbGxvd2VkAAAAAJfIOD4=", "chainId": 84, "height": 1231743, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: GzJUjiJvsf2WtTboTMtANKeQ32xedqNxCkuVaXb26m9Q Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 4 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let a = getStringValue(this, "assetIdTokenA") | |
5 | + | ||
6 | + | let b = getStringValue(this, "assetIdTokenB") | |
7 | + | ||
8 | + | let c = getIntegerValue(this, "amountTokenB") | |
9 | + | ||
10 | + | let d = getIntegerValue(this, "amountTokenA") | |
11 | + | ||
12 | + | let e = getBinaryValue(this, "share_token_id") | |
13 | + | ||
14 | + | let f = getIntegerValue(this, "share_token_supply") | |
15 | + | ||
16 | + | let g = 2000 | |
17 | + | ||
18 | + | let h = 10000 | |
19 | + | ||
20 | + | let i = "0.0.2" | |
21 | + | ||
22 | + | let j = 100000000 | |
23 | + | ||
24 | + | let k = 8 | |
25 | + | ||
26 | + | func l (m) = if ((m == "WAVES")) | |
27 | + | then unit | |
28 | + | else fromBase58String(m) | |
29 | + | ||
30 | + | ||
31 | + | let n = l(a) | |
32 | + | ||
33 | + | let o = l(b) | |
34 | + | ||
35 | + | @Callable(p) | |
36 | + | func fund () = { | |
37 | + | let q = value(p.payments[0]) | |
38 | + | let r = value(p.payments[1]) | |
39 | + | let s = q.assetId | |
40 | + | let t = q.amount | |
41 | + | let u = r.assetId | |
42 | + | let v = r.amount | |
43 | + | let w = { | |
44 | + | let x = s | |
45 | + | if ($isInstanceOf(x, "Unit")) | |
46 | + | then { | |
47 | + | let y = x | |
48 | + | 8 | |
49 | + | } | |
50 | + | else if ($isInstanceOf(x, "ByteVector")) | |
51 | + | then { | |
52 | + | let y = x | |
53 | + | value(assetInfo(y)).decimals | |
54 | + | } | |
55 | + | else throw("Match error") | |
56 | + | } | |
57 | + | let z = { | |
58 | + | let x = u | |
59 | + | if ($isInstanceOf(x, "Unit")) | |
60 | + | then { | |
61 | + | let y = x | |
62 | + | 8 | |
63 | + | } | |
64 | + | else if ($isInstanceOf(x, "ByteVector")) | |
65 | + | then { | |
66 | + | let y = x | |
67 | + | value(assetInfo(y)).decimals | |
68 | + | } | |
69 | + | else throw("Match error") | |
70 | + | } | |
71 | + | if (isDefined(getBoolean(this, "status"))) | |
72 | + | then throw("already active") | |
73 | + | else { | |
74 | + | let A = ("ShareT_" + takeRight(toString(this), 5)) | |
75 | + | let B = ((w + z) / 2) | |
76 | + | let C = fraction(pow(t, w, 5, 1, w, HALFDOWN), pow(v, z, 5, 1, z, HALFDOWN), pow(10, 0, B, 0, 0, HALFDOWN)) | |
77 | + | let D = calculateAssetId(Issue(A, A, C, B, true)) | |
78 | + | let E = { | |
79 | + | let x = s | |
80 | + | if ($isInstanceOf(x, "Unit")) | |
81 | + | then { | |
82 | + | let F = x | |
83 | + | "WAVES" | |
84 | + | } | |
85 | + | else if ($isInstanceOf(x, "ByteVector")) | |
86 | + | then { | |
87 | + | let F = x | |
88 | + | toBase58String(value(s)) | |
89 | + | } | |
90 | + | else throw("Match error") | |
91 | + | } | |
92 | + | let G = { | |
93 | + | let x = u | |
94 | + | if ($isInstanceOf(x, "Unit")) | |
95 | + | then { | |
96 | + | let F = x | |
97 | + | "WAVES" | |
98 | + | } | |
99 | + | else if ($isInstanceOf(x, "ByteVector")) | |
100 | + | then { | |
101 | + | let F = x | |
102 | + | toBase58String(value(u)) | |
103 | + | } | |
104 | + | else throw("Match error") | |
105 | + | } | |
106 | + | [IntegerEntry("amountTokenA", t), IntegerEntry("amountTokenB", v), StringEntry("assetIdTokenA", E), StringEntry("assetIdTokenB", G), IntegerEntry("exchange_count", 0), BooleanEntry("status", true), IntegerEntry("comission", g), IntegerEntry("comissionScaleDelimiter", h), StringEntry("version", i), Issue(A, A, C, 8, true), ScriptTransfer(p.caller, C, D), BinaryEntry("share_token_id", D), IntegerEntry("share_token_supply", C)] | |
107 | + | } | |
108 | + | } | |
109 | + | ||
110 | + | ||
111 | + | ||
112 | + | @Callable(p) | |
113 | + | func replenishment () = { | |
114 | + | let q = value(p.payments[0]) | |
115 | + | let r = value(p.payments[1]) | |
116 | + | let s = q.assetId | |
117 | + | let t = q.amount | |
118 | + | let u = r.assetId | |
119 | + | let v = r.amount | |
120 | + | let H = getIntegerValue(this, "amountTokenA") | |
121 | + | let I = getIntegerValue(this, "amountTokenB") | |
122 | + | if (if ((s != n)) | |
123 | + | then true | |
124 | + | else (u != o)) | |
125 | + | then throw("incorrect assets") | |
126 | + | else { | |
127 | + | let J = (fraction(t, (1000000000000 * 100000), H) / fraction(I, 1000000000000, v)) | |
128 | + | if (!(if ((J > 99990)) | |
129 | + | then (100010 > J) | |
130 | + | else false)) | |
131 | + | then throw("incorrect assets amount") | |
132 | + | else { | |
133 | + | let K = fraction(t, f, H) | |
134 | + | if ((K == 0)) | |
135 | + | then throw("you try replansish with very small amount") | |
136 | + | else [Reissue(e, K, true), ScriptTransfer(p.caller, K, e), IntegerEntry("share_token_supply", (f + K)), IntegerEntry("amountTokenA", (H + t)), IntegerEntry("amountTokenB", (I + v))] | |
137 | + | } | |
138 | + | } | |
139 | + | } | |
140 | + | ||
141 | + | ||
142 | + | ||
143 | + | @Callable(p) | |
144 | + | func withdraw () = { | |
145 | + | let H = getIntegerValue(this, "amountTokenA") | |
146 | + | let I = getIntegerValue(this, "amountTokenB") | |
147 | + | let L = value(p.payments[0]) | |
148 | + | let M = L.assetId | |
149 | + | let N = L.amount | |
150 | + | if ((e != M)) | |
151 | + | then throw(("you need to attach share token for this dApp " + toBase58String(e))) | |
152 | + | else { | |
153 | + | let O = fraction(N, H, f) | |
154 | + | let P = fraction(N, I, f) | |
155 | + | [ScriptTransfer(p.caller, O, n), ScriptTransfer(p.caller, P, o), IntegerEntry("amountTokenA", (H - O)), IntegerEntry("amountTokenB", (I - P)), IntegerEntry("share_token_supply", (f - N)), Burn(e, N)] | |
156 | + | } | |
157 | + | } | |
158 | + | ||
159 | + | ||
160 | + | ||
161 | + | @Callable(p) | |
162 | + | func exchanger (Q) = { | |
163 | + | let L = value(p.payments[0]) | |
164 | + | let M = L.assetId | |
165 | + | let N = L.amount | |
166 | + | let R = value(getInteger(this, "exchange_count")) | |
167 | + | if ((M == o)) | |
168 | + | then { | |
169 | + | let S = ((fraction(d, N, (N + c)) * (h - g)) / h) | |
170 | + | if ((Q > S)) | |
171 | + | then throw("Price has changed dramaticaly. Receiving token amount don't satisfy specified price level") | |
172 | + | else { | |
173 | + | let T = n | |
174 | + | [IntegerEntry("amountTokenA", (d - S)), IntegerEntry("amountTokenB", (c + N)), IntegerEntry("exchange_count", (R + 1)), ScriptTransfer(p.caller, S, T)] | |
175 | + | } | |
176 | + | } | |
177 | + | else if ((M == n)) | |
178 | + | then { | |
179 | + | let S = ((fraction(c, N, (N + d)) * (h - g)) / h) | |
180 | + | if ((Q > S)) | |
181 | + | then throw("Price has changed dramaticaly. Receiving token amount don't satisfy specified price level") | |
182 | + | else { | |
183 | + | let T = o | |
184 | + | [IntegerEntry("amountTokenA", (d + N)), IntegerEntry("amountTokenB", (c - S)), IntegerEntry("exchange_count", (R + 1)), ScriptTransfer(p.caller, S, T)] | |
185 | + | } | |
186 | + | } | |
187 | + | else throw("Asset is not allowed") | |
188 | + | } | |
189 | + | ||
190 | + |
github/deemru/w8io/169f3d6 20.49 ms ◑