tx · HW5i1hecWEjyQCr4AYGMgTXJt4T1Y3pt1rJR3MNVQW4a 3N2ZtCEGncHQjQF4g4oQBDeRRZoUQ3kJ7Nm: -0.01400000 Waves 2023.04.13 23:23 [2533258] smart account 3N2ZtCEGncHQjQF4g4oQBDeRRZoUQ3kJ7Nm > SELF 0.00000000 Waves
{ "type": 13, "id": "HW5i1hecWEjyQCr4AYGMgTXJt4T1Y3pt1rJR3MNVQW4a", "fee": 1400000, "feeAssetId": null, "timestamp": 1681417432227, "version": 2, "chainId": 84, "sender": "3N2ZtCEGncHQjQF4g4oQBDeRRZoUQ3kJ7Nm", "senderPublicKey": "EKmhAeU9yA52DSvBnr1WtWQWyyiCrauDYkmgnTns7ZkA", "proofs": [ "5rrHnNk11spbfdSiPCVW5XYLjh7bVR7KUuSkzF5aEgJ76qvrrWFTfgPeXQum5rGpo8f5RgvUq8RijKxTKdHghczA" ], "script": "base64:AAIFAAAAAAAAACIIAhILCgkBAQEBAQEIAQESCwoJAQEBAQEBCAEBEgQKAgEIAAAACAAAAAAURGFwcF9BZGRyZXNzX3B1Yl9rZXkBAAAAIDt0RfG+UDnkUrGYjjYAjr/q4kPWHyAQKg1dGLENBEMMAAAAABhwcm9kdWN0X2xhdW5jaF90aW1lc3RhbXAAAAABhgpF7AAAAAAAFHByb2R1Y3RfbGF1bmNoX2Vycm9yAgAAACNQcm9kdWN0IExhdW5jaCBUaW1lc3RhbXAgaXMgc2V0IGF0IAAAAAAQbm9fcGF5bWVudF9lcnJvcgIAAAA3Tm8gcGF5bWVudCBhdHRhY2hlZCwgUGxlYXNlIEF0dGFjaCBUb2tlbiBpbiBwYXltZW50WzFdLgAAAAASY2xvc2VkX29yYWNsZV9lcm9yAgAAADFPcmFjbGUgaXMgY2xvc2VkLiBXYWl0IFVudGlsIE9yYWNsZSBpcyBUdXJuZWQgT24uAAAAABF3aGl0ZWxpc3RfYWRkcmVzcwkBAAAAFGFkZHJlc3NGcm9tUHVibGljS2V5AAAAAQUAAAAURGFwcF9BZGRyZXNzX3B1Yl9rZXkAAAAAEm1pbmltdW1fb3JkZXJfc2l6ZQAAAAAAAJiWgAAAAAASbWF4aW11bV9vcmRlcl9zaXplAAAAAAJUC+QAAAAAAwAAAAFpAQAAAA9wbGFjZW9wdGlvbkNhbGwAAAAJAAAAFFRvdGFsX1Bvb2xfTGlxdWlkaXR5AAAAD09wdGlvbkNvdW50ZXJJRAAAAApIb3VzZV9yaXNrAAAABVByaWNlAAAAC0NhbGxfTGltaXRzAAAAClB1dF9MaW1pdHMAAAANT3JhY2xlX1N0YXR1cwAAABVTdGFydF9PcmRlcl9UaW1lc3RhbXAAAAATRW5kX09yZGVyX1RpbWVzdGFtcAQAAAANY2FsbGVyYWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQUAAAAQbm9fcGF5bWVudF9lcnJvcgQAAAANaWZCbGFja2xpc3RlZAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAAEWFkZHJfQkxBQ0tMSVNURURfBQAAAA1jYWxsZXJhZGRyZXNzBAAAACFyZWFkX3N0YXJ0X29yZGVyX3Blcm1pdF90aW1lc3RhbXAFAAAAFVN0YXJ0X09yZGVyX1RpbWVzdGFtcAQAAAAfcmVhZF9lbmRfb3JkZXJfcGVybWl0X3RpbWVzdGFtcAUAAAATRW5kX09yZGVyX1RpbWVzdGFtcAQAAAAZcmVhZF90b3RhbF9wb29sX2xpcXVpZGl0eQUAAAAUVG90YWxfUG9vbF9MaXF1aWRpdHkEAAAAGG5ld190b3RhbF9wb29sX2xpcXVpZGl0eQkAAGQAAAACBQAAABlyZWFkX3RvdGFsX3Bvb2xfbGlxdWlkaXR5CAUAAAADcG10AAAABmFtb3VudAQAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAD09wdGlvbkNvdW50ZXJJRAQAAAAST3Bpb25FeHBpcmVDb3VudGVyAAAAAAAAAAABBAAAABVPcHRpb25FeHBpcmVDb3VudGVySUQJAABkAAAAAgUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAEk9waW9uRXhwaXJlQ291bnRlcgQAAAAUUHJldmlvdXNPcHRpb25PcmRlcnMEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAATVG90YWxfT3B0aW9uX09yZGVycwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABFUb3RhbE9wdGlvbk9yZGVycwkAAGQAAAACBQAAABRQcmV2aW91c09wdGlvbk9yZGVycwAAAAAAAAAAAQQAAAAnUHJldmlvdXNGdW5kc0FkZGVkSW5TcGVjaWZpY09wdGlvbk9yZGVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAiVG90YWxfRnVuZHNfQWRkZWRfSW5fT3B0aW9uX09yZGVyXwkAAaQAAAABBQAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAACRUb3RhbEZ1bmRzQWRkZWRJblNwZWNpZmljT3B0aW9uT3JkZXIJAABkAAAAAgUAAAAnUHJldmlvdXNGdW5kc0FkZGVkSW5TcGVjaWZpY09wdGlvbk9yZGVyCAUAAAADcG10AAAABmFtb3VudAQAAAAlUHJldmlvdXNPcHRpb25PcmRlcnNpblNwZWNpZmljQ291bnRlcgQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAFFRvdGFsX09wdGlvbl9PcmRlcnNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAIlRvdGFsT3B0aW9uT3JkZXJzaW5TcGVjaWZpY0NvdW50ZXIJAABkAAAAAgUAAAAlUHJldmlvdXNPcHRpb25PcmRlcnNpblNwZWNpZmljQ291bnRlcgAAAAAAAAAAAQQAAAAMUHJldmlvdXNDYWxsBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAC1RvdGFsX0NhbGxzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAACVRvdGFsQ2FsbAkAAGQAAAACBQAAAAxQcmV2aW91c0NhbGwAAAAAAAAAAAEEAAAAHVByZXZpb3VzQ2FsbGluU3BlY2lmaWNDb3VudGVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAMVG90YWxfQ2FsbHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAGlRvdGFsQ2FsbGluU3BlY2lmaWNDb3VudGVyCQAAZAAAAAIFAAAAHVByZXZpb3VzQ2FsbGluU3BlY2lmaWNDb3VudGVyAAAAAAAAAAABBAAAABBQcmV2aW91c1VzZXJDYWxsBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAANY2FsbGVyYWRkcmVzcwIAAAAMX1RvdGFsX0NhbGxzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAADVRvdGFsVXNlckNhbGwJAABkAAAAAgUAAAAQUHJldmlvdXNVc2VyQ2FsbAAAAAAAAAAAAQQAAAAhUHJldmlvdXNVc2VyQ2FsbGluU3BlY2lmaWNDb3VudGVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACBQAAAA1jYWxsZXJhZGRyZXNzAgAAAA1fVG90YWxfQ2FsbHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAHlRvdGFsVXNlckNhbGxpblNwZWNpZmljQ291bnRlcgkAAGQAAAACBQAAACFQcmV2aW91c1VzZXJDYWxsaW5TcGVjaWZpY0NvdW50ZXIAAAAAAAAAAAEEAAAADUZ1bmRzX2F0X3Jpc2sFAAAACkhvdXNlX3Jpc2sDCQEAAAACIT0AAAACCAUAAAABaQAAAAZjYWxsZXIFAAAAEXdoaXRlbGlzdF9hZGRyZXNzCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAACVUaGlzIEFkZHJlc3MgaXMgbm90IEF1dGhvcml6ZWQuIE9ubHkgCQAEJQAAAAEFAAAAEXdoaXRlbGlzdF9hZGRyZXNzAgAAACIgaXMgQXV0aG9yaXplZCBBZGRyZXNzIHRvIFNpZ24gaXQuAwkAAGYAAAACBQAAABhwcm9kdWN0X2xhdW5jaF90aW1lc3RhbXAIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wCQAAAgAAAAEJAAEsAAAAAgUAAAAUcHJvZHVjdF9sYXVuY2hfZXJyb3IJAAGkAAAAAQUAAAAYcHJvZHVjdF9sYXVuY2hfdGltZXN0YW1wAwkAAAAAAAACBQAAAA1PcmFjbGVfU3RhdHVzAgAAAAVDTE9TRQkAAAIAAAABBQAAABJjbG9zZWRfb3JhY2xlX2Vyb3IDCQAAAAAAAAIFAAAADWlmQmxhY2tsaXN0ZWQCAAAAA1llcwkAAAIAAAABCQABLAAAAAIFAAAADWNhbGxlcmFkZHJlc3MCAAAAPiBBZGRyZXNzIGlzIEJsYWNrbGlzdGVkLiBQbGVhc2UgY29udGFjdCBBZG1pbiB0byBXaGl0ZWxpc3QgaXQuAwkBAAAACWlzRGVmaW5lZAAAAAEIBQAAAANwbXQAAAAHYXNzZXRJZAkAAAIAAAABAgAAACtPbmx5IFROIGlzIGFsbG93ZWQgdG8gZGVwb3NpdCBhdCB0aGUgbW9tZW50AwkAAGcAAAACCAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAUAAAAfcmVhZF9lbmRfb3JkZXJfcGVybWl0X3RpbWVzdGFtcAkAAAIAAAABAgAAAEdPcHRpb24gT3JkZXIgcGxhY2luZyBUaW1pbmcgTGltaXRzIGFyZSBPdmVyLiBQbGVhc2UgSm9pbiBpbiBOZXh0IEN5Y2xlLgMJAABmAAAAAgUAAAASbWluaW11bV9vcmRlcl9zaXplCAUAAAADcG10AAAABmFtb3VudAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAgUGxhY2VkIE9yZGVyIFNpemUgaXMgbGVzcyB0aGFuIFsJAAGkAAAAAQUAAAASbWluaW11bV9vcmRlcl9zaXplAgAAAAovMTBeOF0gVE4uAwkAAGYAAAACCAUAAAADcG10AAAABmFtb3VudAUAAAASbWF4aW11bV9vcmRlcl9zaXplCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAACBQbGFjZWQgT3JkZXIgU2l6ZSBpcyBtb3JlIHRoYW4gWwkAAaQAAAABBQAAABJtYXhpbXVtX29yZGVyX3NpemUCAAAACi8xMF44XSBUTi4JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAFQ2FsbF8FAAAADWNhbGxlcmFkZHJlc3MCAAAAAV8JAAGkAAAAAQUAAAANVG90YWxVc2VyQ2FsbAkAAaQAAAABBQAAAAVQcmljZQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAMQ2FsbF9BbW91bnRfBQAAAA1jYWxsZXJhZGRyZXNzAgAAAAFfCQABpAAAAAEFAAAADVRvdGFsVXNlckNhbGwIBQAAAANwbXQAAAAGYW1vdW50CQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAD0NhbGxfU3RhcnRfRW5kXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwkAAaQAAAABBQAAAA1Ub3RhbFVzZXJDYWxsCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAIAAAABXwkAAaQAAAABBQAAABVPcHRpb25FeHBpcmVDb3VudGVySUQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAE1RvdGFsX09wdGlvbl9PcmRlcnMFAAAAEVRvdGFsT3B0aW9uT3JkZXJzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAIlRvdGFsX0Z1bmRzX0FkZGVkX0luX09wdGlvbl9PcmRlcl8JAAGkAAAAAQUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAJFRvdGFsRnVuZHNBZGRlZEluU3BlY2lmaWNPcHRpb25PcmRlcgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAUVG90YWxfUG9vbF9MaXF1aWRpdHkFAAAAGG5ld190b3RhbF9wb29sX2xpcXVpZGl0eQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAAA5GdW5kc19BdF9SaXNrXwkAAaQAAAABBQAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAUAAAANRnVuZHNfYXRfcmlzawkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAALQ2FsbF9MaW1pdHMFAAAAC0NhbGxfTGltaXRzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAApQdXRfTGltaXRzBQAAAApQdXRfTGltaXRzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAFFRvdGFsX09wdGlvbl9PcmRlcnNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEBQAAACJUb3RhbE9wdGlvbk9yZGVyc2luU3BlY2lmaWNDb3VudGVyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAAtUb3RhbF9DYWxscwUAAAAJVG90YWxDYWxsCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAADFRvdGFsX0NhbGxzXwkAAaQAAAABBQAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAUAAAAaVG90YWxDYWxsaW5TcGVjaWZpY0NvdW50ZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgUAAAANY2FsbGVyYWRkcmVzcwIAAAAMX1RvdGFsX0NhbGxzBQAAAA1Ub3RhbFVzZXJDYWxsCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgUAAAANY2FsbGVyYWRkcmVzcwIAAAANX1RvdGFsX0NhbGxzXwkAAaQAAAABBQAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAUAAAAeVG90YWxVc2VyQ2FsbGluU3BlY2lmaWNDb3VudGVyBQAAAANuaWwAAAABaQEAAAAOcGxhY2VvcHRpb25QdXQAAAAJAAAAFFRvdGFsX1Bvb2xfTGlxdWlkaXR5AAAAD09wdGlvbkNvdW50ZXJJRAAAAApIb3VzZV9yaXNrAAAABVByaWNlAAAAC0NhbGxfTGltaXRzAAAAClB1dF9MaW1pdHMAAAANT3JhY2xlX1N0YXR1cwAAABVTdGFydF9PcmRlcl9UaW1lc3RhbXAAAAATRW5kX09yZGVyX1RpbWVzdGFtcAQAAAANY2FsbGVyYWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQUAAAAQbm9fcGF5bWVudF9lcnJvcgQAAAANaWZCbGFja2xpc3RlZAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAAEWFkZHJfQkxBQ0tMSVNURURfBQAAAA1jYWxsZXJhZGRyZXNzBAAAACFyZWFkX3N0YXJ0X29yZGVyX3Blcm1pdF90aW1lc3RhbXAFAAAAFVN0YXJ0X09yZGVyX1RpbWVzdGFtcAQAAAAfcmVhZF9lbmRfb3JkZXJfcGVybWl0X3RpbWVzdGFtcAUAAAATRW5kX09yZGVyX1RpbWVzdGFtcAQAAAAZcmVhZF90b3RhbF9wb29sX2xpcXVpZGl0eQUAAAAUVG90YWxfUG9vbF9MaXF1aWRpdHkEAAAAGG5ld190b3RhbF9wb29sX2xpcXVpZGl0eQkAAGQAAAACBQAAABlyZWFkX3RvdGFsX3Bvb2xfbGlxdWlkaXR5CAUAAAADcG10AAAABmFtb3VudAQAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAD09wdGlvbkNvdW50ZXJJRAQAAAAST3Bpb25FeHBpcmVDb3VudGVyAAAAAAAAAAABBAAAABVPcHRpb25FeHBpcmVDb3VudGVySUQJAABkAAAAAgUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAEk9waW9uRXhwaXJlQ291bnRlcgQAAAAUUHJldmlvdXNPcHRpb25PcmRlcnMEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAATVG90YWxfT3B0aW9uX09yZGVycwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABFUb3RhbE9wdGlvbk9yZGVycwkAAGQAAAACBQAAABRQcmV2aW91c09wdGlvbk9yZGVycwAAAAAAAAAAAQQAAAAnUHJldmlvdXNGdW5kc0FkZGVkSW5TcGVjaWZpY09wdGlvbk9yZGVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAiVG90YWxfRnVuZHNfQWRkZWRfSW5fT3B0aW9uX09yZGVyXwkAAaQAAAABBQAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAACRUb3RhbEZ1bmRzQWRkZWRJblNwZWNpZmljT3B0aW9uT3JkZXIJAABkAAAAAgUAAAAnUHJldmlvdXNGdW5kc0FkZGVkSW5TcGVjaWZpY09wdGlvbk9yZGVyCAUAAAADcG10AAAABmFtb3VudAQAAAAlUHJldmlvdXNPcHRpb25PcmRlcnNpblNwZWNpZmljQ291bnRlcgQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAFFRvdGFsX09wdGlvbl9PcmRlcnNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAIlRvdGFsT3B0aW9uT3JkZXJzaW5TcGVjaWZpY0NvdW50ZXIJAABkAAAAAgUAAAAlUHJldmlvdXNPcHRpb25PcmRlcnNpblNwZWNpZmljQ291bnRlcgAAAAAAAAAAAQQAAAALUHJldmlvdXNQdXQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAKVG90YWxfUHV0cwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAhUb3RhbFB1dAkAAGQAAAACBQAAAAtQcmV2aW91c1B1dAAAAAAAAAAAAQQAAAAcUHJldmlvdXNQdXRpblNwZWNpZmljQ291bnRlcgQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAC1RvdGFsX1B1dHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAGVRvdGFsUHV0aW5TcGVjaWZpY0NvdW50ZXIJAABkAAAAAgUAAAAcUHJldmlvdXNQdXRpblNwZWNpZmljQ291bnRlcgAAAAAAAAAAAQQAAAAPUHJldmlvdXNVc2VyUHV0BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAANY2FsbGVyYWRkcmVzcwIAAAALX1RvdGFsX1B1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UHV0CAUAAAADcG10AAAABmFtb3VudAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAA5QdXRfU3RhcnRfRW5kXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwkAAaQAAAABBQAAAAxUb3RhbFVzZXJQdXQJAAEsAAAAAgkAASwAAAACCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEAgAAAAFfCQABpAAAAAEFAAAAFU9wdGlvbkV4cGlyZUNvdW50ZXJJRAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAATVG90YWxfT3B0aW9uX09yZGVycwUAAAARVG90YWxPcHRpb25PcmRlcnMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAiVG90YWxfRnVuZHNfQWRkZWRfSW5fT3B0aW9uX09yZGVyXwkAAaQAAAABBQAAABRyZWFkX09wdGlvbkNvdW50ZXJJRAUAAAAkVG90YWxGdW5kc0FkZGVkSW5TcGVjaWZpY09wdGlvbk9yZGVyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABRUb3RhbF9Qb29sX0xpcXVpZGl0eQUAAAAYbmV3X3RvdGFsX3Bvb2xfbGlxdWlkaXR5CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAADkZ1bmRzX0F0X1Jpc2tfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEBQAAAA1GdW5kc19hdF9yaXNrCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAAtDYWxsX0xpbWl0cwUAAAALQ2FsbF9MaW1pdHMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAClB1dF9MaW1pdHMFAAAAClB1dF9MaW1pdHMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAUVG90YWxfT3B0aW9uX09yZGVyc18JAAGkAAAAAQUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAIlRvdGFsT3B0aW9uT3JkZXJzaW5TcGVjaWZpY0NvdW50ZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAClRvdGFsX1B1dHMFAAAACFRvdGFsUHV0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAC1RvdGFsX1B1dHNfCQABpAAAAAEFAAAAFHJlYWRfT3B0aW9uQ291bnRlcklEBQAAABlUb3RhbFB1dGluU3BlY2lmaWNDb3VudGVyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAADWNhbGxlcmFkZHJlc3MCAAAAC19Ub3RhbF9QdXRzBQAAAAxUb3RhbFVzZXJQdXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACBQAAAA1jYWxsZXJhZGRyZXNzAgAAAAxfVG90YWxfUHV0c18JAAGkAAAAAQUAAAAUcmVhZF9PcHRpb25Db3VudGVySUQFAAAAHVRvdGFsVXNlclB1dGluU3BlY2lmaWNDb3VudGVyBQAAAANuaWwAAAABaQEAAAAOQWRkRnVuZHNUb1Bvb2wAAAACAAAAD09wdGlvbkNvdW50ZXJJRAAAAA1PcmFjbGVfU3RhdHVzBAAAAA1jYWxsZXJhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAC0N1cnJlbmN5X0lEAgAAAAJUTgQAAAADcG10AwkAAAAAAAACCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAACQAAAgAAAAECAAAASU5vIHBheW1lbnQgYXR0YWNoZWQsIFBsZWFzZSBBdHRhY2ggb25seSBXaGl0ZWxpc3RlZCBUb2tlbnMgaW4gcGF5bWVudFsxXS4EAAAADWlmQmxhY2tsaXN0ZWQJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABFhZGRyX0JMQUNLTElTVEVEXwUAAAANY2FsbGVyYWRkcmVzcwQAAAATUHJldmlvdXNVc2VyRGVwb3NpdAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgUAAAALQ3VycmVuY3lfSUQCAAAAAV8FAAAADWNhbGxlcmFkZHJlc3MDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAQVG90YWxVc2VyRGVwb3NpdAkAAGQAAAACBQAAABNQcmV2aW91c1VzZXJEZXBvc2l0CAUAAAADcG10AAAABmFtb3VudAQAAAAYUHJldmlvdXNEZXBvc2l0Q291bnRlcklEBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAEkRlcG9zaXRfQ291bnRlcl9JRAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABVUb3RhbERlcG9zaXRDb3VudGVySUQJAABkAAAAAgUAAAAYUHJldmlvdXNEZXBvc2l0Q291bnRlcklEAAAAAAAAAAABAwkAAGYAAAACBQAAABhwcm9kdWN0X2xhdW5jaF90aW1lc3RhbXAIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wCQAAAgAAAAEJAAEsAAAAAgUAAAAUcHJvZHVjdF9sYXVuY2hfZXJyb3IJAAGkAAAAAQUAAAAYcHJvZHVjdF9sYXVuY2hfdGltZXN0YW1wAwkAAAAAAAACBQAAAA1PcmFjbGVfU3RhdHVzAgAAAAVDTE9TRQkAAAIAAAABBQAAABJjbG9zZWRfb3JhY2xlX2Vyb3IDCQAAAAAAAAIFAAAADWlmQmxhY2tsaXN0ZWQCAAAAA1llcwkAAAIAAAABCQABLAAAAAIFAAAADWNhbGxlcmFkZHJlc3MCAAAAPiBBZGRyZXNzIGlzIEJsYWNrbGlzdGVkLiBQbGVhc2UgY29udGFjdCBBZG1pbiB0byBXaGl0ZWxpc3QgaXQuAwkBAAAACWlzRGVmaW5lZAAAAAEIBQAAAANwbXQAAAAHYXNzZXRJZAkAAAIAAAABAgAAACtPbmx5IFROIGlzIGFsbG93ZWQgdG8gZGVwb3NpdCBhdCB0aGUgbW9tZW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgUAAAALQ3VycmVuY3lfSUQCAAAAAV8FAAAADWNhbGxlcmFkZHJlc3MFAAAAEFRvdGFsVXNlckRlcG9zaXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABVUb3RhbERlcG9zaXRDb3VudGVySUQCAAAAAV8FAAAAC0N1cnJlbmN5X0lEAgAAAAFfBQAAAA1jYWxsZXJhZGRyZXNzBQAAABBUb3RhbFVzZXJEZXBvc2l0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABJEZXBvc2l0X0NvdW50ZXJfSUQFAAAAFVRvdGFsRGVwb3NpdENvdW50ZXJJRAUAAAADbmlsAAAAAAembDk=", "height": 2533258, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6ARt7ebvjbErdkRLYQhVrH1S9xCpcsXL5UWeWrZ61muE Next: H5Sh86y8jsH9ZopMJbWqTUzyymxWDYo7KasFrso9J72q Diff:
Old | New | Differences | |
---|---|---|---|
101 | 101 | else 0 | |
102 | 102 | } | |
103 | 103 | let R = (Q + 1) | |
104 | - | let S = { | |
105 | - | let D = getInteger(this, "Pending_Option_Limits") | |
106 | - | if ($isInstanceOf(D, "Int")) | |
107 | - | then { | |
108 | - | let E = D | |
109 | - | E | |
110 | - | } | |
111 | - | else 0 | |
112 | - | } | |
113 | - | let T = l | |
104 | + | let S = l | |
114 | 105 | if ((i.caller != f)) | |
115 | 106 | then throw((("This Address is not Authorized. Only " + toString(f)) + " is Authorized Address to Sign it.")) | |
116 | 107 | else if ((b > lastBlock.timestamp)) | |
117 | 108 | then throw((c + toString(b))) | |
118 | - | else if ((p == " | |
109 | + | else if ((p == "CLOSE")) | |
119 | 110 | then throw(e) | |
120 | 111 | else if ((u == "Yes")) | |
121 | 112 | then throw((s + " Address is Blacklisted. Please contact Admin to Whitelist it.")) | |
127 | 118 | then throw((("Placed Order Size is less than [" + toString(g)) + "/10^8] TN.")) | |
128 | 119 | else if ((t.amount > h)) | |
129 | 120 | then throw((("Placed Order Size is more than [" + toString(h)) + "/10^8] TN.")) | |
130 | - | else [StringEntry(((("Call_" + s) + "_") + toString(P)), toString(m)), IntegerEntry(((("Call_Amount_" + s) + "_") + toString(P)), t.amount), StringEntry(((("Call_Start_End_" + s) + "_") + toString(P)), ((toString(z) + "_") + toString(B))), IntegerEntry("Total_Option_Orders", F), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(z)), H), IntegerEntry("Total_Pool_Liquidity", y), IntegerEntry((" | |
121 | + | else [StringEntry(((("Call_" + s) + "_") + toString(P)), toString(m)), IntegerEntry(((("Call_Amount_" + s) + "_") + toString(P)), t.amount), StringEntry(((("Call_Start_End_" + s) + "_") + toString(P)), ((toString(z) + "_") + toString(B))), IntegerEntry("Total_Option_Orders", F), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(z)), H), IntegerEntry("Total_Pool_Liquidity", y), IntegerEntry(("Funds_At_Risk_" + toString(z)), S), IntegerEntry("Call_Limits", n), IntegerEntry("Put_Limits", o), IntegerEntry(("Total_Option_Orders_" + toString(z)), J), IntegerEntry("Total_Calls", L), IntegerEntry(("Total_Calls_" + toString(z)), N), IntegerEntry((s + "_Total_Calls"), P), IntegerEntry(((s + "_Total_Calls_") + toString(z)), R)] | |
131 | 122 | } | |
132 | 123 | ||
133 | 124 | ||
176 | 167 | else 0 | |
177 | 168 | } | |
178 | 169 | let J = (I + 1) | |
179 | - | let | |
170 | + | let T = { | |
180 | 171 | let D = getInteger(this, "Total_Puts") | |
181 | 172 | if ($isInstanceOf(D, "Int")) | |
182 | 173 | then { | |
185 | 176 | } | |
186 | 177 | else 0 | |
187 | 178 | } | |
188 | - | let | |
189 | - | let | |
179 | + | let U = (T + 1) | |
180 | + | let V = { | |
190 | 181 | let D = getInteger(this, ("Total_Puts_" + toString(z))) | |
191 | 182 | if ($isInstanceOf(D, "Int")) | |
192 | 183 | then { | |
195 | 186 | } | |
196 | 187 | else 0 | |
197 | 188 | } | |
198 | - | let | |
199 | - | let | |
189 | + | let W = (V + 1) | |
190 | + | let X = { | |
200 | 191 | let D = getInteger(this, (s + "_Total_Puts")) | |
201 | 192 | if ($isInstanceOf(D, "Int")) | |
202 | 193 | then { | |
205 | 196 | } | |
206 | 197 | else 0 | |
207 | 198 | } | |
208 | - | let | |
209 | - | let | |
199 | + | let Y = (X + 1) | |
200 | + | let Z = { | |
210 | 201 | let D = getInteger(this, ((s + "_Total_Puts_") + toString(z))) | |
211 | 202 | if ($isInstanceOf(D, "Int")) | |
212 | 203 | then { | |
215 | 206 | } | |
216 | 207 | else 0 | |
217 | 208 | } | |
218 | - | let ab = (aa + 1) | |
219 | - | let S = { | |
220 | - | let D = getInteger(this, "Pending_Option_Limits") | |
221 | - | if ($isInstanceOf(D, "Int")) | |
222 | - | then { | |
223 | - | let E = D | |
224 | - | E | |
225 | - | } | |
226 | - | else 0 | |
227 | - | } | |
228 | - | let T = l | |
209 | + | let aa = (Z + 1) | |
210 | + | let S = l | |
229 | 211 | if ((i.caller != f)) | |
230 | 212 | then throw((("This Address is not Authorized. Only " + toString(f)) + " is Authorized Address to Sign it.")) | |
231 | 213 | else if ((b > lastBlock.timestamp)) | |
232 | 214 | then throw((c + toString(b))) | |
233 | - | else if ((p == " | |
215 | + | else if ((p == "CLOSE")) | |
234 | 216 | then throw(e) | |
235 | 217 | else if ((u == "Yes")) | |
236 | 218 | then throw((s + " Address is Blacklisted. Please contact Admin to Whitelist it.")) | |
242 | 224 | then throw((("Placed Order Size is less than [" + toString(g)) + "/10^8] TN.")) | |
243 | 225 | else if ((t.amount > h)) | |
244 | 226 | then throw((("Placed Order Size is more than [" + toString(h)) + "/10^8] TN.")) | |
245 | - | else [StringEntry(((("Put_" + s) + "_") + toString(Z)), toString(m)), IntegerEntry(((("Put_Amount_" + s) + "_") + toString(Z)), t.amount), StringEntry(((("Put_Start_End_" + s) + "_") + toString(Z)), ((toString(z) + "_") + toString(B))), IntegerEntry("Total_Option_Orders", F), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(z)), H), IntegerEntry("Total_Pool_Liquidity", y), IntegerEntry(("Total_Pool_Liquidity_" + toString(z)), (y - H)), IntegerEntry(("Funds_At_Risk_" + toString(z)), T), IntegerEntry("Call_Limits", n), IntegerEntry("Put_Limits", o), IntegerEntry(("Total_Option_Orders_" + toString(z)), J), IntegerEntry("Total_Puts", V), IntegerEntry(("Total_Puts_" + toString(z)), X), IntegerEntry((s + "_Total_Puts"), Z), IntegerEntry(((s + "_Total_Puts_") + toString(z)), ab)] | |
227 | + | else [StringEntry(((("Put_" + s) + "_") + toString(Y)), toString(m)), IntegerEntry(((("Put_Amount_" + s) + "_") + toString(Y)), t.amount), StringEntry(((("Put_Start_End_" + s) + "_") + toString(Y)), ((toString(z) + "_") + toString(B))), IntegerEntry("Total_Option_Orders", F), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(z)), H), IntegerEntry("Total_Pool_Liquidity", y), IntegerEntry(("Funds_At_Risk_" + toString(z)), S), IntegerEntry("Call_Limits", n), IntegerEntry("Put_Limits", o), IntegerEntry(("Total_Option_Orders_" + toString(z)), J), IntegerEntry("Total_Puts", U), IntegerEntry(("Total_Puts_" + toString(z)), W), IntegerEntry((s + "_Total_Puts"), Y), IntegerEntry(((s + "_Total_Puts_") + toString(z)), aa)] | |
228 | + | } | |
229 | + | ||
230 | + | ||
231 | + | ||
232 | + | @Callable(i) | |
233 | + | func AddFundsToPool (k,p) = { | |
234 | + | let s = toBase58String(i.caller.bytes) | |
235 | + | let ab = "TN" | |
236 | + | let t = if ((size(i.payments) == 1)) | |
237 | + | then i.payments[0] | |
238 | + | else throw("No payment attached, Please Attach only Whitelisted Tokens in payment[1].") | |
239 | + | let u = getString(this, ("addr_BLACKLISTED_" + s)) | |
240 | + | let ac = { | |
241 | + | let D = getInteger(this, ((ab + "_") + s)) | |
242 | + | if ($isInstanceOf(D, "Int")) | |
243 | + | then { | |
244 | + | let E = D | |
245 | + | E | |
246 | + | } | |
247 | + | else 0 | |
248 | + | } | |
249 | + | let ad = (ac + t.amount) | |
250 | + | let ae = { | |
251 | + | let D = getInteger(this, "Deposit_Counter_ID") | |
252 | + | if ($isInstanceOf(D, "Int")) | |
253 | + | then { | |
254 | + | let E = D | |
255 | + | E | |
256 | + | } | |
257 | + | else 0 | |
258 | + | } | |
259 | + | let af = (ae + 1) | |
260 | + | if ((b > lastBlock.timestamp)) | |
261 | + | then throw((c + toString(b))) | |
262 | + | else if ((p == "CLOSE")) | |
263 | + | then throw(e) | |
264 | + | else if ((u == "Yes")) | |
265 | + | then throw((s + " Address is Blacklisted. Please contact Admin to Whitelist it.")) | |
266 | + | else if (isDefined(t.assetId)) | |
267 | + | then throw("Only TN is allowed to deposit at the moment") | |
268 | + | else [IntegerEntry(((ab + "_") + s), ad), IntegerEntry(((((toString(af) + "_") + ab) + "_") + s), ad), IntegerEntry("Deposit_Counter_ID", af)] | |
246 | 269 | } | |
247 | 270 | ||
248 | 271 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = base58'515tSAyMUbAb8kKjcpGDpqALGfCgcwfWmWKKkcBKTcGB' | |
5 | 5 | ||
6 | 6 | let b = 1675209600000 | |
7 | 7 | ||
8 | 8 | let c = "Product Launch Timestamp is set at " | |
9 | 9 | ||
10 | 10 | let d = "No payment attached, Please Attach Token in payment[1]." | |
11 | 11 | ||
12 | 12 | let e = "Oracle is closed. Wait Until Oracle is Turned On." | |
13 | 13 | ||
14 | 14 | let f = addressFromPublicKey(a) | |
15 | 15 | ||
16 | 16 | let g = 10000000 | |
17 | 17 | ||
18 | 18 | let h = 10000000000 | |
19 | 19 | ||
20 | 20 | @Callable(i) | |
21 | 21 | func placeoptionCall (j,k,l,m,n,o,p,q,r) = { | |
22 | 22 | let s = toBase58String(i.caller.bytes) | |
23 | 23 | let t = if ((size(i.payments) == 1)) | |
24 | 24 | then i.payments[0] | |
25 | 25 | else throw(d) | |
26 | 26 | let u = getString(this, ("addr_BLACKLISTED_" + s)) | |
27 | 27 | let v = q | |
28 | 28 | let w = r | |
29 | 29 | let x = j | |
30 | 30 | let y = (x + t.amount) | |
31 | 31 | let z = k | |
32 | 32 | let A = 1 | |
33 | 33 | let B = (z + A) | |
34 | 34 | let C = { | |
35 | 35 | let D = getInteger(this, "Total_Option_Orders") | |
36 | 36 | if ($isInstanceOf(D, "Int")) | |
37 | 37 | then { | |
38 | 38 | let E = D | |
39 | 39 | E | |
40 | 40 | } | |
41 | 41 | else 0 | |
42 | 42 | } | |
43 | 43 | let F = (C + 1) | |
44 | 44 | let G = { | |
45 | 45 | let D = getInteger(this, ("Total_Funds_Added_In_Option_Order_" + toString(z))) | |
46 | 46 | if ($isInstanceOf(D, "Int")) | |
47 | 47 | then { | |
48 | 48 | let E = D | |
49 | 49 | E | |
50 | 50 | } | |
51 | 51 | else 0 | |
52 | 52 | } | |
53 | 53 | let H = (G + t.amount) | |
54 | 54 | let I = { | |
55 | 55 | let D = getInteger(this, ("Total_Option_Orders_" + toString(z))) | |
56 | 56 | if ($isInstanceOf(D, "Int")) | |
57 | 57 | then { | |
58 | 58 | let E = D | |
59 | 59 | E | |
60 | 60 | } | |
61 | 61 | else 0 | |
62 | 62 | } | |
63 | 63 | let J = (I + 1) | |
64 | 64 | let K = { | |
65 | 65 | let D = getInteger(this, "Total_Calls") | |
66 | 66 | if ($isInstanceOf(D, "Int")) | |
67 | 67 | then { | |
68 | 68 | let E = D | |
69 | 69 | E | |
70 | 70 | } | |
71 | 71 | else 0 | |
72 | 72 | } | |
73 | 73 | let L = (K + 1) | |
74 | 74 | let M = { | |
75 | 75 | let D = getInteger(this, ("Total_Calls_" + toString(z))) | |
76 | 76 | if ($isInstanceOf(D, "Int")) | |
77 | 77 | then { | |
78 | 78 | let E = D | |
79 | 79 | E | |
80 | 80 | } | |
81 | 81 | else 0 | |
82 | 82 | } | |
83 | 83 | let N = (M + 1) | |
84 | 84 | let O = { | |
85 | 85 | let D = getInteger(this, (s + "_Total_Calls")) | |
86 | 86 | if ($isInstanceOf(D, "Int")) | |
87 | 87 | then { | |
88 | 88 | let E = D | |
89 | 89 | E | |
90 | 90 | } | |
91 | 91 | else 0 | |
92 | 92 | } | |
93 | 93 | let P = (O + 1) | |
94 | 94 | let Q = { | |
95 | 95 | let D = getInteger(this, ((s + "_Total_Calls_") + toString(z))) | |
96 | 96 | if ($isInstanceOf(D, "Int")) | |
97 | 97 | then { | |
98 | 98 | let E = D | |
99 | 99 | E | |
100 | 100 | } | |
101 | 101 | else 0 | |
102 | 102 | } | |
103 | 103 | let R = (Q + 1) | |
104 | - | let S = { | |
105 | - | let D = getInteger(this, "Pending_Option_Limits") | |
106 | - | if ($isInstanceOf(D, "Int")) | |
107 | - | then { | |
108 | - | let E = D | |
109 | - | E | |
110 | - | } | |
111 | - | else 0 | |
112 | - | } | |
113 | - | let T = l | |
104 | + | let S = l | |
114 | 105 | if ((i.caller != f)) | |
115 | 106 | then throw((("This Address is not Authorized. Only " + toString(f)) + " is Authorized Address to Sign it.")) | |
116 | 107 | else if ((b > lastBlock.timestamp)) | |
117 | 108 | then throw((c + toString(b))) | |
118 | - | else if ((p == " | |
109 | + | else if ((p == "CLOSE")) | |
119 | 110 | then throw(e) | |
120 | 111 | else if ((u == "Yes")) | |
121 | 112 | then throw((s + " Address is Blacklisted. Please contact Admin to Whitelist it.")) | |
122 | 113 | else if (isDefined(t.assetId)) | |
123 | 114 | then throw("Only TN is allowed to deposit at the moment") | |
124 | 115 | else if ((lastBlock.timestamp >= w)) | |
125 | 116 | then throw("Option Order placing Timing Limits are Over. Please Join in Next Cycle.") | |
126 | 117 | else if ((g > t.amount)) | |
127 | 118 | then throw((("Placed Order Size is less than [" + toString(g)) + "/10^8] TN.")) | |
128 | 119 | else if ((t.amount > h)) | |
129 | 120 | then throw((("Placed Order Size is more than [" + toString(h)) + "/10^8] TN.")) | |
130 | - | else [StringEntry(((("Call_" + s) + "_") + toString(P)), toString(m)), IntegerEntry(((("Call_Amount_" + s) + "_") + toString(P)), t.amount), StringEntry(((("Call_Start_End_" + s) + "_") + toString(P)), ((toString(z) + "_") + toString(B))), IntegerEntry("Total_Option_Orders", F), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(z)), H), IntegerEntry("Total_Pool_Liquidity", y), IntegerEntry((" | |
121 | + | else [StringEntry(((("Call_" + s) + "_") + toString(P)), toString(m)), IntegerEntry(((("Call_Amount_" + s) + "_") + toString(P)), t.amount), StringEntry(((("Call_Start_End_" + s) + "_") + toString(P)), ((toString(z) + "_") + toString(B))), IntegerEntry("Total_Option_Orders", F), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(z)), H), IntegerEntry("Total_Pool_Liquidity", y), IntegerEntry(("Funds_At_Risk_" + toString(z)), S), IntegerEntry("Call_Limits", n), IntegerEntry("Put_Limits", o), IntegerEntry(("Total_Option_Orders_" + toString(z)), J), IntegerEntry("Total_Calls", L), IntegerEntry(("Total_Calls_" + toString(z)), N), IntegerEntry((s + "_Total_Calls"), P), IntegerEntry(((s + "_Total_Calls_") + toString(z)), R)] | |
131 | 122 | } | |
132 | 123 | ||
133 | 124 | ||
134 | 125 | ||
135 | 126 | @Callable(i) | |
136 | 127 | func placeoptionPut (j,k,l,m,n,o,p,q,r) = { | |
137 | 128 | let s = toBase58String(i.caller.bytes) | |
138 | 129 | let t = if ((size(i.payments) == 1)) | |
139 | 130 | then i.payments[0] | |
140 | 131 | else throw(d) | |
141 | 132 | let u = getString(this, ("addr_BLACKLISTED_" + s)) | |
142 | 133 | let v = q | |
143 | 134 | let w = r | |
144 | 135 | let x = j | |
145 | 136 | let y = (x + t.amount) | |
146 | 137 | let z = k | |
147 | 138 | let A = 1 | |
148 | 139 | let B = (z + A) | |
149 | 140 | let C = { | |
150 | 141 | let D = getInteger(this, "Total_Option_Orders") | |
151 | 142 | if ($isInstanceOf(D, "Int")) | |
152 | 143 | then { | |
153 | 144 | let E = D | |
154 | 145 | E | |
155 | 146 | } | |
156 | 147 | else 0 | |
157 | 148 | } | |
158 | 149 | let F = (C + 1) | |
159 | 150 | let G = { | |
160 | 151 | let D = getInteger(this, ("Total_Funds_Added_In_Option_Order_" + toString(z))) | |
161 | 152 | if ($isInstanceOf(D, "Int")) | |
162 | 153 | then { | |
163 | 154 | let E = D | |
164 | 155 | E | |
165 | 156 | } | |
166 | 157 | else 0 | |
167 | 158 | } | |
168 | 159 | let H = (G + t.amount) | |
169 | 160 | let I = { | |
170 | 161 | let D = getInteger(this, ("Total_Option_Orders_" + toString(z))) | |
171 | 162 | if ($isInstanceOf(D, "Int")) | |
172 | 163 | then { | |
173 | 164 | let E = D | |
174 | 165 | E | |
175 | 166 | } | |
176 | 167 | else 0 | |
177 | 168 | } | |
178 | 169 | let J = (I + 1) | |
179 | - | let | |
170 | + | let T = { | |
180 | 171 | let D = getInteger(this, "Total_Puts") | |
181 | 172 | if ($isInstanceOf(D, "Int")) | |
182 | 173 | then { | |
183 | 174 | let E = D | |
184 | 175 | E | |
185 | 176 | } | |
186 | 177 | else 0 | |
187 | 178 | } | |
188 | - | let | |
189 | - | let | |
179 | + | let U = (T + 1) | |
180 | + | let V = { | |
190 | 181 | let D = getInteger(this, ("Total_Puts_" + toString(z))) | |
191 | 182 | if ($isInstanceOf(D, "Int")) | |
192 | 183 | then { | |
193 | 184 | let E = D | |
194 | 185 | E | |
195 | 186 | } | |
196 | 187 | else 0 | |
197 | 188 | } | |
198 | - | let | |
199 | - | let | |
189 | + | let W = (V + 1) | |
190 | + | let X = { | |
200 | 191 | let D = getInteger(this, (s + "_Total_Puts")) | |
201 | 192 | if ($isInstanceOf(D, "Int")) | |
202 | 193 | then { | |
203 | 194 | let E = D | |
204 | 195 | E | |
205 | 196 | } | |
206 | 197 | else 0 | |
207 | 198 | } | |
208 | - | let | |
209 | - | let | |
199 | + | let Y = (X + 1) | |
200 | + | let Z = { | |
210 | 201 | let D = getInteger(this, ((s + "_Total_Puts_") + toString(z))) | |
211 | 202 | if ($isInstanceOf(D, "Int")) | |
212 | 203 | then { | |
213 | 204 | let E = D | |
214 | 205 | E | |
215 | 206 | } | |
216 | 207 | else 0 | |
217 | 208 | } | |
218 | - | let ab = (aa + 1) | |
219 | - | let S = { | |
220 | - | let D = getInteger(this, "Pending_Option_Limits") | |
221 | - | if ($isInstanceOf(D, "Int")) | |
222 | - | then { | |
223 | - | let E = D | |
224 | - | E | |
225 | - | } | |
226 | - | else 0 | |
227 | - | } | |
228 | - | let T = l | |
209 | + | let aa = (Z + 1) | |
210 | + | let S = l | |
229 | 211 | if ((i.caller != f)) | |
230 | 212 | then throw((("This Address is not Authorized. Only " + toString(f)) + " is Authorized Address to Sign it.")) | |
231 | 213 | else if ((b > lastBlock.timestamp)) | |
232 | 214 | then throw((c + toString(b))) | |
233 | - | else if ((p == " | |
215 | + | else if ((p == "CLOSE")) | |
234 | 216 | then throw(e) | |
235 | 217 | else if ((u == "Yes")) | |
236 | 218 | then throw((s + " Address is Blacklisted. Please contact Admin to Whitelist it.")) | |
237 | 219 | else if (isDefined(t.assetId)) | |
238 | 220 | then throw("Only TN is allowed to deposit at the moment") | |
239 | 221 | else if ((lastBlock.timestamp >= w)) | |
240 | 222 | then throw("Option Order placing Timing Limits are Over. Please Join in Next Cycle.") | |
241 | 223 | else if ((g > t.amount)) | |
242 | 224 | then throw((("Placed Order Size is less than [" + toString(g)) + "/10^8] TN.")) | |
243 | 225 | else if ((t.amount > h)) | |
244 | 226 | then throw((("Placed Order Size is more than [" + toString(h)) + "/10^8] TN.")) | |
245 | - | else [StringEntry(((("Put_" + s) + "_") + toString(Z)), toString(m)), IntegerEntry(((("Put_Amount_" + s) + "_") + toString(Z)), t.amount), StringEntry(((("Put_Start_End_" + s) + "_") + toString(Z)), ((toString(z) + "_") + toString(B))), IntegerEntry("Total_Option_Orders", F), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(z)), H), IntegerEntry("Total_Pool_Liquidity", y), IntegerEntry(("Total_Pool_Liquidity_" + toString(z)), (y - H)), IntegerEntry(("Funds_At_Risk_" + toString(z)), T), IntegerEntry("Call_Limits", n), IntegerEntry("Put_Limits", o), IntegerEntry(("Total_Option_Orders_" + toString(z)), J), IntegerEntry("Total_Puts", V), IntegerEntry(("Total_Puts_" + toString(z)), X), IntegerEntry((s + "_Total_Puts"), Z), IntegerEntry(((s + "_Total_Puts_") + toString(z)), ab)] | |
227 | + | else [StringEntry(((("Put_" + s) + "_") + toString(Y)), toString(m)), IntegerEntry(((("Put_Amount_" + s) + "_") + toString(Y)), t.amount), StringEntry(((("Put_Start_End_" + s) + "_") + toString(Y)), ((toString(z) + "_") + toString(B))), IntegerEntry("Total_Option_Orders", F), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(z)), H), IntegerEntry("Total_Pool_Liquidity", y), IntegerEntry(("Funds_At_Risk_" + toString(z)), S), IntegerEntry("Call_Limits", n), IntegerEntry("Put_Limits", o), IntegerEntry(("Total_Option_Orders_" + toString(z)), J), IntegerEntry("Total_Puts", U), IntegerEntry(("Total_Puts_" + toString(z)), W), IntegerEntry((s + "_Total_Puts"), Y), IntegerEntry(((s + "_Total_Puts_") + toString(z)), aa)] | |
228 | + | } | |
229 | + | ||
230 | + | ||
231 | + | ||
232 | + | @Callable(i) | |
233 | + | func AddFundsToPool (k,p) = { | |
234 | + | let s = toBase58String(i.caller.bytes) | |
235 | + | let ab = "TN" | |
236 | + | let t = if ((size(i.payments) == 1)) | |
237 | + | then i.payments[0] | |
238 | + | else throw("No payment attached, Please Attach only Whitelisted Tokens in payment[1].") | |
239 | + | let u = getString(this, ("addr_BLACKLISTED_" + s)) | |
240 | + | let ac = { | |
241 | + | let D = getInteger(this, ((ab + "_") + s)) | |
242 | + | if ($isInstanceOf(D, "Int")) | |
243 | + | then { | |
244 | + | let E = D | |
245 | + | E | |
246 | + | } | |
247 | + | else 0 | |
248 | + | } | |
249 | + | let ad = (ac + t.amount) | |
250 | + | let ae = { | |
251 | + | let D = getInteger(this, "Deposit_Counter_ID") | |
252 | + | if ($isInstanceOf(D, "Int")) | |
253 | + | then { | |
254 | + | let E = D | |
255 | + | E | |
256 | + | } | |
257 | + | else 0 | |
258 | + | } | |
259 | + | let af = (ae + 1) | |
260 | + | if ((b > lastBlock.timestamp)) | |
261 | + | then throw((c + toString(b))) | |
262 | + | else if ((p == "CLOSE")) | |
263 | + | then throw(e) | |
264 | + | else if ((u == "Yes")) | |
265 | + | then throw((s + " Address is Blacklisted. Please contact Admin to Whitelist it.")) | |
266 | + | else if (isDefined(t.assetId)) | |
267 | + | then throw("Only TN is allowed to deposit at the moment") | |
268 | + | else [IntegerEntry(((ab + "_") + s), ad), IntegerEntry(((((toString(af) + "_") + ab) + "_") + s), ad), IntegerEntry("Deposit_Counter_ID", af)] | |
246 | 269 | } | |
247 | 270 | ||
248 | 271 |
github/deemru/w8io/169f3d6 58.95 ms ◑