tx · EByVVuysyKBGm1MT36c1j5ZTGvMNz1snDRdS6sJpHHUR 3N4ynz2uyA7cErymQd46zgwVJEEfXYDRXtA: -0.01500000 Waves 2023.08.02 21:33 [2693317] smart account 3N4ynz2uyA7cErymQd46zgwVJEEfXYDRXtA > SELF 0.00000000 Waves
{ "type": 13, "id": "EByVVuysyKBGm1MT36c1j5ZTGvMNz1snDRdS6sJpHHUR", "fee": 1500000, "feeAssetId": null, "timestamp": 1691001283559, "version": 2, "chainId": 84, "sender": "3N4ynz2uyA7cErymQd46zgwVJEEfXYDRXtA", "senderPublicKey": "CiRX9ubobzbD36ZwTyuBFiPnPkmzMQ7GDsF3hMoVbcVR", "proofs": [ "2wDve2P8kjD7VsPXX917X51L5ZChjBJ4Qf4vNbHYwMLgrEBQs5SS6icshJuwzhiQ3WS4Use7WeRaqVwaoek5haHj" ], "script": "base64:AAIEAAAAAAAAABAIAhIHCgUBAQEBARIDCgEBAAAADAAAAAAjcHJlc2FsZV90aW1lc3RhbXBfY29udHJvbGxlcl9wdWJrZXkBAAAAIOOt17LUijbWojwDE5tgFkw1Y8cwIr3jselcewpp7rwjAAAAABJjb250cm9sbGVyX2FkZHJlc3MJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEFAAAAI3ByZXNhbGVfdGltZXN0YW1wX2NvbnRyb2xsZXJfcHVia2V5AAAAAAd0c2Vycm9yAgAAADxFbmQgVGltZXN0YW1wIGNhbid0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byBTdGFydCBUaW1lc3RhbXAAAAAACnByaWNlZXJyb3ICAAAAJlRva2VuIFByaWNlIGNhbid0IGJlIGxlc3MgdGhhbiBvciBaZXJvAAAAAAhjYXBlcnJvcgIAAAAzU29mdCBDYXAgQW1vdW50IGNhbid0IGJlIG1vcmUgdGhhbiBIYXJkIENhcCBBbW91bnQuAAAAAAhvcmRlcm1zZwIAAAAqPGgxPk9yZGVyIFN1Ym1pdHRlZCBTdWNjZXNzZnVsbHkhPC9oMT48YnI+AAAAABBwcmVzYWxlX2luaXRfbXNnAgAAADc8aDE+UHJlU2FsZSBQYXJhbWV0ZXJzIFN1Ym1pdHRlZCBTdWNjZXNzZnVsbHkhPC9oMT48YnI+AAAAAAlweW10ZXJyb3ICAAAAK0RBcHAgTmVlZCBXQVZFUyBUb2tlbiBhcyBBdHRhY2ggcGF5bWVudFsxXS4AAAAADm9yZGVycHltdGVycm9yAgAAAC1BdHRhY2hlZCBwYXltZW50WzFdIGlzIGxlc3MgdGhhbiB0b2tlbiBwcmljZSAAAAAADGxhdW5jaF9lcnJvcgIAAAAmRGFwcCB3aWxsIHN0YXJ0IFByZS1TYWxlIGF0IFRpbWVzdGFtcCAAAAAAC21pbmJhbGVycm9yAgAAAGZNaW5pbXVtIDAuMSBXQVZFUyByZXF1aXJlZCBvbiBZb3VyIEFkZHJlc3MsIFBsZWFzZSBob2xkIG1pbi4gMC4xIFdBVkVTIG9uIHlvdXIgQWRkcmVzcyB0byBwbGFjZSBvcmRlci4AAAAAB3ZvdGVFcnICAAAAIFByZS1TYWxlIGlzIG92ZXIgZm9yIHRoaXMgUm91bmQuAAAAAgAAAAFpAQAAABRTZXRQcmVTYWxlUGFyYW1ldGVycwAAAAUAAAAXUHJlc2FsZV9TdGFydF9UaW1lU3RhbXAAAAAVUHJlc2FsZV9FbmRfVGltZVN0YW1wAAAAC1Rva2VuX1ByaWNlAAAAD1NvZnRfQ2FwX0Ftb3VudAAAAA9IYXJkX0NhcF9BbW91bnQEAAAAB1N0YXJ0VFMFAAAAF1ByZXNhbGVfU3RhcnRfVGltZVN0YW1wBAAAAAVFbmRUUwUAAAAVUHJlc2FsZV9FbmRfVGltZVN0YW1wBAAAABJyZWFkX2Z1bmRpbmdfcm91bmQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAVQ3VycmVudF9GdW5kaW5nX1JvdW5kAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAADWN1cnJlbnRfcm91bmQJAABkAAAAAgUAAAAScmVhZF9mdW5kaW5nX3JvdW5kAAAAAAAAAAABAwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAABJjb250cm9sbGVyX2FkZHJlc3MJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAJVRoaXMgQWRkcmVzcyBpcyBub3QgQXV0aG9yaXplZC4gT25seSAJAAQlAAAAAQUAAAASY29udHJvbGxlcl9hZGRyZXNzAgAAACIgaXMgQXV0aG9yaXplZCBBZGRyZXNzIHRvIFNpZ24gaXQuAwkBAAAAAiE9AAAAAgkAATEAAAABCQABpAAAAAEFAAAAF1ByZXNhbGVfU3RhcnRfVGltZVN0YW1wAAAAAAAAAAANCQAAAgAAAAECAAAAb1N0YXJ0IFRpbWVzdGFtcCBpcyBXcm9uZy4gUGxlYXNlIEVudGVyIGEgVmFsaWQgVGltZXN0YW1wLiBQcm9iYWJseSB5b3UgZW50ZXJlZCBhbiBUaW1lc3RhbXAgbGVzcyB0aGFuIDEzIENoYXJzLgMJAQAAAAIhPQAAAAIJAAExAAAAAQkAAaQAAAABBQAAABVQcmVzYWxlX0VuZF9UaW1lU3RhbXAAAAAAAAAAAA0JAAACAAAAAQIAAABtRW5kIFRpbWVzdGFtcCBpcyBXcm9uZy4gUGxlYXNlIEVudGVyIGEgVmFsaWQgVGltZXN0YW1wLiBQcm9iYWJseSB5b3UgZW50ZXJlZCBhbiBUaW1lc3RhbXAgbGVzcyB0aGFuIDEzIENoYXJzLgMJAABmAAAAAgAAAAAAAAAAAQUAAAALVG9rZW5fUHJpY2UJAAACAAAAAQUAAAAKcHJpY2VlcnJvcgMJAABnAAAAAgUAAAAHU3RhcnRUUwUAAAAFRW5kVFMJAAACAAAAAQUAAAAHdHNlcnJvcgMJAABmAAAAAgUAAAAPU29mdF9DYXBfQW1vdW50BQAAAA9IYXJkX0NhcF9BbW91bnQJAAACAAAAAQUAAAAIY2FwZXJyb3IJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAFUN1cnJlbnRfRnVuZGluZ19Sb3VuZAUAAAANY3VycmVudF9yb3VuZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAADWN1cnJlbnRfcm91bmQCAAAAGF9QcmVzYWxlX1N0YXJ0X1RpbWVTdGFtcAUAAAAHU3RhcnRUUwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAADWN1cnJlbnRfcm91bmQCAAAAFl9QcmVzYWxlX0VuZF9UaW1lU3RhbXAFAAAABUVuZFRTCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAGkAAAAAQUAAAANY3VycmVudF9yb3VuZAIAAAAMX1Rva2VuX1ByaWNlBQAAAAtUb2tlbl9QcmljZQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAADWN1cnJlbnRfcm91bmQCAAAAEF9Tb2Z0X0NhcF9BbW91bnQFAAAAD1NvZnRfQ2FwX0Ftb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAADWN1cnJlbnRfcm91bmQCAAAAEF9IYXJkX0NhcF9BbW91bnQFAAAAD0hhcmRfQ2FwX0Ftb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAADWN1cnJlbnRfcm91bmQCAAAAEV9Jbml0aWF0ZWRfSGVpZ2h0BQAAAAZoZWlnaHQJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAHbWVzc2FnZQUAAAAQcHJlc2FsZV9pbml0X21zZwUAAAADbmlsAAAAAWkBAAAAEVBsYWNlUHJlc2FsZU9yZGVyAAAAAQAAABNFbnRlcl9QcmVzYWxlX1JvdW5kBAAAABZyZWFkX3JvdW5kX3Rva2VuX3ByaWNlCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAADF9Ub2tlbl9QcmljZQIAAAAtVG9rZW4gUHJpY2Ugbm90IEZvdW5kIGZvciB0aGlzIFByZXNhbGUgUm91bmQuBAAAABNyZWFkX3JvdW5kX3N0YXJ0X3RzCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAGF9QcmVzYWxlX1N0YXJ0X1RpbWVTdGFtcAIAAAAxU3RhcnQgVGltZXN0YW1wIG5vdCBGb3VuZCBmb3IgdGhpcyBQcmVzYWxlIFJvdW5kLgQAAAARcmVhZF9yb3VuZF9lbmRfdHMJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAGkAAAAAQUAAAATRW50ZXJfUHJlc2FsZV9Sb3VuZAIAAAAWX1ByZXNhbGVfRW5kX1RpbWVTdGFtcAIAAAAvRW5kIFRpbWVzdGFtcCBub3QgRm91bmQgZm9yIHRoaXMgUHJlc2FsZSBSb3VuZC4EAAAAFHJlYWRfU29mdF9DYXBfQW1vdW50CQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAEF9Tb2Z0X0NhcF9BbW91bnQCAAAAMVNvZnQgQ2FwIEFtb3VudCBub3QgRm91bmQgZm9yIHRoaXMgUHJlc2FsZSBSb3VuZC4EAAAAFHJlYWRfSGFyZF9DYXBfQW1vdW50CQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAEF9IYXJkX0NhcF9BbW91bnQCAAAAMUhhcmQgQ2FwIEFtb3VudCBub3QgRm91bmQgZm9yIHRoaXMgUHJlc2FsZSBSb3VuZC4EAAAABVdBVkVTBQAAAAR1bml0BAAAAApjdXJyZW50S2V5CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAA3BtdAMJAAAAAAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAkAAAIAAAABBQAAAAlweW10ZXJyb3IEAAAAFXJlYWRfZnVuZHNfY29sbGVjdGlvbgQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAGkAAAAAQUAAAATRW50ZXJfUHJlc2FsZV9Sb3VuZAIAAAARX0Z1bmRzX0NvbGxlY3Rpb24DCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAWdG90YWxfZnVuZHNfY29sbGVjdGlvbgkAAGQAAAACBQAAABVyZWFkX2Z1bmRzX2NvbGxlY3Rpb24IBQAAAANwbXQAAAAGYW1vdW50BAAAAA9yZWFkX3RvdGFsX3R4bnMEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAC190b3RhbF90eG5zAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAACnRvdGFsX3R4bnMJAABkAAAAAgUAAAAPcmVhZF90b3RhbF90eG5zAAAAAAAAAAABBAAAAB9yZWFkX3VzZXJfdG90YWxfZnVuZHNfZGVwb3NpdGVkBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAAV8FAAAACmN1cnJlbnRLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAadXNlcl90b3RhbF9mdW5kc19kZXBvc2l0ZWQJAABkAAAAAgUAAAAfcmVhZF91c2VyX3RvdGFsX2Z1bmRzX2RlcG9zaXRlZAgFAAAAA3BtdAAAAAZhbW91bnQEAAAAFnBlbmRpbmdfc29mdGNhcF9zdGF0dXMJAABlAAAAAgUAAAAUcmVhZF9Tb2Z0X0NhcF9BbW91bnQFAAAAFnRvdGFsX2Z1bmRzX2NvbGxlY3Rpb24EAAAAFnBlbmRpbmdfaGFyZGNhcF9zdGF0dXMJAABlAAAAAgUAAAAUcmVhZF9IYXJkX0NhcF9BbW91bnQFAAAAFnRvdGFsX2Z1bmRzX2NvbGxlY3Rpb24DCQEAAAAJaXNEZWZpbmVkAAAAAQgFAAAAA3BtdAAAAAdhc3NldElkCQAAAgAAAAEFAAAACXB5bXRlcnJvcgMJAABmAAAAAgUAAAAWcmVhZF9yb3VuZF90b2tlbl9wcmljZQgFAAAAA3BtdAAAAAZhbW91bnQJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAOb3JkZXJweW10ZXJyb3ICAAAAAVsJAAGkAAAAAQUAAAAWcmVhZF9yb3VuZF90b2tlbl9wcmljZQIAAAAHLzEwXjguXQMJAABmAAAAAgUAAAATcmVhZF9yb3VuZF9zdGFydF90cwgFAAAACWxhc3RCbG9jawAAAAl0aW1lc3RhbXAJAAACAAAAAQkAASwAAAACBQAAAAxsYXVuY2hfZXJyb3IJAAGkAAAAAQUAAAATcmVhZF9yb3VuZF9zdGFydF90cwMDCQAAZgAAAAIFAAAAFnBlbmRpbmdfc29mdGNhcF9zdGF0dXMAAAAAAAAAAAAJAABmAAAAAgUAAAAWcGVuZGluZ19oYXJkY2FwX3N0YXR1cwAAAAAAAAAAAAcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABNFbnRlcl9QcmVzYWxlX1JvdW5kAgAAABFfRnVuZHNfQ29sbGVjdGlvbgUAAAAWdG90YWxfZnVuZHNfY29sbGVjdGlvbgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAGkAAAAAQUAAAATRW50ZXJfUHJlc2FsZV9Sb3VuZAIAAAABXwUAAAAKY3VycmVudEtleQUAAAAadXNlcl90b3RhbF9mdW5kc19kZXBvc2l0ZWQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABNFbnRlcl9QcmVzYWxlX1JvdW5kAgAAAAtfdG90YWxfdHhucwUAAAAKdG90YWxfdHhucwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAF19wZW5kaW5nX3NvZnRjYXBfc3RhdHVzBQAAABZwZW5kaW5nX3NvZnRjYXBfc3RhdHVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAGkAAAAAQUAAAATRW50ZXJfUHJlc2FsZV9Sb3VuZAIAAAAXX3BlbmRpbmdfaGFyZGNhcF9zdGF0dXMFAAAAFnBlbmRpbmdfaGFyZGNhcF9zdGF0dXMJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAD19zb2Z0Y2FwX3N0YXR1cwIAAAACTm8JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAD19oYXJkY2FwX3N0YXR1cwIAAAACTm8JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAHbWVzc2FnZQUAAAAIb3JkZXJtc2cFAAAAA25pbAMDCQAAZgAAAAIAAAAAAAAAAAAFAAAAFnBlbmRpbmdfc29mdGNhcF9zdGF0dXMJAABmAAAAAgUAAAAWcGVuZGluZ19oYXJkY2FwX3N0YXR1cwAAAAAAAAAAAAcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABNFbnRlcl9QcmVzYWxlX1JvdW5kAgAAABFfRnVuZHNfQ29sbGVjdGlvbgUAAAAWdG90YWxfZnVuZHNfY29sbGVjdGlvbgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAGkAAAAAQUAAAATRW50ZXJfUHJlc2FsZV9Sb3VuZAIAAAABXwUAAAAKY3VycmVudEtleQUAAAAadXNlcl90b3RhbF9mdW5kc19kZXBvc2l0ZWQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABNFbnRlcl9QcmVzYWxlX1JvdW5kAgAAAAtfdG90YWxfdHhucwUAAAAKdG90YWxfdHhucwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAF19wZW5kaW5nX3NvZnRjYXBfc3RhdHVzBQAAABZwZW5kaW5nX3NvZnRjYXBfc3RhdHVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAGkAAAAAQUAAAATRW50ZXJfUHJlc2FsZV9Sb3VuZAIAAAAXX3BlbmRpbmdfaGFyZGNhcF9zdGF0dXMFAAAAFnBlbmRpbmdfaGFyZGNhcF9zdGF0dXMJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAD19zb2Z0Y2FwX3N0YXR1cwIAAAADWWVzCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABNFbnRlcl9QcmVzYWxlX1JvdW5kAgAAAA9faGFyZGNhcF9zdGF0dXMCAAAAAk5vCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAAB21lc3NhZ2UFAAAACG9yZGVybXNnBQAAAANuaWwDAwkAAGcAAAACAAAAAAAAAAAABQAAABZwZW5kaW5nX3NvZnRjYXBfc3RhdHVzCQAAZwAAAAIAAAAAAAAAAAAFAAAAFnBlbmRpbmdfaGFyZGNhcF9zdGF0dXMHCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAGkAAAAAQUAAAATRW50ZXJfUHJlc2FsZV9Sb3VuZAIAAAARX0Z1bmRzX0NvbGxlY3Rpb24FAAAAFnRvdGFsX2Z1bmRzX2NvbGxlY3Rpb24JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAAV8FAAAACmN1cnJlbnRLZXkFAAAAGnVzZXJfdG90YWxfZnVuZHNfZGVwb3NpdGVkCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAGkAAAAAQUAAAATRW50ZXJfUHJlc2FsZV9Sb3VuZAIAAAALX3RvdGFsX3R4bnMFAAAACnRvdGFsX3R4bnMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABNFbnRlcl9QcmVzYWxlX1JvdW5kAgAAABdfcGVuZGluZ19zb2Z0Y2FwX3N0YXR1cwUAAAAWcGVuZGluZ19zb2Z0Y2FwX3N0YXR1cwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAAE0VudGVyX1ByZXNhbGVfUm91bmQCAAAAF19wZW5kaW5nX2hhcmRjYXBfc3RhdHVzBQAAABZwZW5kaW5nX2hhcmRjYXBfc3RhdHVzCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABNFbnRlcl9QcmVzYWxlX1JvdW5kAgAAAA9fc29mdGNhcF9zdGF0dXMCAAAAA1llcwkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIJAAGkAAAAAQUAAAATRW50ZXJfUHJlc2FsZV9Sb3VuZAIAAAAPX2hhcmRjYXBfc3RhdHVzAgAAAANZZXMJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAHbWVzc2FnZQUAAAAIb3JkZXJtc2cFAAAAA25pbAkAAAIAAAABAgAAAAZFcnJvci4AAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAACQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tleX8YD94=", "height": 2693317, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 5X9GfwLqG3S7YAiJoFZXQi95Zqzui4uWFqN8j1Gwe8UA Next: 2ZJMrBW4bzkuYGB8nuugMNKymREuSuuxAE13Tx9Jt77B Diff:
Old | New | Differences | |
---|---|---|---|
98 | 98 | else 0 | |
99 | 99 | } | |
100 | 100 | let M = (L + G.amount) | |
101 | - | let N = ( | |
102 | - | let O = ( | |
101 | + | let N = (C - I) | |
102 | + | let O = (D - I) | |
103 | 103 | if (isDefined(G.assetId)) | |
104 | 104 | then throw(h) | |
105 | 105 | else if ((z > G.amount)) | |
109 | 109 | else if (if ((N > 0)) | |
110 | 110 | then (O > 0) | |
111 | 111 | else false) | |
112 | - | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "pending_softcap_status"), N), IntegerEntry((toString(y) + "pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "No"), StringEntry((toString(y) + "_hardcap_status"), "No"), StringEntry("message", f)] | |
112 | + | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "_pending_softcap_status"), N), IntegerEntry((toString(y) + "_pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "No"), StringEntry((toString(y) + "_hardcap_status"), "No"), StringEntry("message", f)] | |
113 | 113 | else if (if ((0 > N)) | |
114 | 114 | then (O > 0) | |
115 | 115 | else false) | |
116 | - | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "pending_softcap_status"), N), IntegerEntry((toString(y) + "pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "Yes"), StringEntry((toString(y) + "_hardcap_status"), "No"), StringEntry("message", f)] | |
116 | + | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "_pending_softcap_status"), N), IntegerEntry((toString(y) + "_pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "Yes"), StringEntry((toString(y) + "_hardcap_status"), "No"), StringEntry("message", f)] | |
117 | 117 | else if (if ((0 >= N)) | |
118 | 118 | then (0 >= O) | |
119 | 119 | else false) | |
120 | - | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "pending_softcap_status"), N), IntegerEntry((toString(y) + "pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "Yes"), StringEntry((toString(y) + "_hardcap_status"), "Yes"), StringEntry("message", f)] | |
120 | + | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "_pending_softcap_status"), N), IntegerEntry((toString(y) + "_pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "Yes"), StringEntry((toString(y) + "_hardcap_status"), "Yes"), StringEntry("message", f)] | |
121 | 121 | else throw("Error.") | |
122 | 122 | } | |
123 | 123 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 4 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = base58'GKmJ6BchUgQfwKp4mp5eX8Y9xLioYRm6e1gDfFgdAcCr' | |
5 | 5 | ||
6 | 6 | let b = addressFromPublicKey(a) | |
7 | 7 | ||
8 | 8 | let c = "End Timestamp can't be less than or equal to Start Timestamp" | |
9 | 9 | ||
10 | 10 | let d = "Token Price can't be less than or Zero" | |
11 | 11 | ||
12 | 12 | let e = "Soft Cap Amount can't be more than Hard Cap Amount." | |
13 | 13 | ||
14 | 14 | let f = "<h1>Order Submitted Successfully!</h1><br>" | |
15 | 15 | ||
16 | 16 | let g = "<h1>PreSale Parameters Submitted Successfully!</h1><br>" | |
17 | 17 | ||
18 | 18 | let h = "DApp Need WAVES Token as Attach payment[1]." | |
19 | 19 | ||
20 | 20 | let i = "Attached payment[1] is less than token price " | |
21 | 21 | ||
22 | 22 | let j = "Dapp will start Pre-Sale at Timestamp " | |
23 | 23 | ||
24 | 24 | let k = "Minimum 0.1 WAVES required on Your Address, Please hold min. 0.1 WAVES on your Address to place order." | |
25 | 25 | ||
26 | 26 | let l = "Pre-Sale is over for this Round." | |
27 | 27 | ||
28 | 28 | @Callable(m) | |
29 | 29 | func SetPreSaleParameters (n,o,p,q,r) = { | |
30 | 30 | let s = n | |
31 | 31 | let t = o | |
32 | 32 | let u = { | |
33 | 33 | let v = getInteger(this, "Current_Funding_Round") | |
34 | 34 | if ($isInstanceOf(v, "Int")) | |
35 | 35 | then { | |
36 | 36 | let w = v | |
37 | 37 | w | |
38 | 38 | } | |
39 | 39 | else 0 | |
40 | 40 | } | |
41 | 41 | let x = (u + 1) | |
42 | 42 | if ((m.caller != b)) | |
43 | 43 | then throw((("This Address is not Authorized. Only " + toString(b)) + " is Authorized Address to Sign it.")) | |
44 | 44 | else if ((size(toString(n)) != 13)) | |
45 | 45 | then throw("Start Timestamp is Wrong. Please Enter a Valid Timestamp. Probably you entered an Timestamp less than 13 Chars.") | |
46 | 46 | else if ((size(toString(o)) != 13)) | |
47 | 47 | then throw("End Timestamp is Wrong. Please Enter a Valid Timestamp. Probably you entered an Timestamp less than 13 Chars.") | |
48 | 48 | else if ((1 > p)) | |
49 | 49 | then throw(d) | |
50 | 50 | else if ((s >= t)) | |
51 | 51 | then throw(c) | |
52 | 52 | else if ((q > r)) | |
53 | 53 | then throw(e) | |
54 | 54 | else [IntegerEntry("Current_Funding_Round", x), IntegerEntry((toString(x) + "_Presale_Start_TimeStamp"), s), IntegerEntry((toString(x) + "_Presale_End_TimeStamp"), t), IntegerEntry((toString(x) + "_Token_Price"), p), IntegerEntry((toString(x) + "_Soft_Cap_Amount"), q), IntegerEntry((toString(x) + "_Hard_Cap_Amount"), r), IntegerEntry((toString(x) + "_Initiated_Height"), height), StringEntry("message", g)] | |
55 | 55 | } | |
56 | 56 | ||
57 | 57 | ||
58 | 58 | ||
59 | 59 | @Callable(m) | |
60 | 60 | func PlacePresaleOrder (y) = { | |
61 | 61 | let z = valueOrErrorMessage(getInteger(this, (toString(y) + "_Token_Price")), "Token Price not Found for this Presale Round.") | |
62 | 62 | let A = valueOrErrorMessage(getInteger(this, (toString(y) + "_Presale_Start_TimeStamp")), "Start Timestamp not Found for this Presale Round.") | |
63 | 63 | let B = valueOrErrorMessage(getInteger(this, (toString(y) + "_Presale_End_TimeStamp")), "End Timestamp not Found for this Presale Round.") | |
64 | 64 | let C = valueOrErrorMessage(getInteger(this, (toString(y) + "_Soft_Cap_Amount")), "Soft Cap Amount not Found for this Presale Round.") | |
65 | 65 | let D = valueOrErrorMessage(getInteger(this, (toString(y) + "_Hard_Cap_Amount")), "Hard Cap Amount not Found for this Presale Round.") | |
66 | 66 | let E = unit | |
67 | 67 | let F = toBase58String(m.caller.bytes) | |
68 | 68 | let G = if ((size(m.payments) == 1)) | |
69 | 69 | then m.payments[0] | |
70 | 70 | else throw(h) | |
71 | 71 | let H = { | |
72 | 72 | let v = getInteger(this, (toString(y) + "_Funds_Collection")) | |
73 | 73 | if ($isInstanceOf(v, "Int")) | |
74 | 74 | then { | |
75 | 75 | let w = v | |
76 | 76 | w | |
77 | 77 | } | |
78 | 78 | else 0 | |
79 | 79 | } | |
80 | 80 | let I = (H + G.amount) | |
81 | 81 | let J = { | |
82 | 82 | let v = getInteger(this, (toString(y) + "_total_txns")) | |
83 | 83 | if ($isInstanceOf(v, "Int")) | |
84 | 84 | then { | |
85 | 85 | let w = v | |
86 | 86 | w | |
87 | 87 | } | |
88 | 88 | else 0 | |
89 | 89 | } | |
90 | 90 | let K = (J + 1) | |
91 | 91 | let L = { | |
92 | 92 | let v = getInteger(this, ((toString(y) + "_") + F)) | |
93 | 93 | if ($isInstanceOf(v, "Int")) | |
94 | 94 | then { | |
95 | 95 | let w = v | |
96 | 96 | w | |
97 | 97 | } | |
98 | 98 | else 0 | |
99 | 99 | } | |
100 | 100 | let M = (L + G.amount) | |
101 | - | let N = ( | |
102 | - | let O = ( | |
101 | + | let N = (C - I) | |
102 | + | let O = (D - I) | |
103 | 103 | if (isDefined(G.assetId)) | |
104 | 104 | then throw(h) | |
105 | 105 | else if ((z > G.amount)) | |
106 | 106 | then throw((((i + "[") + toString(z)) + "/10^8.]")) | |
107 | 107 | else if ((A > lastBlock.timestamp)) | |
108 | 108 | then throw((j + toString(A))) | |
109 | 109 | else if (if ((N > 0)) | |
110 | 110 | then (O > 0) | |
111 | 111 | else false) | |
112 | - | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "pending_softcap_status"), N), IntegerEntry((toString(y) + "pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "No"), StringEntry((toString(y) + "_hardcap_status"), "No"), StringEntry("message", f)] | |
112 | + | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "_pending_softcap_status"), N), IntegerEntry((toString(y) + "_pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "No"), StringEntry((toString(y) + "_hardcap_status"), "No"), StringEntry("message", f)] | |
113 | 113 | else if (if ((0 > N)) | |
114 | 114 | then (O > 0) | |
115 | 115 | else false) | |
116 | - | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "pending_softcap_status"), N), IntegerEntry((toString(y) + "pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "Yes"), StringEntry((toString(y) + "_hardcap_status"), "No"), StringEntry("message", f)] | |
116 | + | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "_pending_softcap_status"), N), IntegerEntry((toString(y) + "_pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "Yes"), StringEntry((toString(y) + "_hardcap_status"), "No"), StringEntry("message", f)] | |
117 | 117 | else if (if ((0 >= N)) | |
118 | 118 | then (0 >= O) | |
119 | 119 | else false) | |
120 | - | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "pending_softcap_status"), N), IntegerEntry((toString(y) + "pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "Yes"), StringEntry((toString(y) + "_hardcap_status"), "Yes"), StringEntry("message", f)] | |
120 | + | then [IntegerEntry((toString(y) + "_Funds_Collection"), I), IntegerEntry(((toString(y) + "_") + F), M), IntegerEntry((toString(y) + "_total_txns"), K), IntegerEntry((toString(y) + "_pending_softcap_status"), N), IntegerEntry((toString(y) + "_pending_hardcap_status"), O), StringEntry((toString(y) + "_softcap_status"), "Yes"), StringEntry((toString(y) + "_hardcap_status"), "Yes"), StringEntry("message", f)] | |
121 | 121 | else throw("Error.") | |
122 | 122 | } | |
123 | 123 | ||
124 | 124 | ||
125 | 125 | @Verifier(P) | |
126 | 126 | func Q () = sigVerify(P.bodyBytes, P.proofs[0], P.senderPublicKey) | |
127 | 127 |
github/deemru/w8io/026f985 35.76 ms ◑