tx · 4cmLWfUYz9mKopiC45tiSL3ffozc59VhvXKgFwq9LdRA

3Mrnje6z2xa3xuXyU2Lk6ynKy8tsRnnt4Bv:  -0.01400000 Waves

2022.01.19 08:55 [1885421] smart account 3Mrnje6z2xa3xuXyU2Lk6ynKy8tsRnnt4Bv > SELF 0.00000000 Waves

{ "type": 13, "id": "4cmLWfUYz9mKopiC45tiSL3ffozc59VhvXKgFwq9LdRA", "fee": 1400000, "feeAssetId": null, "timestamp": 1642571735691, "version": 2, "chainId": 84, "sender": "3Mrnje6z2xa3xuXyU2Lk6ynKy8tsRnnt4Bv", "senderPublicKey": "28sGn7FYnmxceAmnGYiDiKuMK1QyXiqX8zQXfKDnrc8t", "proofs": [ "5WURMCHJfKFB7ozvtiVjBjJRSdjuKztbAwbus1BHAFo6QZsZh4PCzKU3pmt6JaoW8gerJa3yJdmQ72YN4b26DRQg" ], "script": "base64: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dmRfBQAAAA1jYWxsZXJhZGRyZXNzAgAAAAFfBQAAAAxFbnRlckFzc2V0SUQFAAAAFGluZGl2aWR1YWx2b3Rlc2NvdW50BQAAAANuaWwAAAABaQEAAAATV2l0aGRyYXdWb3RlZFRva2VucwAAAAEAAAAMRW50ZXJBc3NldElEBAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQIAAAAtMC4xIFROIFRva2VuIGlzIHJlcXVpcmVkIGFzIEF0dGFjaGVkIHBheW1lbnQuBAAAAA1jYWxsZXJhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADmNoZWNrZW5kaGVpZ2h0CQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAClZvdGluZ19FSF8FAAAADEVudGVyQXNzZXRJRAQAAAAZY2hlY2twYWlyaXNhdmFpbGFibGVvcm5vdAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAACFBhaXJfVVZfBQAAAAxFbnRlckFzc2V0SUQEAAAAFmNoZWNrdXNlcnZvdGluZ2JhbGFuY2UJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAtWb3Rlc19SY3ZkXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwUAAAAMRW50ZXJBc3NldElECQABLAAAAAIFAAAADWNhbGxlcmFkZHJlc3MCAAAAJSBBZGRyZXNzIG5ldmVyIHZvdGVkICYgZXhpc3QgaW4gbGlzdC4EAAAAHXBlbmRpbmdibG9ja3Nmb3Jwcm9qZWN0ZXhwaXJlCQAAZQAAAAIFAAAADmNoZWNrZW5kaGVpZ2h0BQAAAAZoZWlnaHQDCQEAAAACIT0AAAACBQAAABljaGVja3BhaXJpc2F2YWlsYWJsZW9ybm90BQAAAAxFbnRlckFzc2V0SUQJAAACAAAAAQIAAAAlUGFpciBpcyBub3QgYXZhaWxhYmxlIGluIFZv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BAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQIAAAA1V2hpdGVsaXN0ZWQgVG9rZW4gaXMgcmVxdWlyZWQgYXMgQXR0YWNoZWQgcGF5bWVudFsxXS4EAAAAGWNoZWNrcGFpcmlzYXZhaWxhYmxlb3Jub3QJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAAhQYWlyX1VWXwUAAAAMRW50ZXJBc3NldElEBAAAAAxWb3RpbmdTdGF0dXMJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAOVm90aW5nX1N0YXR1c18FAAAADEVudGVyQXNzZXRJRAQAAAAQQ2hlY2tVU0RUQmFsYW5jZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAALQmFsYW5jZV9vZl8FAAAADEVudGVyQXNzZXRJRAIAAAABXwkAAlgAAAABBQAAAAtVU0RUQXNzZXRJRAQAAAARQ2hlY2tBc3NldEJhbGFuY2UJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAC0JhbGFuY2Vfb2ZfCQACWAAAAAEFAAAAC1VTRFRBc3NldElEAgAAAAFfBQAAAAxFbnRlckFzc2V0SUQEAAAAEG5ld2JhbGFuY2VvZlVTRFQJAABrAAAAAwUAAAAQQ2hlY2tVU0RUQmFsYW5jZQUAAAARQ2hlY2tBc3NldEJhbGFuY2UJAABkAAAAAgUAAAARQ2hlY2tBc3NldEJhbGFuY2UIBQAAAANwbXQAAAAGYW1vdW50BAAAABRxdWFudGl0eW9mcHJpY2Vhc3NldAkAAGUAAAACBQAAABBDaGVja1VTRFRCYWxhbmNlBQAAABBuZXdiYWxhbmNlb2ZVU0RUBAAAABNDdXJyZW50Vm90aW5nU3RhdHVzAgAAAAFGBAAAAAdTd2FwRmVlAAAAAAAAAAADBAAAABBTd2FwRmVldG9yZWNlaXZlCQAAaQAAAAIJAABoAAAAAgUAAAAUcXVhbnRpdHlvZnByaWNlYXNzZXQFAAAAB1N3YXBGZWUAAAAAAAAAA+gEAAAAFHVzZXJiYWxhbmNldG9yZWNlaXZlCQAAZQAAAAIFAAAAFHF1YW50aXR5b2ZwcmljZWFzc2V0BQAAABBTd2FwRmVldG9yZWNlaXZlBAAAABlTdW11cG9mQXNzZXRUb1VTRFRTd2FwRmVlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAGVRvdGFsX1N3YXBfRmVlX0NvbGxlY3RlZF8FAAAADEVudGVyQXNzZXRJRAIAAAABXwkAAlgAAAABBQAAAAtVU0RUQXNzZXRJRAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABxOZXdTdW11cG9mQXNzZXRUb1VTRFRTd2FwRmVlCQAAZAAAAAIFAAAAGVN1bXVwb2ZBc3NldFRvVVNEVFN3YXBGZWUFAAAAEFN3YXBGZWV0b3JlY2VpdmUEAAAAEVN1bXVwQXNzZXRCYWxhbmNlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAC0JhbGFuY2Vfb2ZfCQACWAAAAAEFAAAAC1VTRFRBc3NldElEAgAAAAFfBQAAAAxFbnRlckFzc2V0SUQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAWTmV3U3VtdXBvZkFzc2V0QmFsYW5jZQkAAGQAAAACBQAAABFDaGVja0Fzc2V0QmFsYW5jZQgFAAAAA3BtdAAAAAZhbW91bnQEAAAAEFN1bXVwVVNEVEJhbGFuY2UEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAALQmFsYW5jZV9vZl8FAAAADEVudGVyQXNzZXRJRAIAAAABXwkAAlgAAAABBQAAAAtVU0RUQXNzZXRJRAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABVOZXdTdW11cG9mVVNEVEJhbGFuY2UJAABlAAAAAgUAAAAQQ2hlY2tVU0RUQmFsYW5jZQUAAAAUcXVhbnRpdHlvZnByaWNlYXNzZXQEAAAABFRPUFQEAAAAByRtYXRjaDAJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAATVG90YWxfb2ZfUGFpcl9UeG5zXwUAAAAMRW50ZXJBc3NldElEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAABk5ld1RQVAkAAGQAAAACBQAAAARUT1BUAAAAAAAAAAABAwkAAAAAAAACBQAAAAxFbnRlckFzc2V0SUQJAAJYAAAAAQUAAAALVVNEVEFzc2V0SUQJAAACAAAAAQIAAACGSW5wdXQgY2FuIE5ldmVyIGJlIGEgVVNEVCBBc3NldElELiBFbnRlciBXaGl0ZWxpc3RlZCBBc3NldElEIGluIGlucHV0ICYgQXR0YWNoIFdoaXRlbGlzdGVkIEFzc2V0IGFzIGFuIGF0dGFjaG1lbnQgVG9rZW4gaW4gcGF5bWVudFsxXS4DCQEAAAACIT0AAAACBQAAABljaGVja3BhaXJpc2F2YWlsYWJsZW9ybm90BQAAAAxFbnRlckFzc2V0SUQJAAACAAAAAQIAAAArUGFpciBpcyBub3QgYXZhaWxhYmxlIGluIFdoaXRlbGlzdGVkIEFzc2V0LgMJAAAAAAAAAgUAAAAMVm90aW5nU3RhdHVzBQAAABNDdXJyZW50Vm90aW5nU3RhdHVzCQAAAgAAAAEJAAEsAAAAAgUAAAAMRW50ZXJBc3NldElEAgAAACAgaXMgbm90IEEgV2hpdGVsaXN0ZWQgVG9rZW4gWWV0LgMJAAAAAAAAAggFAAAAA3BtdAAAAAdhc3NldElkBQAAAAtVU0RUQXNzZXRJRAkAAAIAAAABAgAAAFNZb3UgY2FuJ3QgQXR0YWNoIFVTRFQgYXMgYW4gQXR0YWNoZWQgUGF5bWVudC4gT25seSBXaGl0ZWxpc3RlZCBUb2tlbnMgYXJlIGFjY2VwdGVkLgMJAQAAAAIhPQAAAAIIBQAAAANwbXQAAAAHYXNzZXRJZAkAAlkAAAABBQAAAAxFbnRlckFzc2V0SUQJAAACAAAAAQkAASwAAAACAgAAADBJbmNvcnJlY3QgYXNzZXQgYXR0YWNoZWQsIHBsZWFzZSBhdHRhY2ggb3Igc2VuZCAFAAAADEVudGVyQXNzZXRJRAMJAAAAAAAAAgUAAAAQQ2hlY2tVU0RUQmFsYW5jZQAAAAAAAAAAAAkAAAIAAAABAgAAAGVTd2FwIFBhaXIgTmVlZCB0byBBZGQgTGlxdWlkaXR5IGZpcnN0IGludG8gUG9vbC4gT25seSBBZnRlciB0aGF0IFBhaXIgd2lsbCBiZSBhY3RpdmF0ZWQgZm9yIFN3YXBwaW5nLgMJAAAAAAAAAgUAAAARQ2hlY2tBc3NldEJhbGFuY2UAAAAAAAAAAAAJAAACAAAAAQIAAABlU3dhcCBQYWlyIE5lZWQgdG8gQWRkIExpcXVpZGl0eSBmaXJzdCBpbnRvIFBvb2wuIE9ubHkgQWZ0ZXIgdGhhdCBQYWlyIHdpbGwgYmUgYWN0aXZhdGVkIGZvciBTd2FwcGluZy4DCQAAZgAAAAIAAAAAAACYloAFAAAAFHF1YW50aXR5b2ZwcmljZWFzc2V0CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAADRZb3VyIEF0dGFjaGVkIEFzc2V0IEFtb3VudCBpcyB2ZXJ5IGxvdy4gQXR0YWNoIE1vcmUgBQAAAAxFbnRlckFzc2V0SUQCAAAAOSBUb2tlbnMgdG8gQ2xhaW0gdGhlIG1pbmltdW0gQW1vdW50IG9mIDEwIGRvbGxhciBhdGxlYXN0LgMJAABmAAAAAgUAAAAUcXVhbnRpdHlvZnByaWNlYXNzZXQFAAAAEENoZWNrVVNEVEJhbGFuY2UJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAHVBvb2wgT25seSBoYXMgYSBMaXF1aWRpdHkgb2YgCQABpAAAAAEJAABpAAAAAgUAAAAQQ2hlY2tVU0RUQmFsYW5jZQkAAGwAAAAGAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAAAAAABQAAAAJVUAIAAAAfIFVTRFQuIEFkZCBMaXF1aWRpdHkgaW50byBQb29sLgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAZVG90YWxfU3dhcF9GZWVfQ29sbGVjdGVkXwUAAAAMRW50ZXJBc3NldElEAgAAAAFfCQACWAAAAAEFAAAAC1VTRFRBc3NldElEBQAAABxOZXdTdW11cG9mQXNzZXRUb1VTRFRTd2FwRmVlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAE1RvdGFsX29mX1BhaXJfVHhuc18FAAAADEVudGVyQXNzZXRJRAUAAAAGTmV3VFBUCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAtCYWxhbmNlX29mXwkAAlgAAAABBQAAAAtVU0RUQXNzZXRJRAIAAAABXwUAAAAMRW50ZXJBc3NldElEBQAAABZOZXdTdW11cG9mQXNzZXRCYWxhbmNlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAtCYWxhbmNlX29mXwUAAAAMRW50ZXJBc3NldElEAgAAAAFfCQACWAAAAAEFAAAAC1VTRFRBc3NldElEBQAAABVOZXdTdW11cG9mVVNEVEJhbGFuY2UJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAABR1c2VyYmFsYW5jZXRvcmVjZWl2ZQUAAAALVVNEVEFzc2V0SUQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAZQ29sbGVjdFVTRFRTd2FwRmVlQWRkcmVzcwUAAAAQU3dhcEZlZXRvcmVjZWl2ZQUAAAALVVNEVEFzc2V0SUQFAAAAA25pbAAAAAFpAQAAABhTd2FwVVNEVFRvQXNzZXRQYWlyRW50cnkAAAABAAAADEVudGVyQXNzZXRJRAQAAAANY2FsbGVyYWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAABU9ubHkgCQACWAAAAAEFAAAAC1VTRFRBc3NldElEAgAAADIgVVNEVCBUb2tlbiBpcyByZXF1aXJlZCBhcyBhbiBBdHRhY2hlZCBwYXltZW50WzFdLgQAAAAQQ2hlY2tVU0RUQmFsYW5jZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAALQmFsYW5jZV9vZl8FAAAADEVudGVyQXNzZXRJRAIAAAABXwkAAlgAAAABBQAAAAtVU0RUQXNzZXRJRAQAAAARQ2hlY2tBc3NldEJhbGFuY2UJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAC0JhbGFuY2Vfb2ZfCQACWAAAAAEFAAAAC1VTRFRBc3NldElEAgAAAAFfBQAAAAxFbnRlckFzc2V0SUQEAAAAEW5ld2JhbGFuY2VvZkFzc2V0CQAAawAAAAMFAAAAEENoZWNrVVNEVEJhbGFuY2UFAAAAEUNoZWNrQXNzZXRCYWxhbmNlCQAAZAAAAAIFAAAAEENoZWNrVVNEVEJhbGFuY2UIBQAAAANwbXQAAAAGYW1vdW50BAAAABRxdWFudGl0eW9mcHJpY2Vhc3NldAkAAGUAAAACBQAAABFDaGVja0Fzc2V0QmFsYW5jZQUAAAARbmV3YmFsYW5jZW9mQXNzZXQEAAAAGWNoZWNrcGFpcmlzYXZhaWxhYmxlb3Jub3QJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAAhQYWlyX1VWXwUAAAAMRW50ZXJBc3NldElEBAAAAAxWb3RpbmdTdGF0dXMJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAOVm90aW5nX1N0YXR1c18FAAAADEVudGVyQXNzZXRJRAQAAAATQ3VycmVudFZvdGluZ1N0YXR1cwIAAAABRgQAAAAHU3dhcEZlZQAAAAAAAAAAAwQAAAAQU3dhcEZlZXRvcmVjZWl2ZQkAAGkAAAACCQAAaAAAAAIFAAAAFHF1YW50aXR5b2ZwcmljZWFzc2V0BQAAAAdTd2FwRmVlAAAAAAAAAAPoBAAAABR1c2VyYmFsYW5jZXRvcmVjZWl2ZQkAAGUAAAACBQAAABRxdWFudGl0eW9mcHJpY2Vhc3NldAUAAAAQU3dhcEZlZXRvcmVjZWl2ZQQAAAAZU3VtdXBvZlVTRFRUb0Fzc2V0U3dhcEZlZQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAGVRvdGFsX1N3YXBfRmVlX0NvbGxlY3RlZF8FAAAADEVudGVyQXNzZXRJRAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABxOZXdTdW11cG9mVVNEVFRvQXNzZXRTd2FwRmVlCQAAZAAAAAIFAAAAGVN1bXVwb2ZVU0RUVG9Bc3NldFN3YXBGZWUFAAAAEFN3YXBGZWV0b3JlY2VpdmUEAAAAEVN1bXVwQXNzZXRCYWxhbmNlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAC0JhbGFuY2Vfb2ZfCQACWAAAAAEFAAAAC1VTRFRBc3NldElEAgAAAAFfBQAAAAxFbnRlckFzc2V0SUQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAWTmV3U3VtdXBvZkFzc2V0QmFsYW5jZQkAAGUAAAACBQAAABFDaGVja0Fzc2V0QmFsYW5jZQUAAAAUcXVhbnRpdHlvZnByaWNlYXNzZXQEAAAAEFN1bXVwVVNEVEJhbGFuY2UEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAALQmFsYW5jZV9vZl8FAAAADEVudGVyQXNzZXRJRAIAAAABXwkAAlgAAAABBQAAAAtVU0RUQXNzZXRJRAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABVOZXdTdW11cG9mVVNEVEJhbGFuY2UJAABkAAAAAgUAAAAQQ2hlY2tVU0RUQmFsYW5jZQgFAAAAA3BtdAAAAAZhbW91bnQEAAAABFRPUFQEAAAAByRtYXRjaDAJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAATVG90YWxfb2ZfUGFpcl9UeG5zXwUAAAAMRW50ZXJBc3NldElEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAABk5ld1RQVAkAAGQAAAACBQAAAARUT1BUAAAAAAAAAAABAwkBAAAAAiE9AAAAAgUAAAAZY2hlY2twYWlyaXNhdmFpbGFibGVvcm5vdAUAAAAMRW50ZXJBc3NldElECQAAAgAAAAECAAAAK1BhaXIgaXMgbm90IGF2YWlsYWJsZSBpbiBXaGl0ZWxpc3RlZCBBc3NldC4DCQAAAAAAAAIFAAAADFZvdGluZ1N0YXR1cwUAAAATQ3VycmVudFZvdGluZ1N0YXR1cwkAAAIAAAABCQABLAAAAAIFAAAADEVudGVyQXNzZXRJRAIAAAAgIGlzIG5vdCBBIFdoaXRlbGlzdGVkIFRva2VuIFlldC4DCQAAAAAAAAIFAAAADEVudGVyQXNzZXRJRAkAAlgAAAABBQAAAAtVU0RUQXNzZXRJRAkAAAIAAAABAgAAAHlJbnB1dCBjYW4gTmV2ZXIgYmUgYSBVU0RUIEFzc2V0SUQuIEVudGVyIFdoaXRlbGlzdGVkIEFzc2V0SUQgaW4gaW5wdXQgJiBBdHRhY2ggVVNEVCBhcyBhbiBhdHRhY2htZW50IFRva2VuIGluIHBheW1lbnRbMV0uAwkBAAAAAiE9AAAAAggFAAAAA3BtdAAAAAdhc3NldElkBQAAAAtVU0RUQXNzZXRJRAkAAAIAAAABAgAAAH5Zb3UgY2FuIEF0dGFjaCBVU0RUIGFzIGFuIEF0dGFjaGVkIFBheW1lbnRbMV0gdG8gU3dhcCBVU0RUIFRvIFJlcXVpcmVkIFRva2VuLiBBbnkgb3RoZXIgYXNzZXQgZWxzZSB0aGFuIFVTRFQgd2lsbCBiZSByZWplY3RlZC4DCQAAZgAAAAIAAAAAAACYloAIBQAAAANwbXQAAAAGYW1vdW50CQAAAgAAAAECAAAAWllvdXIgQXR0YWNoZWQgVVNEVCBBbW91bnQgaXMgdmVyeSBsb3cuIEF0dGFjaCBBdGxlYXN0IDEwIFVTRFQgdG8gQ2xhaW0gdGhlIG1pbmltdW0gVG9rZW5zLgMJAAAAAAAAAgUAAAAQQ2hlY2tVU0RUQmFsYW5jZQAAAAAAAAAAAAkAAAIAAAABAgAAAGVTd2FwIFBhaXIgTmVlZCB0byBBZGQgTGlxdWlkaXR5IGZpcnN0IGludG8gUG9vbC4gT25seSBBZnRlciB0aGF0IFBhaXIgd2lsbCBiZSBhY3RpdmF0ZWQgZm9yIFN3YXBwaW5nLgMJAAAAAAAAAgUAAAARQ2hlY2tBc3NldEJhbGFuY2UAAAAAAAAAAAAJAAACAAAAAQIAAABlU3dhcCBQYWlyIE5lZWQgdG8gQWRkIExpcXVpZGl0eSBmaXJzdCBpbnRvIFBvb2wuIE9ubHkgQWZ0ZXIgdGhhdCBQYWlyIHdpbGwgYmUgYWN0aXZhdGVkIGZvciBTd2FwcGluZy4DCQAAZgAAAAIFAAAAFHF1YW50aXR5b2ZwcmljZWFzc2V0BQAAABFDaGVja0Fzc2V0QmFsYW5jZQkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAdUG9vbCBPbmx5IGhhcyBhIExpcXVpZGl0eSBvZiAJAAGkAAAAAQUAAAARQ2hlY2tBc3NldEJhbGFuY2UCAAAAISBUb2tlbnMuIEFkZCBMaXF1aWRpdHkgaW50byBQb29sLgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAABlUb3RhbF9Td2FwX0ZlZV9Db2xsZWN0ZWRfBQAAAAxFbnRlckFzc2V0SUQFAAAAHE5ld1N1bXVwb2ZVU0RUVG9Bc3NldFN3YXBGZWUJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAATVG90YWxfb2ZfUGFpcl9UeG5zXwUAAAAMRW50ZXJBc3NldElEBQAAAAZOZXdUUFQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAC0JhbGFuY2Vfb2ZfCQACWAAAAAEFAAAAC1VTRFRBc3NldElEAgAAAAFfBQAAAAxFbnRlckFzc2V0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AAAVTmV3QXNzZXRIb2xkaW5nSW5QYWlyCQAAZAAAAAIFAAAAEkFzc2V0SG9sZGluZ0luUGFpcggFAAAABHBtdDEAAAAGYW1vdW50BAAAAA1MUFRva2VuSXNzdWVkBAAAAAckbWF0Y2gwCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAICAAAACVRvdGFsX0xQXwUAAAAMRW50ZXJBc3NldElEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAEE5ld0xQVG9rZW5Jc3N1ZWQJAABkAAAAAgUAAAANTFBUb2tlbklzc3VlZAUAAAAScXVhbnRpdHlvZkxQVG9rZW4xAwkBAAAAAiE9AAAAAgUAAAAZY2hlY2twYWlyaXNhdmFpbGFibGVvcm5vdAUAAAAMRW50ZXJBc3NldElECQAAAgAAAAECAAAAK1BhaXIgaXMgbm90IGF2YWlsYWJsZSBpbiBXaGl0ZWxpc3RlZCBBc3NldC4DCQAAAAAAAAIFAAAADFZvdGluZ1N0YXR1cwUAAAATQ3VycmVudFZvdGluZ1N0YXR1cwkAAAIAAAABCQABLAAAAAIFAAAADEVudGVyQXNzZXRJRAIAAAAgIGlzIG5vdCBBIFdoaXRlbGlzdGVkIFRva2VuIFlldC4DCQAAAAAAAAIFAAAADEVudGVyQXNzZXRJRAkAAlgAAAABBQAAAAtVU0RUQXNzZXRJRAkAAAIAAAABAgAAAJJJbnB1dCBjYW4gTmV2ZXIgYmUgYSBVU0RUIEFzc2V0SUQuIEVudGVyIFdoaXRlbGlzdGVkIEFzc2V0SUQgaW4gaW5wdXQgYXMgd2VsbCBhcyBpbiBwYXltZW50WzFdICYgQXR0YWNoIFVTRFQgYXMgYW4gYXR0YWNobWVudCBUb2tlbiBpbiBwYXltZW50WzJdLgMJAQAAAAIhPQAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAIJAAACAAAAAQIAAACeVHdvIGF0dGFjaGVkIGFzc2V0cyBleHBlY3RlZCBhcyBwYXltZW50IGluIDUwJS01MCUuIEtpbmRseSBBdHRhY2ggcGF5bWVudDEgPSBUb2tlbiB5b3Ugd2FudCB0byBhZGQgZm9yIExpcXVpZGl0eSAmIHBheW1lbnQyID0gRXF1aXZhbGVudCBBbW91bnQgb2YgVVNEVCBUb2tlbi4DCQAAAAAAAAIIBQAAAARwbXQxAAAAB2Fzc2V0SWQFAAAAC1VTRFRBc3NldElECQAAAgAAAAECAAAAeFlvdSBBdHRhY2hlZCBVU0RUIGFzc2V0IGluIHBheW1lbnRbMV0sIHBsZWFzZSBhdHRhY2ggb25seSB3aGl0ZWxpc3RlZCBUb2tlbiBpbiBwYXltZW50WzFdIGFsb25nIHdpdGggVVNEVCBpbiBwYXltZW50WzJdLgMJAQAAAAIhPQAAAAIIBQAAAARwbXQxAAAAB2Fzc2V0SWQJAAJZAAAAAQUAAAAMRW50ZXJBc3NldElECQAAAgAAAAECAAAAa0luY29ycmVjdCBhc3NldCBhdHRhY2hlZCBmb3IgTGlxdWlkaXR5IGluIHBheW1lbnRbMV0sIHBsZWFzZSBhdHRhY2ggU3RyaW5nIEFzc2V0IG9yIFdoaXRlbGlzdGVkIFRva2VuIG9ubHkuAwkBAAAAAiE9AAAAAggFAAAABHBtdDEAAAAHYXNzZXRJZAkAAlkAAAABBQAAAAxFbnRlckFzc2V0SUQJAAACAAAAAQIAAABrSW5jb3JyZWN0IGFzc2V0IGF0dGFjaGVkIGZvciBMaXF1aWRpdHkgaW4gcGF5bWVudFsxXSwgcGxlYXNlIGF0dGFjaCBTdHJpbmcgQXNzZXQgb3IgV2hpdGVsaXN0ZWQgVG9rZW4gb25seS4DCQEAAAACIT0AAAACCAUAAAAEcG10MgAAAAdhc3NldElkBQAAAAtVU0RUQXNzZXRJRAkAAAIAAAABAgAAAGpXcm9uZyBBc3NldCBBdHRhY2hlZCBpbiBwYXltZW50c1syXSwgUGxlYXNlIGF0dGFjaCBwYXltZW50WzFdID0gTGlxdWlkaXR5IFRva2VuICYgcGF5bWVudFsyXSA9IFVTRFQgVG9rZW4uAwkAAGYAAAACAAAAAAAAmJaACAUAAAAEcG10MgAAAAZhbW91bnQJAAACAAAAAQIAAABVcGxlYXNlIGF0dGFjaCBhdGxlYXN0IDEwIFVTRFQgaW4gcGF5bWVudFsyXSAmIEVxdWl2YWxlbnQgd29ydGggb2YgVG9rZW4gaW4gcGF5bWVudFsxXQMJAQAAAAIhPQAAAAIIBQAAAARwbXQyAAAABmFtb3VudAUAAAAWcXVhbnRpdHlvZkVudGVyQXNzZXRJRAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAFZBdHRhY2hlZCBwYXltZW50WzJdIHF0eSBpcyBub3QgbWF0Y2hpbmcgYXMgcGVyIGF0dGFjaGVkIHBheW1lbnRbMV0ucGF5bWVudFsyXSBtdXN0IGJlIAkAAaQAAAABBQAAABZxdWFudGl0eW9mRW50ZXJBc3NldElEAgAAAAQgb3IgCQABpAAAAAEJAABrAAAAAwUAAAAWcXVhbnRpdHlvZkVudGVyQXNzZXRJRAAAAAAAAAAAAQAAAAAAAA9CQAIAAAACJCAJAQAAAAl0YWtlUmlnaHQAAAACCQABpAAAAAEFAAAAFnF1YW50aXR5b2ZFbnRlckFzc2V0SUQAAAAAAAAAAAYCAAAABiBDZW50cwMJAABmAAAAAgAAAAAAAAAAAQUAAAAScXVhbnRpdHlvZkxQVG9rZW4xCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAACBMUCBUb2tlbiBPdXRjb21lIGlzIGdvaW5nIGJlbG93IAkAAaQAAAABBQAAAA1zaGFyZWRlY2ltYWxzAgAAADwgRGVjaW1hbHMuIFBsZWFzZSBBdHRhY2ggbWluLiAxIExQIHRva2VuIG9yIDEwIFVTRFQgQXRsZWFzdC4JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAC0JhbGFuY2Vfb2ZfBQAAAAxFbnRlckFzc2V0SUQCAAAAAV8JAAJYAAAAAQUAAAALVVNEVEFzc2V0SUQFAAAAFE5ld1VTRFRIb2xkaW5nSW5QYWlyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAtCYWxhbmNlX29mXwkAAlgAAAABBQAAAAtVU0RUQXNzZXRJRAIAAAABXwUAAAAMRW50ZXJBc3NldElEBQAAABVOZXdBc3NldEhvbGRpbmdJblBhaXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAJVG90YWxfTFBfBQAAAAxFbnRlckFzc2V0SUQFAAAAEE5ld0xQVG9rZW5Jc3N1ZWQJAARMAAAAAgkBAAAAB1JlaXNzdWUAAAADBQAAAA5SZWlzc3VlYXNzZXRJZAUAAAAScXVhbnRpdHlvZkxQVG9rZW4xBgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAAEnF1YW50aXR5b2ZMUFRva2VuMQUAAAAOUmVpc3N1ZWFzc2V0SWQFAAAAA25pbAAAAAFpAQAAAA9SZW1vdmVMaXF1aWRpdHkAAAABAAAADEVudGVyQXNzZXRJRAQAAAANY2FsbGVyYWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQIAAAA6Tm8gcGF5bWVudCBhdHRhY2hlZCwgUGxlYXNlIEF0dGFjaCBMUCBUb2tlbiBhcyBwYXltZW50WzFdLgQAAAAZY2hlY2twYWlyaXNhdmFpbGFibGVvcm5vdAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAACFBhaXJfVVZfBQAAAAxFbnRlckFzc2V0SUQEAAAADFZvdGluZ1N0YXR1cwkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAA5Wb3RpbmdfU3RhdHVzXwUAAAAMRW50ZXJBc3NldElEBAAAABJSZWlzc3VlYWJsZWFzc2V0SWQJAAJZAAAAAQkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEHQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAADTFBfBQAAAAxFbnRlckFzc2V0SUQCAAAAJUxQIFRva2VuIGlzIE1pc3Npbmcgb3Igbm90IEdlbmVyYXRlZC4EAAAAE0N1cnJlbnRWb3RpbmdTdGF0dXMCAAAAAUYEAAAADGRlY2ltYWxzaW5mbwkBAAAAE3ZhbHVlT3JF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", "height": 1885421, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 7v7TxqoaXzNGDESJkbULJUZFSAp5gVMpLRysc6YAu8LL Next: 7rSus5gkkhJq6nd7JXPkHT4BcGYtVQHtWb8tnhFRb4LP Diff:
OldNewDifferences
372372 else if ((10000000 > j.amount))
373373 then throw("please attach atleast 10 USDT in payment[2] & Equivalent worth of Token in payment[1]")
374374 else if ((j.amount != au))
375- then throw((((("Attached payment[2] qty is not matching as per attached payment[1].payment[2] must be " + toString(au)) + " or ") + toString(fraction(au, 1, 1000000))) + takeRight(toString(au), 6)))
375+ then throw((((((("Attached payment[2] qty is not matching as per attached payment[1].payment[2] must be " + toString(au)) + " or ") + toString(fraction(au, 1, 1000000))) + "$ ") + takeRight(toString(au), 6)) + " Cents"))
376376 else if ((1 > av))
377377 then throw((("LP Token Outcome is going below " + toString(at)) + " Decimals. Please Attach min. 1 LP token or 10 USDT Atleast."))
378378 else [IntegerEntry(((("Balance_of_" + g) + "_") + toBase58String(a)), ax), IntegerEntry(((("Balance_of_" + toBase58String(a)) + "_") + g), az), IntegerEntry(("Total_LP_" + g), aB), Reissue(an, av, true), ScriptTransfer(f.caller, av, an)]
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = base58'Zn3cLHW7aAVPm5aACcTjvg7e7iEy2cKDtbowok5qa9H'
55
66 let b = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
77
88 let c = addressFromPublicKey(base58'6Z73KxcX3sugpiStpSRXxKxTmWqCaLVwFeM6kwyiKVDR')
99
1010 let d = addressFromPublicKey(base58'6Z73KxcX3sugpiStpSRXxKxTmWqCaLVwFeM6kwyiKVDR')
1111
1212 let e = addressFromPublicKey(base58'6Z73KxcX3sugpiStpSRXxKxTmWqCaLVwFeM6kwyiKVDR')
1313
1414 @Callable(f)
1515 func RegisterPairForVoting (g,h) = {
1616 let i = value(f.payments[0])
1717 let j = value(f.payments[1])
1818 let k = 90
1919 let l = toBase58String(f.caller.bytes)
2020 let m = !(isDefined(j.assetId))
2121 let n = 1440
2222 let o = (n * h)
2323 let p = (o - 43199)
2424 let q = ((100000 + ((11574 * p) / 10000)) * 100000000)
2525 let r = (height + o)
2626 let s = getString(this, ("Pair_UV_" + g))
2727 let t = "F"
2828 let u = fromBase58String(g)
2929 if ((43 > size(g)))
3030 then throw("Wrong AssetID is Entered for Voting. Please Enter a Valid AssetID. Probably you entered an AssetID less than 43 Chars.")
3131 else if ((29 >= h))
3232 then throw("Enter no. of days in between 30 to 90.")
3333 else if ((h > k))
3434 then throw("You Entered days greater than 90 please Enter no. of days in between 1 to 90.")
3535 else if ((s == g))
3636 then throw("Pair Already Exist in Voting List.")
3737 else if ((size(f.payments) != 2))
3838 then throw("Two attached assets expected as payment. Kindly Attach payment1 = CODE Token & payment2 = Token you want to List for Voting.")
3939 else if ((i.assetId != b))
4040 then throw("Incorrect asset attached for Voting in payment[1], please attach 2000 CODE Token only.")
4141 else if ((i.amount != 200000000000))
4242 then throw((((("You attached only " + toString(fraction(i.amount, 1, 100000000))) + ".") + toString(fraction(i.amount, 1, 10000000))) + " CODE for Voting in payment[1], please attach 2000 CODE Token."))
4343 else if ((j.assetId != u))
4444 then throw("Input String & Attached AssetID in payment2 is not matching.")
4545 else if ((m == true))
4646 then throw("You Attached TN Asset ID for Voting, please attach fsTN instead of TN or Token You want to list in payment[2].")
4747 else [StringEntry(("Pair_UV_" + g), g), StringEntry(("Voting_Status_" + g), t), IntegerEntry(("Voting_SH_" + g), height), IntegerEntry(("Voting_EH_" + g), r), IntegerEntry(("Voting_Period_" + g), o), IntegerEntry(("Listing_Fee_" + g), i.amount), IntegerEntry(("Votes_Req_" + g), (q / 3)), IntegerEntry(("Votes_Rcvd_" + g), 0), ScriptTransfer(c, i.amount, b)]
4848 }
4949
5050
5151
5252 @Callable(f)
5353 func DoVoting (g) = {
5454 let v = if ((size(f.payments) == 1))
5555 then f.payments[0]
5656 else throw((toBase58String(b) + "CODE Token is required as Attached payment"))
5757 let w = toBase58String(f.caller.bytes)
5858 let x = "P"
5959 let y = getIntegerValue(this, ("Voting_EH_" + g))
6060 let z = getString(this, ("Pair_UV_" + g))
6161 let A = getIntegerValue(this, ("Votes_Req_" + g))
6262 let B = getIntegerValue(this, ("Votes_Rcvd_" + g))
6363 let C = getStringValue(this, ("Voting_Status_" + g))
6464 let D = {
6565 let E = getInteger(this, ("Votes_Rcvd_" + g))
6666 if ($isInstanceOf(E, "Int"))
6767 then {
6868 let F = E
6969 F
7070 }
7171 else 0
7272 }
7373 let G = (D + v.amount)
7474 let H = {
7575 let E = getInteger(this, ((("Votes_Rcvd_" + w) + "_") + g))
7676 if ($isInstanceOf(E, "Int"))
7777 then {
7878 let I = E
7979 I
8080 }
8181 else 0
8282 }
8383 let J = (H + v.amount)
8484 let K = (B >= A)
8585 let L = valueOrErrorMessage(assetInfo(fromBase58String(g)), (("Asset " + g) + " doesn't exist"))
8686 if ((z != g))
8787 then throw("Pair is not available in Voting List.")
8888 else if ((height > y))
8989 then throw((("Voting timeline for " + g) + " is expired."))
9090 else if ((v.assetId != b))
9191 then throw((("Kindly Attach Only " + toBase58String(b)) + " Token."))
9292 else if ((C == x))
9393 then throw((("Voting for " + g) + " pair is completed & it’s available in whitelist."))
9494 else if (K)
9595 then [StringEntry(("Voting_Status_" + g), x), IntegerEntry(((("Balance_of_" + g) + "_") + toBase58String(a)), 0), IntegerEntry(((("Balance_of_" + toBase58String(a)) + "_") + g), 0), IntegerEntry(("Total_of_Pair_Txns_" + g), 0), IntegerEntry(((("Total_Swap_Fee_Collected_" + g) + "_") + toBase58String(a)), 0), IntegerEntry(("Total_Swap_Fee_Collected_" + g), 0), IntegerEntry(((("Votes_Rcvd_" + w) + "_") + g), J)]
9696 else [IntegerEntry(("Votes_Rcvd_" + g), G), IntegerEntry(((("Votes_Rcvd_" + w) + "_") + g), J)]
9797 }
9898
9999
100100
101101 @Callable(f)
102102 func WithdrawVotedTokens (g) = {
103103 let v = if ((size(f.payments) == 1))
104104 then f.payments[0]
105105 else throw("0.1 TN Token is required as Attached payment.")
106106 let w = toBase58String(f.caller.bytes)
107107 let y = getIntegerValue(this, ("Voting_EH_" + g))
108108 let z = getString(this, ("Pair_UV_" + g))
109109 let M = valueOrErrorMessage(getInteger(this, ((("Votes_Rcvd_" + w) + "_") + g)), (w + " Address never voted & exist in list."))
110110 let N = (y - height)
111111 if ((z != g))
112112 then throw("Pair is not available in Voting List.")
113113 else if ((y > height))
114114 then throw((("Voting Already Running. You can withdraw your CODE Token after " + toString(N)) + " blocks"))
115115 else if ((0 >= M))
116116 then throw("You don't have any dues of CODE balance in this Voting Pair.")
117117 else if (isDefined(v.assetId))
118118 then throw("Don't attach any other asset. Please attach 0.1 TN as a fee to release your token")
119119 else if ((v.amount != 10000000))
120120 then throw("Please attach 0.1 TN as a fee to release your token.")
121121 else [IntegerEntry(((("Votes_Rcvd_" + w) + "_") + g), 0), ScriptTransfer(f.caller, M, b)]
122122 }
123123
124124
125125
126126 @Callable(f)
127127 func IssueLPToken (g) = {
128128 let O = valueOrErrorMessage(getString(this, "LP_Admin_Rights"), "LP Admin Rights are Not Included into Smart Contract. Deploy Admin Rights First.")
129129 let w = toBase58String(f.caller.bytes)
130130 let z = valueOrErrorMessage(getString(this, ("Pair_UV_" + g)), "Asset not Found in Whitelisted Token")
131131 let L = valueOrErrorMessage(assetInfo(fromBase58String(g)), (("Asset " + g) + " doesn't exist"))
132132 let P = L.name
133133 let Q = L.decimals
134134 let x = "P"
135135 let C = valueOrErrorMessage(getString(this, ("Voting_Status_" + g)), ("Voting Status is Missing for " + g))
136136 let R = (1 * pow(10, 0, fraction((Q + 6), 1, 2), 0, 0, UP))
137137 let S = Issue((("LP-" + take(P, 8)) + "-USDT"), (((("LP-" + P) + "-USDT") + " is a Liquidity Provider Token Issued Against ") + g), R, fraction((Q + 6), 1, 2), true)
138138 let T = calculateAssetId(S)
139139 if ((O != w))
140140 then throw((("Your are not allowded to Issue LP Token. Only " + O) + " can issue the LP Token."))
141141 else if ((z != g))
142142 then throw("Pair is not available in Voting List.")
143143 else if ((C != x))
144144 then throw("LP Token must be a Whitelisted Token.")
145145 else [S, StringEntry(("LP_" + g), toBase58String(T)), IntegerEntry(("Total_LP_" + g), R)]
146146 }
147147
148148
149149
150150 @Callable(f)
151151 func SwapAssetToUSDTPairEntry (g) = {
152152 let w = toBase58String(f.caller.bytes)
153153 let v = if ((size(f.payments) == 1))
154154 then f.payments[0]
155155 else throw("Whitelisted Token is required as Attached payment[1].")
156156 let z = getString(this, ("Pair_UV_" + g))
157157 let C = getStringValue(this, ("Voting_Status_" + g))
158158 let U = getIntegerValue(this, ((("Balance_of_" + g) + "_") + toBase58String(a)))
159159 let V = getIntegerValue(this, ((("Balance_of_" + toBase58String(a)) + "_") + g))
160160 let W = fraction(U, V, (V + v.amount))
161161 let X = (U - W)
162162 let Y = "F"
163163 let Z = 3
164164 let aa = ((X * Z) / 1000)
165165 let ab = (X - aa)
166166 let ac = {
167167 let E = getInteger(this, ((("Total_Swap_Fee_Collected_" + g) + "_") + toBase58String(a)))
168168 if ($isInstanceOf(E, "Int"))
169169 then {
170170 let F = E
171171 F
172172 }
173173 else 0
174174 }
175175 let ad = (ac + aa)
176176 let ae = {
177177 let E = getInteger(this, ((("Balance_of_" + toBase58String(a)) + "_") + g))
178178 if ($isInstanceOf(E, "Int"))
179179 then {
180180 let F = E
181181 F
182182 }
183183 else 0
184184 }
185185 let af = (V + v.amount)
186186 let ag = {
187187 let E = getInteger(this, ((("Balance_of_" + g) + "_") + toBase58String(a)))
188188 if ($isInstanceOf(E, "Int"))
189189 then {
190190 let F = E
191191 F
192192 }
193193 else 0
194194 }
195195 let ah = (U - X)
196196 let ai = {
197197 let E = getIntegerValue(this, ("Total_of_Pair_Txns_" + g))
198198 if ($isInstanceOf(E, "Int"))
199199 then {
200200 let F = E
201201 F
202202 }
203203 else 0
204204 }
205205 let aj = (ai + 1)
206206 if ((g == toBase58String(a)))
207207 then throw("Input can Never be a USDT AssetID. Enter Whitelisted AssetID in input & Attach Whitelisted Asset as an attachment Token in payment[1].")
208208 else if ((z != g))
209209 then throw("Pair is not available in Whitelisted Asset.")
210210 else if ((C == Y))
211211 then throw((g + " is not A Whitelisted Token Yet."))
212212 else if ((v.assetId == a))
213213 then throw("You can't Attach USDT as an Attached Payment. Only Whitelisted Tokens are accepted.")
214214 else if ((v.assetId != fromBase58String(g)))
215215 then throw(("Incorrect asset attached, please attach or send " + g))
216216 else if ((U == 0))
217217 then throw("Swap Pair Need to Add Liquidity first into Pool. Only After that Pair will be activated for Swapping.")
218218 else if ((V == 0))
219219 then throw("Swap Pair Need to Add Liquidity first into Pool. Only After that Pair will be activated for Swapping.")
220220 else if ((10000000 > X))
221221 then throw((("Your Attached Asset Amount is very low. Attach More " + g) + " Tokens to Claim the minimum Amount of 10 dollar atleast."))
222222 else if ((X > U))
223223 then throw((("Pool Only has a Liquidity of " + toString((U / pow(10, 0, 6, 0, 0, UP)))) + " USDT. Add Liquidity into Pool."))
224224 else [IntegerEntry(((("Total_Swap_Fee_Collected_" + g) + "_") + toBase58String(a)), ad), IntegerEntry(("Total_of_Pair_Txns_" + g), aj), IntegerEntry(((("Balance_of_" + toBase58String(a)) + "_") + g), af), IntegerEntry(((("Balance_of_" + g) + "_") + toBase58String(a)), ah), ScriptTransfer(f.caller, ab, a), ScriptTransfer(d, aa, a)]
225225 }
226226
227227
228228
229229 @Callable(f)
230230 func SwapUSDTToAssetPairEntry (g) = {
231231 let w = toBase58String(f.caller.bytes)
232232 let v = if ((size(f.payments) == 1))
233233 then f.payments[0]
234234 else throw((("Only " + toBase58String(a)) + " USDT Token is required as an Attached payment[1]."))
235235 let U = getIntegerValue(this, ((("Balance_of_" + g) + "_") + toBase58String(a)))
236236 let V = getIntegerValue(this, ((("Balance_of_" + toBase58String(a)) + "_") + g))
237237 let ak = fraction(U, V, (U + v.amount))
238238 let X = (V - ak)
239239 let z = getString(this, ("Pair_UV_" + g))
240240 let C = getStringValue(this, ("Voting_Status_" + g))
241241 let Y = "F"
242242 let Z = 3
243243 let aa = ((X * Z) / 1000)
244244 let ab = (X - aa)
245245 let al = {
246246 let E = getInteger(this, ("Total_Swap_Fee_Collected_" + g))
247247 if ($isInstanceOf(E, "Int"))
248248 then {
249249 let F = E
250250 F
251251 }
252252 else 0
253253 }
254254 let am = (al + aa)
255255 let ae = {
256256 let E = getInteger(this, ((("Balance_of_" + toBase58String(a)) + "_") + g))
257257 if ($isInstanceOf(E, "Int"))
258258 then {
259259 let F = E
260260 F
261261 }
262262 else 0
263263 }
264264 let af = (V - X)
265265 let ag = {
266266 let E = getInteger(this, ((("Balance_of_" + g) + "_") + toBase58String(a)))
267267 if ($isInstanceOf(E, "Int"))
268268 then {
269269 let F = E
270270 F
271271 }
272272 else 0
273273 }
274274 let ah = (U + v.amount)
275275 let ai = {
276276 let E = getIntegerValue(this, ("Total_of_Pair_Txns_" + g))
277277 if ($isInstanceOf(E, "Int"))
278278 then {
279279 let F = E
280280 F
281281 }
282282 else 0
283283 }
284284 let aj = (ai + 1)
285285 if ((z != g))
286286 then throw("Pair is not available in Whitelisted Asset.")
287287 else if ((C == Y))
288288 then throw((g + " is not A Whitelisted Token Yet."))
289289 else if ((g == toBase58String(a)))
290290 then throw("Input can Never be a USDT AssetID. Enter Whitelisted AssetID in input & Attach USDT as an attachment Token in payment[1].")
291291 else if ((v.assetId != a))
292292 then throw("You can Attach USDT as an Attached Payment[1] to Swap USDT To Required Token. Any other asset else than USDT will be rejected.")
293293 else if ((10000000 > v.amount))
294294 then throw("Your Attached USDT Amount is very low. Attach Atleast 10 USDT to Claim the minimum Tokens.")
295295 else if ((U == 0))
296296 then throw("Swap Pair Need to Add Liquidity first into Pool. Only After that Pair will be activated for Swapping.")
297297 else if ((V == 0))
298298 then throw("Swap Pair Need to Add Liquidity first into Pool. Only After that Pair will be activated for Swapping.")
299299 else if ((X > V))
300300 then throw((("Pool Only has a Liquidity of " + toString(V)) + " Tokens. Add Liquidity into Pool."))
301301 else [IntegerEntry(("Total_Swap_Fee_Collected_" + g), am), IntegerEntry(("Total_of_Pair_Txns_" + g), aj), IntegerEntry(((("Balance_of_" + toBase58String(a)) + "_") + g), af), IntegerEntry(((("Balance_of_" + g) + "_") + toBase58String(a)), ah), ScriptTransfer(f.caller, ab, fromBase58String(g)), ScriptTransfer(e, aa, fromBase58String(g))]
302302 }
303303
304304
305305
306306 @Callable(f)
307307 func AddLiquidity (g) = {
308308 let w = toBase58String(f.caller.bytes)
309309 let i = value(f.payments[0])
310310 let j = value(f.payments[1])
311311 let z = getString(this, ("Pair_UV_" + g))
312312 let C = getStringValue(this, ("Voting_Status_" + g))
313313 let an = fromBase58String(valueOrErrorMessage(getString(this, ("LP_" + g)), "LP Token is Missing or May be not Generated."))
314314 let Y = "F"
315315 let U = getIntegerValue(this, ((("Balance_of_" + g) + "_") + toBase58String(a)))
316316 let V = getIntegerValue(this, ((("Balance_of_" + toBase58String(a)) + "_") + g))
317317 let ao = valueOrErrorMessage(assetInfo(fromBase58String(g)), (("Asset " + g) + " doesn't exist"))
318318 let Q = ao.decimals
319319 let ap = U
320320 let aq = V
321321 let ar = pow((((ap * 1000000) / aq) * pow(10, 0, Q, 0, 0, UP)), 0, 1, 0, 0, UP)
322322 let as = (6 + Q)
323323 let at = (as / 2)
324324 let au = fraction(ar, i.amount, pow(10, 0, as, 0, 0, UP))
325325 let av = pow((fraction(i.amount, 1, pow(10, 0, Q, 0, 0, UP)) * fraction(j.amount, 1, pow(10, 0, 6, 0, 0, UP))), 0, 5, 1, at, DOWN)
326326 let aw = {
327327 let E = getInteger(this, ((("Balance_of_" + g) + "_") + toBase58String(a)))
328328 if ($isInstanceOf(E, "Int"))
329329 then {
330330 let F = E
331331 F
332332 }
333333 else 0
334334 }
335335 let ax = (aw + j.amount)
336336 let ay = {
337337 let E = getInteger(this, ((("Balance_of_" + toBase58String(a)) + "_") + g))
338338 if ($isInstanceOf(E, "Int"))
339339 then {
340340 let F = E
341341 F
342342 }
343343 else 0
344344 }
345345 let az = (ay + i.amount)
346346 let aA = {
347347 let E = getIntegerValue(this, ("Total_LP_" + g))
348348 if ($isInstanceOf(E, "Int"))
349349 then {
350350 let F = E
351351 F
352352 }
353353 else 0
354354 }
355355 let aB = (aA + av)
356356 if ((z != g))
357357 then throw("Pair is not available in Whitelisted Asset.")
358358 else if ((C == Y))
359359 then throw((g + " is not A Whitelisted Token Yet."))
360360 else if ((g == toBase58String(a)))
361361 then throw("Input can Never be a USDT AssetID. Enter Whitelisted AssetID in input as well as in payment[1] & Attach USDT as an attachment Token in payment[2].")
362362 else if ((size(f.payments) != 2))
363363 then throw("Two attached assets expected as payment in 50%-50%. Kindly Attach payment1 = Token you want to add for Liquidity & payment2 = Equivalent Amount of USDT Token.")
364364 else if ((i.assetId == a))
365365 then throw("You Attached USDT asset in payment[1], please attach only whitelisted Token in payment[1] along with USDT in payment[2].")
366366 else if ((i.assetId != fromBase58String(g)))
367367 then throw("Incorrect asset attached for Liquidity in payment[1], please attach String Asset or Whitelisted Token only.")
368368 else if ((i.assetId != fromBase58String(g)))
369369 then throw("Incorrect asset attached for Liquidity in payment[1], please attach String Asset or Whitelisted Token only.")
370370 else if ((j.assetId != a))
371371 then throw("Wrong Asset Attached in payments[2], Please attach payment[1] = Liquidity Token & payment[2] = USDT Token.")
372372 else if ((10000000 > j.amount))
373373 then throw("please attach atleast 10 USDT in payment[2] & Equivalent worth of Token in payment[1]")
374374 else if ((j.amount != au))
375- then throw((((("Attached payment[2] qty is not matching as per attached payment[1].payment[2] must be " + toString(au)) + " or ") + toString(fraction(au, 1, 1000000))) + takeRight(toString(au), 6)))
375+ then throw((((((("Attached payment[2] qty is not matching as per attached payment[1].payment[2] must be " + toString(au)) + " or ") + toString(fraction(au, 1, 1000000))) + "$ ") + takeRight(toString(au), 6)) + " Cents"))
376376 else if ((1 > av))
377377 then throw((("LP Token Outcome is going below " + toString(at)) + " Decimals. Please Attach min. 1 LP token or 10 USDT Atleast."))
378378 else [IntegerEntry(((("Balance_of_" + g) + "_") + toBase58String(a)), ax), IntegerEntry(((("Balance_of_" + toBase58String(a)) + "_") + g), az), IntegerEntry(("Total_LP_" + g), aB), Reissue(an, av, true), ScriptTransfer(f.caller, av, an)]
379379 }
380380
381381
382382
383383 @Callable(f)
384384 func RemoveLiquidity (g) = {
385385 let w = toBase58String(f.caller.bytes)
386386 let v = if ((size(f.payments) == 1))
387387 then f.payments[0]
388388 else throw("No payment attached, Please Attach LP Token as payment[1].")
389389 let z = getString(this, ("Pair_UV_" + g))
390390 let C = getStringValue(this, ("Voting_Status_" + g))
391391 let aC = fromBase58String(valueOrErrorMessage(getString(this, ("LP_" + g)), "LP Token is Missing or not Generated."))
392392 let Y = "F"
393393 let ao = valueOrErrorMessage(assetInfo(fromBase58String(g)), (("Asset " + g) + " doesn't exist"))
394394 let Q = ao.decimals
395395 let as = (6 + Q)
396396 let at = (as / 2)
397397 let aD = getIntegerValue(this, ("Total_LP_" + g))
398398 let aE = pow(fraction(v.amount, pow(10, 0, 8, 0, 0, UP), aD), 6, 1, 0, 6, UP)
399399 let U = getIntegerValue(this, ((("Balance_of_" + g) + "_") + toBase58String(a)))
400400 let V = getIntegerValue(this, ((("Balance_of_" + toBase58String(a)) + "_") + g))
401401 let aF = fraction(U, aE, pow(10, 0, 8, 0, 0, UP))
402402 let aG = fraction(V, aE, pow(10, 0, 8, 0, 0, UP))
403403 let aw = {
404404 let E = getInteger(this, ((("Balance_of_" + g) + "_") + toBase58String(a)))
405405 if ($isInstanceOf(E, "Int"))
406406 then {
407407 let F = E
408408 F
409409 }
410410 else 0
411411 }
412412 let ax = (aw - aF)
413413 let ay = {
414414 let E = getInteger(this, ((("Balance_of_" + toBase58String(a)) + "_") + g))
415415 if ($isInstanceOf(E, "Int"))
416416 then {
417417 let F = E
418418 F
419419 }
420420 else 0
421421 }
422422 let az = (ay - aG)
423423 let aA = {
424424 let E = getIntegerValue(this, ("Total_LP_" + g))
425425 if ($isInstanceOf(E, "Int"))
426426 then {
427427 let F = E
428428 F
429429 }
430430 else 0
431431 }
432432 let aB = (aA - v.amount)
433433 if ((z != g))
434434 then throw("Pair is not available in Whitelist.")
435435 else if ((C == Y))
436436 then throw((g + " is not A Whitelist Token Yet."))
437437 else if ((fromBase58String(g) == a))
438438 then throw("Don't choose USDT AssetID as Input, Only Whitelisted Asset as Input String & Attach LP Tokens as payment[1]")
439439 else if ((v.assetId != aC))
440440 then throw("Wrong Asset is attached in payment[1] or LP Token Not Found or Missing.")
441441 else if ((1 > aE))
442442 then throw("Your LP Token amount % is very low to convert.")
443443 else if ((1 > aF))
444444 then throw("Your LP Token conversion amount is very low to convert or less than 0.000001 USDT.")
445445 else if ((1 > aG))
446446 then throw("Your LP Token conversion amount is very low to convert or less than fraction value of Token.")
447447 else [IntegerEntry("Withdraw_LP_Percentage", aE), Burn(aC, v.amount), IntegerEntry(("Total_LP_" + g), aB), IntegerEntry(((("Balance_of_" + g) + "_") + toBase58String(a)), ax), IntegerEntry(((("Balance_of_" + toBase58String(a)) + "_") + g), az), ScriptTransfer(f.caller, aF, a), ScriptTransfer(f.caller, aG, fromBase58String(g))]
448448 }
449449
450450
451451 @Verifier(aH)
452452 func aI () = {
453453 let E = aH
454454 sigVerify(aH.bodyBytes, aH.proofs[0], aH.senderPublicKey)
455455 }
456456

github/deemru/w8io/169f3d6 
65.87 ms