tx · CessELcHm8w6C5xqvAj4yCcLuNHnfhePEBkfJVWfzKWL

3MtA8ddCQT44GtMfUj9XgzPeZvzY52kofKK:  -0.01400000 Waves

2021.08.13 17:18 [1656684] smart account 3MtA8ddCQT44GtMfUj9XgzPeZvzY52kofKK > SELF 0.00000000 Waves

{ "type": 13, "id": "CessELcHm8w6C5xqvAj4yCcLuNHnfhePEBkfJVWfzKWL", "fee": 1400000, "feeAssetId": null, "timestamp": 1628864318000, "version": 2, "chainId": 84, "sender": "3MtA8ddCQT44GtMfUj9XgzPeZvzY52kofKK", "senderPublicKey": "FHpHpSeEJhz3pVGgYuLDVj7fesP8NNRAMtG9Kh8EQevE", "proofs": [ "56QPwvMiFPzfE9Ba6SB6YMvAgUcXVKmUrWE8rDmVUFVYHNcRjawmKRwgocyYoJRpSNmbo8hv4gmjtdyiS1UMSCDv" ], "script": "base64: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AAAACHB1cmNoYXNlAgAAAApfdGltZXN0YW1wAQAAABVnZXRLZXlQdXJjaGFzZUFzc2V0SWQAAAABAAAACHB1cmNoYXNlCQABLAAAAAIFAAAACHB1cmNoYXNlAgAAAAhfYXNzZXRJZAEAAAAWZ2V0S2V5UHVyY2hhc2VGdW5kUGFpZAAAAAEAAAAIcHVyY2hhc2UJAAEsAAAAAgUAAAAIcHVyY2hhc2UCAAAACV9mdW5kcGFpZAEAAAAUZ2V0S2V5Q291cG9uUHVyY2hhc2UAAAABAAAAB2Fzc2V0SWQJAAEsAAAAAgkAASwAAAACAgAAAAdjb3Vwb25fBQAAAAdhc3NldElkAgAAAAlfcHVyY2hhc2UBAAAAEGdldEtleUNvdXBvbkl0ZW0AAAABAAAAB2Fzc2V0SWQJAAEsAAAAAgkAASwAAAACAgAAAAdjb3Vwb25fBQAAAAdhc3NldElkAgAAAAVfaXRlbQEAAAAXZ2V0VmFsdWVTdXBwbGllckJhbGFuY2UAAAABAAAACHN1cHBsaWVyCQEAAAAPZ2V0SW50ZWdlckJ5S2V5AAAAAQkBAAAAFWdldEtleVN1cHBsaWVyQmFsYW5jZQAAAAEFAAAACHN1cHBsaWVyAQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtCQEAAAAPZ2V0SW50ZWdlckJ5S2V5AAAAAQkBAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIFAAAABHVzZXIFAAAABGl0ZW0BAAAAFmdldFZhbHVlUHVyY2hhc2VTdGF0dXMAAAABAAAACHB1cmNoYXNlCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAUZ2V0S2V5UHVyY2hhc2VTdGF0dXMAAAABBQAAAAhwdXJjaGFzZQEAAAAUZ2V0VmFsdWVQdXJjaGFzZUl0ZW0AAAABAAAACHB1cmNoYXNlCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzCQEAAAASZ2V0S2V5UHVyY2hhc2VJdGVtAAAAAQUAAAAIcHVyY2hhc2UBAAAAGGdldFZhbHVlUHVyY2hhc2VTdXBwbGllcgAAAAEAAAAIcHVyY2hhc2UJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAQAAABZnZXRLZXlQdXJjaGFzZVN1cHBsaWVyAAAAAQUAAAAIcHVyY2hhc2UBAAAAFGdldFZhbHVlUHVyY2hhc2VVc2VyAAAAAQAAAAhwdXJjaGFzZQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkBAAAAEmdldEtleVB1cmNoYXNlVXNlcgAAAAEFAAAACHB1cmNoYXNlAQAAABZnZXRWYWx1ZVB1cmNoYXNlQW1vdW50AAAAAQAAAAhwdXJjaGFzZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkBAAAAFGdldEtleVB1cmNoYXNlQW1vdW50AAAAAQUAAAAIcHVyY2hhc2UBAAAAGWdldFZhbHVlUHVyY2hhc2VUaW1lc3RhbXAAAAABAAAACHB1cmNoYXNlCQEAAAAPZ2V0SW50ZWdlckJ5S2V5AAAAAQkBAAAAF2dldEtleVB1cmNoYXNlVGltZXN0YW1wAAAAAQUAAAAIcHVyY2hhc2UBAAAAF2dldFZhbHVlUHVyY2hhc2VBc3NldElkAAAAAQAAAAhwdXJjaGFzZQkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQkBAAAAFWdldEtleVB1cmNoYXNlQXNzZXRJZAAAAAEFAAAACHB1cmNoYXNlAQAAABhnZXRWYWx1ZVB1cmNoYXNlRnVuZFBhaWQAAAABAAAACHB1cmNoYXNlCQEAAAAPZ2V0Qm9vbGVhbkJ5S2V5AAAAAQkBAAAAFmdldEtleVB1cmNoYXNlRnVuZFBhaWQAAAABBQAAAAhwdXJjaGFzZQEAAAARZ2V0VmFsdWVJdGVtUHJpY2UAAAABAAAABGl0ZW0JAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAQAAAA9nZXRLZXlJdGVtUHJpY2UAAAABBQAAAARpdGVtAQAAABRnZXRWYWx1ZUl0ZW1TdXBwbGllcgAAAAEAAAAEaXRlbQkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQkBAAAAEmdldEtleUl0ZW1TdXBwbGllcgAAAAEFAAAABGl0ZW0BAAAAFmdldFZhbHVlSXRlbUV4cGlyZVRpbWUAAAABAAAABGl0ZW0JAQAAAA9nZXRJbnRlZ2VyQnlLZXkAAAABCQEAAAAUZ2V0S2V5SXRlbUV4cGlyZURhdGUAAAABBQAAAARpdGVtAQAAABFnZXRWYWx1ZUl0ZW1UaXRsZQAAAAEAAAAEaXRlbQkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQkBAAAAD2dldEtleUl0ZW1UaXRsZQAAAAEFAAAABGl0ZW0BAAAAF2dldFZhbHVlSXRlbVNvbGRDb3VudGVyAAAAAQAAAARpdGVtCQEAAAAPZ2V0SW50ZWdlckJ5S2V5AAAAAQkBAAAAFWdldEtleUl0ZW1Tb2xkQ291bnRlcgAAAAEFAAAABGl0ZW0BAAAAE2dldFZhbHVlSXRlbVJlbW92ZWQAAAABAAAABGl0ZW0JAQAAAA9nZXRCb29sZWFuQnlLZXkAAAABCQEAAAARZ2V0S2V5SXRlbVJlbW92ZWQAAAABBQAAAARpdGVtAQAAABZnZXRWYWx1ZUNvdXBvblB1cmNoYXNlAAAAAQAAAAdhc3NldElkCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAUZ2V0S2V5Q291cG9uUHVyY2hhc2UAAAABBQAAAAdhc3NldElkAQAAAA5nZXRWYWx1ZUNvbW1pdAAAAAIAAAAEaXRlbQAAAAR1c2VyCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAMZ2V0S2V5Q29tbWl0AAAAAgUAAAAEaXRlbQUAAAAEdXNlcgEAAAAUZ2V0VmFsdWVDb21taXRzQ291bnQAAAABAAAABGl0ZW0JAQAAAA9nZXRJbnRlZ2VyQnlLZXkAAAABCQEAAAASZ2V0S2V5Q29tbWl0c0NvdW50AAAAAQUAAAAEaXRlbQEAAAAOZ2V0VmFsdWVSZXZlYWwAAAACAAAABGl0ZW0AAAAEdXNlcgkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQkBAAAADGdldEtleVJldmVhbAAAAAIFAAAABGl0ZW0FAAAABHVzZXIBAAAAEmdldFZhbHVlSXRlbVN0YXR1cwAAAAEAAAAEaXRlbQkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQkBAAAAEGdldEtleUl0ZW1TdGF0dXMAAAABBQAAAARpdGVtAQAAABJnZXRWYWx1ZVZvdGVzQ291bnQAAAACAAAABGl0ZW0AAAAEdm90ZQkBAAAAD2dldEludGVnZXJC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bnMEAAAABHVzZXIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAAFcHJpY2UJAQAAABFnZXRWYWx1ZUl0ZW1QcmljZQAAAAEFAAAABGl0ZW0EAAAACHN1cHBsaWVyCQEAAAAUZ2V0VmFsdWVJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtBAAAAAZleHBpcmUJAQAAABZnZXRWYWx1ZUl0ZW1FeHBpcmVUaW1lAAAAAQUAAAAEaXRlbQMDCQAAZgAAAAIFAAAABmV4cGlyZQAAAAAAAAAAAAkAAGcAAAACCAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAUAAAAGZXhwaXJlBwkAAAIAAAABAgAAAA5Db3Vwb24gZXhwaXJlZAMJAABmAAAAAgUAAAAFcHJpY2UIBQAAAANwbXQAAAAGYW1vdW50CQAAAgAAAAECAAAALlB1cmNoYXNlIGFtb3VudCBjYW5ub3QgYmUgbGVzcyB0aGFuIGl0ZW0gcHJpY2UDCQAAZgAAAAIIBQAAAANwbXQAAAAGYW1vdW50BQAAAAVwcmljZQkAAAIAAAABAgAAADBQdXJjaGFzZSBhbW91bnQgY2Fubm90IGJlIGhpZ2hlciB0aGFuIGl0ZW0gcHJpY2UDCQAAAAAAAAIFAAAACHN1cHBsaWVyBQAAAAROT05FCQAAAgAAAAECAAAAGFN1cHBsaWVyIGRvZXMgbm90IGV4aXN0cwQAAAASa2V5VXNlckl0ZW1Db3VudGVyCQEAAAAVZ2V0S2V5VXNlckl0ZW1Db3VudGVyAAAAAgUAAAAEdXNlcgUAAAAEaXRlbQQAAAAPdXNlckl0ZW1Db3VudGVyCQAAZAAAAAIJAQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIFAAAABHVzZXIFAAAABGl0ZW0AAAAAAAAAAAEEAAAACHB1cmNoYXNlCQEAAAAOZ2VuUHVyY2hhc2VLZXkAAAAEBQAAAAhzdXBwbGllcgUAAAAEaXRlbQUAAAAEdXNlcgUAAAAPdXNlckl0ZW1Db3VudGVyBAAAABFrZXlQdXJjaGFzZVN0YXR1cwkBAAAAFGdldEtleVB1cmNoYXNlU3RhdHVzAAAAAQUAAAAIcHVyY2hhc2UEAAAAD2tleVB1cmNoYXNlSXRlbQkBAAAAEmdldEtleVB1cmNoYXNlSXRlbQAAAAEFAAAACHB1cmNoYXNlBAAAABNrZXlQdXJjaGFzZVN1cHBsaWVyCQEAAAAWZ2V0S2V5UHVyY2hhc2VTdXBwbGllcgAAAAEFAAAACHB1cmNoYXNlBAAAAA9rZXlQdXJjaGFzZVVzZXIJAQAAABJnZXRLZXlQdXJjaGFzZVVzZXIAAAABBQAAAAhwdXJjaGFzZQQAAAARa2V5UHVyY2hhc2VBbW91bnQJAQAAABRnZXRLZXlQdXJjaGFzZUFtb3VudAAAAAEFAAAACHB1cmNoYXNlBAAAABRrZXlQdXJjaGFzZVRpbWVzdGFtcAkBAAAAF2dldEtleVB1cmNoYXNlVGltZXN0YW1wAAAAAQUAAAAIcHVyY2hhc2UJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEmtleVVzZXJJdGVtQ291bnRlcgUAAAAPdXNlckl0ZW1Db3VudGVyCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAAEWtleVB1cmNoYXNlU3RhdHVzBQAAAAhBUFBST1ZBTAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAAA9rZXlQdXJjaGFzZUl0ZW0FAAAABGl0ZW0JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAATa2V5UHVyY2hhc2VTdXBwbGllcgUAAAAIc3VwcGxpZXIJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAAPa2V5UHVyY2hhc2VVc2VyBQAAAAR1c2VyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABFrZXlQdXJjaGFzZUFtb3VudAgFAAAAA3BtdAAAAAZhbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAFGtleVB1cmNoYXNlVGltZXN0YW1wCAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAUAAAADbmlsAAAAAWkBAAAADnJlamVjdFB1cmNoYXNlAAAAAQAAAAhwdXJjaGFzZQQAAAAGY2FsbGVyCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAABnN0YXR1cwkBAAAAFmdldFZhbHVlUHVyY2hhc2VTdGF0dXMAAAABBQAAAAhwdXJjaGFzZQQAAAAIc3VwcGxpZXIJAQAAABhnZXRWYWx1ZVB1cmNoYXNlU3VwcGxpZXIAAAABBQAAAAhwdXJjaGFzZQQAAAAEaXRlbQkBAAAAFGdldFZhbHVlUHVyY2hhc2VJdGVtAAAAAQUAAAAIcHVyY2hhc2UEAAAACG5vdEZvdW5kCQAAAAAAAAIFAAAABGl0ZW0FAAAABE5PTkUDBQAAAAhub3RGb3VuZAkAAAIAAAABCQABLAAAAAICAAAAE1B1cmNoYXNlIG5vdCBmb3VuZCAFAAAACHB1cmNoYXNlAwMJAAAAAAAAAgUAAAAIc3VwcGxpZXIFAAAABE5PTkUGCQEAAAACIT0AAAACBQAAAAZjYWxsZXIFAAAACHN1cHBsaWVyCQAAAgAAAAECAAAAI1lvdXIgYXJlIG5vdCB0aGUgb3duZXIgb2YgdGhpcyBpdGVtAwkBAAAAAiE9AAAAAgUAAAAGc3RhdHVzBQAAAAhBUFBST1ZBTAkAAAIAAAABAgAAACBZb3UgY2Fubm90IHJlamVjdCB0aGlzIHB1cmNoYXNlZAQAAAARa2V5UHVyY2hhc2VTdGF0dXMJAQAAABRnZXRLZXlQdXJjaGFzZVN0YXR1cwAAAAEFAAAACHB1cmNoYXNlBAAAABFrZXlQdXJjaGFzZUFtb3VudAkBAAAAFGdldEtleVB1cmNoYXNlQW1vdW50AAAAAQUAAAAIcHVyY2hhc2UEAAAAEmtleUl0ZW1Tb2xkQ291bnRlcgkBAAAAFWdldEtleUl0ZW1Tb2xkQ291bnRlcgAAAAEFAAAABGl0ZW0EAAAABHVzZXIJAQAAABRnZXRWYWx1ZVB1cmNoYXNlVXNlcgAAAAEFAAAACHB1cmNoYXNlBAAAAAZhbW91bnQJAQAAABZnZXRWYWx1ZVB1cmNoYXNlQW1vdW50AAAAAQUAAAAIcHVyY2hhc2UEAAAAD3N1cHBsaWVyQmFsYW5jZQkAAGUAAAACCQEAAAAXZ2V0VmFsdWVTdXBwbGllckJhbGFuY2UAAAABBQAAAAhzdXBwbGllcgUAAAAGYW1vdW50BAAAAA9pdGVtU29sZENvdW50ZXIJAABlAAAAAgkBAAAAF2dldFZhbHVlSXRlbVNvbGRDb3VudGVyAAAAAQUAAAAEaXRlbQAAAAAAAAAAAQQAAAAHYWRkcmVzcwkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQUAAAAEdXNlcgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAABFrZXlQdXJjaGFzZVN0YXR1cwUAAAAIUkVKRUNURUQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEWtleVB1cmNoYXNlQW1vdW50AAAAAAAAAAAACQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAAB2FkZHJlc3MFAAAABmFtb3VudAUAAAAEdW5pdAUAAAADbmlsAAAAAWkBAAAADmFjY2VwdFB1cmNoYXNlAAAAAgAAAAhwdXJjaGFzZQAAAAdhc3NldElkBAAAAAZjYWxsZXIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAAGc3RhdHVzCQEAAAAWZ2V0VmFsdWVQdXJjaGFzZVN0YXR1cwAAAAEFAAAACHB1cmNoYXNlBAAAAAhzdXBwbGllcgkBAAAAGGdldFZhbHVlUHVyY2hhc2VTdXBwbGllcgAAAAEFAAAACHB1cmNoYXNlBAAAAARpdGVtCQEAAAAUZ2V0VmFsdWVQdXJjaGFzZUl0ZW0AAAABBQAAAAhwdXJjaGFzZQQAAAAGZXhwaXJlCQEAAAAWZ2V0VmFsdWVJdGVtRXhwaXJlVGltZQAAAAEFAAAABGl0ZW0EAAAACG5vdEZvdW5kCQAAAAAAAAIFAAAABGl0ZW0FAAAABE5PTkUDBQAAAAhub3RGb3VuZAkAAAIAAAABCQABLAAAAAICAAAAE1B1cmNoYXNlIG5vdCBmb3VuZCAFAAAACHB1cmNoYXNlAwMJAAAAAAAAAgUAAAAIc3VwcGxpZXIFAAAABE5PTkUGCQEAAAACIT0AAAACBQAAAAZjYWxsZXIFAAAACHN1cHBsaWVyCQAAAgAAAAECAAAAI1lvdXIgYXJlIG5vdCB0aGUgb3duZXIgb2YgdGhpcyBpdGVtAwkBAAAAAiE9AAAAAgUAAAAGc3RhdHVzBQAAAAhBUFBST1ZBTAkAAAIAAAABAgAAACBZb3UgY2Fubm90IHJlamVjdCB0aGlzIHB1cmNoYXNlZAMDCQAAZgAAAAIFAAAABmV4cGlyZQAAAAAAAAAAAAkAAGcAAAACCAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAUAAAAGZXhwaXJlBwkAAAIAAAABAgAAAA5Db3Vwb24gZXhwaXJlZAQAAAARa2V5UHVyY2hhc2VTdGF0dXMJAQAAABRnZXRLZXlQdXJjaGFzZVN0YXR1cwAAAAEFAAAACHB1cmNoYXNlBAAAABJrZXlQdXJjaGFzZUFzc2V0SWQJAQAAABVnZXRLZXlQdXJjaGFzZUFzc2V0SWQAAAABBQAAAAhwdXJjaGFzZQQAAAASa2V5U3VwcGxpZXJCYWxhbmNlCQEAAAAVZ2V0S2V5U3VwcGxpZXJCYWxhbmNlAAAAAQUAAAAIc3VwcGxpZXIEAAAAEmtleUl0ZW1Tb2xkQ291bnRlcgkBAAAAFWdldEtleUl0ZW1Tb2xkQ291bnRlcgAAAAEFAAAABGl0ZW0EAAAAEWtleUNvdXBvblB1cmNoYXNlCQEAAAAUZ2V0S2V5Q291cG9uUHVyY2hhc2UAAAABBQAAAAdhc3NldElkBAAAAA1rZXlDb3Vwb25JdGVtCQEAAAAQZ2V0S2V5Q291cG9uSXRlbQAAAAEFAAAAB2Fzc2V0SWQEAAAABmFtb3VudAkBAAAAFmdldFZhbHVlUHVyY2hhc2VBbW91bnQAAAABBQAAAAhwdXJjaGFzZQQAAAAKbmV3QmFsYW5jZQkAAGQAAAACCQEAAAAXZ2V0VmFsdWVTdXBwbGllckJhbGFuY2UAAAABBQAAAAhzdXBwbGllcgUAAAAGYW1vdW50BAAAAA9pdGVtU29sZENvdW50ZXIJAABkAAAAAgkBAAAAF2dldFZhbHVlSXRlbVNvbGRDb3VudGVyAAAAAQUAAAAEaXRlbQAAAAAAAAAAAQQAAAAEdXNlcgkBAAAAFGdldFZhbHVlUHVyY2hhc2VVc2VyAAAAAQUAAAAIcHVyY2hhc2UEAAAAB2FkZHJlc3MJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEFAAAABHVzZXIJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAARa2V5UHVyY2hhc2VTdGF0dXMFAAAACEFDQ0VQVEVECQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAAEWtleUNvdXBvblB1cmNoYXNlBQAAAAhwdXJjaGFzZQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAAA1rZXlDb3Vwb25JdGVtBQAAAARpdGVtCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAAEmtleVB1cmNoYXNlQXNzZXRJZAUAAAAHYXNzZXRJZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAASa2V5U3VwcGxpZXJCYWxhbmNlBQAAAApuZXdCYWxhbmNlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABJrZXlJdGVtU29sZENvdW50ZXIFAAAAD2l0ZW1Tb2xkQ291bnRlcgUAAAADbmlsAAAAAWkBAAAABGJ1cm4AAAAABAAAAAZjYWxsZXIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAADcG10AwkAAAAAAAACCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAACQAAAgAAAAECAAAALEFuIGF0dGFjaGVkIGNvdXBvbiBpcyByZXF1aXJlZCBhcyBwYXltZW50WzBdAwkAAAAAAAACCQEAAAAJaXNEZWZpbmVkAAAAAQgFAAAAA3BtdAAAAAdhc3NldElkBwkAAAIAAAABAgAAABVOZWVkIGEgY291cG9uIHRvIGJ1cm4EAAAABWFzc2V0BAAAAAckbWF0Y2gwCAUAAAADcG10AAAAB2Fzc2V0SWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAACkJ5dGVWZWN0b3IEAAAAAWUFAAAAByRtYXRjaDAFAAAAAWUJAAACAAAAAQIAAAAVTmVlZCBhIGNvdXBvbiB0byBidXJuBAAAAAdhc3NldElkCQACWAAAAAEFAAAABWFzc2V0BAAAAAhwdXJjaGFzZQkBAAAAFmdldFZhbHVlQ291cG9uUHVyY2hhc2UAAAABBQAAAAdhc3NldElkBAAAAAhzdXBwbGllcgkBAAAAGGdldFZhbHVlUHVyY2hhc2VTdXBwbGllcgAAAAEFAAAACHB1cmNoYXNlBAAAAAppc2Z1bmRQYWlkCQEAAAAYZ2V0VmFsdWVQdXJjaGFzZUZ1bmRQYWlkAAAAAQUAAAAIcHVyY2hhc2UDCQEAAAACIT0AAAACBQAAAAZjYWxsZXIFAAAACHN1cHBsaWVyCQAAAgAAAAECAAAAKVlvdXIgYXJlIG5vdCB0aGUgc3VwcGxpZXIgZm9yIHRoaXMgY291cG9uAwUAAAAKaXNmdW5kUGFpZAkAAAIAAAABAgAAABpGdW5kIGhhcyBhbHJlYWR5IGJlZW4gcGFpZAQAAAAHYmFsYW5jZQkBAAAAF2dldFZhbHVlU3VwcGxpZXJCYWxhbmNlAAAAAQUAAAAIc3VwcGxpZXIEAAAABmFtb3VudAkBAAAAFmdldFZhbHVlUHVyY2hhc2VBbW91bnQAAAABBQAAAAhwdXJjaGFzZQQAAAALd2l0aGRyYXdBbXQDCQAAZwAAAAIAAAAAAAAAAAAJAABlAAAAAgUAAAAHYmFsYW5jZQUAAAAGYW1vdW50BQAAAAdiYWxhbmNlBQAAAAZhbW91bnQEAAAACm5ld0JhbGFuY2UJAABlAAAAAgUAAAAHYmFsYW5jZQUAAAALd2l0aGRyYXdBbXQDCQAAZwAAAAIAAAAAAAAAAAAFAAAACm5ld0JhbGFuY2UJAAACAAAAAQIAAAAcTm90IGVub3VnaCBmdW5kcyB0byB3aXRoZHJhdwQAAAASa2V5U3VwcGxpZXJCYWxhbmNlCQEAAAAVZ2V0S2V5U3VwcGxpZXJCYWxhbmNlAAAAAQUAAAAIc3VwcGxpZXIEAAAAEWtleUNvdXBvbkZ1bmRQYWlkCQEAAAAWZ2V0S2V5UHVyY2hhc2VGdW5kUGFpZAAAAAEFAAAACHB1cmNoYXNlCQAETAAAAAIJAQAAAARCdXJuAAAAAgUAAAAFYXNzZXQAAAAAAAAAAAEJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIFAAAAEWtleUNvdXBvbkZ1bmRQYWlkBgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAASa2V5U3VwcGxpZXJCYWxhbmNlBQAAAApuZXdCYWxhbmNlCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAALd2l0aGRyYXdBbXQFAAAABHVuaXQFAAAAA25pbAAAAAFpAQAAAAh3aXRoZHJhdwAAAAEAAAAHYXNzZXRJZAQAAAAGY2FsbGVyCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAB2FjY291bnQJAQAAABJnZXRTdXBwbGllckFjY291bnQAAAABBQAAAAZjYWxsZXIDCQAAAAAAAAIFAAAAB2FjY291bnQFAAAABE5PTkUJAAACAAAAAQIAAAAhWW91IGFyZSBub3QgcmVnaXN0cmVkIGFzIHN1cHBsaWVyBAAAAAhwdXJjaGFzZQkBAAAAFmdldFZhbHVlQ291cG9uUHVyY2hhc2UAAAABBQAAAAdhc3NldElkBAAAAAhzdXBwbGllcgkBAAAAGGdldFZhbHVlUHVyY2hhc2VTdXBwbGllcgAAAAEFAAAACHB1cmNoYXNlBAAAAAppc2Z1bmRQYWlkCQEAAAAYZ2V0VmFsdWVQdXJjaGFzZUZ1bmRQYWlkAAAAAQUAAAAIcHVyY2hhc2UDCQEAAAACIT0AAAACBQAAAAZjYWxsZXIFAAAACHN1cHBsaWVyCQAAAgAAAAECAAAAKVlvdXIgYXJlIG5vdCB0aGUgc3VwcGxpZXIgZm9yIHRoaXMgY291cG9uAwUAAAAKaXNmdW5kUGFpZAkAAAIAAAABAgAAABpGdW5kIGhhcyBhbHJlYWR5IGJlZW4gcGFpZAQAAAAEaXRlbQkBAAAAFGdldFZhbHVlUHVyY2hhc2VJdGVtAAAAAQUAAAAIcHVyY2hhc2UEAAAABmV4cGlyZQkBAAAAFmdldFZhbHVlSXRlbUV4cGlyZVRpbWUAAAABBQAAAARpdGVtBAAAAARpbmZvBAAAAAckbWF0Y2gwCQAD7AAAAAEJAAJZAAAAAQUAAAAHYXNzZXRJZAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAFQXNzZXQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAWQ2Fubm90IGZpbmQgYXNzZXQgaW5mbwQAAAALY2FuV2l0aGRyYXcDAwkAAGYAAAACBQAAAAZleHBpcmUAAAAAAAAAAAAJAABnAAAAAggFAAAACWxhc3RCbG9jawAAAAl0aW1lc3RhbXAFAAAABmV4cGlyZQcGAwkAAAAAAAACCAUAAAAEaW5mbwAAAAhxdWFudGl0eQAAAAAAAAAAAAYHAwkBAAAAASEAAAABBQAAAAtjYW5XaXRoZHJhdwkAAAIAAAABAgAAABxUaGlzIGNvdXBvbiBjYW5ub3QgYmUgZnVuZGVkBAAAAAdiYWxhbmNlCQEAAAAXZ2V0VmFsdWVTdXBwbGllckJhbGFuY2UAAAABBQAAAAhzdXBwbGllcgQAAAAGYW1vdW50CQEAAAAWZ2V0VmFsdWVQdXJjaGFzZUFtb3VudAAAAAEFAAAACHB1cmNoYXNlBAAAAAt3aXRoZHJhd0FtdAMJAABnAAAAAgAAAAAAAAAAAAkAAGUAAAACBQAAAAdiYWxhbmNlBQAAAAZhbW91bnQFAAAAB2JhbGFuY2UFAAAABmFtb3VudAQAAAAKbmV3QmFsYW5jZQkAAGUAAAACBQAAAAdiYWxhbmNlBQAAAAt3aXRoZHJhd0FtdAMJAABnAAAAAgAAAAAAAAAAAAUAAAAKbmV3QmFsYW5jZQkAAAIAAAABAgAAABxOb3QgZW5vdWdoIGZ1bmRzIHRvIHdpdGhkcmF3BAAAABJrZXlTdXBwbGllckJhbGFuY2UJAQAAABVnZXRLZXlTdXBwbGllckJhbGFuY2UAAAABBQAAAAhzdXBwbGllcgQAAAARa2V5Q291cG9uRnVuZFBhaWQJAQAAABZnZXRLZXlQdXJjaGFzZUZ1bmRQYWlkAAAAAQUAAAAIcHVyY2hhc2UJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIFAAAAEWtleUNvdXBvbkZ1bmRQYWlkBgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAASa2V5U3VwcGxpZXJCYWxhbmNlBQAAAApuZXdCYWxhbmNlCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAALd2l0aGRyYXdBbXQFAAAABHVuaXQFAAAAA25pbAAAAAFpAQAAAAp2b3RlQ29tbWl0AAAAAgAAAARpdGVtAAAABGhhc2gEAAAABHVzZXIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAAMY29tbWl0c0NvdW50CQEAAAAUZ2V0VmFsdWVDb21taXRzQ291bnQAAAABBQAAAARpdGVtBAAAAAZzdGF0dXMJAQAAABJnZXRWYWx1ZUl0ZW1TdGF0dXMAAAABBQAAAARpdGVtAwkA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", "height": 1656684, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9LLWbQocxsqoQPR8LkUN1eKGep2YyyirFHyAWHWkDRoK Next: 8ixpM885s2MBMFDDdrxnwsbNcsA52ojLKrpceeAq426k Diff:
OldNewDifferences
132132 func X (R) = (R + "_assetId")
133133
134134
135-func Y (R) = (("purchase_" + R) + "_fundpaid")
135+func Y (R) = (R + "_fundpaid")
136136
137137
138138 func Z (aa) = (("coupon_" + aa) + "_purchase")
168168 func ak (R) = k(X(R))
169169
170170
171-func al (R) = if ((1 == 1))
172- then throw(Y(R))
173- else p(Y(R))
171+func al (R) = p(Y(R))
174172
175173
176174 func am (y) = getIntegerValue(this, A(y))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "NONE"
55
66 let b = 3
77
88 let c = 2
99
1010 let d = "featured"
1111
1212 let e = "delisted"
1313
1414 let f = "voting"
1515
1616 let g = "reveal"
1717
1818 let h = "approval"
1919
2020 let i = "rejected"
2121
2222 let j = "accepted"
2323
2424 func k (l) = {
2525 let m = getString(this, l)
2626 if ($isInstanceOf(m, "String"))
2727 then {
2828 let n = m
2929 n
3030 }
3131 else a
3232 }
3333
3434
3535 func o (l) = {
3636 let m = getInteger(this, l)
3737 if ($isInstanceOf(m, "Int"))
3838 then {
3939 let n = m
4040 n
4141 }
4242 else 0
4343 }
4444
4545
4646 func p (l) = {
4747 let m = getBoolean(this, l)
4848 if ($isInstanceOf(m, "Boolean"))
4949 then {
5050 let n = m
5151 n
5252 }
5353 else false
5454 }
5555
5656
5757 func q (r) = (r + "_account")
5858
5959
6060 func s (r) = k(q(r))
6161
6262
6363 func t (u,v) = {
6464 let w = (u + v)
6565 ("item_" + toBase58String(sha256(toBytes(w))))
6666 }
6767
6868
6969 func x (y) = (y + "_owner")
7070
7171
7272 func z (y) = (y + "_title")
7373
7474
7575 func A (y) = (y + "_price")
7676
7777
7878 func B (y) = (y + "_data")
7979
8080
8181 func C (y) = (y + "_expiredate")
8282
8383
8484 func D (y) = (y + "_sold")
8585
8686
8787 func E (y) = (y + "_removed")
8888
8989
9090 func F (y,G) = (((y + "_") + G) + "_commit")
9191
9292
9393 func H (y) = (y + "_cmtcnt")
9494
9595
9696 func I (y,G) = (((y + "_") + G) + "_reveal")
9797
9898
9999 func J (y) = (y + "_status")
100100
101101
102102 func K (y,L) = ((y + "_res:") + L)
103103
104104
105105 func M (u) = (u + "_balance")
106106
107107
108108 func N (G,y) = (((G + "_") + y) + "_counter")
109109
110110
111111 func O (u,y,G,P) = ("purchase_" + toBase58String(sha256(toBytes(((((((u + "_") + y) + "_") + G) + "_") + toString(P))))))
112112
113113
114114 func Q (R) = (R + "_status")
115115
116116
117117 func S (R) = (R + "_item")
118118
119119
120120 func T (R) = (R + "_supplier")
121121
122122
123123 func U (R) = (R + "_user")
124124
125125
126126 func V (R) = (R + "_amount")
127127
128128
129129 func W (R) = (R + "_timestamp")
130130
131131
132132 func X (R) = (R + "_assetId")
133133
134134
135-func Y (R) = (("purchase_" + R) + "_fundpaid")
135+func Y (R) = (R + "_fundpaid")
136136
137137
138138 func Z (aa) = (("coupon_" + aa) + "_purchase")
139139
140140
141141 func ab (aa) = (("coupon_" + aa) + "_item")
142142
143143
144144 func ac (u) = o(M(u))
145145
146146
147147 func ad (G,y) = o(N(G, y))
148148
149149
150150 func ae (R) = k(Q(R))
151151
152152
153153 func af (R) = getStringValue(this, S(R))
154154
155155
156156 func ag (R) = getStringValue(this, T(R))
157157
158158
159159 func ah (R) = getStringValue(this, U(R))
160160
161161
162162 func ai (R) = getIntegerValue(this, V(R))
163163
164164
165165 func aj (R) = o(W(R))
166166
167167
168168 func ak (R) = k(X(R))
169169
170170
171-func al (R) = if ((1 == 1))
172- then throw(Y(R))
173- else p(Y(R))
171+func al (R) = p(Y(R))
174172
175173
176174 func am (y) = getIntegerValue(this, A(y))
177175
178176
179177 func an (y) = k(x(y))
180178
181179
182180 func ao (y) = o(C(y))
183181
184182
185183 func ap (y) = k(z(y))
186184
187185
188186 func aq (y) = o(D(y))
189187
190188
191189 func ar (y) = p(E(y))
192190
193191
194192 func as (aa) = k(Z(aa))
195193
196194
197195 func at (y,G) = k(F(y, G))
198196
199197
200198 func au (y) = o(H(y))
201199
202200
203201 func av (y,G) = k(I(y, G))
204202
205203
206204 func aw (y) = k(J(y))
207205
208206
209207 func ax (y,L) = o(K(y, L))
210208
211209
212210 @Callable(ay)
213211 func registerSupplier (az) = {
214212 let u = toBase58String(ay.caller.bytes)
215213 let r = s(u)
216214 if ((r != a))
217215 then throw("This address has already registred as supplier")
218216 else [StringEntry(q(u), az)]
219217 }
220218
221219
222220
223221 @Callable(ay)
224222 func addItem (v,aA,az,aB) = {
225223 let u = toBase58String(ay.caller.bytes)
226224 let r = s(u)
227225 let y = t(u, v)
228226 if ((r == a))
229227 then throw("You should register as supplier to add an item")
230228 else if ((0 >= aA))
231229 then throw("Purchase amount cannot be less than item price")
232230 else if ((an(y) != a))
233231 then throw("An item already exists")
234232 else [StringEntry(x(y), u), StringEntry(z(y), v), IntegerEntry(A(y), aA), StringEntry(B(y), az), IntegerEntry(C(y), aB)]
235233 }
236234
237235
238236
239237 @Callable(ay)
240238 func updateItem (y,v,aA,az,aB) = {
241239 let u = toBase58String(ay.caller.bytes)
242240 let r = s(u)
243241 let aC = an(y)
244242 let aD = if ((ap(y) == a))
245243 then true
246244 else (ar(y) == true)
247245 if ((r == a))
248246 then throw("You should register as supplier to remove an item")
249247 else if (aD)
250248 then throw(("Item does not exists or has been removed " + y))
251249 else if ((u != aC))
252250 then throw(("You don't owned item " + y))
253251 else [StringEntry(z(y), v), IntegerEntry(A(y), aA), StringEntry(B(y), az), IntegerEntry(C(y), aB)]
254252 }
255253
256254
257255
258256 @Callable(ay)
259257 func removeItem (y) = {
260258 let u = toBase58String(ay.caller.bytes)
261259 let r = s(u)
262260 let aC = an(y)
263261 let aD = if ((ap(y) == a))
264262 then true
265263 else (ar(y) == true)
266264 if ((r == a))
267265 then throw("You should register as supplier to remove an item")
268266 else if (aD)
269267 then throw(("Item does not exists or has been removed " + y))
270268 else if ((u != aC))
271269 then throw(("You don't owned item " + y))
272270 else {
273271 let aE = aq(y)
274272 if ((aE == 0))
275273 then [DeleteEntry(x(y)), DeleteEntry(z(y)), DeleteEntry(A(y)), DeleteEntry(B(y)), DeleteEntry(C(y))]
276274 else [BooleanEntry(E(y), true)]
277275 }
278276 }
279277
280278
281279
282280 @Callable(ay)
283281 func purchase (y) = {
284282 let aF = ay.payments[0]
285283 let aD = if ((ap(y) == a))
286284 then true
287285 else (ar(y) == true)
288286 if (aD)
289287 then throw(("Item does not exists or has been removed " + y))
290288 else if (isDefined(aF.assetId))
291289 then throw("You can buy tokens only with Waves tokens")
292290 else {
293291 let G = toBase58String(ay.caller.bytes)
294292 let aA = am(y)
295293 let u = an(y)
296294 let aB = ao(y)
297295 if (if ((aB > 0))
298296 then (lastBlock.timestamp >= aB)
299297 else false)
300298 then throw("Coupon expired")
301299 else if ((aA > aF.amount))
302300 then throw("Purchase amount cannot be less than item price")
303301 else if ((aF.amount > aA))
304302 then throw("Purchase amount cannot be higher than item price")
305303 else if ((u == a))
306304 then throw("Supplier does not exists")
307305 else {
308306 let aG = N(G, y)
309307 let aH = (ad(G, y) + 1)
310308 let R = O(u, y, G, aH)
311309 let aI = Q(R)
312310 let aJ = S(R)
313311 let aK = T(R)
314312 let aL = U(R)
315313 let aM = V(R)
316314 let aN = W(R)
317315 [IntegerEntry(aG, aH), StringEntry(aI, h), StringEntry(aJ, y), StringEntry(aK, u), StringEntry(aL, G), IntegerEntry(aM, aF.amount), IntegerEntry(aN, lastBlock.timestamp)]
318316 }
319317 }
320318 }
321319
322320
323321
324322 @Callable(ay)
325323 func rejectPurchase (R) = {
326324 let aO = toBase58String(ay.caller.bytes)
327325 let aP = ae(R)
328326 let u = ag(R)
329327 let y = af(R)
330328 let aD = (y == a)
331329 if (aD)
332330 then throw(("Purchase not found " + R))
333331 else if (if ((u == a))
334332 then true
335333 else (aO != u))
336334 then throw("Your are not the owner of this item")
337335 else if ((aP != h))
338336 then throw("You cannot reject this purchased")
339337 else {
340338 let aI = Q(R)
341339 let aM = V(R)
342340 let aQ = D(y)
343341 let G = ah(R)
344342 let aR = ai(R)
345343 let aS = (ac(u) - aR)
346344 let aT = (aq(y) - 1)
347345 let aU = addressFromStringValue(G)
348346 [StringEntry(aI, i), IntegerEntry(aM, 0), ScriptTransfer(aU, aR, unit)]
349347 }
350348 }
351349
352350
353351
354352 @Callable(ay)
355353 func acceptPurchase (R,aa) = {
356354 let aO = toBase58String(ay.caller.bytes)
357355 let aP = ae(R)
358356 let u = ag(R)
359357 let y = af(R)
360358 let aB = ao(y)
361359 let aD = (y == a)
362360 if (aD)
363361 then throw(("Purchase not found " + R))
364362 else if (if ((u == a))
365363 then true
366364 else (aO != u))
367365 then throw("Your are not the owner of this item")
368366 else if ((aP != h))
369367 then throw("You cannot reject this purchased")
370368 else if (if ((aB > 0))
371369 then (lastBlock.timestamp >= aB)
372370 else false)
373371 then throw("Coupon expired")
374372 else {
375373 let aI = Q(R)
376374 let aV = X(R)
377375 let aW = M(u)
378376 let aQ = D(y)
379377 let aX = Z(aa)
380378 let aY = ab(aa)
381379 let aR = ai(R)
382380 let aZ = (ac(u) + aR)
383381 let aT = (aq(y) + 1)
384382 let G = ah(R)
385383 let aU = addressFromStringValue(G)
386384 [StringEntry(aI, j), StringEntry(aX, R), StringEntry(aY, y), StringEntry(aV, aa), IntegerEntry(aW, aZ), IntegerEntry(aQ, aT)]
387385 }
388386 }
389387
390388
391389
392390 @Callable(ay)
393391 func burn () = {
394392 let aO = toBase58String(ay.caller.bytes)
395393 let aF = if ((size(ay.payments) == 1))
396394 then ay.payments[0]
397395 else throw("An attached coupon is required as payment[0]")
398396 if ((isDefined(aF.assetId) == false))
399397 then throw("Need a coupon to burn")
400398 else {
401399 let ba = {
402400 let m = aF.assetId
403401 if ($isInstanceOf(m, "ByteVector"))
404402 then {
405403 let bb = m
406404 bb
407405 }
408406 else throw("Need a coupon to burn")
409407 }
410408 let aa = toBase58String(ba)
411409 let R = as(aa)
412410 let u = ag(R)
413411 let bc = al(R)
414412 if ((aO != u))
415413 then throw("Your are not the supplier for this coupon")
416414 else if (bc)
417415 then throw("Fund has already been paid")
418416 else {
419417 let bd = ac(u)
420418 let aR = ai(R)
421419 let be = if ((0 >= (bd - aR)))
422420 then bd
423421 else aR
424422 let aZ = (bd - be)
425423 if ((0 >= aZ))
426424 then throw("Not enough funds to withdraw")
427425 else {
428426 let aW = M(u)
429427 let bf = Y(R)
430428 [Burn(ba, 1), BooleanEntry(bf, true), IntegerEntry(aW, aZ), ScriptTransfer(ay.caller, be, unit)]
431429 }
432430 }
433431 }
434432 }
435433
436434
437435
438436 @Callable(ay)
439437 func withdraw (aa) = {
440438 let aO = toBase58String(ay.caller.bytes)
441439 let r = s(aO)
442440 if ((r == a))
443441 then throw("You are not registred as supplier")
444442 else {
445443 let R = as(aa)
446444 let u = ag(R)
447445 let bc = al(R)
448446 if ((aO != u))
449447 then throw("Your are not the supplier for this coupon")
450448 else if (bc)
451449 then throw("Fund has already been paid")
452450 else {
453451 let y = af(R)
454452 let aB = ao(y)
455453 let bg = {
456454 let m = assetInfo(fromBase58String(aa))
457455 if ($isInstanceOf(m, "Asset"))
458456 then {
459457 let n = m
460458 n
461459 }
462460 else throw("Cannot find asset info")
463461 }
464462 let bh = if (if ((aB > 0))
465463 then (lastBlock.timestamp >= aB)
466464 else false)
467465 then true
468466 else if ((bg.quantity == 0))
469467 then true
470468 else false
471469 if (!(bh))
472470 then throw("This coupon cannot be funded")
473471 else {
474472 let bd = ac(u)
475473 let aR = ai(R)
476474 let be = if ((0 >= (bd - aR)))
477475 then bd
478476 else aR
479477 let aZ = (bd - be)
480478 if ((0 >= aZ))
481479 then throw("Not enough funds to withdraw")
482480 else {
483481 let aW = M(u)
484482 let bf = Y(R)
485483 [BooleanEntry(bf, true), IntegerEntry(aW, aZ), ScriptTransfer(ay.caller, be, unit)]
486484 }
487485 }
488486 }
489487 }
490488 }
491489
492490
493491
494492 @Callable(ay)
495493 func voteCommit (y,bi) = {
496494 let G = toBase58String(ay.caller.bytes)
497495 let bj = au(y)
498496 let aP = aw(y)
499497 if ((bj >= b))
500498 then throw("Reached max number of voters")
501499 else if ((at(y, G) != a))
502500 then throw("You voted already")
503501 else if ((x(y) == a))
504502 then throw("Item does not exists")
505503 else if (if ((aP != a))
506504 then (aP != f)
507505 else false)
508506 then throw("Voting is not active for this item now")
509507 else {
510508 let bk = if ((bj == b))
511509 then g
512510 else f
513511 [StringEntry(F(y, G), bi), IntegerEntry(H(y), (bj + 1)), StringEntry(J(y), bk)]
514512 }
515513 }
516514
517515
518516
519517 @Callable(ay)
520518 func voteReveal (y,L,bl) = {
521519 let G = toBase58String(ay.caller.bytes)
522520 let aP = aw(y)
523521 let bm = (ax(y, L) + 1)
524522 let bn = toBase58String(sha256(toBytes(((y + L) + bl))))
525523 if ((bn != at(y, G)))
526524 then throw("Reveal data is not valid")
527525 else if ((b > au(y)))
528526 then throw("Max number of voters not reached")
529527 else if ((av(y, G) != a))
530528 then throw("You voted already")
531529 else if (if ((aP != f))
532530 then (aP != g)
533531 else false)
534532 then throw("Voting is not active for this item now")
535533 else if (if ((L != d))
536534 then (L != e)
537535 else false)
538536 then throw("Provided voting option is incorrect")
539537 else {
540538 let bk = if ((bm >= c))
541539 then L
542540 else g
543541 [StringEntry(I(y, G), L), IntegerEntry(K(y, G), bm), StringEntry(J(y), bk)]
544542 }
545543 }
546544
547545
548546 @Verifier(bo)
549547 func bp () = {
550548 let m = bo
551549 if ($isInstanceOf(m, "SetScriptTransaction"))
552550 then {
553551 let bq = m
554552 sigVerify(bo.bodyBytes, bo.proofs[0], bo.senderPublicKey)
555553 }
556554 else if ($isInstanceOf(m, "IssueTransaction"))
557555 then {
558556 let bq = m
559557 sigVerify(bo.bodyBytes, bo.proofs[0], bo.senderPublicKey)
560558 }
561559 else if ($isInstanceOf(m, "TransferTransaction"))
562560 then {
563561 let bq = m
564562 sigVerify(bo.bodyBytes, bo.proofs[0], bo.senderPublicKey)
565563 }
566564 else false
567565 }
568566

github/deemru/w8io/c3f4982 
73.29 ms