tx · 9W9wWAkEckevY4KL6PgUUGDmoSj39rLFroJJsemok1o5

3NC9boevS259eTsMAkFAxCPorzK4Z9bpWje:  -0.02000000 Waves

2023.02.01 11:25 [2430314] smart account 3NC9boevS259eTsMAkFAxCPorzK4Z9bpWje > SELF 0.00000000 Waves

{ "type": 13, "id": "9W9wWAkEckevY4KL6PgUUGDmoSj39rLFroJJsemok1o5", "fee": 2000000, "feeAssetId": null, "timestamp": 1675239978376, "version": 2, "chainId": 84, "sender": "3NC9boevS259eTsMAkFAxCPorzK4Z9bpWje", "senderPublicKey": "515tSAyMUbAb8kKjcpGDpqALGfCgcwfWmWKKkcBKTcGB", "proofs": [ "4KMXWKrGgKsYNDRhVFkAgcxAWwo8eFPFycpaQP4cuQGe1WVMW7S2WEedgh4mmDiw5dsFaRTm96jPLyPHLEJNxYJF" ], "script": "base64:AAIFAAAAAAAAACEIAhIAEgASAwoBCBIDCgEIEgMKAQESABIDCgEIEgMKAQgAAAADAAAAABREYXBwX0FkZHJlc3NfcHViX2tleQEAAAAgq4kJ/Yx/hxwE0cwMFuJmegviyQmGySeZGqn46Eb83C8AAAAAGW9yYWNsZV9jb250cm9sbGVyX2FkZHJlc3MJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEFAAAAFERhcHBfQWRkcmVzc19wdWJfa2V5AAAAAAtVU0RUQXNzZXRJRAEAAAAAAAAACAAAAAFpAQAAAA9wbGFjZW9wdGlvbkNhbGwAAAAABAAAAA1jYWxsZXJhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWlmQmxhY2tsaXN0ZWQJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABFhZGRyX0JMQUNLTElTVEVEXwUAAAANY2FsbGVyYWRkcmVzcwQAAAAScmVhZF9vcmFjbGVfc3RhdHVzCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzAgAAAA1vcmFjbGVfc3RhdHVzBAAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwIAAAAOMW1fY29udHJhY3RfaWQEAAAACmdldGJ0Y2RhdGEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAHMW1fYnRjXwkAAaQAAAABBQAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAQAAAAGc3dhcExpCQAEtQAAAAIFAAAACmdldGJ0Y2RhdGECAAAAAV8EAAAABXByaWNlCQABkQAAAAIFAAAABnN3YXBMaQAAAAAAAAAAAAQAAAAFYmxvY2sJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAZzd2FwTGkAAAAAAAAAAAIEAAAADWNoZWNrYmxvY2tnYXAJAABlAAAAAgUAAAAGaGVpZ2h0BQAAAAVibG9jawQAAAAST3Bpb25FeHBpcmVDb3VudGVyAAAAAAAAAAABBAAAABVPcHRpb25FeHBpcmVDb3VudGVySUQJAABkAAAAAgUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAEk9waW9uRXhwaXJlQ291bnRlcgQAAAAUUHJldmlvdXNPcHRpb25PcmRlcnMEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAATVG90YWxfT3B0aW9uX09yZGVycwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABFUb3RhbE9wdGlvbk9yZGVycwkAAGQAAAACBQAAABRQcmV2aW91c09wdGlvbk9yZGVycwAAAAAAAAAAAQQAAAAlUHJldmlvdXNPcHRpb25PcmRlcnNpblNwZWNpZmljQ291bnRlcgQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAFFRvdGFsX09wdGlvbl9PcmRlcnNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAIlRvdGFsT3B0aW9uT3JkZXJzaW5TcGVjaWZpY0NvdW50ZXIJAABkAAAAAgUAAAAlUHJldmlvdXNPcHRpb25PcmRlcnNpblNwZWNpZmljQ291bnRlcgAAAAAAAAAAAQQAAAAMUHJldmlvdXNDYWxsBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAC1RvdGFsX0NhbGxzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAACVRvdGFsQ2FsbAkAAGQAAAACBQAAAAxQcmV2aW91c0NhbGwAAAAAAAAAAAEEAAAAHVByZXZpb3VzQ2FsbGluU3BlY2lmaWNDb3VudGVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAMVG90YWxfQ2FsbHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAGlRvdGFsQ2FsbGluU3BlY2lmaWNDb3VudGVyCQAAZAAAAAIFAAAAHVByZXZpb3VzQ2FsbGluU3BlY2lmaWNDb3VudGVyAAAAAAAAAAABBAAAABBQcmV2aW91c1VzZXJDYWxsBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAANY2FsbGVyYWRkcmVzcwIAAAAMX1RvdGFsX0NhbGxzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAADVRvdGFsVXNlckNhbGwJAABkAAAAAgUAAAAQUHJldmlvdXNVc2VyQ2FsbAAAAAAAAAAAAQQAAAAhUHJldmlvdXNVc2VyQ2FsbGluU3BlY2lmaWNDb3VudGVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACBQAAAA1jYWxsZXJhZGRyZXNzAgAAAA1fVG90YWxfQ2FsbHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAHlRvdGFsVXNlckNhbGxpblNwZWNpZmljQ291bnRlcgkAAGQAAAACBQAAACFQcmV2aW91c1VzZXJDYWxsaW5TcGVjaWZpY0NvdW50ZXIAAAAAAAAAAAEDCQAAZgAAAAIFAAAADWNoZWNrYmxvY2tnYXAAAAAAAAAAAAIJAAACAAAAAQIAAAA1U29tZXRoaW5nIFdyb25nIHdpdGggT3JhY2xlIG9yIEhlaWdodCBpcyBub3QgbWF0Y2hlZC4DCQAAAAAAAAIFAAAAEnJlYWRfb3JhY2xlX3N0YXR1cwIAAAAFQ2xvc2UJAAACAAAAAQIAAAAxT3JhY2xlIGlzIGNsb3NlZC4gV2FpdCBVbnRpbCBPcmFjbGUgaXMgVHVybmVkIE9uLgMJAAAAAAAAAgUAAAANaWZCbGFja2xpc3RlZAIAAAADWWVzCQAAAgAAAAEJAAEsAAAAAgUAAAANY2FsbGVyYWRkcmVzcwIAAAA+IEFkZHJlc3MgaXMgQmxhY2tsaXN0ZWQuIFBsZWFzZSBjb250YWN0IEFkbWluIHRvIFdoaXRlbGlzdCBpdC4JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAFQ2FsbF8FAAAADWNhbGxlcmFkZHJlc3MCAAAAAV8JAAGkAAAAAQUAAAANVG90YWxVc2VyQ2FsbAUAAAAFcHJpY2UJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAPQ2FsbF9TdGFydF9FbmRfBQAAAA1jYWxsZXJhZGRyZXNzAgAAAAFfCQABpAAAAAEFAAAADVRvdGFsVXNlckNhbGwJAAEsAAAAAgkAASwAAAACCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAgAAAAFfCQABpAAAAAEFAAAAFU9wdGlvbkV4cGlyZUNvdW50ZXJJRAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAATVG90YWxfT3B0aW9uX09yZGVycwUAAAARVG90YWxPcHRpb25PcmRlcnMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAUVG90YWxfT3B0aW9uX09yZGVyc18JAAGkAAAAAQUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAIlRvdGFsT3B0aW9uT3JkZXJzaW5TcGVjaWZpY0NvdW50ZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAC1RvdGFsX0NhbGxzBQAAAAlUb3RhbENhbGwJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAMVG90YWxfQ2FsbHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEBQAAABpUb3RhbENhbGxpblNwZWNpZmljQ291bnRlcgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACBQAAAA1jYWxsZXJhZGRyZXNzAgAAAAxfVG90YWxfQ2FsbHMFAAAADVRvdGFsVXNlckNhbGwJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACBQAAAA1jYWxsZXJhZGRyZXNzAgAAAA1fVG90YWxfQ2FsbHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEBQAAAB5Ub3RhbFVzZXJDYWxsaW5TcGVjaWZpY0NvdW50ZXIFAAAAA25pbAAAAAFpAQAAAA5wbGFjZW9wdGlvblB1dAAAAAAEAAAADWNhbGxlcmFkZHJlc3MJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAANaWZCbGFja2xpc3RlZAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAAEWFkZHJfQkxBQ0tMSVNURURfBQAAAA1jYWxsZXJhZGRyZXNzBAAAABJyZWFkX29yYWNsZV9zdGF0dXMJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMCAAAADW9yYWNsZV9zdGF0dXMEAAAAFHJlYWRfT3B0aW9uQ291bnRlcklECQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzAgAAAA4xbV9jb250cmFjdF9pZAQAAAAKZ2V0YnRjZGF0YQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAAcxbV9idGNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEBAAAAAZzd2FwTGkJAAS1AAAAAgUAAAAKZ2V0YnRjZGF0YQIAAAABXwQAAAAFcHJpY2UJAAGRAAAAAgUAAAAGc3dhcExpAAAAAAAAAAAABAAAAAVibG9jawkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAABnN3YXBMaQAAAAAAAAAAAgQAAAANY2hlY2tibG9ja2dhcAkAAGUAAAACBQAAAAZoZWlnaHQFAAAABWJsb2NrBAAAABJPcGlvbkV4cGlyZUNvdW50ZXIAAAAAAAAAAAEEAAAAFU9wdGlvbkV4cGlyZUNvdW50ZXJJRAkAAGQAAAACBQAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAUAAAAST3Bpb25FeHBpcmVDb3VudGVyBAAAABRQcmV2aW91c09wdGlvbk9yZGVycwQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAABNUb3RhbF9PcHRpb25fT3JkZXJzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAEVRvdGFsT3B0aW9uT3JkZXJzCQAAZAAAAAIFAAAAFFByZXZpb3VzT3B0aW9uT3JkZXJzAAAAAAAAAAABBAAAACVQcmV2aW91c09wdGlvbk9yZGVyc2luU3BlY2lmaWNDb3VudGVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAUVG90YWxfT3B0aW9uX09yZGVyc18JAAGkAAAAAQUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAiVG90YWxPcHRpb25PcmRlcnNpblNwZWNpZmljQ291bnRlcgkAAGQAAAACBQAAACVQcmV2aW91c09wdGlvbk9yZGVyc2luU3BlY2lmaWNDb3VudGVyAAAAAAAAAAABBAAAAAtQcmV2aW91c1B1dAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAAApUb3RhbF9QdXRzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAACFRvdGFsUHV0CQAAZAAAAAIFAAAAC1ByZXZpb3VzUHV0AAAAAAAAAAABBAAAABxQcmV2aW91c1B1dGluU3BlY2lmaWNDb3VudGVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAALVG90YWxfUHV0c18JAAGkAAAAAQUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAZVG90YWxQdXRpblNwZWNpZmljQ291bnRlcgkAAGQAAAACBQAAABxQcmV2aW91c1B1dGluU3BlY2lmaWNDb3VudGVyAAAAAAAAAAABBAAAAA9QcmV2aW91c1VzZXJQdXQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAA1jYWxsZXJhZGRyZXNzAgAAAAtfVG90YWxfUHV0cwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAxUb3RhbFVzZXJQdXQJAABkAAAAAgUAAAAPUHJldmlvdXNVc2VyUHV0AAAAAAAAAAABBAAAACBQcmV2aW91c1VzZXJQdXRpblNwZWNpZmljQ291bnRlcgQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgUAAAANY2FsbGVyYWRkcmVzcwIAAAAMX1RvdGFsX1B1dHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAHVRvdGFsVXNlclB1dGluU3BlY2lmaWNDb3VudGVyCQAAZAAAAAIFAAAAIFByZXZpb3VzVXNlclB1dGluU3BlY2lmaWNDb3VudGVyAAAAAAAAAAABAwkAAGYAAAACBQAAAA1jaGVja2Jsb2NrZ2FwAAAAAAAAAAACCQAAAgAAAAECAAAANVNvbWV0aGluZyBXcm9uZyB3aXRoIE9yYWNsZSBvciBIZWlnaHQgaXMgbm90IG1hdGNoZWQuAwkAAAAAAAACBQAAABJyZWFkX29yYWNsZV9zdGF0dXMCAAAABUNsb3NlCQAAAgAAAAECAAAAMU9yYWNsZSBpcyBjbG9zZWQuIFdhaXQgVW50aWwgT3JhY2xlIGlzIFR1cm5lZCBPbi4DCQAAAAAAAAIFAAAADWlmQmxhY2tsaXN0ZWQCAAAAA1llcwkAAAIAAAABCQABLAAAAAIFAAAADWNhbGxlcmFkZHJlc3MCAAAAPiBBZGRyZXNzIGlzIEJsYWNrbGlzdGVkLiBQbGVhc2UgY29udGFjdCBBZG1pbiB0byBXaGl0ZWxpc3QgaXQuCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAABFB1dF8FAAAADWNhbGxlcmFkZHJlc3MCAAAAAV8JAAGkAAAAAQUAAAAMVG90YWxVc2VyUHV0BQAAAAVwcmljZQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAA5QdXRfU3RhcnRfRW5kXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwkAAaQAAAABBQAAAAxUb3RhbFVzZXJQdXQJAAEsAAAAAgkAASwAAAACCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAgAAAAFfCQABpAAAAAEFAAAAFU9wdGlvbkV4cGlyZUNvdW50ZXJJRAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAATVG90YWxfT3B0aW9uX09yZGVycwUAAAARVG90YWxPcHRpb25PcmRlcnMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAUVG90YWxfT3B0aW9uX09yZGVyc18JAAGkAAAAAQUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAIlRvdGFsT3B0aW9uT3JkZXJzaW5TcGVjaWZpY0NvdW50ZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAClRvdGFsX1B1dHMFAAAACFRvdGFsUHV0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAC1RvdGFsX1B1dHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEBQAAABlUb3RhbFB1dGluU3BlY2lmaWNDb3VudGVyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAADWNhbGxlcmFkZHJlc3MCAAAAC19Ub3RhbF9QdXRzBQAAAAxUb3RhbFVzZXJQdXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACBQAAAA1jYWxsZXJhZGRyZXNzAgAAAAxfVG90YWxfUHV0c18JAAGkAAAAAQUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAHVRvdGFsVXNlclB1dGluU3BlY2lmaWNDb3VudGVyBQAAAANuaWwAAAABaQEAAAAJQ2xhaW1DYWxsAAAAAQAAAA1DYWxsX1NlcXVlbmNlBAAAAA1jYWxsZXJhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAA3BtdAMJAAAAAAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAkAAAIAAAABAgAAADhObyBwYXltZW50IGF0dGFjaGVkLCBQbGVhc2UgQXR0YWNoIFRva2VucyBpbiBwYXltZW50WzFdLgQAAAASZ2V0T3B0aW9uQ2FsbFByaWNlCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAVDYWxsXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwUAAAANQ2FsbF9TZXF1ZW5jZQQAAAAaZ2V0T3B0aW9uQ2FsbF9TZXF1ZW5jZWRhdGEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAD0NhbGxfU3RhcnRfRW5kXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwUAAAANQ2FsbF9TZXF1ZW5jZQQAAAAUc3BsaXRTdGFydEVuZENvdW50ZXIJAAS1AAAAAgUAAAAaZ2V0T3B0aW9uQ2FsbF9TZXF1ZW5jZWRhdGECAAAAAV8EAAAAD2dldFN0YXJ0Q291bnRlcgkAAZEAAAACBQAAABRzcGxpdFN0YXJ0RW5kQ291bnRlcgAAAAAAAAAAAAQAAAANZ2V0RW5kQ291bnRlcgkAAZEAAAACBQAAABRzcGxpdFN0YXJ0RW5kQ291bnRlcgAAAAAAAAAAAQQAAAAYZ2V0YnRjZGF0YUF0U3RhcnRDb3VudGVyCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzCQABLAAAAAICAAAABzFtX2J0Y18FAAAAD2dldFN0YXJ0Q291bnRlcgQAAAAbc3BsaXRidGNwcmljZUF0U3RhcnRDb3VudGVyCQAEtQAAAAIFAAAAGGdldGJ0Y2RhdGFBdFN0YXJ0Q291bnRlcgIAAAABXwQAAAAZZ2V0YnRjcHJpY2VBdFN0YXJ0Q291bnRlcgkAAZEAAAACBQAAABtzcGxpdGJ0Y3ByaWNlQXRTdGFydENvdW50ZXIAAAAAAAAAAAAEAAAAFmdldGJ0Y2RhdGFBdEVuZENvdW50ZXIJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAHMW1fYnRjXwUAAAANZ2V0RW5kQ291bnRlcgQAAAAZc3BsaXRidGNwcmljZUF0RW5kQ291bnRlcgkABLUAAAACBQAAABZnZXRidGNkYXRhQXRFbmRDb3VudGVyAgAAAAFfBAAAABdnZXRidGNwcmljZUF0RW5kQ291bnRlcgkAAZEAAAACBQAAABlzcGxpdGJ0Y3ByaWNlQXRFbmRDb3VudGVyAAAAAAAAAAAABAAAAAlwcmljZWRpZmYJAABlAAAAAgkBAAAADXBhcnNlSW50VmFsdWUAAAABBQAAABdnZXRidGNwcmljZUF0RW5kQ291bnRlcgkBAAAADXBhcnNlSW50VmFsdWUAAAABBQAAABlnZXRidGNwcmljZUF0U3RhcnRDb3VudGVyBAAAAA9QcmV2aW91c0NhbGxXaW4EAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAWVG90YWxfT3B0aW9uX0NhbGxfV2lucwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAxUb3RhbENhbGxXaW4JAABkAAAAAgUAAAAPUHJldmlvdXNDYWxsV2luAAAAAAAAAAABBAAAABBQcmV2aW91c0NhbGxMb3NlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAFlRvdGFsX09wdGlvbl9DYWxsX0xvc2UDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAANVG90YWxDYWxsTG9zZQkAAGQAAAACBQAAABBQcmV2aW91c0NhbGxMb3NlAAAAAAAAAAABAwkAAGYAAAACAAAAAAAAAAAABQAAAAlwcmljZWRpZmYJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAABERp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KDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAOUHV0X1N0YXJ0X0VuZF8FAAAADWNhbGxlcmFkZHJlc3MCAAAAAV8FAAAADFB1dF9TZXF1ZW5jZQQAAAAUc3BsaXRTdGFydEVuZENvdW50ZXIJAAS1AAAAAgUAAAAZZ2V0T3B0aW9uUHV0X1NlcXVlbmNlZGF0YQIAAAABXwQAAAAPZ2V0U3RhcnRDb3VudGVyCQABkQAAAAIFAAAAFHNwbGl0U3RhcnRFbmRDb3VudGVyAAAAAAAAAAAABAAAAA1nZXRFbmRDb3VudGVyCQABkQAAAAIFAAAAFHNwbGl0U3RhcnRFbmRDb3VudGVyAAAAAAAAAAABBAAAABhnZXRidGNkYXRhQXRTdGFydENvdW50ZXIJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAHMW1fYnRjXwUAAAAPZ2V0U3RhcnRDb3VudGVyBAAAABtzcGxpdGJ0Y3ByaWNlQXRTdGFydENvdW50ZXIJAAS1AAAAAgUAAAAYZ2V0YnRjZGF0YUF0U3RhcnRDb3VudGVyAgAAAAFfBAAAABlnZXRidGNwcmljZUF0U3RhcnRDb3VudGVyCQABkQAAAAIFAAAAG3NwbGl0YnRjcHJpY2VBdFN0YXJ0Q291bnRlcgAAAAAAAAAAAAQAAAAWZ2V0YnRjZGF0YUF0RW5kQ291bnRlcgkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAAcxbV9idGNfBQAAAA1nZXRFbmRDb3VudGVyBAAAABlzcGxpdGJ0Y3ByaWNlQXRFbmRDb3VudGVyCQAEtQAAAAIFAAAAFmdldGJ0Y2RhdGFBdEVuZENvdW50ZXICAAAAAV8EAAAAF2dldGJ0Y3ByaWNlQXRFbmRDb3VudGVyCQABkQAAAAIFAAAAGXNwbGl0YnRjcHJpY2VBdEVuZENvdW50ZXIAAAAAAAAAAAAEAAAACXByaWNlZGlmZgkAAGUAAAACCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEFAAAAF2dldGJ0Y3ByaWNlQXRFbmRDb3VudGVyCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEFAAAA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byBTaWduIGl0LgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAA1vcmFjbGVfc3RhdHVzAgAAAARPcGVuBQAAAANuaWwAAAABaQEAAAAQQmxhY2tMaXN0QWRkcmVzcwAAAAEAAAALVXNlckFkZHJlc3MEAAAADWlmQmxhY2tsaXN0ZWQJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABFhZGRyX0JMQUNLTElTVEVEXwUAAAALVXNlckFkZHJlc3MEAAAAGFByZXZpb3VzQmxhY2tMaXN0QWRkcmVzcwQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAABpUb3RhbF9CbGFja19MaXN0ZWRfQWRkcmVzcwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABVUb3RhbEJsYWNrTGlzdEFkZHJlc3MJAABkAAAAAgUAAAAYUHJldmlvdXNCbGFja0xpc3RBZGRyZXNzAAAAAAAAAAABAwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAABlvcmFjbGVfY29udHJvbGxlcl9hZGRyZXNzCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAACVUaGlzIEFkZHJlc3MgaXMgbm90IEF1dGhvcml6ZWQuIE9ubHkgCQAEJQAAAAEFAAAAGW9yYWNsZV9jb250cm9sbGVyX2FkZHJlc3MCAAAAIiBpcyBBdXRob3JpemVkIEFkZHJlc3MgdG8gU2lnbiBpdC4DCQAAAAAAAAIFAAAADWlmQmxhY2tsaXN0ZWQCAAAAA1llcwkAAAIAAAABAgAAACpBZGRyZXNzIGlzIGFscmVhZHkgYXZhaWxhYmxlIGluIEJsYWNrbGlzdC4JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAABFhZGRyX0JMQUNLTElTVEVEXwUAAAALVXNlckFkZHJlc3MCAAAAA1llcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAaVG90YWxfQmxhY2tfTGlzdGVkX0FkZHJlc3MFAAAAFVRvdGFsQmxhY2tMaXN0QWRkcmVzcwUAAAADbmlsAAAAAWkBAAAAFkRlbGV0ZUJsYWNrTGlzdEFkZHJlc3MAAAABAAAAC1VzZXJBZGRyZXNzBAAAAA1pZkJsYWNrbGlzdGVkCQAEHQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAARYWRkcl9CTEFDS0xJU1RFRF8FAAAAC1VzZXJBZGRyZXNzBAAAABhQcmV2aW91c0JsYWNrTGlzdEFkZHJlc3MEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAaVG90YWxfQmxhY2tfTGlzdGVkX0FkZHJlc3MDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAVVG90YWxCbGFja0xpc3RBZGRyZXNzCQAAZQAAAAIFAAAAGFByZXZpb3VzQmxhY2tMaXN0QWRkcmVzcwAAAAAAAAAAAQMJAQAAAAIhPQAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAZb3JhY2xlX2NvbnRyb2xsZXJfYWRkcmVzcwkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAlVGhpcyBBZGRyZXNzIGlzIG5vdCBBdXRob3JpemVkLiBPbmx5IAkABCUAAAABBQAAABlvcmFjbGVfY29udHJvbGxlcl9hZGRyZXNzAgAAACIgaXMgQXV0aG9yaXplZCBBZGRyZXNzIHRvIFNpZ24gaXQuAwkAAAAAAAACBQAAAA1pZkJsYWNrbGlzdGVkAgAAAANZZXMJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQkAASwAAAACAgAAABFhZGRyX0JMQUNLTElTVEVEXwUAAAALVXNlckFkZHJlc3MJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAGlRvdGFsX0JsYWNrX0xpc3RlZF9BZGRyZXNzBQAAABVUb3RhbEJsYWNrTGlzdEFkZHJlc3MFAAAAA25pbAkAAAIAAAABAgAAACZBZGRyZXNzIGlzIG5vdCBhdmFpbGFibGUgaW4gQmxhY2tsaXN0LgAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V53S2SZQ==", "height": 2430314, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6ToSAxr38wKTgKLwKBE1bhaTaA761LSFbr8BgYeNbXm7 Next: 2niry5C9C4w1HLUe4nm6c7WxTP1Wc9akUmWg5dgBu8Gn Diff:
OldNewDifferences
3131 }
3232 let s = (p + 1)
3333 let t = {
34- let q = getInteger(this, "Total_Calls")
34+ let q = getInteger(this, ("Total_Option_Orders_" + toString(h)))
3535 if ($isInstanceOf(q, "Int"))
3636 then {
3737 let r = q
4141 }
4242 let u = (t + 1)
4343 let v = {
44- let q = getInteger(this, ("Total_Calls_" + toString(h)))
44+ let q = getInteger(this, "Total_Calls")
4545 if ($isInstanceOf(q, "Int"))
4646 then {
4747 let r = q
5151 }
5252 let w = (v + 1)
5353 let x = {
54- let q = getInteger(this, (e + "_Total_Calls"))
54+ let q = getInteger(this, ("Total_Calls_" + toString(h)))
5555 if ($isInstanceOf(q, "Int"))
5656 then {
5757 let r = q
6161 }
6262 let y = (x + 1)
6363 let z = {
64+ let q = getInteger(this, (e + "_Total_Calls"))
65+ if ($isInstanceOf(q, "Int"))
66+ then {
67+ let r = q
68+ r
69+ }
70+ else 0
71+ }
72+ let A = (z + 1)
73+ let B = {
6474 let q = getInteger(this, ((e + "_Total_Calls_") + toString(h)))
6575 if ($isInstanceOf(q, "Int"))
6676 then {
6979 }
7080 else 0
7181 }
72- let A = (z + 1)
82+ let C = (B + 1)
7383 if ((m > 2))
7484 then throw("Something Wrong with Oracle or Height is not matched.")
7585 else if ((g == "Close"))
7686 then throw("Oracle is closed. Wait Until Oracle is Turned On.")
7787 else if ((f == "Yes"))
7888 then throw((e + " Address is Blacklisted. Please contact Admin to Whitelist it."))
79- else [StringEntry(((("Call_" + e) + "_") + toString(y)), k), StringEntry(((("Call_Start_End_" + e) + "_") + toString(y)), ((toString(h) + "_") + toString(o))), IntegerEntry("Total_Option_Orders", s), IntegerEntry("Total_Calls", u), IntegerEntry(("Total_Calls_" + toString(h)), w), IntegerEntry((e + "_Total_Calls"), y), IntegerEntry(((e + "_Total_Calls_") + toString(h)), A)]
89+ else [StringEntry(((("Call_" + e) + "_") + toString(A)), k), StringEntry(((("Call_Start_End_" + e) + "_") + toString(A)), ((toString(h) + "_") + toString(o))), IntegerEntry("Total_Option_Orders", s), IntegerEntry(("Total_Option_Orders_" + toString(h)), u), IntegerEntry("Total_Calls", w), IntegerEntry(("Total_Calls_" + toString(h)), y), IntegerEntry((e + "_Total_Calls"), A), IntegerEntry(((e + "_Total_Calls_") + toString(h)), C)]
8090 }
8191
8292
104114 else 0
105115 }
106116 let s = (p + 1)
107- let B = {
108- let q = getInteger(this, "Total_Puts")
117+ let t = {
118+ let q = getInteger(this, ("Total_Option_Orders_" + toString(h)))
109119 if ($isInstanceOf(q, "Int"))
110120 then {
111121 let r = q
113123 }
114124 else 0
115125 }
116- let C = (B + 1)
126+ let u = (t + 1)
117127 let D = {
118- let q = getInteger(this, ("Total_Puts_" + toString(h)))
128+ let q = getInteger(this, "Total_Puts")
119129 if ($isInstanceOf(q, "Int"))
120130 then {
121131 let r = q
125135 }
126136 let E = (D + 1)
127137 let F = {
128- let q = getInteger(this, (e + "_Total_Puts"))
138+ let q = getInteger(this, ("Total_Puts_" + toString(h)))
129139 if ($isInstanceOf(q, "Int"))
130140 then {
131141 let r = q
135145 }
136146 let G = (F + 1)
137147 let H = {
148+ let q = getInteger(this, (e + "_Total_Puts"))
149+ if ($isInstanceOf(q, "Int"))
150+ then {
151+ let r = q
152+ r
153+ }
154+ else 0
155+ }
156+ let I = (H + 1)
157+ let J = {
138158 let q = getInteger(this, ((e + "_Total_Puts_") + toString(h)))
139159 if ($isInstanceOf(q, "Int"))
140160 then {
143163 }
144164 else 0
145165 }
146- let I = (H + 1)
166+ let K = (J + 1)
147167 if ((m > 2))
148168 then throw("Something Wrong with Oracle or Height is not matched.")
149169 else if ((g == "Close"))
150170 then throw("Oracle is closed. Wait Until Oracle is Turned On.")
151171 else if ((f == "Yes"))
152172 then throw((e + " Address is Blacklisted. Please contact Admin to Whitelist it."))
153- else [StringEntry(((("Put_" + e) + "_") + toString(G)), k), StringEntry(((("Put_Start_End_" + e) + "_") + toString(G)), ((toString(h) + "_") + toString(o))), IntegerEntry("Total_Option_Orders", s), IntegerEntry("Total_Puts", C), IntegerEntry(("Total_Puts_" + toString(h)), E), IntegerEntry((e + "_Total_Puts"), G), IntegerEntry(((e + "_Total_Puts_") + toString(h)), I)]
173+ else [StringEntry(((("Put_" + e) + "_") + toString(I)), k), StringEntry(((("Put_Start_End_" + e) + "_") + toString(I)), ((toString(h) + "_") + toString(o))), IntegerEntry("Total_Option_Orders", s), IntegerEntry(("Total_Option_Orders_" + toString(h)), u), IntegerEntry("Total_Puts", E), IntegerEntry(("Total_Puts_" + toString(h)), G), IntegerEntry((e + "_Total_Puts"), I), IntegerEntry(((e + "_Total_Puts_") + toString(h)), K)]
154174 }
155175
156176
157177
158178 @Callable(d)
159-func ClaimCall (J) = {
179+func ClaimCall (L) = {
160180 let e = toBase58String(d.caller.bytes)
161- let K = if ((size(d.payments) == 1))
181+ let M = if ((size(d.payments) == 1))
162182 then d.payments[0]
163183 else throw("No payment attached, Please Attach Tokens in payment[1].")
164- let L = getStringValue(this, ((("Call_" + e) + "_") + J))
165- let M = getStringValue(this, ((("Call_Start_End_" + e) + "_") + J))
166- let N = split(M, "_")
167- let O = N[0]
168- let P = N[1]
169- let Q = getStringValue(this, ("1m_btc_" + O))
170- let R = split(Q, "_")
171- let S = R[0]
172- let T = getStringValue(this, ("1m_btc_" + P))
173- let U = split(T, "_")
174- let V = U[0]
175- let W = (parseIntValue(V) - parseIntValue(S))
176- let X = {
184+ let N = getStringValue(this, ((("Call_" + e) + "_") + L))
185+ let O = getStringValue(this, ((("Call_Start_End_" + e) + "_") + L))
186+ let P = split(O, "_")
187+ let Q = P[0]
188+ let R = P[1]
189+ let S = getStringValue(this, ("1m_btc_" + Q))
190+ let T = split(S, "_")
191+ let U = T[0]
192+ let V = getStringValue(this, ("1m_btc_" + R))
193+ let W = split(V, "_")
194+ let X = W[0]
195+ let Y = (parseIntValue(X) - parseIntValue(U))
196+ let Z = {
177197 let q = getInteger(this, "Total_Option_Call_Wins")
178198 if ($isInstanceOf(q, "Int"))
179199 then {
182202 }
183203 else 0
184204 }
185- let Y = (X + 1)
186- let Z = {
205+ let aa = (Z + 1)
206+ let ab = {
187207 let q = getInteger(this, "Total_Option_Call_Lose")
188208 if ($isInstanceOf(q, "Int"))
189209 then {
192212 }
193213 else 0
194214 }
195- let aa = (Z + 1)
196- if ((0 > W))
197- then [IntegerEntry("Diff", W), IntegerEntry("Total_Option_Call_Lose", aa), StringEntry(((((((((((("c_" + e) + "_") + J) + "_") + O) + "_") + P) + "_") + S) + "_") + V), "lose"), StringEntry("message", "You lose!"), DeleteEntry(((("Call_" + e) + "_") + J)), DeleteEntry(((("Call_Start_End_" + e) + "_") + J))]
198- else [IntegerEntry("Diff", W), IntegerEntry("Total_Option_Call_Wins", Y), StringEntry(((((((((((("c_" + e) + "_") + J) + "_") + O) + "_") + P) + "_") + S) + "_") + V), "Win"), StringEntry("message", "You Win!"), DeleteEntry(((("Call_" + e) + "_") + J)), DeleteEntry(((("Call_Start_End_" + e) + "_") + J))]
215+ let ac = (ab + 1)
216+ if ((0 > Y))
217+ then [IntegerEntry("Diff", Y), IntegerEntry("Total_Option_Call_Lose", ac), StringEntry(((((((((((("c_" + e) + "_") + L) + "_") + Q) + "_") + R) + "_") + U) + "_") + X), "lose"), StringEntry("message", "You lose!"), DeleteEntry(((("Call_" + e) + "_") + L)), DeleteEntry(((("Call_Start_End_" + e) + "_") + L))]
218+ else [IntegerEntry("Diff", Y), IntegerEntry("Total_Option_Call_Wins", aa), StringEntry(((((((((((("c_" + e) + "_") + L) + "_") + Q) + "_") + R) + "_") + U) + "_") + X), "Win"), StringEntry("message", "You Win!"), DeleteEntry(((("Call_" + e) + "_") + L)), DeleteEntry(((("Call_Start_End_" + e) + "_") + L))]
199219 }
200220
201221
202222
203223 @Callable(d)
204-func ClaimPut (ab) = {
224+func ClaimPut (ad) = {
205225 let e = toBase58String(d.caller.bytes)
206- let K = if ((size(d.payments) == 1))
226+ let M = if ((size(d.payments) == 1))
207227 then d.payments[0]
208228 else throw("No payment attached, Please Attach Tokens in payment[1].")
209- let ac = getStringValue(this, ((("Put_" + e) + "_") + ab))
210- let ad = getStringValue(this, ((("Put_Start_End_" + e) + "_") + ab))
211- let N = split(ad, "_")
212- let O = N[0]
213- let P = N[1]
214- let Q = getStringValue(this, ("1m_btc_" + O))
215- let R = split(Q, "_")
216- let S = R[0]
217- let T = getStringValue(this, ("1m_btc_" + P))
218- let U = split(T, "_")
219- let V = U[0]
220- let W = (parseIntValue(V) - parseIntValue(S))
221- let ae = {
229+ let ae = getStringValue(this, ((("Put_" + e) + "_") + ad))
230+ let af = getStringValue(this, ((("Put_Start_End_" + e) + "_") + ad))
231+ let P = split(af, "_")
232+ let Q = P[0]
233+ let R = P[1]
234+ let S = getStringValue(this, ("1m_btc_" + Q))
235+ let T = split(S, "_")
236+ let U = T[0]
237+ let V = getStringValue(this, ("1m_btc_" + R))
238+ let W = split(V, "_")
239+ let X = W[0]
240+ let Y = (parseIntValue(X) - parseIntValue(U))
241+ let ag = {
222242 let q = getInteger(this, "Total_Option_Put_Wins")
223243 if ($isInstanceOf(q, "Int"))
224244 then {
227247 }
228248 else 0
229249 }
230- let af = (ae + 1)
231- let ag = {
250+ let ah = (ag + 1)
251+ let ai = {
232252 let q = getInteger(this, "Total_Option_Put_Lose")
233253 if ($isInstanceOf(q, "Int"))
234254 then {
237257 }
238258 else 0
239259 }
240- let ah = (ag + 1)
241- if ((W > 0))
242- then [IntegerEntry("Diff", W), IntegerEntry("Total_Option_Put_Lose", ah), StringEntry(((((((((((("p_" + e) + "_") + ab) + "_") + O) + "_") + P) + "_") + S) + "_") + V), "lose"), StringEntry("message", "You lose!"), DeleteEntry(((("Put_" + e) + "_") + ab)), DeleteEntry(((("Put_Start_End_" + e) + "_") + ab))]
243- else [IntegerEntry("Diff", W), IntegerEntry("Total_Option_Put_Wins", af), StringEntry(((((((((((("p_" + e) + "_") + ab) + "_") + O) + "_") + P) + "_") + S) + "_") + V), "Win"), StringEntry("message", "You Win!"), DeleteEntry(((("Put_" + e) + "_") + ab)), DeleteEntry(((("Put_Start_End_" + e) + "_") + ab))]
260+ let aj = (ai + 1)
261+ if ((Y > 0))
262+ then [IntegerEntry("Diff", Y), IntegerEntry("Total_Option_Put_Lose", aj), StringEntry(((((((((((("p_" + e) + "_") + ad) + "_") + Q) + "_") + R) + "_") + U) + "_") + X), "lose"), StringEntry("message", "You lose!"), DeleteEntry(((("Put_" + e) + "_") + ad)), DeleteEntry(((("Put_Start_End_" + e) + "_") + ad))]
263+ else [IntegerEntry("Diff", Y), IntegerEntry("Total_Option_Put_Wins", ah), StringEntry(((((((((((("p_" + e) + "_") + ad) + "_") + Q) + "_") + R) + "_") + U) + "_") + X), "Win"), StringEntry("message", "You Win!"), DeleteEntry(((("Put_" + e) + "_") + ad)), DeleteEntry(((("Put_Start_End_" + e) + "_") + ad))]
244264 }
245265
246266
247267
248268 @Callable(d)
249-func calldata (ai) = {
250- let i = getStringValue(this, ("1m_btc_" + toString(ai)))
269+func calldata (ak) = {
270+ let i = getStringValue(this, ("1m_btc_" + toString(ak)))
251271 let j = split(i, "_")
252272 let k = j[0]
253- let aj = j[1]
254- let ak = j[2]
255- let al = j[3]
273+ let al = j[1]
274+ let am = j[2]
275+ let an = j[3]
256276 [StringEntry("price", j[0]), StringEntry("time", j[1]), StringEntry("blockheight", j[2]), StringEntry("div", j[3])]
257277 }
258278
269289
270290
271291 @Callable(d)
272-func BlackListAddress (am) = {
273- let f = getString(this, ("addr_BLACKLISTED_" + am))
274- let an = {
292+func BlackListAddress (ao) = {
293+ let f = getString(this, ("addr_BLACKLISTED_" + ao))
294+ let ap = {
275295 let q = getInteger(this, "Total_Black_Listed_Address")
276296 if ($isInstanceOf(q, "Int"))
277297 then {
280300 }
281301 else 0
282302 }
283- let ao = (an + 1)
303+ let aq = (ap + 1)
284304 if ((d.caller != b))
285305 then throw((("This Address is not Authorized. Only " + toString(b)) + " is Authorized Address to Sign it."))
286306 else if ((f == "Yes"))
287307 then throw("Address is already available in Blacklist.")
288- else [StringEntry(("addr_BLACKLISTED_" + am), "Yes"), IntegerEntry("Total_Black_Listed_Address", ao)]
308+ else [StringEntry(("addr_BLACKLISTED_" + ao), "Yes"), IntegerEntry("Total_Black_Listed_Address", aq)]
289309 }
290310
291311
292312
293313 @Callable(d)
294-func DeleteBlackListAddress (am) = {
295- let f = getString(this, ("addr_BLACKLISTED_" + am))
296- let an = {
314+func DeleteBlackListAddress (ao) = {
315+ let f = getString(this, ("addr_BLACKLISTED_" + ao))
316+ let ap = {
297317 let q = getInteger(this, "Total_Black_Listed_Address")
298318 if ($isInstanceOf(q, "Int"))
299319 then {
302322 }
303323 else 0
304324 }
305- let ao = (an - 1)
325+ let aq = (ap - 1)
306326 if ((d.caller != b))
307327 then throw((("This Address is not Authorized. Only " + toString(b)) + " is Authorized Address to Sign it."))
308328 else if ((f == "Yes"))
309- then [DeleteEntry(("addr_BLACKLISTED_" + am)), IntegerEntry("Total_Black_Listed_Address", ao)]
329+ then [DeleteEntry(("addr_BLACKLISTED_" + ao)), IntegerEntry("Total_Black_Listed_Address", aq)]
310330 else throw("Address is not available in Blacklist.")
311331 }
312332
313333
314-@Verifier(ap)
315-func aq () = sigVerify(ap.bodyBytes, ap.proofs[0], ap.senderPublicKey)
334+@Verifier(ar)
335+func as () = sigVerify(ar.bodyBytes, ar.proofs[0], ar.senderPublicKey)
316336
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = base58'CYbv2nupcWmnVFixN6Q2sxd9ChbDsq1KqXQ66VjsZBJE'
55
66 let b = addressFromPublicKey(a)
77
88 let c = base58''
99
1010 @Callable(d)
1111 func placeoptionCall () = {
1212 let e = toBase58String(d.caller.bytes)
1313 let f = getString(this, ("addr_BLACKLISTED_" + e))
1414 let g = getStringValue(this, "oracle_status")
1515 let h = getIntegerValue(this, "1m_contract_id")
1616 let i = getStringValue(this, ("1m_btc_" + toString(h)))
1717 let j = split(i, "_")
1818 let k = j[0]
1919 let l = parseIntValue(j[2])
2020 let m = (height - l)
2121 let n = 1
2222 let o = (h + n)
2323 let p = {
2424 let q = getInteger(this, "Total_Option_Orders")
2525 if ($isInstanceOf(q, "Int"))
2626 then {
2727 let r = q
2828 r
2929 }
3030 else 0
3131 }
3232 let s = (p + 1)
3333 let t = {
34- let q = getInteger(this, "Total_Calls")
34+ let q = getInteger(this, ("Total_Option_Orders_" + toString(h)))
3535 if ($isInstanceOf(q, "Int"))
3636 then {
3737 let r = q
3838 r
3939 }
4040 else 0
4141 }
4242 let u = (t + 1)
4343 let v = {
44- let q = getInteger(this, ("Total_Calls_" + toString(h)))
44+ let q = getInteger(this, "Total_Calls")
4545 if ($isInstanceOf(q, "Int"))
4646 then {
4747 let r = q
4848 r
4949 }
5050 else 0
5151 }
5252 let w = (v + 1)
5353 let x = {
54- let q = getInteger(this, (e + "_Total_Calls"))
54+ let q = getInteger(this, ("Total_Calls_" + toString(h)))
5555 if ($isInstanceOf(q, "Int"))
5656 then {
5757 let r = q
5858 r
5959 }
6060 else 0
6161 }
6262 let y = (x + 1)
6363 let z = {
64+ let q = getInteger(this, (e + "_Total_Calls"))
65+ if ($isInstanceOf(q, "Int"))
66+ then {
67+ let r = q
68+ r
69+ }
70+ else 0
71+ }
72+ let A = (z + 1)
73+ let B = {
6474 let q = getInteger(this, ((e + "_Total_Calls_") + toString(h)))
6575 if ($isInstanceOf(q, "Int"))
6676 then {
6777 let r = q
6878 r
6979 }
7080 else 0
7181 }
72- let A = (z + 1)
82+ let C = (B + 1)
7383 if ((m > 2))
7484 then throw("Something Wrong with Oracle or Height is not matched.")
7585 else if ((g == "Close"))
7686 then throw("Oracle is closed. Wait Until Oracle is Turned On.")
7787 else if ((f == "Yes"))
7888 then throw((e + " Address is Blacklisted. Please contact Admin to Whitelist it."))
79- else [StringEntry(((("Call_" + e) + "_") + toString(y)), k), StringEntry(((("Call_Start_End_" + e) + "_") + toString(y)), ((toString(h) + "_") + toString(o))), IntegerEntry("Total_Option_Orders", s), IntegerEntry("Total_Calls", u), IntegerEntry(("Total_Calls_" + toString(h)), w), IntegerEntry((e + "_Total_Calls"), y), IntegerEntry(((e + "_Total_Calls_") + toString(h)), A)]
89+ else [StringEntry(((("Call_" + e) + "_") + toString(A)), k), StringEntry(((("Call_Start_End_" + e) + "_") + toString(A)), ((toString(h) + "_") + toString(o))), IntegerEntry("Total_Option_Orders", s), IntegerEntry(("Total_Option_Orders_" + toString(h)), u), IntegerEntry("Total_Calls", w), IntegerEntry(("Total_Calls_" + toString(h)), y), IntegerEntry((e + "_Total_Calls"), A), IntegerEntry(((e + "_Total_Calls_") + toString(h)), C)]
8090 }
8191
8292
8393
8494 @Callable(d)
8595 func placeoptionPut () = {
8696 let e = toBase58String(d.caller.bytes)
8797 let f = getString(this, ("addr_BLACKLISTED_" + e))
8898 let g = getStringValue(this, "oracle_status")
8999 let h = getIntegerValue(this, "1m_contract_id")
90100 let i = getStringValue(this, ("1m_btc_" + toString(h)))
91101 let j = split(i, "_")
92102 let k = j[0]
93103 let l = parseIntValue(j[2])
94104 let m = (height - l)
95105 let n = 1
96106 let o = (h + n)
97107 let p = {
98108 let q = getInteger(this, "Total_Option_Orders")
99109 if ($isInstanceOf(q, "Int"))
100110 then {
101111 let r = q
102112 r
103113 }
104114 else 0
105115 }
106116 let s = (p + 1)
107- let B = {
108- let q = getInteger(this, "Total_Puts")
117+ let t = {
118+ let q = getInteger(this, ("Total_Option_Orders_" + toString(h)))
109119 if ($isInstanceOf(q, "Int"))
110120 then {
111121 let r = q
112122 r
113123 }
114124 else 0
115125 }
116- let C = (B + 1)
126+ let u = (t + 1)
117127 let D = {
118- let q = getInteger(this, ("Total_Puts_" + toString(h)))
128+ let q = getInteger(this, "Total_Puts")
119129 if ($isInstanceOf(q, "Int"))
120130 then {
121131 let r = q
122132 r
123133 }
124134 else 0
125135 }
126136 let E = (D + 1)
127137 let F = {
128- let q = getInteger(this, (e + "_Total_Puts"))
138+ let q = getInteger(this, ("Total_Puts_" + toString(h)))
129139 if ($isInstanceOf(q, "Int"))
130140 then {
131141 let r = q
132142 r
133143 }
134144 else 0
135145 }
136146 let G = (F + 1)
137147 let H = {
148+ let q = getInteger(this, (e + "_Total_Puts"))
149+ if ($isInstanceOf(q, "Int"))
150+ then {
151+ let r = q
152+ r
153+ }
154+ else 0
155+ }
156+ let I = (H + 1)
157+ let J = {
138158 let q = getInteger(this, ((e + "_Total_Puts_") + toString(h)))
139159 if ($isInstanceOf(q, "Int"))
140160 then {
141161 let r = q
142162 r
143163 }
144164 else 0
145165 }
146- let I = (H + 1)
166+ let K = (J + 1)
147167 if ((m > 2))
148168 then throw("Something Wrong with Oracle or Height is not matched.")
149169 else if ((g == "Close"))
150170 then throw("Oracle is closed. Wait Until Oracle is Turned On.")
151171 else if ((f == "Yes"))
152172 then throw((e + " Address is Blacklisted. Please contact Admin to Whitelist it."))
153- else [StringEntry(((("Put_" + e) + "_") + toString(G)), k), StringEntry(((("Put_Start_End_" + e) + "_") + toString(G)), ((toString(h) + "_") + toString(o))), IntegerEntry("Total_Option_Orders", s), IntegerEntry("Total_Puts", C), IntegerEntry(("Total_Puts_" + toString(h)), E), IntegerEntry((e + "_Total_Puts"), G), IntegerEntry(((e + "_Total_Puts_") + toString(h)), I)]
173+ else [StringEntry(((("Put_" + e) + "_") + toString(I)), k), StringEntry(((("Put_Start_End_" + e) + "_") + toString(I)), ((toString(h) + "_") + toString(o))), IntegerEntry("Total_Option_Orders", s), IntegerEntry(("Total_Option_Orders_" + toString(h)), u), IntegerEntry("Total_Puts", E), IntegerEntry(("Total_Puts_" + toString(h)), G), IntegerEntry((e + "_Total_Puts"), I), IntegerEntry(((e + "_Total_Puts_") + toString(h)), K)]
154174 }
155175
156176
157177
158178 @Callable(d)
159-func ClaimCall (J) = {
179+func ClaimCall (L) = {
160180 let e = toBase58String(d.caller.bytes)
161- let K = if ((size(d.payments) == 1))
181+ let M = if ((size(d.payments) == 1))
162182 then d.payments[0]
163183 else throw("No payment attached, Please Attach Tokens in payment[1].")
164- let L = getStringValue(this, ((("Call_" + e) + "_") + J))
165- let M = getStringValue(this, ((("Call_Start_End_" + e) + "_") + J))
166- let N = split(M, "_")
167- let O = N[0]
168- let P = N[1]
169- let Q = getStringValue(this, ("1m_btc_" + O))
170- let R = split(Q, "_")
171- let S = R[0]
172- let T = getStringValue(this, ("1m_btc_" + P))
173- let U = split(T, "_")
174- let V = U[0]
175- let W = (parseIntValue(V) - parseIntValue(S))
176- let X = {
184+ let N = getStringValue(this, ((("Call_" + e) + "_") + L))
185+ let O = getStringValue(this, ((("Call_Start_End_" + e) + "_") + L))
186+ let P = split(O, "_")
187+ let Q = P[0]
188+ let R = P[1]
189+ let S = getStringValue(this, ("1m_btc_" + Q))
190+ let T = split(S, "_")
191+ let U = T[0]
192+ let V = getStringValue(this, ("1m_btc_" + R))
193+ let W = split(V, "_")
194+ let X = W[0]
195+ let Y = (parseIntValue(X) - parseIntValue(U))
196+ let Z = {
177197 let q = getInteger(this, "Total_Option_Call_Wins")
178198 if ($isInstanceOf(q, "Int"))
179199 then {
180200 let r = q
181201 r
182202 }
183203 else 0
184204 }
185- let Y = (X + 1)
186- let Z = {
205+ let aa = (Z + 1)
206+ let ab = {
187207 let q = getInteger(this, "Total_Option_Call_Lose")
188208 if ($isInstanceOf(q, "Int"))
189209 then {
190210 let r = q
191211 r
192212 }
193213 else 0
194214 }
195- let aa = (Z + 1)
196- if ((0 > W))
197- then [IntegerEntry("Diff", W), IntegerEntry("Total_Option_Call_Lose", aa), StringEntry(((((((((((("c_" + e) + "_") + J) + "_") + O) + "_") + P) + "_") + S) + "_") + V), "lose"), StringEntry("message", "You lose!"), DeleteEntry(((("Call_" + e) + "_") + J)), DeleteEntry(((("Call_Start_End_" + e) + "_") + J))]
198- else [IntegerEntry("Diff", W), IntegerEntry("Total_Option_Call_Wins", Y), StringEntry(((((((((((("c_" + e) + "_") + J) + "_") + O) + "_") + P) + "_") + S) + "_") + V), "Win"), StringEntry("message", "You Win!"), DeleteEntry(((("Call_" + e) + "_") + J)), DeleteEntry(((("Call_Start_End_" + e) + "_") + J))]
215+ let ac = (ab + 1)
216+ if ((0 > Y))
217+ then [IntegerEntry("Diff", Y), IntegerEntry("Total_Option_Call_Lose", ac), StringEntry(((((((((((("c_" + e) + "_") + L) + "_") + Q) + "_") + R) + "_") + U) + "_") + X), "lose"), StringEntry("message", "You lose!"), DeleteEntry(((("Call_" + e) + "_") + L)), DeleteEntry(((("Call_Start_End_" + e) + "_") + L))]
218+ else [IntegerEntry("Diff", Y), IntegerEntry("Total_Option_Call_Wins", aa), StringEntry(((((((((((("c_" + e) + "_") + L) + "_") + Q) + "_") + R) + "_") + U) + "_") + X), "Win"), StringEntry("message", "You Win!"), DeleteEntry(((("Call_" + e) + "_") + L)), DeleteEntry(((("Call_Start_End_" + e) + "_") + L))]
199219 }
200220
201221
202222
203223 @Callable(d)
204-func ClaimPut (ab) = {
224+func ClaimPut (ad) = {
205225 let e = toBase58String(d.caller.bytes)
206- let K = if ((size(d.payments) == 1))
226+ let M = if ((size(d.payments) == 1))
207227 then d.payments[0]
208228 else throw("No payment attached, Please Attach Tokens in payment[1].")
209- let ac = getStringValue(this, ((("Put_" + e) + "_") + ab))
210- let ad = getStringValue(this, ((("Put_Start_End_" + e) + "_") + ab))
211- let N = split(ad, "_")
212- let O = N[0]
213- let P = N[1]
214- let Q = getStringValue(this, ("1m_btc_" + O))
215- let R = split(Q, "_")
216- let S = R[0]
217- let T = getStringValue(this, ("1m_btc_" + P))
218- let U = split(T, "_")
219- let V = U[0]
220- let W = (parseIntValue(V) - parseIntValue(S))
221- let ae = {
229+ let ae = getStringValue(this, ((("Put_" + e) + "_") + ad))
230+ let af = getStringValue(this, ((("Put_Start_End_" + e) + "_") + ad))
231+ let P = split(af, "_")
232+ let Q = P[0]
233+ let R = P[1]
234+ let S = getStringValue(this, ("1m_btc_" + Q))
235+ let T = split(S, "_")
236+ let U = T[0]
237+ let V = getStringValue(this, ("1m_btc_" + R))
238+ let W = split(V, "_")
239+ let X = W[0]
240+ let Y = (parseIntValue(X) - parseIntValue(U))
241+ let ag = {
222242 let q = getInteger(this, "Total_Option_Put_Wins")
223243 if ($isInstanceOf(q, "Int"))
224244 then {
225245 let r = q
226246 r
227247 }
228248 else 0
229249 }
230- let af = (ae + 1)
231- let ag = {
250+ let ah = (ag + 1)
251+ let ai = {
232252 let q = getInteger(this, "Total_Option_Put_Lose")
233253 if ($isInstanceOf(q, "Int"))
234254 then {
235255 let r = q
236256 r
237257 }
238258 else 0
239259 }
240- let ah = (ag + 1)
241- if ((W > 0))
242- then [IntegerEntry("Diff", W), IntegerEntry("Total_Option_Put_Lose", ah), StringEntry(((((((((((("p_" + e) + "_") + ab) + "_") + O) + "_") + P) + "_") + S) + "_") + V), "lose"), StringEntry("message", "You lose!"), DeleteEntry(((("Put_" + e) + "_") + ab)), DeleteEntry(((("Put_Start_End_" + e) + "_") + ab))]
243- else [IntegerEntry("Diff", W), IntegerEntry("Total_Option_Put_Wins", af), StringEntry(((((((((((("p_" + e) + "_") + ab) + "_") + O) + "_") + P) + "_") + S) + "_") + V), "Win"), StringEntry("message", "You Win!"), DeleteEntry(((("Put_" + e) + "_") + ab)), DeleteEntry(((("Put_Start_End_" + e) + "_") + ab))]
260+ let aj = (ai + 1)
261+ if ((Y > 0))
262+ then [IntegerEntry("Diff", Y), IntegerEntry("Total_Option_Put_Lose", aj), StringEntry(((((((((((("p_" + e) + "_") + ad) + "_") + Q) + "_") + R) + "_") + U) + "_") + X), "lose"), StringEntry("message", "You lose!"), DeleteEntry(((("Put_" + e) + "_") + ad)), DeleteEntry(((("Put_Start_End_" + e) + "_") + ad))]
263+ else [IntegerEntry("Diff", Y), IntegerEntry("Total_Option_Put_Wins", ah), StringEntry(((((((((((("p_" + e) + "_") + ad) + "_") + Q) + "_") + R) + "_") + U) + "_") + X), "Win"), StringEntry("message", "You Win!"), DeleteEntry(((("Put_" + e) + "_") + ad)), DeleteEntry(((("Put_Start_End_" + e) + "_") + ad))]
244264 }
245265
246266
247267
248268 @Callable(d)
249-func calldata (ai) = {
250- let i = getStringValue(this, ("1m_btc_" + toString(ai)))
269+func calldata (ak) = {
270+ let i = getStringValue(this, ("1m_btc_" + toString(ak)))
251271 let j = split(i, "_")
252272 let k = j[0]
253- let aj = j[1]
254- let ak = j[2]
255- let al = j[3]
273+ let al = j[1]
274+ let am = j[2]
275+ let an = j[3]
256276 [StringEntry("price", j[0]), StringEntry("time", j[1]), StringEntry("blockheight", j[2]), StringEntry("div", j[3])]
257277 }
258278
259279
260280
261281 @Callable(d)
262282 func OpenOracle () = {
263283 let e = toBase58String(d.caller.bytes)
264284 if ((d.caller != b))
265285 then throw((("This Address is not Authorized. Only " + toString(b)) + " is Authorized Address to Sign it."))
266286 else [StringEntry("oracle_status", "Open")]
267287 }
268288
269289
270290
271291 @Callable(d)
272-func BlackListAddress (am) = {
273- let f = getString(this, ("addr_BLACKLISTED_" + am))
274- let an = {
292+func BlackListAddress (ao) = {
293+ let f = getString(this, ("addr_BLACKLISTED_" + ao))
294+ let ap = {
275295 let q = getInteger(this, "Total_Black_Listed_Address")
276296 if ($isInstanceOf(q, "Int"))
277297 then {
278298 let r = q
279299 r
280300 }
281301 else 0
282302 }
283- let ao = (an + 1)
303+ let aq = (ap + 1)
284304 if ((d.caller != b))
285305 then throw((("This Address is not Authorized. Only " + toString(b)) + " is Authorized Address to Sign it."))
286306 else if ((f == "Yes"))
287307 then throw("Address is already available in Blacklist.")
288- else [StringEntry(("addr_BLACKLISTED_" + am), "Yes"), IntegerEntry("Total_Black_Listed_Address", ao)]
308+ else [StringEntry(("addr_BLACKLISTED_" + ao), "Yes"), IntegerEntry("Total_Black_Listed_Address", aq)]
289309 }
290310
291311
292312
293313 @Callable(d)
294-func DeleteBlackListAddress (am) = {
295- let f = getString(this, ("addr_BLACKLISTED_" + am))
296- let an = {
314+func DeleteBlackListAddress (ao) = {
315+ let f = getString(this, ("addr_BLACKLISTED_" + ao))
316+ let ap = {
297317 let q = getInteger(this, "Total_Black_Listed_Address")
298318 if ($isInstanceOf(q, "Int"))
299319 then {
300320 let r = q
301321 r
302322 }
303323 else 0
304324 }
305- let ao = (an - 1)
325+ let aq = (ap - 1)
306326 if ((d.caller != b))
307327 then throw((("This Address is not Authorized. Only " + toString(b)) + " is Authorized Address to Sign it."))
308328 else if ((f == "Yes"))
309- then [DeleteEntry(("addr_BLACKLISTED_" + am)), IntegerEntry("Total_Black_Listed_Address", ao)]
329+ then [DeleteEntry(("addr_BLACKLISTED_" + ao)), IntegerEntry("Total_Black_Listed_Address", aq)]
310330 else throw("Address is not available in Blacklist.")
311331 }
312332
313333
314-@Verifier(ap)
315-func aq () = sigVerify(ap.bodyBytes, ap.proofs[0], ap.senderPublicKey)
334+@Verifier(ar)
335+func as () = sigVerify(ar.bodyBytes, ar.proofs[0], ar.senderPublicKey)
316336

github/deemru/w8io/169f3d6 
88.22 ms