tx · FwnPwB138LCiBcoDzXQyLdooWreJjjoXGzr8A1ooz7fy

3Mrnje6z2xa3xuXyU2Lk6ynKy8tsRnnt4Bv:  -0.01400000 Waves

2021.08.20 10:42 [1666386] smart account 3Mrnje6z2xa3xuXyU2Lk6ynKy8tsRnnt4Bv > SELF 0.00000000 Waves

{ "type": 13, "id": "FwnPwB138LCiBcoDzXQyLdooWreJjjoXGzr8A1ooz7fy", "fee": 1400000, "feeAssetId": null, "timestamp": 1629445402006, "version": 2, "chainId": 84, "sender": "3Mrnje6z2xa3xuXyU2Lk6ynKy8tsRnnt4Bv", "senderPublicKey": "28sGn7FYnmxceAmnGYiDiKuMK1QyXiqX8zQXfKDnrc8t", "proofs": [ "4LHJnujJknhoFin2JxUgMTcwnsk2T1nTsENYsjYPRsTkmbwN8Kgdmf5sgTrvkrDPs8skVZhEN2ZaJfv1RzgmeuPM" ], "script": "base64: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lhgC7/FEdjB7WHX3k6igBAAAAA5QcmljZVBlckJhbGxldAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwIAAAAJQkFMTEVUL1ROBAAAAA9OZXdCYWxsZXRUb1VzZXIJAABrAAAAAwAAAAAAAAGGoAgFAAAAA3BtdAAAAAZhbW91bnQFAAAADlByaWNlUGVyQmFsbGV0BAAAABRQcmV2aW91c0lzc3VlZEJhbGxldAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwIAAAAUVG90YWxfSXNzdWVkX0JhbGxldDoEAAAAEVRvdGFsSXNzdWVkQmFsbGV0CQAAZAAAAAIFAAAAFFByZXZpb3VzSXNzdWVkQmFsbGV0BQAAAA9OZXdCYWxsZXRUb1VzZXIEAAAAGlByZXZpb3VzQmFsbGV0UmVzZXJ2ZVZhbHVlCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzAgAAABtUb3RhbF9CYWxsZXRfUmVzZXJ2ZV9Jbl9UTjoEAAAAEkJhbGxldFJlc2VydmVWYWx1ZQkAAGQAAAACBQAAABpQcmV2aW91c0JhbGxldFJlc2VydmVWYWx1ZQgFAAAAA3BtdAAAAAZhbW91bnQEAAAAGVByZXZpb3VzQmFsbGV0QmFja3VwUHJpY2UJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAAGkJhbGxldF9CYWNrdXBfVmFsdWVfSW5fVE46BAAAABFCYWxsZXRCYWNrdXBQcmljZQkAAGsAAAADAAAAAAAAAYagBQAAABJCYWxsZXRSZXNlcnZlVmFsdWUFAAAAEVRvdGFsSXNzdWVkQmFsbGV0BAAAAApGZWVBZGRyZXNzAQAAACBxPzntQa7CXqUpHrNREofekMqtlOVQyxdZBdjFyNZ4GwMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAAArSW5jb3JyZWN0IGFzc2V0IGF0dGFjaGVkLCBwbGVhc2UgYXR0YWNoIFROLgMJAABmAAAAAgAAAAAAAExLQAgFAAAAA3BtdAAAAAZhbW91bnQJAAACAAAAAQIAAAA0UGxlYXNlIEF0dGFjaCBtaW5pbXVtIDAuMDUgVE4gVG8gSXNzdWUgQmFsbGV0IEFzc2V0LgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAUVG90YWxfSXNzdWVkX0JhbGxldDoFAAAAEVRvdGFsSXNzdWVkQmFsbGV0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABtUb3RhbF9CYWxsZXRfUmVzZXJ2ZV9Jbl9UTjoFAAAAEkJhbGxldFJlc2VydmVWYWx1ZQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAaQmFsbGV0X0JhY2t1cF9WYWx1ZV9Jbl9UTjoFAAAAEUJhbGxldEJhY2t1cFByaWNlCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAAB21lc3NhZ2UCAAAAKDxoMT5CYWxsZXQgSXNzdWVkIFN1Y2Nlc3NmdWxseSE8L2gxPjxicj4JAARMAAAAAgkBAAAAB1JlaXNzdWUAAAADBQAAAA1CYWxsZXRBc3NldElEBQAAAA9OZXdCYWxsZXRUb1VzZXIGCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgkAAGkAAAACCQAAaAAAAAIFAAAAD05ld0JhbGxldFRvVXNlcgAAAAAAAAAAYwAAAAAAAAAAZAUAAAANQmFsbGV0QXNzZXRJRAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABBQAAAApGZWVBZGRyZXNzCQAAaQAAAAIJAABoAAAAAgUAAAAPTmV3QmFsbGV0VG9Vc2VyAAAAAAAAAAABAAAAAAAAAABkBQAAAA1CYWxsZXRBc3NldElEBQAAAANuaWwAAAABaQEAAAAJTGlxdWlkYXRlAAAAAAQAAAAKY3VycmVudEtleQkAAlgAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkEAAAAA3BtdAkBAAAABXZhbHVlAAAAAQkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAQAAAANQmFsbGV0QXNzZXRJRAEAAAAgLW9bAbmd5UpvGoRop5PuExeWGALv8UR2MHtYdfeTqKAEAAAAFFByZXZpb3VzSXNzdWVkQmFsbGV0CQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzAgAAABRUb3RhbF9Jc3N1ZWRfQmFsbGV0OgQAAAARVG90YWxJc3N1ZWRCYWxsZXQJAABlAAAAAgUAAAAUUHJldmlvdXNJc3N1ZWRCYWxsZXQIBQAAAANwbXQAAAAGYW1vdW50BAAAABpQcmV2aW91c0JhbGxldFJlc2VydmVWYWx1ZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwIAAAAbVG90YWxfQmFsbGV0X1Jlc2VydmVfSW5fVE46BAAAABlQcmV2aW91c0JhbGxldEJhY2t1cFByaWNlCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzAgAAABpCYWxsZXRfQmFja3VwX1ZhbHVlX0luX1ROOgQAAAASY2FsY3VsYXRlYnVybnZhbHVlCQAAawAAAAMFAAAAGVByZXZpb3VzQmFsbGV0QmFja3VwUHJpY2UIBQAAAANwbXQAAAAGYW1vdW50AAAAAAAAAYagBAAAABJCYWxsZXRSZXNlcnZlVmFsdWUJAABlAAAAAgUAAAAaUHJldmlvdXNCYWxsZXRSZXNlcnZlVmFsdWUFAAAAEmNhbGN1bGF0ZWJ1cm52YWx1ZQQAAAARQmFsbGV0QmFja3VwUHJpY2UJAABrAAAAAwAAAAAAAAGGoAUAAAASQmFsbGV0UmVzZXJ2ZVZhbHVlBQAAABFUb3RhbElzc3VlZEJhbGxldAMJAQAAAAIhPQAAAAIIBQAAAANwbXQAAAAHYXNzZXRJZAUAAAANQmFsbGV0QXNzZXRJRAkAAAIAAAABAgAAAEpLaW5kbHkgRGVwb3NpdCBPbmx5IDQ0TXE4S3FVaE05NHQ5M01pQnEzUzIyaWl1R2N6TXhwS21zZTVkQnkydzV5IChCYWxsZXQpLgMJAABmAAAAAgAAAAAAAAGGoAgFAAAAA3BtdAAAAAZhbW91bnQJAAACAAAAAQIAAAAwQXR0YWNoIEFtb3VudCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwLjAwMSBCYWxsZXQuCQAETAAAAAIJAQAAAARCdXJuAAAAAgUAAAANQmFsbGV0QXNzZXRJRAgFAAAAA3BtdAAAAAZhbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAFFRvdGFsX0lzc3VlZF9CYWxsZXQ6BQAAABFUb3RhbElzc3VlZEJhbGxldAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAbVG90YWxfQmFsbGV0X1Jlc2VydmVfSW5fVE46BQAAABJCYWxsZXRSZXNlcnZlVmFsdWUJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAGkJhbGxldF9CYWNrdXBfVmFsdWVfSW5fVE46BQAAABFCYWxsZXRCYWNrdXBQcmljZQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAAEmNhbGN1bGF0ZWJ1cm52YWx1ZQUAAAAEdW5pdAUAAAADbmlsAAAAAWkBAAAACERvVm90aW5nAAAAAQAAAAxFbnRlckFzc2V0SUQEAAAAA3BtdAMJAAAAAAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAkAAAIAAAABAgAAACxCYWxsZXQgVG9rZW4gaXMgcmVxdWlyZWQgYXMgQXR0YWNoZWQgcGF5bWVudAQAAAANY2FsbGVyYWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAA1CYWxsZXRBc3NldElEAQAAACAtb1sBuZ3lSm8ahGink+4TF5YYAu/xRHYwe1h195OooAQAAAAPTmV3Vm90aW5nU3RhdHVzAgAAAARQYXNzBAAAABhjaGVja3Byb2plY3RleHBpcmVoZWlnaHQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAASVm90aW5nX0VuZF9IZWlnaHRfBQAAAAxFbnRlckFzc2V0SUQEAAAAGWNoZWNrcGFpcmlzYXZhaWxhYmxlb3Jub3QJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABJQYWlyX1VuZGVyX1ZvdGluZ18FAAAADEVudGVyQXNzZXRJRAQAAAASY2hlY2t2b3Rlc3JlcXVpcmVkCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAD1ZvdGVzX1JlcXVpcmVkXwUAAAAMRW50ZXJBc3NldElEBAAAABJjaGVja3ZvdGVzcmVjZWl2ZWQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAPVm90ZXNfUmVjZWl2ZWRfBQAAAAxFbnRlckFzc2V0SUQEAAAADFZvdGluZ1N0YXR1cwkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAA5Wb3RpbmdfU3RhdHVzXwUAAAAMRW50ZXJBc3NldElEBAAAAAxjdXJyZW50dm90ZXMEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAA9Wb3Rlc19SZWNlaXZlZF8FAAAADEVudGVyQXNzZXRJRAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAA1uZXd2b3Rlc2NvdW50CQAAZAAAAAIFAAAADGN1cnJlbnR2b3RlcwgFAAAAA3BtdAAAAAZhbW91bnQEAAAAD2luZGl2aWR1YWx2b3RlcwQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAA9Wb3Rlc19SZWNlaXZlZF8FAAAADWNhbGxlcmFkZHJlc3MCAAAAAV8FAAAADEVudGVyQXNzZXRJRAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFiBQAAAAckbWF0Y2gwBQAAAAFiAAAAAAAAAAAABAAAABRpbmRpdmlkdWFsdm90ZXNjb3VudAkAAGQAAAACBQAAAA9pbmRpdmlkdWFsdm90ZXMIBQAAAANwbXQAAAAGYW1vdW50BAAAAA5jaGVja3doaXRlbGlzdAkAAGcAAAACBQAAABJjaGVja3ZvdGVzcmVjZWl2ZWQFAAAAEmNoZWNrdm90ZXNyZXF1aXJlZAQAAAAEaW5mbwkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAD7AAAAAEJAAJZAAAAAQUAAAAMRW50ZXJBc3NldElECQABLAAAAAIJAAEsAAAAAgIAAAAGQXNzZXQgBQAAAAxFbnRlckFzc2V0SUQCAAAADiBkb2Vzbid0IGV4aXN0BAAAAAhkZWNpbWFscwgFAAAABGluZm8AAAAIZGVjaW1hbHMDCQEAAAACIT0AAAACBQAAABljaGVja3BhaXJpc2F2YWlsYWJsZW9ybm90BQAAAAxFbnRlckFzc2V0SUQJAAACAAAAAQIAAAAlUGFpciBpcyBub3QgYXZhaWxhYmxlIGluIFZvdGluZyBMaXN0LgMJAABmAAAAAgUAAAAGaGVpZ2h0BQAAABhjaGVja3Byb2plY3RleHBpcmVoZWlnaHQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAFFZvdGluZyB0aW1lbGluZSBmb3IgBQAAAAxFbnRlckFzc2V0SUQCAAAADCBpcyBleHBpcmVkLgMJAQAAAAIhPQAAAAIIBQAAAANwbXQAAAAHYXNzZXRJZAUAAAANQmFsbGV0QXNzZXRJRAkAAAIAAAABAgAAAElLaW5kbHkgQXR0YWNoIE9ubHkgNDRNcThLcVVoTTk0dDkzTWlCcTNTMjJpaXVHY3pNeHBLbXNlNWRCeTJ3NXkgKEJhbGxldCkuAwkAAAAAAAACBQAAAAxWb3RpbmdTdGF0dXMFAAAAD05ld1ZvdGluZ1N0YXR1cwkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAALVm90aW5nIGZvciAFAAAADEVudGVyQXNzZXRJRAIAAAA1IHBhaXIgaXMgY29tcGxldGVkIGFuZCBpdOKAmXMgYXZhaWxhYmxlIGluIHdoaXRlbGlzdC4DBQAAAA5jaGVja3doaXRlbGlzdAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAICAAAADlZvdGluZ19TdGF0dXNfBQAAAAxFbnRlckFzc2V0SUQFAAAAD05ld1ZvdGluZ1N0YXR1cwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAAAxEZWNpbWFsc19vZl8FAAAADEVudGVyQXNzZXRJRAUAAAAIZGVjaW1hbHMFAAAAA25pbAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAAA9Wb3Rlc19SZWNlaXZlZF8FAAAADEVudGVyQXNzZXRJRAUAAAANbmV3dm90ZXNjb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAPVm90ZXNfUmVjZWl2ZWRfBQAAAA1jYWxsZXJhZGRyZXNzAgAAAAFfBQAAAAxFbnRlckFzc2V0SUQFAAAAFGluZGl2aWR1YWx2b3Rlc2NvdW50BQAAAANuaWwAAAABaQEAAAATV2l0aGRyYXdWb3RlZFRva2VucwAAAAEAAAAMRW50ZXJBc3NldElEBAAAAANwbXQJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAEAAAADWNhbGxlcmFkZHJlc3MJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAANQmFsbGV0QXNzZXRJRAEAAAAgLW9bAbmd5UpvGoRop5PuExeWGALv8UR2MHtYdfeTqKAEAAAAGGNoZWNrcHJvamVjdGV4cGlyZWhlaWdodAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABJWb3RpbmdfRW5kX0hlaWdodF8FAAAADEVudGVyQXNzZXRJRAQAAAAZY2hlY2twYWlyaXNhdmFpbGFibGVvcm5vdAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAAElBhaXJfVW5kZXJfVm90aW5nXwUAAAAMRW50ZXJBc3NldElEBAAAABZjaGVja3VzZXJ2b3RpbmdiYWxhbmNlCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAA9Wb3Rlc19SZWNlaXZlZF8FAAAADWNhbGxlcmFkZHJlc3MCAAAAAV8FAAAADEVudGVyQXNzZXRJRAQAAAAdcGVuZGluZ2Jsb2Nrc2ZvcnByb2plY3RleHBpcmUJAABlAAAAAgUAAAAYY2hlY2twcm9qZWN0ZXhwaXJlaGVpZ2h0BQAAAAZoZWlnaHQDCQEAAAACIT0AAAACBQAAABljaGVja3BhaXJpc2F2YWlsYWJsZW9ybm90BQAAAAxFbnRlckFzc2V0SUQJAAACAAAAAQIAAAAlUGFpciBpcyBub3QgYXZhaWxhYmxlIGluIFZvdGluZyBMaXN0LgMJAABmAAAAAgUAAAAYY2hlY2twcm9qZWN0ZXhwaXJlaGVpZ2h0BQAAAAZoZWlnaHQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAVFZvdGluZyBBbHJlYWR5IFJ1bm5pbmcuIFlvdSBjYW4gd2l0aGRyYXcgeW91ciBCYWxsZXQgVG9rZW4gb25seSBhZnRlciB0aGUgZXhwaXJlIG9mIAkAAaQAAAABBQAAAB1wZW5kaW5nYmxvY2tzZm9ycHJvamVjdGV4cGlyZQIAAAAHIEJsb2NrcwMJAABnAAAAAgAAAAAAAAAAAAUAAAAWY2hlY2t1c2Vydm90aW5nYmFsYW5jZQkAAAIAAAABAgAAAD5Zb3UgZG9uJ3QgaGF2ZSBhbnkgZHVlcyBvZiBiYWxsZXQgYmFsYW5jZSBpbiB0aGlzIFZvdGluZyBQYWlyLgMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAABSRG9uJ3QgYXR0YWNoIGFueSBhc3NldC4gSWYgeW91IHN0aWxsIHdhbnQgdG8gc3VwcG9ydCB3ZSBhY2NlcHQgb25seSBUTiBhcyBwYXltZW50LgMJAQAAAAIhPQAAAAIIBQAAAANwbXQAAAAGYW1vdW50AAAAAAAAmJaACQAAAgAAAAECAAAANFBsZWFzZSBhdHRhY2ggMC4xIFROIGFzIGEgZmVlIHRvIHJlbGVhc2UgeW91ciB0b2tlbi4JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAD1ZvdGVzX1JlY2VpdmVkXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwUAAAAMRW50ZXJBc3NldElEAAAAAAAAAAAACQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAWY2hlY2t1c2Vydm90aW5nYmFsYW5jZQUAAAANQmFsbGV0QXNzZXRJRAUAAAADbmlsAAAAAWkBAAAAD1JlbW92ZVBhaXJFbnRyeQAAAAEAAAAMRW50ZXJBc3NldElEBAAAAAthZG1pbnJpZ2h0cwkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwIAAAAVUG9sYXJpdHlfQWRtaW5fUmlnaHRzBAAAAAtVU0RUQXNzZXRJRAEAAAAgX1dpGMgKJ4Em8VuX7cTsTfnCu1nLEhiLhGCgX6b3/PMEAAAAGGNoZWNrcHJvamVjdGV4cGlyZWhlaWdodAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABJWb3RpbmdfRW5kX0hlaWdodF8FAAAADEVudGVyQXNzZXRJRAQAAAAZY2hlY2twYWlyaXNhdmFpbGFibGVvcm5vdAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAAElBhaXJfVW5kZXJfVm90aW5nXwUAAAAMRW50ZXJBc3NldElEBAAAAAxWb3RpbmdTdGF0dXMJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAOVm90aW5nX1N0YXR1c18FAAAADEVudGVyQXNzZXRJRAQAAAAPTmV3Vm90aW5nU3RhdHVzAgAAAARQYXNzBAAAAA1jYWxsZXJhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWN1cnJlbnRoZWlnaHQFAAAABmhlaWdodAQAAAAdcGVuZGluZ2Jsb2Nrc2ZvcnByb2plY3RleHBpcmUJAABlAAAAAgUAAAAYY2hlY2twcm9qZWN0ZXhwaXJlaGVpZ2h0BQAAAAZoZWlnaHQDCQEAAAACIT0AAAACBQAAABljaGVja3BhaXJpc2F2YWlsYWJsZW9ybm90BQAAAAxFbnRlckFzc2V0SUQJAAACAAAAAQIAAAAlUGFpciBpcyBub3QgYXZhaWxhYmxlIGluIFZvdGluZyBMaXN0LgMJAQAAAAIhPQAAAAIFAAAAC2FkbWlucmlnaHRzBQAAAA1jYWxsZXJhZGRyZXNzCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAACJJIGtub3cgWW91IGFyZSBub3QgQW4gQWRtaW4uIE9ubHkgBQAAAAthZG1pbnJpZ2h0cwIAAAAfIGhhcyByaWdodHMgdG8gcmVtb3ZlIHRoZSBwYWlyLgMJAABmAAAAAgUAAAAYY2hlY2twcm9qZWN0ZXhwaXJlaGVpZ2h0BQAAAAZoZWlnaHQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAANlZvdGluZyBBbHJlYWR5IFJ1bm5pbmcuIFlvdSBjYW4gcmVtb3ZlIHRoZSBwYWlyIGFmdGVyIAkAAaQAAAABBQAAAB1wZW5kaW5nYmxvY2tzZm9ycHJvamVjdGV4cGlyZQIAAAAHIEJsb2NrcwMJAAAAAAAAAgUAAAAMVm90aW5nU3RhdHVzBQAAAA9OZXdWb3RpbmdTdGF0dXMJAAACAAAAAQkAASwAAAACBQAAAAxFbnRlckFzc2V0SUQCAAAALCBpcyBub3cgV2hpdGVsaXN0ZWQuIFNvIHlvdSBjYW4ndCByZW1vdmUgaXQuCQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAAEsAAAAAgIAAAASUGFpcl9VbmRlcl9Wb3RpbmdfBQAAAAxFbnRlckFzc2V0SUQJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQkAASwAAAACAgAAABRWb3RpbmdfU3RhcnRfSGVpZ2h0XwUAAAAMRW50ZXJBc3NldElECQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAAEsAAAAAgIAAAASVm90aW5nX0VuZF9IZWlnaHRfBQAAAAxFbnRlckFzc2V0SUQJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQkAASwAAAACAgAAAA5Wb3RpbmdfUGVyaW9kXwUAAAAMRW50ZXJBc3NldElECQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAAEsAAAAAgIAAAAPVm90ZXNfUmVxdWlyZWRfBQAAAAxFbnRlckFzc2V0SUQJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQkAASwAAAACAgAAABNWb3RpbmdfTGlzdGluZ19GZWVfBQAAAAxFbnRlckFzc2V0SUQJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQkAASwAAAACAgAAAA5Wb3RpbmdfU3RhdHVzXwUAAAAMRW50ZXJBc3NldElECQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAAEsAAAAAgIAAAAPVm90ZXNfUmVjZWl2ZWRfBQAAAAxFbnRlckFzc2V0SUQJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAJUHJpY2VfT2ZfBQAAAAxFbnRlckFzc2V0SUQCAAAAAV8JAAJYAAAAAQUAAAALVVNEVEFzc2V0SUQFAAAAA25pbAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAByRtYXRjaDAFAAAAAnR4CQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tleSJPI+0=", "height": 1666386, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 7xR5bA1iUyKumhV4EKY6me5VJ3JGAJF85fSuuGfq1qJX Next: DtrBggEtLXzNGhU4T7fabBGNjdcJn5VhKm5j5dzjPDXv Diff:
OldNewDifferences
44
55
66 @Callable(a)
7-func RegisterPairForVoting (b,c) = {
8- let d = value(a.payments[0])
9- let e = value(a.payments[1])
10- let f = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
11- let g = 90
12- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
13- let i = base58'7RB3BWayeCVPq3kkpkeJZAFv2DYCB5gEwnutEpRofaw4'
14- let j = toBase58String(a.caller.bytes)
15- let k = !(isDefined(e.assetId))
16- let l = 1440
17- let m = (l * c)
18- let n = (m - 43199)
19- let o = ((100000 + ((11574 * n) / 10000)) * 100000000)
20- let p = (height + m)
21- let q = getString(this, ("Pair_Under_Voting_" + b))
22- let r = "Fail"
23- let s = fromBase58String(b)
7+func RegisterPairForVoting (b,c,d) = {
8+ let e = value(a.payments[0])
9+ let f = value(a.payments[1])
10+ let g = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
11+ let h = 90
12+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
13+ let j = base58'7RB3BWayeCVPq3kkpkeJZAFv2DYCB5gEwnutEpRofaw4'
14+ let k = toBase58String(a.caller.bytes)
15+ let l = !(isDefined(f.assetId))
16+ let m = 1440
17+ let n = (m * c)
18+ let o = (n - 43199)
19+ let p = ((100000 + ((11574 * o) / 10000)) * 100000000)
20+ let q = (height + n)
21+ let r = getString(this, ("Pair_Under_Voting_" + b))
22+ let s = "Fail"
23+ let t = fromBase58String(b)
2424 if ((43 > size(b)))
2525 then throw("Wrong AssetID1 is Entered for Voting. Please Enter a Valid AssetID1. Probably you entered an ASSETID1 less than 43 Chars.")
2626 else if ((29 >= c))
2727 then throw("Enter no. of days in between 30 to 90.")
28- else if ((c > g))
28+ else if ((c > h))
2929 then throw("You Entered days greater than 90 please Enter no. of days in between 1 to 90.")
30- else if ((q == b))
30+ else if ((r == b))
3131 then throw("Pair Already Exist in Voting List.")
32- else if ((size(a.payments) != 3))
32+ else if ((size(a.payments) != 2))
3333 then throw("Two attached assets expected as payment. Kindly Attach payment1 = Ballet Token and payment2 = Token you want to add to List for Voting.")
34- else if ((d.assetId != h))
34+ else if ((e.assetId != i))
3535 then throw("Incorrect asset attached for Voting in payment[1], please attach 1000 Ballet Token only.")
36- else if ((40000000 > d.amount))
37- then throw((((("You attached only " + toString(fraction(d.amount, 1, 100000000))) + ".") + toString(fraction(d.amount, 1, 10000000))) + " Ballet for Voting in payment[1], please attach 1000 Ballet Token only."))
38- else if ((e.assetId != s))
36+ else if ((40000000 > e.amount))
37+ then throw((((("You attached only " + toString(fraction(e.amount, 1, 100000000))) + ".") + toString(fraction(e.amount, 1, 10000000))) + " Ballet for Voting in payment[1], please attach 1000 Ballet Token only."))
38+ else if ((f.assetId != t))
3939 then throw("Asset String Attached in ASSETID1 is not matching with Payment2 AssetID.")
40- else if ((k == true))
40+ else if ((l == true))
4141 then throw("You Attached TN Asset ID for Voting, please attach the Token You want to list in payment[2].")
42- else if ((e.assetId == h))
42+ else if ((f.assetId == i))
4343 then throw("You Attached Ballet asset for Voting in both payments, please attach the Token You want to list in payment[2].")
44- else [StringEntry(("Pair_Under_Voting_" + b), b), StringEntry(("Voting_Status_" + b), r), IntegerEntry(("Voting_Start_Height_" + b), height), IntegerEntry(("Voting_End_Height_" + b), p), IntegerEntry(("Voting_Period_" + b), m), IntegerEntry(("Voting_Listing_Fee_" + b), d.amount), IntegerEntry(("Votes_Required_" + b), o), IntegerEntry(("Votes_Received_" + b), 0), ScriptTransfer(addressFromPublicKey(f), d.amount, h)]
44+ else [StringEntry(("Pair_Under_Voting_" + b), b), StringEntry(("Voting_Status_" + b), s), IntegerEntry(("Voting_Start_Height_" + b), height), IntegerEntry(("Voting_End_Height_" + b), q), IntegerEntry(("Voting_Period_" + b), n), IntegerEntry(("Voting_Listing_Fee_" + b), e.amount), IntegerEntry(("Votes_Required_" + b), p), IntegerEntry(("Votes_Received_" + b), 0), IntegerEntry(((("Price_Of_" + b) + "_") + toBase58String(j)), d), ScriptTransfer(addressFromPublicKey(g), e.amount, i)]
4545 }
4646
4747
4848
4949 @Callable(a)
5050 func IssueBallet () = {
51- let t = value(a.payments[0])
52- let j = toBase58String(a.caller.bytes)
53- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
54- let u = getIntegerValue(this, "BALLET/TN")
55- let v = fraction(100000, t.amount, u)
56- let w = getIntegerValue(this, "Total_Issued_Ballet:")
57- let x = (w + v)
58- let y = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
59- let z = (y + t.amount)
60- let A = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
61- let B = fraction(100000, z, x)
62- let f = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
63- if (isDefined(t.assetId))
51+ let u = value(a.payments[0])
52+ let k = toBase58String(a.caller.bytes)
53+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
54+ let v = getIntegerValue(this, "BALLET/TN")
55+ let w = fraction(100000, u.amount, v)
56+ let x = getIntegerValue(this, "Total_Issued_Ballet:")
57+ let y = (x + w)
58+ let z = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
59+ let A = (z + u.amount)
60+ let B = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
61+ let C = fraction(100000, A, y)
62+ let g = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
63+ if (isDefined(u.assetId))
6464 then throw("Incorrect asset attached, please attach TN.")
65- else if ((5000000 > t.amount))
65+ else if ((5000000 > u.amount))
6666 then throw("Please Attach minimum 0.05 TN To Issue Ballet Asset.")
67- else [IntegerEntry("Total_Issued_Ballet:", x), IntegerEntry("Total_Ballet_Reserve_In_TN:", z), IntegerEntry("Ballet_Backup_Value_In_TN:", B), StringEntry("message", "<h1>Ballet Issued Successfully!</h1><br>"), Reissue(h, v, true), ScriptTransfer(a.caller, ((v * 99) / 100), h), ScriptTransfer(addressFromPublicKey(f), ((v * 1) / 100), h)]
67+ else [IntegerEntry("Total_Issued_Ballet:", y), IntegerEntry("Total_Ballet_Reserve_In_TN:", A), IntegerEntry("Ballet_Backup_Value_In_TN:", C), StringEntry("message", "<h1>Ballet Issued Successfully!</h1><br>"), Reissue(i, w, true), ScriptTransfer(a.caller, ((w * 99) / 100), i), ScriptTransfer(addressFromPublicKey(g), ((w * 1) / 100), i)]
6868 }
6969
7070
7171
7272 @Callable(a)
7373 func Liquidate () = {
74- let j = toBase58String(a.callerPublicKey)
75- let t = value(a.payments[0])
76- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
77- let w = getIntegerValue(this, "Total_Issued_Ballet:")
78- let x = (w - t.amount)
79- let y = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
80- let A = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
81- let C = fraction(A, t.amount, 100000)
82- let z = (y - C)
83- let B = fraction(100000, z, x)
84- if ((t.assetId != h))
74+ let k = toBase58String(a.callerPublicKey)
75+ let u = value(a.payments[0])
76+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
77+ let x = getIntegerValue(this, "Total_Issued_Ballet:")
78+ let y = (x - u.amount)
79+ let z = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
80+ let B = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
81+ let D = fraction(B, u.amount, 100000)
82+ let A = (z - D)
83+ let C = fraction(100000, A, y)
84+ if ((u.assetId != i))
8585 then throw("Kindly Deposit Only 44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y (Ballet).")
86- else if ((100000 > t.amount))
86+ else if ((100000 > u.amount))
8787 then throw("Attach Amount must be greater than 0.001 Ballet.")
88- else [Burn(h, t.amount), IntegerEntry("Total_Issued_Ballet:", x), IntegerEntry("Total_Ballet_Reserve_In_TN:", z), IntegerEntry("Ballet_Backup_Value_In_TN:", B), ScriptTransfer(a.caller, C, unit)]
88+ else [Burn(i, u.amount), IntegerEntry("Total_Issued_Ballet:", y), IntegerEntry("Total_Ballet_Reserve_In_TN:", A), IntegerEntry("Ballet_Backup_Value_In_TN:", C), ScriptTransfer(a.caller, D, unit)]
8989 }
9090
9191
9292
9393 @Callable(a)
94-func DoVoting (D) = {
95- let t = if ((size(a.payments) == 1))
94+func DoVoting (E) = {
95+ let u = if ((size(a.payments) == 1))
9696 then a.payments[0]
9797 else throw("Ballet Token is required as Attached payment")
98- let E = toBase58String(a.caller.bytes)
99- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
100- let F = "Pass"
101- let G = getIntegerValue(this, ("Voting_End_Height_" + D))
102- let H = getString(this, ("Pair_Under_Voting_" + D))
103- let I = getIntegerValue(this, ("Votes_Required_" + D))
104- let J = getIntegerValue(this, ("Votes_Received_" + D))
105- let K = getStringValue(this, ("Voting_Status_" + D))
106- let L = {
107- let M = getInteger(this, ("Votes_Received_" + D))
108- if ($isInstanceOf(M, "Int"))
98+ let F = toBase58String(a.caller.bytes)
99+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
100+ let G = "Pass"
101+ let H = getIntegerValue(this, ("Voting_End_Height_" + E))
102+ let I = getString(this, ("Pair_Under_Voting_" + E))
103+ let J = getIntegerValue(this, ("Votes_Required_" + E))
104+ let K = getIntegerValue(this, ("Votes_Received_" + E))
105+ let L = getStringValue(this, ("Voting_Status_" + E))
106+ let M = {
107+ let N = getInteger(this, ("Votes_Received_" + E))
108+ if ($isInstanceOf(N, "Int"))
109109 then {
110- let N = M
111- N
110+ let O = N
111+ O
112112 }
113113 else 0
114114 }
115- let O = (L + t.amount)
116- let P = {
117- let M = getInteger(this, ((("Votes_Received_" + E) + "_") + D))
118- if ($isInstanceOf(M, "Int"))
115+ let P = (M + u.amount)
116+ let Q = {
117+ let N = getInteger(this, ((("Votes_Received_" + F) + "_") + E))
118+ if ($isInstanceOf(N, "Int"))
119119 then {
120- let Q = M
121- Q
120+ let R = N
121+ R
122122 }
123123 else 0
124124 }
125- let R = (P + t.amount)
126- let S = (J >= I)
127- let T = valueOrErrorMessage(assetInfo(fromBase58String(D)), (("Asset " + D) + " doesn't exist"))
128- let U = T.decimals
129- if ((H != D))
125+ let S = (Q + u.amount)
126+ let T = (K >= J)
127+ let U = valueOrErrorMessage(assetInfo(fromBase58String(E)), (("Asset " + E) + " doesn't exist"))
128+ let V = U.decimals
129+ if ((I != E))
130130 then throw("Pair is not available in Voting List.")
131- else if ((height > G))
132- then throw((("Voting timeline for " + D) + " is expired."))
133- else if ((t.assetId != h))
131+ else if ((height > H))
132+ then throw((("Voting timeline for " + E) + " is expired."))
133+ else if ((u.assetId != i))
134134 then throw("Kindly Attach Only 44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y (Ballet).")
135- else if ((K == F))
136- then throw((("Voting for " + D) + " pair is completed and it’s available in whitelist."))
137- else if (S)
138- then [StringEntry(("Voting_Status_" + D), F), IntegerEntry(("Decimals_of_" + D), U)]
139- else [IntegerEntry(("Votes_Received_" + D), O), IntegerEntry(((("Votes_Received_" + E) + "_") + D), R)]
135+ else if ((L == G))
136+ then throw((("Voting for " + E) + " pair is completed and it’s available in whitelist."))
137+ else if (T)
138+ then [StringEntry(("Voting_Status_" + E), G), IntegerEntry(("Decimals_of_" + E), V)]
139+ else [IntegerEntry(("Votes_Received_" + E), P), IntegerEntry(((("Votes_Received_" + F) + "_") + E), S)]
140140 }
141141
142142
143143
144144 @Callable(a)
145-func WithdrawVotedTokens (D) = {
146- let t = a.payments[0]
147- let E = toBase58String(a.caller.bytes)
148- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
149- let G = getIntegerValue(this, ("Voting_End_Height_" + D))
150- let H = getString(this, ("Pair_Under_Voting_" + D))
151- let V = getIntegerValue(this, ((("Votes_Received_" + E) + "_") + D))
152- let W = (G - height)
153- if ((H != D))
145+func WithdrawVotedTokens (E) = {
146+ let u = a.payments[0]
147+ let F = toBase58String(a.caller.bytes)
148+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
149+ let H = getIntegerValue(this, ("Voting_End_Height_" + E))
150+ let I = getString(this, ("Pair_Under_Voting_" + E))
151+ let W = getIntegerValue(this, ((("Votes_Received_" + F) + "_") + E))
152+ let X = (H - height)
153+ if ((I != E))
154154 then throw("Pair is not available in Voting List.")
155- else if ((G > height))
156- then throw((("Voting Already Running. You can withdraw your Ballet Token only after the expire of " + toString(W)) + " Blocks"))
157- else if ((0 >= V))
155+ else if ((H > height))
156+ then throw((("Voting Already Running. You can withdraw your Ballet Token only after the expire of " + toString(X)) + " Blocks"))
157+ else if ((0 >= W))
158158 then throw("You don't have any dues of ballet balance in this Voting Pair.")
159- else if (isDefined(t.assetId))
159+ else if (isDefined(u.assetId))
160160 then throw("Don't attach any asset. If you still want to support we accept only TN as payment.")
161- else if ((t.amount != 10000000))
161+ else if ((u.amount != 10000000))
162162 then throw("Please attach 0.1 TN as a fee to release your token.")
163- else [IntegerEntry(((("Votes_Received_" + E) + "_") + D), 0), ScriptTransfer(a.caller, V, h)]
163+ else [IntegerEntry(((("Votes_Received_" + F) + "_") + E), 0), ScriptTransfer(a.caller, W, i)]
164164 }
165165
166166
167167
168168 @Callable(a)
169-func RemovePairEntry (D) = {
170- let X = getStringValue(this, "Polarity_Admin_Rights")
171- let G = getIntegerValue(this, ("Voting_End_Height_" + D))
172- let H = getString(this, ("Pair_Under_Voting_" + D))
173- let K = getStringValue(this, ("Voting_Status_" + D))
174- let F = "Pass"
175- let E = toBase58String(a.caller.bytes)
176- let Y = height
177- let W = (G - height)
178- if ((H != D))
169+func RemovePairEntry (E) = {
170+ let Y = getStringValue(this, "Polarity_Admin_Rights")
171+ let j = base58'7RB3BWayeCVPq3kkpkeJZAFv2DYCB5gEwnutEpRofaw4'
172+ let H = getIntegerValue(this, ("Voting_End_Height_" + E))
173+ let I = getString(this, ("Pair_Under_Voting_" + E))
174+ let L = getStringValue(this, ("Voting_Status_" + E))
175+ let G = "Pass"
176+ let F = toBase58String(a.caller.bytes)
177+ let Z = height
178+ let X = (H - height)
179+ if ((I != E))
179180 then throw("Pair is not available in Voting List.")
180- else if ((X != E))
181- then throw((("I know You are not An Admin. Only " + X) + " has rights to remove the pair."))
182- else if ((G > height))
183- then throw((("Voting Already Running. You can remove the pair after " + toString(W)) + " Blocks"))
184- else if ((K == F))
185- then throw((D + " is now Whitelisted. So you can't remove it."))
186- else [DeleteEntry(("Pair_Under_Voting_" + D)), DeleteEntry(("Voting_Start_Height_" + D)), DeleteEntry(("Voting_End_Height_" + D)), DeleteEntry(("Voting_Period_" + D)), DeleteEntry(("Votes_Required_" + D)), DeleteEntry(("Voting_Listing_Fee_" + D)), DeleteEntry(("Voting_Status_" + D)), DeleteEntry(("Votes_Received_" + D))]
181+ else if ((Y != F))
182+ then throw((("I know You are not An Admin. Only " + Y) + " has rights to remove the pair."))
183+ else if ((H > height))
184+ then throw((("Voting Already Running. You can remove the pair after " + toString(X)) + " Blocks"))
185+ else if ((L == G))
186+ then throw((E + " is now Whitelisted. So you can't remove it."))
187+ else [DeleteEntry(("Pair_Under_Voting_" + E)), DeleteEntry(("Voting_Start_Height_" + E)), DeleteEntry(("Voting_End_Height_" + E)), DeleteEntry(("Voting_Period_" + E)), DeleteEntry(("Votes_Required_" + E)), DeleteEntry(("Voting_Listing_Fee_" + E)), DeleteEntry(("Voting_Status_" + E)), DeleteEntry(("Votes_Received_" + E)), DeleteEntry(((("Price_Of_" + E) + "_") + toBase58String(j)))]
187188 }
188189
189190
190-@Verifier(Z)
191-func aa () = {
192- let M = Z
193- sigVerify(Z.bodyBytes, Z.proofs[0], Z.senderPublicKey)
191+@Verifier(aa)
192+func ab () = {
193+ let N = aa
194+ sigVerify(aa.bodyBytes, aa.proofs[0], aa.senderPublicKey)
194195 }
195196
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(a)
7-func RegisterPairForVoting (b,c) = {
8- let d = value(a.payments[0])
9- let e = value(a.payments[1])
10- let f = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
11- let g = 90
12- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
13- let i = base58'7RB3BWayeCVPq3kkpkeJZAFv2DYCB5gEwnutEpRofaw4'
14- let j = toBase58String(a.caller.bytes)
15- let k = !(isDefined(e.assetId))
16- let l = 1440
17- let m = (l * c)
18- let n = (m - 43199)
19- let o = ((100000 + ((11574 * n) / 10000)) * 100000000)
20- let p = (height + m)
21- let q = getString(this, ("Pair_Under_Voting_" + b))
22- let r = "Fail"
23- let s = fromBase58String(b)
7+func RegisterPairForVoting (b,c,d) = {
8+ let e = value(a.payments[0])
9+ let f = value(a.payments[1])
10+ let g = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
11+ let h = 90
12+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
13+ let j = base58'7RB3BWayeCVPq3kkpkeJZAFv2DYCB5gEwnutEpRofaw4'
14+ let k = toBase58String(a.caller.bytes)
15+ let l = !(isDefined(f.assetId))
16+ let m = 1440
17+ let n = (m * c)
18+ let o = (n - 43199)
19+ let p = ((100000 + ((11574 * o) / 10000)) * 100000000)
20+ let q = (height + n)
21+ let r = getString(this, ("Pair_Under_Voting_" + b))
22+ let s = "Fail"
23+ let t = fromBase58String(b)
2424 if ((43 > size(b)))
2525 then throw("Wrong AssetID1 is Entered for Voting. Please Enter a Valid AssetID1. Probably you entered an ASSETID1 less than 43 Chars.")
2626 else if ((29 >= c))
2727 then throw("Enter no. of days in between 30 to 90.")
28- else if ((c > g))
28+ else if ((c > h))
2929 then throw("You Entered days greater than 90 please Enter no. of days in between 1 to 90.")
30- else if ((q == b))
30+ else if ((r == b))
3131 then throw("Pair Already Exist in Voting List.")
32- else if ((size(a.payments) != 3))
32+ else if ((size(a.payments) != 2))
3333 then throw("Two attached assets expected as payment. Kindly Attach payment1 = Ballet Token and payment2 = Token you want to add to List for Voting.")
34- else if ((d.assetId != h))
34+ else if ((e.assetId != i))
3535 then throw("Incorrect asset attached for Voting in payment[1], please attach 1000 Ballet Token only.")
36- else if ((40000000 > d.amount))
37- then throw((((("You attached only " + toString(fraction(d.amount, 1, 100000000))) + ".") + toString(fraction(d.amount, 1, 10000000))) + " Ballet for Voting in payment[1], please attach 1000 Ballet Token only."))
38- else if ((e.assetId != s))
36+ else if ((40000000 > e.amount))
37+ then throw((((("You attached only " + toString(fraction(e.amount, 1, 100000000))) + ".") + toString(fraction(e.amount, 1, 10000000))) + " Ballet for Voting in payment[1], please attach 1000 Ballet Token only."))
38+ else if ((f.assetId != t))
3939 then throw("Asset String Attached in ASSETID1 is not matching with Payment2 AssetID.")
40- else if ((k == true))
40+ else if ((l == true))
4141 then throw("You Attached TN Asset ID for Voting, please attach the Token You want to list in payment[2].")
42- else if ((e.assetId == h))
42+ else if ((f.assetId == i))
4343 then throw("You Attached Ballet asset for Voting in both payments, please attach the Token You want to list in payment[2].")
44- else [StringEntry(("Pair_Under_Voting_" + b), b), StringEntry(("Voting_Status_" + b), r), IntegerEntry(("Voting_Start_Height_" + b), height), IntegerEntry(("Voting_End_Height_" + b), p), IntegerEntry(("Voting_Period_" + b), m), IntegerEntry(("Voting_Listing_Fee_" + b), d.amount), IntegerEntry(("Votes_Required_" + b), o), IntegerEntry(("Votes_Received_" + b), 0), ScriptTransfer(addressFromPublicKey(f), d.amount, h)]
44+ else [StringEntry(("Pair_Under_Voting_" + b), b), StringEntry(("Voting_Status_" + b), s), IntegerEntry(("Voting_Start_Height_" + b), height), IntegerEntry(("Voting_End_Height_" + b), q), IntegerEntry(("Voting_Period_" + b), n), IntegerEntry(("Voting_Listing_Fee_" + b), e.amount), IntegerEntry(("Votes_Required_" + b), p), IntegerEntry(("Votes_Received_" + b), 0), IntegerEntry(((("Price_Of_" + b) + "_") + toBase58String(j)), d), ScriptTransfer(addressFromPublicKey(g), e.amount, i)]
4545 }
4646
4747
4848
4949 @Callable(a)
5050 func IssueBallet () = {
51- let t = value(a.payments[0])
52- let j = toBase58String(a.caller.bytes)
53- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
54- let u = getIntegerValue(this, "BALLET/TN")
55- let v = fraction(100000, t.amount, u)
56- let w = getIntegerValue(this, "Total_Issued_Ballet:")
57- let x = (w + v)
58- let y = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
59- let z = (y + t.amount)
60- let A = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
61- let B = fraction(100000, z, x)
62- let f = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
63- if (isDefined(t.assetId))
51+ let u = value(a.payments[0])
52+ let k = toBase58String(a.caller.bytes)
53+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
54+ let v = getIntegerValue(this, "BALLET/TN")
55+ let w = fraction(100000, u.amount, v)
56+ let x = getIntegerValue(this, "Total_Issued_Ballet:")
57+ let y = (x + w)
58+ let z = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
59+ let A = (z + u.amount)
60+ let B = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
61+ let C = fraction(100000, A, y)
62+ let g = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
63+ if (isDefined(u.assetId))
6464 then throw("Incorrect asset attached, please attach TN.")
65- else if ((5000000 > t.amount))
65+ else if ((5000000 > u.amount))
6666 then throw("Please Attach minimum 0.05 TN To Issue Ballet Asset.")
67- else [IntegerEntry("Total_Issued_Ballet:", x), IntegerEntry("Total_Ballet_Reserve_In_TN:", z), IntegerEntry("Ballet_Backup_Value_In_TN:", B), StringEntry("message", "<h1>Ballet Issued Successfully!</h1><br>"), Reissue(h, v, true), ScriptTransfer(a.caller, ((v * 99) / 100), h), ScriptTransfer(addressFromPublicKey(f), ((v * 1) / 100), h)]
67+ else [IntegerEntry("Total_Issued_Ballet:", y), IntegerEntry("Total_Ballet_Reserve_In_TN:", A), IntegerEntry("Ballet_Backup_Value_In_TN:", C), StringEntry("message", "<h1>Ballet Issued Successfully!</h1><br>"), Reissue(i, w, true), ScriptTransfer(a.caller, ((w * 99) / 100), i), ScriptTransfer(addressFromPublicKey(g), ((w * 1) / 100), i)]
6868 }
6969
7070
7171
7272 @Callable(a)
7373 func Liquidate () = {
74- let j = toBase58String(a.callerPublicKey)
75- let t = value(a.payments[0])
76- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
77- let w = getIntegerValue(this, "Total_Issued_Ballet:")
78- let x = (w - t.amount)
79- let y = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
80- let A = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
81- let C = fraction(A, t.amount, 100000)
82- let z = (y - C)
83- let B = fraction(100000, z, x)
84- if ((t.assetId != h))
74+ let k = toBase58String(a.callerPublicKey)
75+ let u = value(a.payments[0])
76+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
77+ let x = getIntegerValue(this, "Total_Issued_Ballet:")
78+ let y = (x - u.amount)
79+ let z = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
80+ let B = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
81+ let D = fraction(B, u.amount, 100000)
82+ let A = (z - D)
83+ let C = fraction(100000, A, y)
84+ if ((u.assetId != i))
8585 then throw("Kindly Deposit Only 44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y (Ballet).")
86- else if ((100000 > t.amount))
86+ else if ((100000 > u.amount))
8787 then throw("Attach Amount must be greater than 0.001 Ballet.")
88- else [Burn(h, t.amount), IntegerEntry("Total_Issued_Ballet:", x), IntegerEntry("Total_Ballet_Reserve_In_TN:", z), IntegerEntry("Ballet_Backup_Value_In_TN:", B), ScriptTransfer(a.caller, C, unit)]
88+ else [Burn(i, u.amount), IntegerEntry("Total_Issued_Ballet:", y), IntegerEntry("Total_Ballet_Reserve_In_TN:", A), IntegerEntry("Ballet_Backup_Value_In_TN:", C), ScriptTransfer(a.caller, D, unit)]
8989 }
9090
9191
9292
9393 @Callable(a)
94-func DoVoting (D) = {
95- let t = if ((size(a.payments) == 1))
94+func DoVoting (E) = {
95+ let u = if ((size(a.payments) == 1))
9696 then a.payments[0]
9797 else throw("Ballet Token is required as Attached payment")
98- let E = toBase58String(a.caller.bytes)
99- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
100- let F = "Pass"
101- let G = getIntegerValue(this, ("Voting_End_Height_" + D))
102- let H = getString(this, ("Pair_Under_Voting_" + D))
103- let I = getIntegerValue(this, ("Votes_Required_" + D))
104- let J = getIntegerValue(this, ("Votes_Received_" + D))
105- let K = getStringValue(this, ("Voting_Status_" + D))
106- let L = {
107- let M = getInteger(this, ("Votes_Received_" + D))
108- if ($isInstanceOf(M, "Int"))
98+ let F = toBase58String(a.caller.bytes)
99+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
100+ let G = "Pass"
101+ let H = getIntegerValue(this, ("Voting_End_Height_" + E))
102+ let I = getString(this, ("Pair_Under_Voting_" + E))
103+ let J = getIntegerValue(this, ("Votes_Required_" + E))
104+ let K = getIntegerValue(this, ("Votes_Received_" + E))
105+ let L = getStringValue(this, ("Voting_Status_" + E))
106+ let M = {
107+ let N = getInteger(this, ("Votes_Received_" + E))
108+ if ($isInstanceOf(N, "Int"))
109109 then {
110- let N = M
111- N
110+ let O = N
111+ O
112112 }
113113 else 0
114114 }
115- let O = (L + t.amount)
116- let P = {
117- let M = getInteger(this, ((("Votes_Received_" + E) + "_") + D))
118- if ($isInstanceOf(M, "Int"))
115+ let P = (M + u.amount)
116+ let Q = {
117+ let N = getInteger(this, ((("Votes_Received_" + F) + "_") + E))
118+ if ($isInstanceOf(N, "Int"))
119119 then {
120- let Q = M
121- Q
120+ let R = N
121+ R
122122 }
123123 else 0
124124 }
125- let R = (P + t.amount)
126- let S = (J >= I)
127- let T = valueOrErrorMessage(assetInfo(fromBase58String(D)), (("Asset " + D) + " doesn't exist"))
128- let U = T.decimals
129- if ((H != D))
125+ let S = (Q + u.amount)
126+ let T = (K >= J)
127+ let U = valueOrErrorMessage(assetInfo(fromBase58String(E)), (("Asset " + E) + " doesn't exist"))
128+ let V = U.decimals
129+ if ((I != E))
130130 then throw("Pair is not available in Voting List.")
131- else if ((height > G))
132- then throw((("Voting timeline for " + D) + " is expired."))
133- else if ((t.assetId != h))
131+ else if ((height > H))
132+ then throw((("Voting timeline for " + E) + " is expired."))
133+ else if ((u.assetId != i))
134134 then throw("Kindly Attach Only 44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y (Ballet).")
135- else if ((K == F))
136- then throw((("Voting for " + D) + " pair is completed and it’s available in whitelist."))
137- else if (S)
138- then [StringEntry(("Voting_Status_" + D), F), IntegerEntry(("Decimals_of_" + D), U)]
139- else [IntegerEntry(("Votes_Received_" + D), O), IntegerEntry(((("Votes_Received_" + E) + "_") + D), R)]
135+ else if ((L == G))
136+ then throw((("Voting for " + E) + " pair is completed and it’s available in whitelist."))
137+ else if (T)
138+ then [StringEntry(("Voting_Status_" + E), G), IntegerEntry(("Decimals_of_" + E), V)]
139+ else [IntegerEntry(("Votes_Received_" + E), P), IntegerEntry(((("Votes_Received_" + F) + "_") + E), S)]
140140 }
141141
142142
143143
144144 @Callable(a)
145-func WithdrawVotedTokens (D) = {
146- let t = a.payments[0]
147- let E = toBase58String(a.caller.bytes)
148- let h = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
149- let G = getIntegerValue(this, ("Voting_End_Height_" + D))
150- let H = getString(this, ("Pair_Under_Voting_" + D))
151- let V = getIntegerValue(this, ((("Votes_Received_" + E) + "_") + D))
152- let W = (G - height)
153- if ((H != D))
145+func WithdrawVotedTokens (E) = {
146+ let u = a.payments[0]
147+ let F = toBase58String(a.caller.bytes)
148+ let i = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
149+ let H = getIntegerValue(this, ("Voting_End_Height_" + E))
150+ let I = getString(this, ("Pair_Under_Voting_" + E))
151+ let W = getIntegerValue(this, ((("Votes_Received_" + F) + "_") + E))
152+ let X = (H - height)
153+ if ((I != E))
154154 then throw("Pair is not available in Voting List.")
155- else if ((G > height))
156- then throw((("Voting Already Running. You can withdraw your Ballet Token only after the expire of " + toString(W)) + " Blocks"))
157- else if ((0 >= V))
155+ else if ((H > height))
156+ then throw((("Voting Already Running. You can withdraw your Ballet Token only after the expire of " + toString(X)) + " Blocks"))
157+ else if ((0 >= W))
158158 then throw("You don't have any dues of ballet balance in this Voting Pair.")
159- else if (isDefined(t.assetId))
159+ else if (isDefined(u.assetId))
160160 then throw("Don't attach any asset. If you still want to support we accept only TN as payment.")
161- else if ((t.amount != 10000000))
161+ else if ((u.amount != 10000000))
162162 then throw("Please attach 0.1 TN as a fee to release your token.")
163- else [IntegerEntry(((("Votes_Received_" + E) + "_") + D), 0), ScriptTransfer(a.caller, V, h)]
163+ else [IntegerEntry(((("Votes_Received_" + F) + "_") + E), 0), ScriptTransfer(a.caller, W, i)]
164164 }
165165
166166
167167
168168 @Callable(a)
169-func RemovePairEntry (D) = {
170- let X = getStringValue(this, "Polarity_Admin_Rights")
171- let G = getIntegerValue(this, ("Voting_End_Height_" + D))
172- let H = getString(this, ("Pair_Under_Voting_" + D))
173- let K = getStringValue(this, ("Voting_Status_" + D))
174- let F = "Pass"
175- let E = toBase58String(a.caller.bytes)
176- let Y = height
177- let W = (G - height)
178- if ((H != D))
169+func RemovePairEntry (E) = {
170+ let Y = getStringValue(this, "Polarity_Admin_Rights")
171+ let j = base58'7RB3BWayeCVPq3kkpkeJZAFv2DYCB5gEwnutEpRofaw4'
172+ let H = getIntegerValue(this, ("Voting_End_Height_" + E))
173+ let I = getString(this, ("Pair_Under_Voting_" + E))
174+ let L = getStringValue(this, ("Voting_Status_" + E))
175+ let G = "Pass"
176+ let F = toBase58String(a.caller.bytes)
177+ let Z = height
178+ let X = (H - height)
179+ if ((I != E))
179180 then throw("Pair is not available in Voting List.")
180- else if ((X != E))
181- then throw((("I know You are not An Admin. Only " + X) + " has rights to remove the pair."))
182- else if ((G > height))
183- then throw((("Voting Already Running. You can remove the pair after " + toString(W)) + " Blocks"))
184- else if ((K == F))
185- then throw((D + " is now Whitelisted. So you can't remove it."))
186- else [DeleteEntry(("Pair_Under_Voting_" + D)), DeleteEntry(("Voting_Start_Height_" + D)), DeleteEntry(("Voting_End_Height_" + D)), DeleteEntry(("Voting_Period_" + D)), DeleteEntry(("Votes_Required_" + D)), DeleteEntry(("Voting_Listing_Fee_" + D)), DeleteEntry(("Voting_Status_" + D)), DeleteEntry(("Votes_Received_" + D))]
181+ else if ((Y != F))
182+ then throw((("I know You are not An Admin. Only " + Y) + " has rights to remove the pair."))
183+ else if ((H > height))
184+ then throw((("Voting Already Running. You can remove the pair after " + toString(X)) + " Blocks"))
185+ else if ((L == G))
186+ then throw((E + " is now Whitelisted. So you can't remove it."))
187+ else [DeleteEntry(("Pair_Under_Voting_" + E)), DeleteEntry(("Voting_Start_Height_" + E)), DeleteEntry(("Voting_End_Height_" + E)), DeleteEntry(("Voting_Period_" + E)), DeleteEntry(("Votes_Required_" + E)), DeleteEntry(("Voting_Listing_Fee_" + E)), DeleteEntry(("Voting_Status_" + E)), DeleteEntry(("Votes_Received_" + E)), DeleteEntry(((("Price_Of_" + E) + "_") + toBase58String(j)))]
187188 }
188189
189190
190-@Verifier(Z)
191-func aa () = {
192- let M = Z
193- sigVerify(Z.bodyBytes, Z.proofs[0], Z.senderPublicKey)
191+@Verifier(aa)
192+func ab () = {
193+ let N = aa
194+ sigVerify(aa.bodyBytes, aa.proofs[0], aa.senderPublicKey)
194195 }
195196

github/deemru/w8io/169f3d6 
132.08 ms