{"remainingRequest":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xcjy-fvue\\src\\views\\patrolAndRescue\\videoPatrol\\videoInspection\\components\\VideoPage\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\src\\views\\patrolAndRescue\\videoPatrol\\videoInspection\\components\\VideoPage\\index.vue","mtime":1741314105800},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQge3JlZmluZVJlcXVlc3RCb2R5LCBzZXRRdWVyeVZhbHVlfSBmcm9tICdAL3V0aWxzL3JlcXVlc3RXcmFwcGVycycNCmltcG9ydCB7DQogIHRhc2tEZXRhaWwsDQogIHByZXZpZXdVUkxzLA0KICBzYXZlUmVzdWx0QmF0Y2gsDQogIHRhc2tVcGRhdGUsDQp9IGZyb20gJ0AvYXBpL3BhdHJvbEFuZFJlc2N1ZS92aWRlb1BhdHJvbC92aWRlb0luc3BlY3Rpb24nDQppbXBvcnQgUHViU3ViIGZyb20gJ3B1YnN1Yi1qcycNCmltcG9ydCB7ZGljdGlvbmFyeUVzY2FwZSwgZ2V0RGljdGlvbmFyeUJ5Q29kZX0gZnJvbSAnQC91dGlscy9kaWN0aW9uYXJ5Jw0KaW1wb3J0IFZpZGVvUGxheWVyIGZyb20gJ0AvY29tcG9uZW50cy9WaWRlb1BsYXllci9pbmRleC52dWUnDQppbXBvcnQgdHJlZVNpZGUgZnJvbSAnQC9jb21wb25lbnRzL3RyZWVTaWRlL2luZGV4LnZ1ZScNCmltcG9ydCBSZXBvcnREaWFsb2cgZnJvbSAnLi9jb21wb25lbnRzL1JlcG9ydERpYWxvZy9pbmRleCcNCg0KZXhwb3J0IGRlZmF1bHQgew0KICBuYW1lOiAnVGFibGVQYWdlJywNCiAgY29tcG9uZW50czogew0KICAgIHRyZWVTaWRlLA0KICAgIFZpZGVvUGxheWVyLA0KICAgIFJlcG9ydERpYWxvZywNCiAgfSwNCiAgZGF0YSgpIHsNCiAgICByZXR1cm4gew0KICAgICAgcHViU3ViOiBudWxsLA0KICAgICAgb3JpZ2luVHJlZURhdGE6IFtdLA0KICAgICAgc2VhcmNoU2l0ZTogJycsDQogICAgICB0cmVlRGF0YTogW10sDQogICAgICB0ZW1wRGF0YTogW10sIC8vIOWMuuWIq+W3suajgOafpeWSjOacquajgOafpeeahOS4tOaXtuaVsOaNrg0KICAgICAgdHJlZUxvYWRpbmc6IGZhbHNlLA0KICAgICAgdHJlZUl0ZW06IHt9LCAvLyDmoJHlvaLoioLngrnpgInkuK3lr7nosaENCiAgICAgIGRlZmF1bHRQcm9wczogew0KICAgICAgICBjaGlsZHJlbjogJ2NoaWxkcmVuJywNCiAgICAgICAgbGFiZWw6ICduYW1lJywNCiAgICAgIH0sDQogICAgICBpbml0VmlkZW86IGZhbHNlLA0KICAgICAgaW50ZXJ2YWxUaW1lOiAxMCwNCiAgICAgIHNwbGl0OiAzLA0KICAgICAgcGxheWluZzogZmFsc2UsDQogICAgICBzcGxpdE9wdGlvbnM6IFsNCiAgICAgICAgew0KICAgICAgICAgIGxhYmVsOiAnM1gzJywNCiAgICAgICAgICB2YWx1ZTogMywNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIGxhYmVsOiAnMlgyJywNCiAgICAgICAgICB2YWx1ZTogMiwNCiAgICAgICAgfSwNCiAgICAgIF0sDQogICAgICB2aWRlb1dyYXBwZXI6IDAsDQogICAgICByZWFkeUNvdW50OiAwLA0KICAgICAgY3VycmVudFBsYXllcjogMSwNCiAgICAgIHRpbWVyOiBudWxsLA0KICAgICAgcmVwb3J0RGlhbG9nOiBmYWxzZSwNCiAgICAgIHRhc2tEYXRhOiBudWxsLA0KICAgICAgdXJsTGlzdDogW10sIC8vIOaSreaUvuWcsOWdgA0KICAgICAgdGVtcFJhbmtMaXN0OiBbXSwgLy8g5Z+65LqO5LiK5qyh5p+l55yL57uT5p6c6YeN57uE55qE5pKt5pS+6aG65bqPDQogICAgICBxdWVyeXM6IFtdLCAvLyAg5q+P5bGP6K+35rGC5Y+C5pWwDQogICAgICBxdWVyeXNDb3VudDogMSwgLy8g6K+35rGC5qyh5pWwDQogICAgICBxdWVyeXNDb3VudFRvdGFsOiAxLCAvLyDmgLvor7fmsYLmrKHmlbANCiAgICB9DQogIH0sDQogIGNyZWF0ZWQoKSB7fSwNCiAgd2F0Y2g6IHsNCiAgICBjb21wb25lbnROYW1lOiB7DQogICAgICBoYW5kbGVyKG5ld1ZhbCkgew0KICAgICAgICBpZiAobmV3VmFsICE9PSB0aGlzLiRvcHRpb25zLm5hbWUpIHsNCiAgICAgICAgICB0aGlzLmNsZWFyKCkNCiAgICAgICAgfQ0KICAgICAgfSwNCiAgICB9LA0KICB9LA0KICBtb3VudGVkKCkgew0KICAgIHRoaXMucHViU3ViID0gUHViU3ViLnN1YnNjcmliZSgnVmlkZW9QYWdlJywgKF8sIGRhdGEpID0+IHsNCiAgICAgIHRoaXMuY2hhbmdlVGFza1N0YXR1cyhkYXRhLnRhc2tEYXRhLCAxKQ0KICAgICAgdGhpcy5sb2FkVHJlZShkYXRhPy50YXNrRGF0YSB8fCB7fSkNCiAgICB9KQ0KICB9LA0KICBtZXRob2RzOiB7DQogICAgZGljdGlvbmFyeUVzY2FwZSwNCg0KICAgIGhhbmRsZUZpbmlzaCgpIHsNCiAgICAgIHRoaXMuY2hhbmdlVGFza1N0YXR1cyh0aGlzLnRhc2tEYXRhLCAyKQ0KICAgIH0sDQoNCiAgICBhc3luYyBjaGFuZ2VUYXNrU3RhdHVzKGRhdGEsIHN0YXR1cykgew0KICAgICAgY29uc3Qge3Rhc2tTdGF0dXMsIC4uLnRhc2t9ID0gZGF0YQ0KICAgICAgaWYgKA0KICAgICAgICAoc3RhdHVzID09PSAxICYmIHRhc2tTdGF0dXMgPT09IDApIHx8DQogICAgICAgIChzdGF0dXMgPT09IDIgJiYgdGFza1N0YXR1cyA9PT0gMSkNCiAgICAgICkgew0KICAgICAgICBjb25zdCB7c3RhdGUsIG1lc3NhZ2V9ID0gYXdhaXQgdGFza1VwZGF0ZSh7DQogICAgICAgICAgdGFza1N0YXR1czogc3RhdHVzLA0KICAgICAgICAgIC4uLnRhc2ssDQogICAgICAgIH0pDQogICAgICAgIGlmIChzdGF0ZSAmJiBzdGF0dXMgPT09IDIpIHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoJ+S7u+WKoeW3suWujOaIkCcpDQogICAgICAgIH0gZWxzZSBpZiAoIXN0YXRlICYmIHN0YXR1cyA9PT0gMikgew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uud2FybmluZyhtZXNzYWdlIHx8ICfku7vliqHmm7TmlrDlpLHotKUnKQ0KICAgICAgICB9DQogICAgICB9DQogICAgfSwNCg0KICAgIHByZWxvYWRWaWRlb1VybCgpIHsNCiAgICAgIGlmICgNCiAgICAgICAgdGhpcy50YXNrRGF0YS5yYW5rID09PSAwIHx8DQogICAgICAgIHRoaXMudGFza0RhdGEucmFuayA9PT0gdGhpcy50cmVlRGF0YS5sZW5ndGggLSAxDQogICAgICApIHsNCiAgICAgICAgdGhpcy50ZW1wRGF0YSA9IFsuLi50aGlzLnRyZWVEYXRhXQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgY29uc3QgdGVtcEJlZm9yZSA9IHRoaXMudHJlZURhdGEuc2xpY2UodGhpcy50YXNrRGF0YS5yYW5rICsgMSkNCiAgICAgICAgY29uc3QgdGVtcEFmdGVyID0gdGhpcy50cmVlRGF0YS5zbGljZSgwLCB0aGlzLnRhc2tEYXRhLnJhbmsgKyAxKQ0KICAgICAgICB0aGlzLnRlbXBEYXRhID0gWy4uLnRlbXBCZWZvcmUsIC4uLnRlbXBBZnRlcl0NCiAgICAgIH0NCiAgICAgIHRoaXMuZ2V0VVJsUXVlcnlzKHRoaXMuc3BsaXQpDQogICAgICB0aGlzLnF1ZXJ5c0NvdW50ID0gMQ0KICAgICAgdGhpcy5nZXRVcmwoKQ0KICAgIH0sDQoNCiAgICBnZXRVUmxRdWVyeXMoc3BsaXQpIHsNCiAgICAgIGxldCBzcGxpdE51bSA9IHNwbGl0ICogc3BsaXQNCiAgICAgIHRoaXMucXVlcnlzID0gdGhpcy5jaHVua0FycmF5KHRoaXMudGVtcERhdGEsIHNwbGl0TnVtKQ0KICAgICAgdGhpcy5xdWVyeXNDb3VudFRvdGFsID0gTWF0aC5jZWlsKHRoaXMucXVlcnlzLmxlbmd0aCAvIDEwKQ0KICAgICAgY29uc29sZS5sb2codGhpcy5xdWVyeXMsIHRoaXMucXVlcnlzQ291bnRUb3RhbCwgJ3RoaXMucXVlcnlzJykNCiAgICB9LA0KDQogICAgLy8g5YiG5bGP5aSn5LqOMSAg5ouG5YiG5pWw5o2u5YiG56a75q+P5bGP6K+35rGC5pWw6YePDQogICAgY2h1bmtBcnJheShhcnJheSwgY2h1bmtTaXplKSB7DQogICAgICBpZiAoYXJyYXkubGVuZ3RoID09PSAwKSB7DQogICAgICAgIHJldHVybiBbXQ0KICAgICAgfQ0KICAgICAgY29uc3QgY2h1bmtzID0gW10NCiAgICAgIGxldCBpID0gMA0KICAgICAgd2hpbGUgKGkgPCBhcnJheS5sZW5ndGgpIHsNCiAgICAgICAgY2h1bmtzLnB1c2goYXJyYXkuc2xpY2UoaSwgaSArIGNodW5rU2l6ZSkpDQogICAgICAgIGkgKz0gY2h1bmtTaXplDQogICAgICB9DQogICAgICByZXR1cm4gY2h1bmtzDQogICAgfSwNCg0KICAgIGdldFVybCgpIHsNCiAgICAgIGxldCB0ZW1wUmVxdWVzdERhdGEgPSBbXQ0KICAgICAgaWYgKHRoaXMudmlkZW9XcmFwcGVyID4gMTApIHsNCiAgICAgICAgdGVtcFJlcXVlc3REYXRhID0gdGhpcy5xdWVyeXMuc2xpY2UoDQogICAgICAgICAgdGhpcy5xdWVyeXNDb3VudCA+IDEgPyB0aGlzLnF1ZXJ5c0NvdW50ICogMTAgLSA5IDogMCwNCiAgICAgICAgICB0aGlzLnF1ZXJ5c0NvdW50ICogMTANCiAgICAgICAgKQ0KICAgICAgICB0aGlzLnF1ZXJ5c0NvdW50KysNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRlbXBSZXF1ZXN0RGF0YSA9IHRoaXMucXVlcnlzDQogICAgICB9DQogICAgICB0ZW1wUmVxdWVzdERhdGEuZm9yRWFjaChhc3luYyAoc2l0ZUFyciwgYXJySW5kZXgpID0+IHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICBsZXQgaWRzID0gew0KICAgICAgICAgICAgbW9uaXRvclBvaW50SW5mb0lkczogc2l0ZUFyci5tYXAoKGkpID0+IGkuY2FtZXJhSW5kZXhDb2RlKSwNCiAgICAgICAgICB9DQogICAgICAgICAgY29uc3Qge3ZhbHVlfSA9IGF3YWl0IHByZXZpZXdVUkxzKGlkcykNCiAgICAgICAgICBpZiAodmFsdWUgJiYgdmFsdWUubGVuZ3RoKSB7DQogICAgICAgICAgICBsZXQgdXJscyA9IFtdDQogICAgICAgICAgICB2YWx1ZS5mb3JFYWNoKChpdGVtLCBpKSA9PiB7DQogICAgICAgICAgICAgIHVybHMucHVzaChpdGVtLnVybCkNCiAgICAgICAgICAgICAgdGhpcy4kcmVmc1tgdmlkZW9QbGF5ZXIke2FyckluZGV4ICsgMX1gXVswXS5yZWFscGxheShpdGVtLnVybCwgaSkNCiAgICAgICAgICAgIH0pDQogICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50UGxheWVyID09PSAxKSB7DQogICAgICAgICAgICAgIHRoaXMudGFnVmlkZW8oKQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0NCiAgICAgICAgfSBjYXRjaCB7DQogICAgICAgICAgY29uc29sZS5sb2coJ+ivt+axguWksei0pScpDQogICAgICAgIH0NCiAgICAgIH0pDQogICAgfSwNCg0KICAgIC8vIOinhumikeaSreaUvuWZqOWFqOmDqOWHhuWkh+eKtuaAgeabtOaWsA0KICAgIGhhbmRsZVJlYWR5KCkgew0KICAgICAgdGhpcy5yZWFkeUNvdW50ICs9IDENCiAgICAgIGlmICh0aGlzLnJlYWR5Q291bnQgPT09IHRoaXMudmlkZW9XcmFwcGVyKSB7DQogICAgICAgIHRoaXMucGxheWVyUmVhZHkgPSB0cnVlDQoNCiAgICAgICAgLy8g5LiN6Ieq5Yqo5pKt5pS+77yM5Li66I635Y+W6LWE5rqQ5L+d55WZ5pe26Ze06Ze06ZqUDQogICAgICAgIC8vIHRoaXMuc3RhcnRQbGF5KCkNCiAgICAgICAgLy8gdGhpcy5wbGF5aW5nID0gdHJ1ZQ0KICAgICAgfQ0KICAgIH0sDQogICAgLy8g6K6h566X5bGP5bmV5pWw6YePDQogICAgY291bnRXcmFwcGVyKCkgew0KICAgICAgdGhpcy52aWRlb1dyYXBwZXIgPSBNYXRoLmNlaWwoDQogICAgICAgIHRoaXMudHJlZURhdGEubGVuZ3RoIC8gKHRoaXMuc3BsaXQgKiB0aGlzLnNwbGl0KQ0KICAgICAgKQ0KICAgICAgdGhpcy5jdXJyZW50UGxheWVyID0gMQ0KICAgICAgdGhpcy5pbml0VmlkZW8gPSB0cnVlDQogICAgfSwNCg0KICAgIC8vIOW8gOWQr+OAgeaaguWBnOi9ruaSrQ0KICAgIGhhbmRsZVBsYXkoKSB7DQogICAgICB0aGlzLnBsYXlpbmcgPSAhdGhpcy5wbGF5aW5nDQogICAgICBpZiAodGhpcy5wbGF5aW5nKSB7DQogICAgICAgIHRoaXMuc3RhcnRQbGF5KCkNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIGlmICh0aGlzLnRpbWVyKSB7DQogICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLnRpbWVyKQ0KICAgICAgICB9DQogICAgICB9DQogICAgfSwNCg0KICAgIHBsYXllclN0YXJ0KCkgew0KICAgICAgaWYgKHRoaXMuc3BsaXQgPiAxKSB7DQogICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHsNCiAgICAgICAgICB0aGlzLnVybExpc3QuZm9yRWFjaCgodXJsQXJyLCBwbGF5ZXJpbmRleCkgPT4gew0KICAgICAgICAgICAgdXJsQXJyLmZvckVhY2goKHVybCwgdXJsaW5kZXgpID0+IHsNCiAgICAgICAgICAgICAgaWYgKA0KICAgICAgICAgICAgICAgIHRoaXMuJHJlZnNbYHZpZGVvUGxheWVyJHtwbGF5ZXJpbmRleCArIDF9YF1bMF0gJiYNCiAgICAgICAgICAgICAgICB0aGlzLiRyZWZzW2B2aWRlb1BsYXllciR7cGxheWVyaW5kZXggKyAxfWBdWzBdLnJlYWxwbGF5DQogICAgICAgICAgICAgICkgew0KICAgICAgICAgICAgICAgIHRoaXMuJHJlZnNbYHZpZGVvUGxheWVyJHtwbGF5ZXJpbmRleCArIDF9YF1bMF0ucmVhbHBsYXkoDQogICAgICAgICAgICAgICAgICB1cmwsDQogICAgICAgICAgICAgICAgICB1cmxpbmRleA0KICAgICAgICAgICAgICAgICkNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSkNCiAgICAgICAgICB9KQ0KICAgICAgICB9KQ0KICAgICAgfQ0KICAgIH0sDQoNCiAgICBoYW5kbGVBcnJhbmdlV2luZG93KHZhbCkgew0KICAgICAgdGhpcy5zcGxpdCA9IHZhbA0KICAgICAgdGhpcy5pbml0VmlkZW8gPSBmYWxzZQ0KICAgICAgdGhpcy5jb3VudFdyYXBwZXIoKQ0KICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4gew0KICAgICAgICBjb25zb2xlLmxvZyh0aGlzLnZpZGVvV3JhcHBlciwgdGhpcy4kcmVmcykNCiAgICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPCB0aGlzLnZpZGVvV3JhcHBlcjsgaSsrKSB7DQogICAgICAgICAgaWYgKA0KICAgICAgICAgICAgdGhpcy4kcmVmc1tgdmlkZW9QbGF5ZXIke2l9YF0gJiYNCiAgICAgICAgICAgIHRoaXMuJHJlZnNbYHZpZGVvUGxheWVyJHtpfWBdLmFycmFuZ2VXaW5kb3cNCiAgICAgICAgICApIHsNCiAgICAgICAgICAgIHRoaXMuJHJlZnNbYHZpZGVvUGxheWVyJHtpfWBdLmFycmFuZ2VXaW5kb3codmFsKQ0KICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICB0aGlzLnN0YXJ0UGxheSgpDQogICAgICB9KQ0KICAgICAgLy8gICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoJ+WIhuWxj+iuvue9ruWwhuWIt+aWsOmhtemdou+8jOivt+iAkOW/g+etieW+hScpDQogICAgICAvLyAgIHRoaXMuJHJvdXRlci5wdXNoKHt9KQ0KICAgIH0sDQoNCiAgICBzdG9wQWxsKCkgew0KICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4gew0KICAgICAgICBmb3IgKGxldCBpID0gMTsgaSA8IHRoaXMudmlkZW9XcmFwcGVyOyBpKyspIHsNCiAgICAgICAgICBpZiAoDQogICAgICAgICAgICB0aGlzLiRyZWZzW2B2aWRlb1BsYXllciR7aX1gXSAmJg0KICAgICAgICAgICAgdGhpcy4kcmVmc1tgdmlkZW9QbGF5ZXIke2l9YF0uc3RvcEFsbFBsYXkNCiAgICAgICAgICApIHsNCiAgICAgICAgICAgIHRoaXMuJHJlZnNbYHZpZGVvUGxheWVyJHtpfWBdLnN0b3BBbGxQbGF5KCkNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgIH0pDQogICAgfSwNCiAgICBjaGFuZ2VJbnRlcnZhbCgpIHsNCiAgICAgIHRoaXMuc3RhcnRQbGF5KCkNCiAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2Vzcygn6K6+572u5pe26Ze06Ze06ZqU5oiQ5YqfJykNCiAgICB9LA0KICAgIC8vIOW8gOWni+i9ruivog0KICAgIHN0YXJ0UGxheSgpIHsNCiAgICAgIHRoaXMudGltZXIgJiYgY2xlYXJJbnRlcnZhbCh0aGlzLnRpbWVyKQ0KICAgICAgdGhpcy50aW1lciA9IG51bGwNCiAgICAgIHRoaXMudGltZXIgPSBzZXRJbnRlcnZhbCgoKSA9PiB7DQogICAgICAgIHRoaXMuc2V0Q3VycmVudFBsYXllcignbmV4dCcpDQogICAgICAgIHRoaXMuJHJlZnM/LmNhcm91c2VsPy5uZXh0KCkNCiAgICAgICAgdGhpcy50YWdWaWRlbygpDQogICAgICB9LCB0aGlzLmludGVydmFsVGltZSAqIDEwMDApDQogICAgfSwNCg0KICAgIC8vIOiuvue9ruW9k+WJjeaSreaUvuW6j+WPtw0KICAgIHNldEN1cnJlbnRQbGF5ZXIodHlwZSkgew0KICAgICAgaWYgKHR5cGUgPT09ICdwcmV2Jykgew0KICAgICAgICAvLyDlvZPliY3mkq3mlL7lsY/nmoTluo/lj7cNCiAgICAgICAgdGhpcy5jdXJyZW50UGxheWVyID09PSAxDQogICAgICAgICAgPyAodGhpcy5jdXJyZW50UGxheWVyID0gdGhpcy52aWRlb1dyYXBwZXIpDQogICAgICAgICAgOiB0aGlzLmN1cnJlbnRQbGF5ZXItLQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpcy5jdXJyZW50UGxheWVyIDwgdGhpcy52aWRlb1dyYXBwZXINCiAgICAgICAgICA/IHRoaXMuY3VycmVudFBsYXllcisrDQogICAgICAgICAgOiAodGhpcy5jdXJyZW50UGxheWVyID0gMSkNCiAgICAgICAgaWYgKA0KICAgICAgICAgIHRoaXMuY3VycmVudFBsYXllciAlIDUgJiYNCiAgICAgICAgICB0aGlzLnF1ZXJ5c0NvdW50IDwgdGhpcy5xdWVyeXNDb3VudFRvdGFsDQogICAgICAgICkgew0KICAgICAgICAgIHRoaXMucXVlcnlzQ291bnQgPSB0aGlzLmN1cnJlbnRQbGF5ZXIgLyA1DQogICAgICAgICAgdGhpcy5nZXRVcmwoKQ0KICAgICAgICB9DQogICAgICB9DQoNCiAgICAgIGNvbnNvbGUubG9nKA0KICAgICAgICAn5b2T5YmN5pKt5pS+5bGP55qE5bqP5Y+3JywNCiAgICAgICAgdGhpcy5jdXJyZW50UGxheWVyLA0KICAgICAgICAnLycsDQogICAgICAgIHRoaXMudmlkZW9XcmFwcGVyDQogICAgICApDQogICAgfSwNCiAgICAvLyDlt7Lnu4/nnIvov4fnmoR0YWfkuLrlt7Llt6Hmo4ANCiAgICB0YWdWaWRlbygpIHsNCiAgICAgIHRoaXMub3JpZ2luVHJlZURhdGEuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHsNCiAgICAgICAgY29uc3QgbWluSW5kZXggPQ0KICAgICAgICAgIHRoaXMuY3VycmVudFBsYXllciA9PT0gMQ0KICAgICAgICAgICAgPyAwDQogICAgICAgICAgICA6IHRoaXMuY3VycmVudFBsYXllciAqIHRoaXMuc3BsaXQgKiB0aGlzLnNwbGl0DQogICAgICAgIGNvbnN0IG1heEluZGV4ID0gdGhpcy5jdXJyZW50UGxheWVyICogdGhpcy5zcGxpdCAqIHRoaXMuc3BsaXQgLSAxDQoNCiAgICAgICAgY29uc3QgaW5kZXhSYW5nZSA9IEFycmF5LmZyb20oDQogICAgICAgICAge2xlbmd0aDogbWF4SW5kZXggLSBtaW5JbmRleCArIDF9LA0KICAgICAgICAgIChfLCBpKSA9PiBtaW5JbmRleCArIGkNCiAgICAgICAgKQ0KICAgICAgICBpZiAoaW5kZXhSYW5nZS5pbmNsdWRlcyhpbmRleCkpIHsNCiAgICAgICAgICBpdGVtLmNoZWNrZWQgPSAxDQogICAgICAgIH0NCiAgICAgIH0pDQogICAgICBpZiAodGhpcy5zZWFyY2hTaXRlKSB7DQogICAgICAgIHRoaXMudHJlZURhdGEgPSB0aGlzLm9yaWdpblRyZWVEYXRhLmZpbHRlcigoaXRlbSkgPT4gew0KICAgICAgICAgIHJldHVybiBpdGVtLm5hbWUuaW5jbHVkZXModGhpcy5zZWFyY2hTaXRlKQ0KICAgICAgICB9KQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpcy50cmVlRGF0YSA9IFsuLi50aGlzLm9yaWdpblRyZWVEYXRhXQ0KICAgICAgfQ0KICAgIH0sDQoNCiAgICAvLyDliIfmjaLlsY/luZXml7bpu5jorqTkuIrmiqXmraPluLgNCiAgICBjaGFuZ2VQbGF5ZXIobmV3SW5kZXgsIG9sZEluZGV4KSB7DQogICAgICB0aGlzLnVwbG9hZFN0YXR1cyhvbGRJbmRleCkgLy8g6buY6K6k5LiK5oql5q2j5bi4DQogICAgfSwNCg0KICAgIGFzeW5jIHVwbG9hZFN0YXR1cyhvbGRJbmRleCkgew0KICAgICAgaWYgKHRoaXMuc3BsaXQgPiAxKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgbGV0IHRhcmdldCA9IHRoaXMucXVlcnlzW29sZEluZGV4XQ0KICAgICAgICAgIGxldCBxdWVyeSA9IFtdDQogICAgICAgICAgdGFyZ2V0LmZvckVhY2goKGl0ZW0pID0+IHsNCiAgICAgICAgICAgIHF1ZXJ5LnB1c2goew0KICAgICAgICAgICAgICBpbnNwZWNldFN0YXR1czogMCwgLy8wIOato+W4uA0KICAgICAgICAgICAgICByYW5rOiBpdGVtLnJhbmssDQogICAgICAgICAgICAgIHZpZGVvSWQ6IGl0ZW0uaWQsDQogICAgICAgICAgICAgIHRhc2tJZDogdGhpcy50YXNrRGF0YS5pZCwNCiAgICAgICAgICAgIH0pDQogICAgICAgICAgfSkNCg0KICAgICAgICAgIC8vIGNvbnN0IGRhdGEgPSBhd2FpdCBzYXZlUmVzdWx0QmF0Y2goKQ0KICAgICAgICB9IGNhdGNoIHt9DQogICAgICB9IGVsc2Ugew0KICAgICAgfQ0KICAgIH0sDQoNCiAgICAvLyDliIfmjaINCiAgICBoYW5kbGVDaGFuZ2VQYWdlKHR5cGUpIHsNCiAgICAgIHRoaXMuJHJlZnMuY2Fyb3VzZWxbdHlwZV0oKQ0KICAgICAgdGhpcy5zZXRDdXJyZW50UGxheWVyKHR5cGUpDQogICAgICB0aGlzLnRhZ1ZpZGVvKCkNCiAgICB9LA0KDQogICAgaGFuZGxlUmVwb3J0KGluZGV4KSB7DQogICAgICBpZiAodGhpcy5wbGF5aW5nKSB0aGlzLmhhbmRsZVBsYXkoKQ0KICAgICAgY29uc29sZS5sb2coaW5kZXgpDQogICAgICB0aGlzLnJlcG9ydERpYWxvZyA9IHRydWUNCiAgICB9LA0KDQogICAgaGFuZGxlQ3V0KCkgew0KICAgICAgaWYgKHRoaXMucGxheWluZykgdGhpcy5oYW5kbGVQbGF5KCkNCiAgICAgIGNvbnNvbGUubG9nKGluZGV4KQ0KICAgIH0sDQoNCiAgICBoYW5kbGVTZWFyY2hTaXRlKHZhbCkgew0KICAgICAgaWYgKHZhbCkgew0KICAgICAgICB0aGlzLnRyZWVEYXRhID0gdGhpcy5vcmlnaW5UcmVlRGF0YS5maWx0ZXIoKGl0ZW0pID0+IHsNCiAgICAgICAgICByZXR1cm4gaXRlbS5uYW1lLmluY2x1ZGVzKHZhbCkNCiAgICAgICAgfSkNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRoaXMudHJlZURhdGEgPSBbLi4udGhpcy5vcmlnaW5UcmVlRGF0YV0NCiAgICAgIH0NCiAgICB9LA0KDQogICAgLy/ojrflj5bmlbDmja4NCiAgICBhc3luYyBsb2FkVHJlZSh0YXNrRGF0YSkgew0KICAgICAgaWYgKCF0YXNrRGF0YS5pZCkgcmV0dXJuDQogICAgICB0cnkgew0KICAgICAgICB0aGlzLnRyZWVMb2FkaW5nID0gdHJ1ZQ0KICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgdGFza0RldGFpbCh0YXNrRGF0YS5pZCkNCiAgICAgICAgdGhpcy50YXNrRGF0YSA9IGRhdGENCiAgICAgICAgdGhpcy50cmVlRGF0YSA9IGRhdGEudGFza1ZpZGVvIHx8IFtdDQogICAgICAgIHRoaXMub3JpZ2luVHJlZURhdGEgPSBbLi4udGhpcy50cmVlRGF0YV0NCiAgICAgICAgdGhpcy50cmVlTG9hZGluZyA9IGZhbHNlDQogICAgICAgIHRoaXMuY291bnRXcmFwcGVyKCkNCiAgICAgICAgdGhpcy5wcmVsb2FkVmlkZW9VcmwoKQ0KICAgICAgfSBjYXRjaCAoZXJyKSB7DQogICAgICAgIGNvbnNvbGUubG9nKGVycikNCiAgICAgIH0NCiAgICB9LA0KDQogICAgLy8g5pS55Y+Y6aG16Z2iDQogICAgY2hhbmdlUGFnZShwYWdlTmFtZSA9ICcnLCByb3cgPSB7fSkgew0KICAgICAgaWYgKCFwYWdlTmFtZSkgcmV0dXJuDQogICAgICB0aGlzLmNsZWFyKCkNCiAgICAgIHRoaXMuJGVtaXQoDQogICAgICAgICdjaGFuZ2VQYWdlJywNCiAgICAgICAgcGFnZU5hbWUsDQogICAgICAgIChfKSA9PiB7DQogICAgICAgICAgUHViU3ViLnB1Ymxpc2gocGFnZU5hbWUsIHJvdykNCiAgICAgICAgfSwNCiAgICAgICAgcm93LmlkID8gJ+e8lui+kScgOiAn5re75YqgJw0KICAgICAgKQ0KICAgIH0sDQogICAgY2xlYXIoKSB7DQogICAgICB0aGlzLmluaXRWaWRlbyA9IGZhbHNlDQogICAgICB0aGlzLnBsYXlpbmcgPSBmYWxzZQ0KICAgICAgdGhpcy5yZWFkeUNvdW50ID0gMA0KICAgICAgdGhpcy50aW1lciAmJiBjbGVhckludGVydmFsKHRoaXMudGltZXIpDQogICAgICB0aGlzLnRpbWVyID0gbnVsbA0KICAgICAgdGhpcy50YXNrRGF0YSA9IG51bGwNCiAgICAgIHRoaXMuc3RvcEFsbCgpDQogICAgICB0aGlzLmN1cnJlbnRQbGF5ZXIgPSAxDQogICAgfSwNCiAgfSwNCiAgYmVmb3JlRGVzdHJveSgpIHsNCiAgICB0aGlzLmNsZWFyKCkNCiAgICAvLyDlnKjnu4Tku7bplIDmr4HkuYvliY0g5riF6Zmk6K6i6ZiF5raI5oGvDQogICAgUHViU3ViLnVuc3Vic2NyaWJlKHRoaXMucHViU3ViKQ0KICB9LA0KfQ0K"},null]}