tx · 2tRTzrVZTMPEnhFtvYwjUmJgjD6k6aYsHTyihscUesWP

3Mrnje6z2xa3xuXyU2Lk6ynKy8tsRnnt4Bv:  -0.01400000 Waves

2021.08.18 20:37 [1664091] smart account 3Mrnje6z2xa3xuXyU2Lk6ynKy8tsRnnt4Bv > SELF 0.00000000 Waves

{ "type": 13, "id": "2tRTzrVZTMPEnhFtvYwjUmJgjD6k6aYsHTyihscUesWP", "fee": 1400000, "feeAssetId": null, "timestamp": 1629308282853, "version": 2, "chainId": 84, "sender": "3Mrnje6z2xa3xuXyU2Lk6ynKy8tsRnnt4Bv", "senderPublicKey": "28sGn7FYnmxceAmnGYiDiKuMK1QyXiqX8zQXfKDnrc8t", "proofs": [ "2twgJZR5qwQ7tTasH26gAtbrW6X7xKhZft4JVDcoRnrXuXpn1D9pCrLCAMApLAbF9wyFmq9QMmeSDiiczUJKvYDe" ], "script": "base64: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UHJpY2VQZXJCYWxsZXQEAAAAFFByZXZpb3VzSXNzdWVkQmFsbGV0CQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzAgAAABRUb3RhbF9Jc3N1ZWRfQmFsbGV0OgQAAAARVG90YWxJc3N1ZWRCYWxsZXQJAABkAAAAAgUAAAAUUHJldmlvdXNJc3N1ZWRCYWxsZXQFAAAAD05ld0JhbGxldFRvVXNlcgQAAAAaUHJldmlvdXNCYWxsZXRSZXNlcnZlVmFsdWUJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAAG1RvdGFsX0JhbGxldF9SZXNlcnZlX0luX1ROOgQAAAASQmFsbGV0UmVzZXJ2ZVZhbHVlCQAAZAAAAAIFAAAAGlByZXZpb3VzQmFsbGV0UmVzZXJ2ZVZhbHVlCAUAAAADcG10AAAABmFtb3VudAQAAAAZUHJldmlvdXNCYWxsZXRCYWNrdXBQcmljZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwIAAAAaQmFsbGV0X0JhY2t1cF9WYWx1ZV9Jbl9UTjoEAAAAEUJhbGxldEJhY2t1cFByaWNlCQAAawAAAAMAAAAAAAABhqAFAAAAEkJhbGxldFJlc2VydmVWYWx1ZQUAAAARVG90YWxJc3N1ZWRCYWxsZXQEAAAACkZlZUFkZHJlc3MBAAAAIHE/Oe1BrsJepSkes1ESh96Qyq2U5VDLF1kF2MXI1ngbAwkBAAAACWlzRGVmaW5lZAAAAAEIBQAAAANwbXQAAAAHYXNzZXRJZAkAAAIAAAABAgAAACtJbmNvcnJlY3QgYXNzZXQgYXR0YWNoZWQsIHBsZWFzZSBhdHRhY2ggVE4uAwkAAGYAAAACAAAAAAAATEtACAUAAAADcG10AAAABmFtb3VudAkAAAIAAAABAgAAADRQbGVhc2UgQXR0YWNoIG1pbmltdW0gMC4wNSBUTiBUbyBJc3N1ZSBCYWxsZXQgQXNzZXQuCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABRUb3RhbF9Jc3N1ZWRfQmFsbGV0OgUAAAARVG90YWxJc3N1ZWRCYWxsZXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAG1RvdGFsX0JhbGxldF9SZXNlcnZlX0luX1ROOgUAAAASQmFsbGV0UmVzZXJ2ZVZhbHVlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABpCYWxsZXRfQmFja3VwX1ZhbHVlX0luX1ROOgUAAAARQmFsbGV0QmFja3VwUHJpY2UJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAHbWVzc2FnZQIAAAAoPGgxPkJhbGxldCBJc3N1ZWQgU3VjY2Vzc2Z1bGx5ITwvaDE+PGJyPgkABEwAAAACCQEAAAAHUmVpc3N1ZQAAAAMFAAAADUJhbGxldEFzc2V0SUQFAAAAD05ld0JhbGxldFRvVXNlcgYJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyCQAAaQAAAAIJAABoAAAAAgUAAAAPTmV3QmFsbGV0VG9Vc2VyAAAAAAAAAABjAAAAAAAAAABkBQAAAA1CYWxsZXRBc3NldElECQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEFAAAACkZlZUFkZHJlc3MJAABpAAAAAgkAAGgAAAACBQAAAA9OZXdCYWxsZXRUb1VzZXIAAAAAAAAAAAEAAAAAAAAAAGQFAAAADUJhbGxldEFzc2V0SUQFAAAAA25pbAAAAAFpAQAAAAlMaXF1aWRhdGUAAAAABAAAAApjdXJyZW50S2V5CQACWAAAAAEIBQAAAAFpAAAAD2NhbGxlclB1YmxpY0tleQQAAAADcG10CQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAA1CYWxsZXRBc3NldElEAQAAACAtb1sBuZ3lSm8ahGink+4TF5YYAu/xRHYwe1h195OooAQAAAAUUHJldmlvdXNJc3N1ZWRCYWxsZXQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAAFFRvdGFsX0lzc3VlZF9CYWxsZXQ6BAAAABFUb3RhbElzc3VlZEJhbGxldAkAAGUAAAACBQAAABRQcmV2aW91c0lzc3VlZEJhbGxldAgFAAAAA3BtdAAAAAZhbW91bnQEAAAAGlByZXZpb3VzQmFsbGV0UmVzZXJ2ZVZhbHVlCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzAgAAABtUb3RhbF9CYWxsZXRfUmVzZXJ2ZV9Jbl9UTjoEAAAAGVByZXZpb3VzQmFsbGV0QmFja3VwUHJpY2UJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAAGkJhbGxldF9CYWNrdXBfVmFsdWVfSW5fVE46BAAAABJjYWxjdWxhdGVidXJudmFsdWUJAABrAAAAAwUAAAAZUHJldmlvdXNCYWxsZXRCYWNrdXBQcmljZQgFAAAAA3BtdAAAAAZhbW91bnQAAAAAAAABhqAEAAAAEkJhbGxldFJlc2VydmVWYWx1ZQkAAGUAAAACBQAAABpQcmV2aW91c0JhbGxldFJlc2VydmVWYWx1ZQUAAAASY2FsY3VsYXRlYnVybnZhbHVlBAAAABFCYWxsZXRCYWNrdXBQcmljZQkAAGsAAAADAAAAAAAAAYagBQAAABJCYWxsZXRSZXNlcnZlVmFsdWUFAAAAEVRvdGFsSXNzdWVkQmFsbGV0AwkBAAAAAiE9AAAAAggFAAAAA3BtdAAAAAdhc3NldElkBQAAAA1CYWxsZXRBc3NldElECQAAAgAAAAECAAAASktpbmRseSBEZXBvc2l0IE9ubHkgNDRNcThLcVVoTTk0dDkzTWlCcTNTMjJpaXVHY3pNeHBLbXNlNWRCeTJ3NXkgKEJhbGxldCkuAwkAAGYAAAACAAAAAAAAAYagCAUAAAADcG10AAAABmFtb3VudAkAAAIAAAABAgAAADBBdHRhY2ggQW1vdW50IG11c3QgYmUgZ3JlYXRlciB0aGFuIDAuMDAxIEJhbGxldC4JAARMAAAAAgkBAAAABEJ1cm4AAAACBQAAAA1CYWxsZXRBc3NldElECAUAAAADcG10AAAABmFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAUVG90YWxfSXNzdWVkX0JhbGxldDoFAAAAEVRvdGFsSXNzdWVkQmFsbGV0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABtUb3RhbF9CYWxsZXRfUmVzZXJ2ZV9Jbl9UTjoFAAAAEkJhbGxldFJlc2VydmVWYWx1ZQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAaQmFsbGV0X0JhY2t1cF9WYWx1ZV9Jbl9UTjoFAAAAEUJhbGxldEJhY2t1cFByaWNlCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAASY2FsY3VsYXRlYnVybnZhbHVlBQAAAAR1bml0BQAAAANuaWwAAAABaQEAAAAIRG9Wb3RpbmcAAAABAAAADEVudGVyQXNzZXRJRAQAAAADcG10AwkAAAAAAAACCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAACQAAAgAAAAECAAAALEJhbGxldCBUb2tlbiBpcyByZXF1aXJlZCBhcyBBdHRhY2hlZCBwYXltZW50BAAAAA1jYWxsZXJhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADUJhbGxldEFzc2V0SUQBAAAAIC1vWwG5neVKbxqEaKeT7hMXlhgC7/FEdjB7WHX3k6igBAAAAA9OZXdWb3RpbmdTdGF0dXMCAAAABFBhc3MEAAAAGGNoZWNrcHJvamVjdGV4cGlyZWhlaWdodAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABJWb3RpbmdfRW5kX0hlaWdodF8FAAAADEVudGVyQXNzZXRJRAQAAAAZY2hlY2twYWlyaXNhdmFpbGFibGVvcm5vdAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAAElBhaXJfVW5kZXJfVm90aW5nXwUAAAAMRW50ZXJBc3NldElEBAAAABJjaGVja3ZvdGVzcmVxdWlyZWQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAPVm90ZXNfUmVxdWlyZWRfBQAAAAxFbnRlckFzc2V0SUQEAAAAEmNoZWNrdm90ZXNyZWNlaXZlZAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAA9Wb3Rlc19S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qKAEAAAAGGNoZWNrcHJvamVjdGV4cGlyZWhlaWdodAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABJWb3RpbmdfRW5kX0hlaWdodF8FAAAADEVudGVyQXNzZXRJRAQAAAAZY2hlY2twYWlyaXNhdmFpbGFibGVvcm5vdAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAAElBhaXJfVW5kZXJfVm90aW5nXwUAAAAMRW50ZXJBc3NldElEBAAAABZjaGVja3VzZXJ2b3RpbmdiYWxhbmNlCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAA9Wb3Rlc19SZWNlaXZlZF8FAAAADWNhbGxlcmFkZHJlc3MCAAAAAV8FAAAADEVudGVyQXNzZXRJRAQAAAAdcGVuZGluZ2Jsb2Nrc2ZvcnByb2plY3RleHBpcmUJAABlAAAAAgUAAAAYY2hlY2twcm9qZWN0ZXhwaXJlaGVpZ2h0BQAAAAZoZWlnaHQDCQEAAAACIT0AAAACBQAAABljaGVja3BhaXJpc2F2YWlsYWJsZW9ybm90BQAAAAxFbnRlckFzc2V0SUQJAAACAAAAAQIAAAAlUGFpciBpcyBub3QgYXZhaWxhYmxlIGluIFZvdGluZyBMaXN0LgMJAABmAAAAAgUAAAAYY2hlY2twcm9qZWN0ZXhwaXJlaGVpZ2h0BQAAAAZoZWlnaHQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAVFZvdGluZyBBbHJlYWR5IFJ1bm5pbmcuIFlvdSBjYW4gd2l0aGRyYXcgeW91ciBCYWxsZXQgVG9rZW4gb25seSBhZnRlciB0aGUgZXhwaXJlIG9mIAkAAaQAAAABBQAAAB1wZW5kaW5nYmxvY2tzZm9ycHJvamVjdGV4cGlyZQIAAAAHIEJsb2NrcwMJAABnAAAAAgAAAAAAAAAAAAUAAAAWY2hlY2t1c2Vydm90aW5nYmFsYW5jZQkAAAIAAAABAgAAAD5Zb3UgZG9uJ3QgaGF2ZSBhbnkgZHVlcyBvZiBiYWxsZXQgYmFsYW5jZSBpbiB0aGlzIFZvdGluZyBQYWlyLgMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAABSRG9uJ3QgYXR0YWNoIGFueSBhc3NldC4gSWYgeW91IHN0aWxsIHdhbnQgdG8gc3VwcG9ydCB3ZSBhY2NlcHQgb25seSBUTiBhcyBwYXltZW50LgMJAQAAAAIhPQAAAAIIBQAAAANwbXQAAAAGYW1vdW50AAAAAAAAmJaACQAAAgAAAAECAAAANFBsZWFzZSBhdHRhY2ggMC4xIFROIGFzIGEgZmVlIHRvIHJlbGVhc2UgeW91ciB0b2tlbi4JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAD1ZvdGVzX1JlY2VpdmVkXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwUAAAAMRW50ZXJBc3NldElEAAAAAAAAAAAACQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAWY2hlY2t1c2Vydm90aW5nYmFsYW5jZQUAAAANQmFsbGV0QXNzZXRJRAUAAAADbmlsAAAAAWkBAAAAD1JlbW92ZVBhaXJFbnRyeQAAAAEAAAAMRW50ZXJBc3NldElEBAAAAAthZG1pbnJpZ2h0cwkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwIAAAAVUG9sYXJpdHlfQWRtaW5fUmlnaHRzBAAAABhjaGVja3Byb2plY3RleHBpcmVoZWlnaHQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAASVm90aW5nX0VuZF9IZWlnaHRfBQAAAAxFbnRlckFzc2V0SUQEAAAAGWNoZWNrcGFpcmlzYXZhaWxhYmxlb3Jub3QJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABJQYWlyX1VuZGVyX1ZvdGluZ18FAAAADEVudGVyQXNzZXRJRAQAAAAMVm90aW5nU3RhdHVzCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzCQABLAAAAAICAAAADlZvdGluZ19TdGF0dXNfBQAAAAxFbnRlckFzc2V0SUQEAAAAD05ld1ZvdGluZ1N0YXR1cwIAAAAEUGFzcwQAAAANY2FsbGVyYWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAA1jdXJyZW50aGVpZ2h0BQAAAAZoZWlnaHQEAAAAHXBlbmRpbmdibG9ja3Nmb3Jwcm9qZWN0ZXhwaXJlCQAAZQAAAAIFAAAAGGNoZWNrcHJvamVjdGV4cGlyZWhlaWdodAUAAAAGaGVpZ2h0AwkBAAAAAiE9AAAAAgUAAAAZY2hlY2twYWlyaXNhdmFpbGFibGVvcm5vdAUAAAAMRW50ZXJBc3NldElECQAAAgAAAAECAAAAJVBhaXIgaXMgbm90IGF2YWlsYWJsZSBpbiBWb3RpbmcgTGlzdC4DCQEAAAACIT0AAAACBQAAAAthZG1pbnJpZ2h0cwUAAAANY2FsbGVyYWRkcmVzcwkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAiSSBrbm93IFlvdSBhcmUgbm90IEFuIEFkbWluLiBPbmx5IAUAAAALYWRtaW5yaWdodHMCAAAAHyBoYXMgcmlnaHRzIHRvIHJlbW92ZSB0aGUgcGFpci4DCQAAZgAAAAIFAAAAGGNoZWNrcHJvamVjdGV4cGlyZWhlaWdodAUAAAAGaGVpZ2h0CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAADZWb3RpbmcgQWxyZWFkeSBSdW5uaW5nLiBZb3UgY2FuIHJlbW92ZSB0aGUgcGFpciBhZnRlciAJAAGkAAAAAQUAAAAdcGVuZGluZ2Jsb2Nrc2ZvcnByb2plY3RleHBpcmUCAAAAByBCbG9ja3MDCQAAAAAAAAIFAAAADFZvdGluZ1N0YXR1cwUAAAAPTmV3Vm90aW5nU3RhdHVzCQAAAgAAAAEJAAEsAAAAAgUAAAAMRW50ZXJBc3NldElEAgAAACwgaXMgbm93IFdoaXRlbGlzdGVkLiBTbyB5b3UgY2FuJ3QgcmVtb3ZlIGl0LgkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABCQABLAAAAAICAAAAElBhaXJfVW5kZXJfVm90aW5nXwUAAAAMRW50ZXJBc3NldElECQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAAEsAAAAAgIAAAAUVm90aW5nX1N0YXJ0X0hlaWdodF8FAAAADEVudGVyQXNzZXRJRAkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABCQABLAAAAAICAAAAElZvdGluZ19FbmRfSGVpZ2h0XwUAAAAMRW50ZXJBc3NldElECQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAAEsAAAAAgIAAAAOVm90aW5nX1BlcmlvZF8FAAAADEVudGVyQXNzZXRJRAkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABCQABLAAAAAICAAAAD1ZvdGVzX1JlcXVpcmVkXwUAAAAMRW50ZXJBc3NldElECQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAAEsAAAAAgIAAAATVm90aW5nX0xpc3RpbmdfRmVlXwUAAAAMRW50ZXJBc3NldElECQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAAEsAAAAAgIAAAAOVm90aW5nX1N0YXR1c18FAAAADEVudGVyQXNzZXRJRAkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABCQABLAAAAAICAAAAD1ZvdGVzX1JlY2VpdmVkXwUAAAAMRW50ZXJBc3NldElEBQAAAANuaWwAAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAABAAAAAckbWF0Y2gwBQAAAAJ0eAkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXnZcO50", "height": 1664091, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Dv5Futao7qD8TSizqBkpm4uwgbjd98VXAE22BzApjREe Next: HXycMdDr2V48ekXcCzjNwiZDR5Awghabho4TTiEJZkZV Diff:
OldNewDifferences
126126 then throw("Kindly Attach Only 44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y (Ballet).")
127127 else if (checkwhitelist)
128128 then [StringEntry(("Voting_Status_" + EnterAssetID), NewVotingStatus)]
129- else if ((VotingStatus == NewVotingStatus))
129+ else if (if (checkwhitelist)
130+ then (VotingStatus == NewVotingStatus)
131+ else false)
130132 then throw((("Voting for " + EnterAssetID) + " pair is completed and it’s available in whitelist."))
131133 else [IntegerEntry(("Votes_Received_" + EnterAssetID), newvotescount), IntegerEntry(((("Votes_Received_" + calleraddress) + "_") + EnterAssetID), individualvotescount)]
132134 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func RegisterPairForVoting (AssetID1,days) = {
88 let pmt1 = value(i.payments[0])
99 let pmt2 = value(i.payments[1])
1010 let FeeAddress = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
1111 let maximumvotingdays = 90
1212 let BalletAssetID = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
1313 let USDTAssetID = base58'7RB3BWayeCVPq3kkpkeJZAFv2DYCB5gEwnutEpRofaw4'
1414 let currentKey = toBase58String(i.caller.bytes)
1515 let TN = !(isDefined(pmt2.assetId))
1616 let oneday = 1440
1717 let NoOfDaysBlocks = (oneday * days)
1818 let gap = (NoOfDaysBlocks - 43199)
1919 let votesrequired = ((100000 + ((11574 * gap) / 10000)) * 100000000)
2020 let votingExpire = (height + NoOfDaysBlocks)
2121 let fetchpair = getString(this, ("Pair_Under_Voting_" + AssetID1))
2222 let votingstatus = "Fail"
2323 let assetinfopmt2 = fromBase58String(AssetID1)
2424 if ((43 > size(AssetID1)))
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 >= days))
2727 then throw("Enter no. of days in between 30 to 90.")
2828 else if ((days > maximumvotingdays))
2929 then throw("You Entered days greater than 90 please Enter no. of days in between 1 to 90.")
3030 else if ((fetchpair == AssetID1))
3131 then throw("Pair Already Exist in Voting List.")
3232 else if ((size(i.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.")
3434 else if ((pmt1.assetId != BalletAssetID))
3535 then throw("Incorrect asset attached for Voting in payment[1], please attach 1000 Ballet Token only.")
3636 else if ((40000000 > pmt1.amount))
3737 then throw((((("You attached only " + toString(fraction(pmt1.amount, 1, 100000000))) + ".") + toString(fraction(pmt1.amount, 1, 10000000))) + " Ballet for Voting in payment[1], please attach 1000 Ballet Token only."))
3838 else if ((pmt2.assetId != assetinfopmt2))
3939 then throw("Asset String Attached in ASSETID1 is not matching with Payment2 AssetID.")
4040 else if ((TN == true))
4141 then throw("You Attached TN Asset ID for Voting, please attach the Token You want to list in payment[2].")
4242 else if ((pmt2.assetId == BalletAssetID))
4343 then throw("You Attached Ballet asset for Voting in both payments, please attach the Token You want to list in payment[2].")
4444 else [StringEntry(("Pair_Under_Voting_" + AssetID1), AssetID1), StringEntry(("Voting_Status_" + AssetID1), votingstatus), IntegerEntry(("Voting_Start_Height_" + AssetID1), height), IntegerEntry(("Voting_End_Height_" + AssetID1), votingExpire), IntegerEntry(("Voting_Period_" + AssetID1), NoOfDaysBlocks), IntegerEntry(("Voting_Listing_Fee_" + AssetID1), pmt1.amount), IntegerEntry(("Votes_Required_" + AssetID1), votesrequired), IntegerEntry(("Votes_Received_" + AssetID1), 0), ScriptTransfer(addressFromPublicKey(FeeAddress), pmt1.amount, BalletAssetID)]
4545 }
4646
4747
4848
4949 @Callable(i)
5050 func IssueBallet () = {
5151 let pmt = value(i.payments[0])
5252 let currentKey = toBase58String(i.caller.bytes)
5353 let BalletAssetID = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
5454 let PricePerBallet = getIntegerValue(this, "BALLET/TN")
5555 let NewBalletToUser = fraction(100000, pmt.amount, PricePerBallet)
5656 let PreviousIssuedBallet = getIntegerValue(this, "Total_Issued_Ballet:")
5757 let TotalIssuedBallet = (PreviousIssuedBallet + NewBalletToUser)
5858 let PreviousBalletReserveValue = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
5959 let BalletReserveValue = (PreviousBalletReserveValue + pmt.amount)
6060 let PreviousBalletBackupPrice = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
6161 let BalletBackupPrice = fraction(100000, BalletReserveValue, TotalIssuedBallet)
6262 let FeeAddress = base58'8d4zGuTjT3h67Z4DatzMXdXXW1GvoQhMTjwCGFxJuene'
6363 if (isDefined(pmt.assetId))
6464 then throw("Incorrect asset attached, please attach TN.")
6565 else if ((5000000 > pmt.amount))
6666 then throw("Please Attach minimum 0.05 TN To Issue Ballet Asset.")
6767 else [IntegerEntry("Total_Issued_Ballet:", TotalIssuedBallet), IntegerEntry("Total_Ballet_Reserve_In_TN:", BalletReserveValue), IntegerEntry("Ballet_Backup_Value_In_TN:", BalletBackupPrice), StringEntry("message", "<h1>Ballet Issued Successfully!</h1><br>"), Reissue(BalletAssetID, NewBalletToUser, true), ScriptTransfer(i.caller, ((NewBalletToUser * 99) / 100), BalletAssetID), ScriptTransfer(addressFromPublicKey(FeeAddress), ((NewBalletToUser * 1) / 100), BalletAssetID)]
6868 }
6969
7070
7171
7272 @Callable(i)
7373 func Liquidate () = {
7474 let currentKey = toBase58String(i.callerPublicKey)
7575 let pmt = value(i.payments[0])
7676 let BalletAssetID = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
7777 let PreviousIssuedBallet = getIntegerValue(this, "Total_Issued_Ballet:")
7878 let TotalIssuedBallet = (PreviousIssuedBallet - pmt.amount)
7979 let PreviousBalletReserveValue = getIntegerValue(this, "Total_Ballet_Reserve_In_TN:")
8080 let PreviousBalletBackupPrice = getIntegerValue(this, "Ballet_Backup_Value_In_TN:")
8181 let calculateburnvalue = fraction(PreviousBalletBackupPrice, pmt.amount, 100000)
8282 let BalletReserveValue = (PreviousBalletReserveValue - calculateburnvalue)
8383 let BalletBackupPrice = fraction(100000, BalletReserveValue, TotalIssuedBallet)
8484 if ((pmt.assetId != BalletAssetID))
8585 then throw("Kindly Deposit Only 44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y (Ballet).")
8686 else if ((100000 > pmt.amount))
8787 then throw("Attach Amount must be greater than 0.001 Ballet.")
8888 else [Burn(BalletAssetID, pmt.amount), IntegerEntry("Total_Issued_Ballet:", TotalIssuedBallet), IntegerEntry("Total_Ballet_Reserve_In_TN:", BalletReserveValue), IntegerEntry("Ballet_Backup_Value_In_TN:", BalletBackupPrice), ScriptTransfer(i.caller, calculateburnvalue, unit)]
8989 }
9090
9191
9292
9393 @Callable(i)
9494 func DoVoting (EnterAssetID) = {
9595 let pmt = if ((size(i.payments) == 1))
9696 then i.payments[0]
9797 else throw("Ballet Token is required as Attached payment")
9898 let calleraddress = toBase58String(i.caller.bytes)
9999 let BalletAssetID = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
100100 let NewVotingStatus = "Pass"
101101 let checkprojectexpireheight = getIntegerValue(this, ("Voting_End_Height_" + EnterAssetID))
102102 let checkpairisavailableornot = getString(this, ("Pair_Under_Voting_" + EnterAssetID))
103103 let checkvotesrequired = getIntegerValue(this, ("Votes_Required_" + EnterAssetID))
104104 let checkvotesreceived = getIntegerValue(this, ("Votes_Received_" + EnterAssetID))
105105 let VotingStatus = getStringValue(this, ("Voting_Status_" + EnterAssetID))
106106 let currentvotes = match getInteger(this, ("Votes_Received_" + EnterAssetID)) {
107107 case a: Int =>
108108 a
109109 case _ =>
110110 0
111111 }
112112 let newvotescount = (currentvotes + pmt.amount)
113113 let individualvotes = match getInteger(this, ((("Votes_Received_" + calleraddress) + "_") + EnterAssetID)) {
114114 case b: Int =>
115115 b
116116 case _ =>
117117 0
118118 }
119119 let individualvotescount = (individualvotes + pmt.amount)
120120 let checkwhitelist = (checkvotesreceived >= checkvotesrequired)
121121 if ((checkpairisavailableornot != EnterAssetID))
122122 then throw("Pair is not available in Voting List.")
123123 else if ((height > checkprojectexpireheight))
124124 then throw((("Voting timeline for " + EnterAssetID) + " is expired."))
125125 else if ((pmt.assetId != BalletAssetID))
126126 then throw("Kindly Attach Only 44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y (Ballet).")
127127 else if (checkwhitelist)
128128 then [StringEntry(("Voting_Status_" + EnterAssetID), NewVotingStatus)]
129- else if ((VotingStatus == NewVotingStatus))
129+ else if (if (checkwhitelist)
130+ then (VotingStatus == NewVotingStatus)
131+ else false)
130132 then throw((("Voting for " + EnterAssetID) + " pair is completed and it’s available in whitelist."))
131133 else [IntegerEntry(("Votes_Received_" + EnterAssetID), newvotescount), IntegerEntry(((("Votes_Received_" + calleraddress) + "_") + EnterAssetID), individualvotescount)]
132134 }
133135
134136
135137
136138 @Callable(i)
137139 func WithdrawVotedTokens (EnterAssetID) = {
138140 let pmt = i.payments[0]
139141 let calleraddress = toBase58String(i.caller.bytes)
140142 let BalletAssetID = base58'44Mq8KqUhM94t93MiBq3S22iiuGczMxpKmse5dBy2w5y'
141143 let checkprojectexpireheight = getIntegerValue(this, ("Voting_End_Height_" + EnterAssetID))
142144 let checkpairisavailableornot = getString(this, ("Pair_Under_Voting_" + EnterAssetID))
143145 let checkuservotingbalance = getIntegerValue(this, ((("Votes_Received_" + calleraddress) + "_") + EnterAssetID))
144146 let pendingblocksforprojectexpire = (checkprojectexpireheight - height)
145147 if ((checkpairisavailableornot != EnterAssetID))
146148 then throw("Pair is not available in Voting List.")
147149 else if ((checkprojectexpireheight > height))
148150 then throw((("Voting Already Running. You can withdraw your Ballet Token only after the expire of " + toString(pendingblocksforprojectexpire)) + " Blocks"))
149151 else if ((0 >= checkuservotingbalance))
150152 then throw("You don't have any dues of ballet balance in this Voting Pair.")
151153 else if (isDefined(pmt.assetId))
152154 then throw("Don't attach any asset. If you still want to support we accept only TN as payment.")
153155 else if ((pmt.amount != 10000000))
154156 then throw("Please attach 0.1 TN as a fee to release your token.")
155157 else [IntegerEntry(((("Votes_Received_" + calleraddress) + "_") + EnterAssetID), 0), ScriptTransfer(i.caller, checkuservotingbalance, BalletAssetID)]
156158 }
157159
158160
159161
160162 @Callable(i)
161163 func RemovePairEntry (EnterAssetID) = {
162164 let adminrights = getStringValue(this, "Polarity_Admin_Rights")
163165 let checkprojectexpireheight = getIntegerValue(this, ("Voting_End_Height_" + EnterAssetID))
164166 let checkpairisavailableornot = getString(this, ("Pair_Under_Voting_" + EnterAssetID))
165167 let VotingStatus = getStringValue(this, ("Voting_Status_" + EnterAssetID))
166168 let NewVotingStatus = "Pass"
167169 let calleraddress = toBase58String(i.caller.bytes)
168170 let currentheight = height
169171 let pendingblocksforprojectexpire = (checkprojectexpireheight - height)
170172 if ((checkpairisavailableornot != EnterAssetID))
171173 then throw("Pair is not available in Voting List.")
172174 else if ((adminrights != calleraddress))
173175 then throw((("I know You are not An Admin. Only " + adminrights) + " has rights to remove the pair."))
174176 else if ((checkprojectexpireheight > height))
175177 then throw((("Voting Already Running. You can remove the pair after " + toString(pendingblocksforprojectexpire)) + " Blocks"))
176178 else if ((VotingStatus == NewVotingStatus))
177179 then throw((EnterAssetID + " is now Whitelisted. So you can't remove it."))
178180 else [DeleteEntry(("Pair_Under_Voting_" + EnterAssetID)), DeleteEntry(("Voting_Start_Height_" + EnterAssetID)), DeleteEntry(("Voting_End_Height_" + EnterAssetID)), DeleteEntry(("Voting_Period_" + EnterAssetID)), DeleteEntry(("Votes_Required_" + EnterAssetID)), DeleteEntry(("Voting_Listing_Fee_" + EnterAssetID)), DeleteEntry(("Voting_Status_" + EnterAssetID)), DeleteEntry(("Votes_Received_" + EnterAssetID))]
179181 }
180182
181183
182184 @Verifier(tx)
183185 func verify () = match tx {
184186 case _ =>
185187 sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
186188 }
187189

github/deemru/w8io/026f985 
37.22 ms