Files
education/frontend/node_modules/.cache/babel-loader/ad8bcaa09642b3b093cfccf3ed5e2ff6.json
T

1 line
20 KiB
JSON

{"remainingRequest":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\thread-loader\\dist\\cjs.js!C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\babel-loader\\lib\\index.js!C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!C:\\Users\\Admin\\Desktop\\education\\frontend\\src\\views\\teachOffice\\shiftSemester\\ClassCalendarDialog.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\src\\views\\teachOffice\\shiftSemester\\ClassCalendarDialog.vue","mtime":1787649800442},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\babel.config.js","mtime":1787567871334},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1787309791955},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\thread-loader\\dist\\cjs.js","mtime":1787309791954},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\babel-loader\\lib\\index.js","mtime":1787309793142},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1787309791955},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\vue-loader\\lib\\index.js","mtime":1787309793790}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiQzovVXNlcnMvQWRtaW4vRGVza3RvcC9lZHVjYXRpb24vZnJvbnRlbmQvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL29iamVjdFNwcmVhZDIuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5jb25jYXQuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5tYXAuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5yZWR1Y2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zbGljZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm51bWJlci5jb25zdHJ1Y3Rvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC5rZXlzLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LnRvLXN0cmluZy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzbmV4dC5pdGVyYXRvci5jb25zdHJ1Y3Rvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzbmV4dC5pdGVyYXRvci5mb3ItZWFjaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzbmV4dC5pdGVyYXRvci5tYXAuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lc25leHQuaXRlcmF0b3IucmVkdWNlLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvd2ViLmRvbS1jb2xsZWN0aW9ucy5mb3ItZWFjaC5qcyI7Ci8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCgppbXBvcnQgQ2xhc3NUZWFtU2VsZWN0RGlhbG9nIGZyb20gJy4vQ2xhc3NUZWFtU2VsZWN0RGlhbG9nLnZ1ZSc7CmltcG9ydCB7IGxpc3RDbGFzc0NhbGVuZGFyLCB1cGRhdGVDbGFzc0NhbGVuZGFyLCBiYXRjaENvcHlDYWxlbmRhciwgYmF0Y2hDb3B5Q2FsZW5kYXJCeVNlbWVzdGVyLCBhZGRUZWFtVGFzaywgZGVsVGVhbVRhc2ssIGJhdGNoUHJlc2V0TWVyZ2UsIGJhdGNoUHJlc2V0U3BsaXQsIGF1dG9HZW5lcmF0ZVJlcXVpcmVkQ291cnNlcyB9IGZyb20gJ0AvYXBpL3N0dWRlbnRSZWNvcmRzL2NsYXNzQ2FsZW5kYXInOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogJ0NsYXNzQ2FsZW5kYXJEaWFsb2cnLAogIGNvbXBvbmVudHM6IHsKICAgIENsYXNzVGVhbVNlbGVjdERpYWxvZzogQ2xhc3NUZWFtU2VsZWN0RGlhbG9nCiAgfSwKICBwcm9wczogewogICAgdmlzaWJsZTogewogICAgICB0eXBlOiBCb29sZWFuLAogICAgICBkZWZhdWx0OiBmYWxzZQogICAgfSwKICAgIC8qKiDpgInkuK3nmoTnj63mrKHlrabmnJ/orrDlvZXvvIjlkKsgYmgveHlkYmgveHFkYy9uZC94eWRtYy9reHJxL2pzcnHvvIkgKi8KICAgIHNlbWVzdGVyOiB7CiAgICAgIHR5cGU6IE9iamVjdCwKICAgICAgZGVmYXVsdDogbnVsbAogICAgfSwKICAgIC8qKiDlj6/pgInnmoTnm67moIfnj63mrKHlrabmnJ/liJfooajvvIjlt7LlkKvnj63mrKHlkI3np7DnmoTlrozmlbTliJfooajvvIkgKi8KICAgIHNlbWVzdGVyT3B0aW9uczogewogICAgICB0eXBlOiBBcnJheSwKICAgICAgZGVmYXVsdDogZnVuY3Rpb24gX2RlZmF1bHQoKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICB9CiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgbG9hZGluZzogZmFsc2UsCiAgICAgIHNhdmluZzogZmFsc2UsCiAgICAgIHJlY29yZHM6IFtdLAogICAgICBzZWxlY3Rpb246IFtdLAogICAgICAvLyA9PT09PT09PT09PT09PT09PT09PSDmlrDlop4v57yW6L6RID09PT09PT09PT09PT09PT09PT09CiAgICAgIGVkaXRWaXNpYmxlOiBmYWxzZSwKICAgICAgZWRpdE1vZGU6ICdhZGQnLAogICAgICBlZGl0Rm9ybTogdGhpcy5jcmVhdGVFbXB0eUVkaXRGb3JtKCksCiAgICAgIGVkaXRSdWxlczogewogICAgICAgIGpjOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn6K+36L6T5YWl6K++56iL566A56ewJywKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH1dCiAgICAgIH0sCiAgICAgIC8vID09PT09PT09PT09PT09PT09PT09IOWkjeWItuWIsOWFtuWug+ePreasoSA9PT09PT09PT09PT09PT09PT09PQogICAgICB0ZWFtU2VsZWN0VmlzaWJsZTogZmFsc2UsCiAgICAgIGFwcGx5TW9kZTogJ3JlZ2lvbicsCiAgICAgIGNvcHlOb3RlOiAnJwogICAgfTsKICB9LAogIGNvbXB1dGVkOiB7CiAgICBkaWFsb2dWaXNpYmxlOiB7CiAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkgewogICAgICAgIHJldHVybiB0aGlzLnZpc2libGU7CiAgICAgIH0sCiAgICAgIHNldDogZnVuY3Rpb24gc2V0KHZhbCkgewogICAgICAgIHRoaXMuJGVtaXQoJ3VwZGF0ZTp2aXNpYmxlJywgdmFsKTsKICAgICAgfQogICAgfSwKICAgIHNhZmVTZW1lc3RlcjogZnVuY3Rpb24gc2FmZVNlbWVzdGVyKCkgewogICAgICByZXR1cm4gdGhpcy5zZW1lc3RlciB8fCB7fTsKICAgIH0sCiAgICBjbGFzc05hbWU6IGZ1bmN0aW9uIGNsYXNzTmFtZSgpIHsKICAgICAgdmFyIHMgPSB0aGlzLnNhZmVTZW1lc3RlcjsKICAgICAgcmV0dXJuIHMueHlkbWMgfHwgcy54eWRiaCB8fCAnJzsKICAgIH0sCiAgICBzZW1lc3RlclRpdGxlOiBmdW5jdGlvbiBzZW1lc3RlclRpdGxlKCkgewogICAgICB2YXIgcyA9IHRoaXMuc2FmZVNlbWVzdGVyOwogICAgICB2YXIgbmQgPSBzLm5kICE9PSB1bmRlZmluZWQgJiYgcy5uZCAhPT0gbnVsbCAmJiBzLm5kICE9PSAnJyA/ICIiLmNvbmNhdChzLm5kLCAiXHU1RTc0IikgOiAnJzsKICAgICAgdmFyIHhxID0gdGhpcy54cWRjTGFiZWwocy54cWRjKTsKICAgICAgcmV0dXJuICIiLmNvbmNhdChuZCkuY29uY2F0KHhxKTsKICAgIH0sCiAgICBzZW1lc3RlcldlZWtzOiBmdW5jdGlvbiBzZW1lc3RlcldlZWtzKCkgewogICAgICB2YXIgcyA9IHRoaXMuc2FmZVNlbWVzdGVyOwogICAgICBpZiAoIXMua3hycSB8fCAhcy5qc3JxKSByZXR1cm4gJy0nOwogICAgICB2YXIgc3RhcnQgPSBuZXcgRGF0ZShTdHJpbmcocy5reHJxKS5zbGljZSgwLCAxMCkpOwogICAgICB2YXIgZW5kID0gbmV3IERhdGUoU3RyaW5nKHMuanNycSkuc2xpY2UoMCwgMTApKTsKICAgICAgdmFyIGRpZmYgPSBNYXRoLnJvdW5kKChlbmQgLSBzdGFydCkgLyAoMTAwMCAqIDYwICogNjAgKiAyNCkpICsgMTsKICAgICAgcmV0dXJuIGRpZmYgPiAwID8gTWF0aC5jZWlsKGRpZmYgLyA3KSA6ICctJzsKICAgIH0sCiAgICAvKiog54+t5Y6G57uf6K6h77ya6K++56iL5pWwIC8g5oC75a2m5pe2IC8g5oC75a2m5YiGICovc3VtbWFyeTogZnVuY3Rpb24gc3VtbWFyeSgpIHsKICAgICAgdmFyIHRvdGFsWHMgPSB0aGlzLnJlY29yZHMucmVkdWNlKGZ1bmN0aW9uIChzdW0sIHIpIHsKICAgICAgICByZXR1cm4gc3VtICsgKE51bWJlcihyLnhzKSB8fCAwKTsKICAgICAgfSwgMCk7CiAgICAgIHZhciB0b3RhbFhmID0gdGhpcy5yZWNvcmRzLnJlZHVjZShmdW5jdGlvbiAoc3VtLCByKSB7CiAgICAgICAgcmV0dXJuIHN1bSArIChOdW1iZXIoci54ZikgfHwgMCk7CiAgICAgIH0sIDApOwogICAgICByZXR1cm4gewogICAgICAgIHRvdGFsWHM6IHRvdGFsWHMsCiAgICAgICAgdG90YWxYZjogdG90YWxYZgogICAgICB9OwogICAgfSwKICAgIGVkaXRUaXRsZTogZnVuY3Rpb24gZWRpdFRpdGxlKCkgewogICAgICByZXR1cm4gdGhpcy5lZGl0TW9kZSA9PT0gJ2VkaXQnID8gJ+e8lui+keePreWOhuiusOW9lScgOiAn5paw5aKe54+t5Y6G6K6w5b2VJzsKICAgIH0KICB9LAogIHdhdGNoOiB7CiAgICB2aXNpYmxlOiBmdW5jdGlvbiB2aXNpYmxlKHZhbCkgewogICAgICBpZiAodmFsKSB7CiAgICAgICAgdGhpcy5sb2FkRGF0YSgpOwogICAgICB9CiAgICB9CiAgfSwKICBtZXRob2RzOiB7CiAgICAvKiAtLS0tLS0tLS0tIOagvOW8j+WMliAtLS0tLS0tLS0tICovZm10RGF0ZTogZnVuY3Rpb24gZm10RGF0ZSh2YWwpIHsKICAgICAgaWYgKCF2YWwpIHJldHVybiAnLSc7CiAgICAgIHJldHVybiBTdHJpbmcodmFsKS5zbGljZSgwLCAxMCk7CiAgICB9LAogICAgeHFkY0xhYmVsOiBmdW5jdGlvbiB4cWRjTGFiZWwodmFsKSB7CiAgICAgIGlmICh2YWwgPT09IDEgfHwgdmFsID09PSAnMScpIHJldHVybiAn56ysMeWtpuacnyc7CiAgICAgIGlmICh2YWwgPT09IDIgfHwgdmFsID09PSAnMicpIHJldHVybiAn56ysMuWtpuacnyc7CiAgICAgIGlmICh2YWwgPT09IDMgfHwgdmFsID09PSAnMycpIHJldHVybiAn56ysM+Wtpuacnyc7CiAgICAgIHJldHVybiB2YWwgIT09IHVuZGVmaW5lZCAmJiB2YWwgIT09IG51bGwgJiYgdmFsICE9PSAnJyA/ICJcdTdCMkMiLmNvbmNhdCh2YWwsICJcdTVCNjZcdTY3MUYiKSA6ICctJzsKICAgIH0sCiAgICBjbGVhblBheWxvYWQ6IGZ1bmN0aW9uIGNsZWFuUGF5bG9hZChvYmopIHsKICAgICAgdmFyIHBheWxvYWQgPSB7fTsKICAgICAgT2JqZWN0LmtleXMob2JqKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHsKICAgICAgICB2YXIgdmFsdWUgPSBvYmpba2V5XTsKICAgICAgICBpZiAodmFsdWUgIT09ICcnICYmIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAgIHBheWxvYWRba2V5XSA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBwYXlsb2FkOwogICAgfSwKICAgIC8qIC0tLS0tLS0tLS0g5YiX6KGo5Yqg6L29IC0tLS0tLS0tLS0gKi9sb2FkRGF0YTogZnVuY3Rpb24gbG9hZERhdGEoKSB7CiAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgIHZhciBzID0gdGhpcy5zZW1lc3RlciB8fCB7fTsKICAgICAgaWYgKCFzLmJoKSByZXR1cm47CiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7CiAgICAgIGxpc3RDbGFzc0NhbGVuZGFyKHMuYmgpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzLnJlY29yZHMgPSByZXMgJiYgcmVzLmRhdGEgfHwgW107CiAgICAgICAgX3RoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICB9KS5jYXRjaChmdW5jdGlvbiAoKSB7CiAgICAgICAgX3RoaXMucmVjb3JkcyA9IFtdOwogICAgICAgIF90aGlzLmxvYWRpbmcgPSBmYWxzZTsKICAgICAgfSk7CiAgICB9LAogICAgaGFuZGxlU2VsZWN0aW9uQ2hhbmdlOiBmdW5jdGlvbiBoYW5kbGVTZWxlY3Rpb25DaGFuZ2Uocm93cykgewogICAgICB0aGlzLnNlbGVjdGlvbiA9IHJvd3M7CiAgICB9LAogICAgLyogLS0tLS0tLS0tLSDmlrDlop4gLyDnvJbovpEgLS0tLS0tLS0tLSAqL2NyZWF0ZUVtcHR5RWRpdEZvcm06IGZ1bmN0aW9uIGNyZWF0ZUVtcHR5RWRpdEZvcm0oKSB7CiAgICAgIHZhciBzID0gdGhpcy5zZW1lc3RlciB8fCB7fTsKICAgICAgcmV0dXJuIHsKICAgICAgICBiaDogJycsCiAgICAgICAgbmQ6IHMubmQsCiAgICAgICAgeHlkYmg6IHMueHlkYmggfHwgJycsCiAgICAgICAgeHFkYzogcy54cWRjLAogICAgICAgIHh5ZHhxYmg6IHMuYmggfHwgJycsCiAgICAgICAgamM6ICcnLAogICAgICAgIGtiaDogJycsCiAgICAgICAga2x4OiAnJywKICAgICAgICBrY3hoOiB1bmRlZmluZWQsCiAgICAgICAgamhrY3hoOiB1bmRlZmluZWQsCiAgICAgICAgeGhiczogdW5kZWZpbmVkLAogICAgICAgIGp5Ymg6ICcnLAogICAgICAgIGpzYmg6ICcnLAogICAgICAgIHJzOiB1bmRlZmluZWQsCiAgICAgICAgemtzOiB1bmRlZmluZWQsCiAgICAgICAgeHM6IHVuZGVmaW5lZCwKICAgICAgICBsbHhzOiB1bmRlZmluZWQsCiAgICAgICAgc2p4czogdW5kZWZpbmVkLAogICAgICAgIHhmOiB1bmRlZmluZWQsCiAgICAgICAga3NrczogdW5kZWZpbmVkLAogICAgICAgIGtzYmg6ICcnLAogICAgICAgIGtzZGQ6ICcnLAogICAgICAgIGNqZno6ICcnLAogICAgICAgIGJqcnh5cGpmOiB1bmRlZmluZWQsCiAgICAgICAga3Nrc2J4czogdW5kZWZpbmVkLAogICAgICAgIGp5c2RoOiAnJywKICAgICAgICBqeXNqaGp5Ymg6ICcnLAogICAgICAgIGp5c2poYno6ICcnLAogICAgICAgIHBkeGg6IHVuZGVmaW5lZCwKICAgICAgICBwZHFzejogdW5kZWZpbmVkLAogICAgICAgIHBkYXo6IHVuZGVmaW5lZCwKICAgICAgICBwZHp6a3NqOiB1bmRlZmluZWQsCiAgICAgICAgcGRiejogdW5kZWZpbmVkLAogICAgICAgIHBkdGJ5a3h4Yno6IHVuZGVmaW5lZCwKICAgICAgICBwZHF5emR5eHM6IHVuZGVmaW5lZCwKICAgICAgICBwZHpkeXhzZmJzajogJycsCiAgICAgICAgYnoyOiB1bmRlZmluZWQsCiAgICAgICAgYno6ICcnCiAgICAgIH07CiAgICB9LAogICAgaGFuZGxlQWRkOiBmdW5jdGlvbiBoYW5kbGVBZGQoKSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwogICAgICB0aGlzLmVkaXRNb2RlID0gJ2FkZCc7CiAgICAgIHRoaXMuZWRpdEZvcm0gPSB0aGlzLmNyZWF0ZUVtcHR5RWRpdEZvcm0oKTsKICAgICAgdGhpcy5lZGl0VmlzaWJsZSA9IHRydWU7CiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHsKICAgICAgICBpZiAoX3RoaXMyLiRyZWZzLmVkaXRGb3JtUmVmKSBfdGhpczIuJHJlZnMuZWRpdEZvcm1SZWYuY2xlYXJWYWxpZGF0ZSgpOwogICAgICB9KTsKICAgIH0sCiAgICBoYW5kbGVFZGl0OiBmdW5jdGlvbiBoYW5kbGVFZGl0KHJvdykgewogICAgICB2YXIgX3RoaXMzID0gdGhpczsKICAgICAgdGhpcy5lZGl0TW9kZSA9ICdlZGl0JzsKICAgICAgdmFyIHMgPSB0aGlzLnNlbWVzdGVyIHx8IHt9OwogICAgICB2YXIgZm9ybSA9IHRoaXMuY3JlYXRlRW1wdHlFZGl0Rm9ybSgpOwogICAgICBPYmplY3Qua2V5cyhmb3JtKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHsKICAgICAgICBpZiAocm93W2tleV0gIT09IHVuZGVmaW5lZCAmJiByb3dba2V5XSAhPT0gbnVsbCkgZm9ybVtrZXldID0gcm93W2tleV07CiAgICAgIH0pOwogICAgICBmb3JtLnh5ZHhxYmggPSBzLmJoIHx8IHJvdy54eWR4cWJoOwogICAgICB0aGlzLmVkaXRGb3JtID0gZm9ybTsKICAgICAgdGhpcy5lZGl0VmlzaWJsZSA9IHRydWU7CiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHsKICAgICAgICBpZiAoX3RoaXMzLiRyZWZzLmVkaXRGb3JtUmVmKSBfdGhpczMuJHJlZnMuZWRpdEZvcm1SZWYuY2xlYXJWYWxpZGF0ZSgpOwogICAgICB9KTsKICAgIH0sCiAgICBoYW5kbGVFZGl0U3VibWl0OiBmdW5jdGlvbiBoYW5kbGVFZGl0U3VibWl0KCkgewogICAgICB2YXIgX3RoaXM0ID0gdGhpczsKICAgICAgdGhpcy4kcmVmcy5lZGl0Rm9ybVJlZi52YWxpZGF0ZShmdW5jdGlvbiAodmFsaWQpIHsKICAgICAgICBpZiAoIXZhbGlkKSByZXR1cm47CiAgICAgICAgdmFyIHBheWxvYWQgPSBfdGhpczQuY2xlYW5QYXlsb2FkKF9vYmplY3RTcHJlYWQoe30sIF90aGlzNC5lZGl0Rm9ybSkpOwogICAgICAgIHZhciByZXEgPSBfdGhpczQuZWRpdE1vZGUgPT09ICdlZGl0JyA/IHVwZGF0ZUNsYXNzQ2FsZW5kYXIocGF5bG9hZCkgOiBhZGRUZWFtVGFzayhwYXlsb2FkKTsKICAgICAgICBfdGhpczQuc2F2aW5nID0gdHJ1ZTsKICAgICAgICByZXEudGhlbihmdW5jdGlvbiAoKSB7CiAgICAgICAgICBfdGhpczQuc2F2aW5nID0gZmFsc2U7CiAgICAgICAgICBfdGhpczQuZWRpdFZpc2libGUgPSBmYWxzZTsKICAgICAgICAgIF90aGlzNC4kbWVzc2FnZS5zdWNjZXNzKF90aGlzNC5lZGl0TW9kZSA9PT0gJ2VkaXQnID8gJ+ePreWOhuiusOW9leW3suabtOaWsCcgOiAn54+t5Y6G6K6w5b2V5bey5paw5aKeJyk7CiAgICAgICAgICBfdGhpczQubG9hZERhdGEoKTsKICAgICAgICB9KS5jYXRjaChmdW5jdGlvbiAoKSB7CiAgICAgICAgICBfdGhpczQuc2F2aW5nID0gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfSwKICAgIC8qIC0tLS0tLS0tLS0g5Yig6ZmkIC0tLS0tLS0tLS0gKi9oYW5kbGVEZWxldGU6IGZ1bmN0aW9uIGhhbmRsZURlbGV0ZShyb3cpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CiAgICAgIHRoaXMuJGNvbmZpcm0oIlx1Nzg2RVx1NUI5QVx1NTIyMFx1OTY2NFx1OEJFNVx1NzNFRFx1NTM4Nlx1OEJCMFx1NUY1NVx1RkYwOCIuY29uY2F0KHJvdy5qYyB8fCByb3cuYmgsICJcdUZGMDlcdTU0MTdcdUZGMUYiKSwgJ+aPkOekuicsIHsKICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogJ+ehruWumicsCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ+WPlua2iCcsCiAgICAgICAgdHlwZTogJ3dhcm5pbmcnCiAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgIGRlbFRlYW1UYXNrKHJvdy5iaCkudGhlbihmdW5jdGlvbiAoKSB7CiAgICAgICAgICBfdGhpczUuJG1lc3NhZ2Uuc3VjY2Vzcygn5bey5Yig6ZmkJyk7CiAgICAgICAgICBfdGhpczUubG9hZERhdGEoKTsKICAgICAgICB9KTsKICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKCkge30pOwogICAgfSwKICAgIC8qIC0tLS0tLS0tLS0g6Ieq5Yqo55Sf5oiQ5b+F5L+u6K++56iLIC0tLS0tLS0tLS0gKi9oYW5kbGVBdXRvR2VuZXJhdGU6IGZ1bmN0aW9uIGhhbmRsZUF1dG9HZW5lcmF0ZSgpIHsKICAgICAgdmFyIF90aGlzNiA9IHRoaXM7CiAgICAgIHZhciBzID0gdGhpcy5zZW1lc3RlciB8fCB7fTsKICAgICAgaWYgKCFzLnh5ZGJoIHx8ICFzLnhxZGMpIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoJ+W9k+WJjeePreasoeWtpuacn+e8uuWwkeWtpuWRmOmYn+e8luWPt+aIluWtpuacn+esrOasoe+8jOaXoOazleiHquWKqOeUn+aIkCcpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB0aGlzLiRjb25maXJtKCflsIbmjInkuJPkuJrmlZnlraborqHliJLoh6rliqjnlJ/miJDor6Xnj63mrKHnmoTlv4Xkv67or77nqIvvvIjlt7LlrZjlnKjnmoTor77nqIvkuI3kvJrph43lpI3mt7vliqDvvInvvIzmmK/lkKbnu6fnu63vvJ8nLCAn5o+Q56S6JywgewogICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu5a6aJywKICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAn5Y+W5raIJywKICAgICAgICB0eXBlOiAnd2FybmluZycKICAgICAgfSkudGhlbihmdW5jdGlvbiAoKSB7CiAgICAgICAgYXV0b0dlbmVyYXRlUmVxdWlyZWRDb3Vyc2VzKHMueHlkYmgsIHMueHFkYykudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgICB2YXIgY291bnQgPSByZXMgJiYgcmVzLmRhdGEgfHwgMDsKICAgICAgICAgIF90aGlzNi4kbWVzc2FnZS5zdWNjZXNzKCJcdTVERjJcdTgxRUFcdTUyQThcdTc1MUZcdTYyMTAgIi5jb25jYXQoY291bnQsICIgXHU5NUU4XHU1RkM1XHU0RkVFXHU4QkZFXHU3QTBCIikpOwogICAgICAgICAgX3RoaXM2LmxvYWREYXRhKCk7CiAgICAgICAgfSk7CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uICgpIHt9KTsKICAgIH0sCiAgICAvKiAtLS0tLS0tLS0tIOmihOiuvuWQiOePrSAvIOaLhuePrSAtLS0tLS0tLS0tICovaGFuZGxlUHJlc2V0TWVyZ2U6IGZ1bmN0aW9uIGhhbmRsZVByZXNldE1lcmdlKCkgewogICAgICB2YXIgX3RoaXM3ID0gdGhpczsKICAgICAgdmFyIGJocyA9IHRoaXMuc2VsZWN0aW9uLm1hcChmdW5jdGlvbiAocikgewogICAgICAgIHJldHVybiByLmJoOwogICAgICB9KTsKICAgICAgaWYgKCFiaHMubGVuZ3RoKSB7CiAgICAgICAgdGhpcy4kbWVzc2FnZS53YXJuaW5nKCfor7flhYjli77pgInopoHlkIjnj63nmoTnj63ljoborrDlvZUnKTsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgdGhpcy4kY29uZmlybSgiXHU1QzA2XHU2MzA5XHU1RTc0XHU1RUE2XHU0RTNBXHU5MDA5XHU0RTJEXHU3Njg0ICIuY29uY2F0KGJocy5sZW5ndGgsICIgXHU2NzYxXHU4QkIwXHU1RjU1XHU4QkJFXHU3RjZFXHU3RURGXHU0RTAwXHU3Njg0XHU4QkZFXHU2QjIxXHU1RThGXHU1M0Y3XHVGRjBDXHU2NjJGXHU1NDI2XHU3RUU3XHU3RUVEXHVGRjFGIiksICfmj5DnpLonLCB7CiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7lrponLAogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLAogICAgICAgIHR5cGU6ICd3YXJuaW5nJwogICAgICB9KS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICBiYXRjaFByZXNldE1lcmdlKGJocykudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgICB2YXIgY291bnQgPSByZXMgJiYgcmVzLmRhdGEgfHwgMDsKICAgICAgICAgIF90aGlzNy4kbWVzc2FnZS5zdWNjZXNzKCJcdTVERjJcdTVCOENcdTYyMTAgIi5jb25jYXQoY291bnQsICIgXHU2NzYxXHU4QkIwXHU1RjU1XHU3Njg0XHU5ODg0XHU4QkJFXHU1NDA4XHU3M0VEIikpOwogICAgICAgICAgX3RoaXM3LmxvYWREYXRhKCk7CiAgICAgICAgfSk7CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uICgpIHt9KTsKICAgIH0sCiAgICBoYW5kbGVQcmVzZXRTcGxpdDogZnVuY3Rpb24gaGFuZGxlUHJlc2V0U3BsaXQoKSB7CiAgICAgIHZhciBfdGhpczggPSB0aGlzOwogICAgICB2YXIgYmhzID0gdGhpcy5zZWxlY3Rpb24ubWFwKGZ1bmN0aW9uIChyKSB7CiAgICAgICAgcmV0dXJuIHIuYmg7CiAgICAgIH0pOwogICAgICBpZiAoIWJocy5sZW5ndGgpIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoJ+ivt+WFiOWLvumAieimgeaLhuePreeahOePreWOhuiusOW9lScpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB0aGlzLiRjb25maXJtKCJcdTVDMDZcdTZFMDVcdTdBN0FcdTkwMDlcdTRFMkRcdTc2ODQgIi5jb25jYXQoYmhzLmxlbmd0aCwgIiBcdTY3NjFcdThCQjBcdTVGNTVcdTc2ODRcdThCRkVcdTZCMjFcdTVFOEZcdTUzRjdcdUZGMENcdTY2MkZcdTU0MjZcdTdFRTdcdTdFRURcdUZGMUYiKSwgJ+aPkOekuicsIHsKICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogJ+ehruWumicsCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ+WPlua2iCcsCiAgICAgICAgdHlwZTogJ3dhcm5pbmcnCiAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgIGJhdGNoUHJlc2V0U3BsaXQoYmhzKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICAgIHZhciBjb3VudCA9IHJlcyAmJiByZXMuZGF0YSB8fCAwOwogICAgICAgICAgX3RoaXM4LiRtZXNzYWdlLnN1Y2Nlc3MoIlx1NURGMlx1NUI4Q1x1NjIxMCAiLmNvbmNhdChjb3VudCwgIiBcdTY3NjFcdThCQjBcdTVGNTVcdTc2ODRcdTk4ODRcdThCQkVcdTYyQzZcdTczRUQiKSk7CiAgICAgICAgICBfdGhpczgubG9hZERhdGEoKTsKICAgICAgICB9KTsKICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKCkge30pOwogICAgfSwKICAgIC8qIC0tLS0tLS0tLS0g5bqU55So5LqO5YW25a6D54+t5qyhIC0tLS0tLS0tLS0gKi9oYW5kbGVBcHBseVJlZ2lvbjogZnVuY3Rpb24gaGFuZGxlQXBwbHlSZWdpb24oKSB7CiAgICAgIHZhciBiaHMgPSB0aGlzLnNlbGVjdGlvbi5tYXAoZnVuY3Rpb24gKHIpIHsKICAgICAgICByZXR1cm4gci5iaDsKICAgICAgfSk7CiAgICAgIGlmICghYmhzLmxlbmd0aCkgewogICAgICAgIHRoaXMuJG1lc3NhZ2Uud2FybmluZygn6K+35YWI5Yu+6YCJ6KaB5bqU55So55qE54+t5Y6G6K6w5b2V77yI6YCJ5a6a5Yy65Z+f77yJJyk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHRoaXMuYXBwbHlNb2RlID0gJ3JlZ2lvbic7CiAgICAgIHRoaXMuY29weU5vdGUgPSAiXHU1QzA2XHU5MDA5XHU0RTJEXHU3Njg0ICIuY29uY2F0KGJocy5sZW5ndGgsICIgXHU2NzYxXHU3M0VEXHU1Mzg2XHU4QkIwXHU1RjU1XHU1OTBEXHU1MjM2XHU1MjMwXHU2MjQwXHU5MDA5XHU3M0VEXHU2QjIxIik7CiAgICAgIHRoaXMudGVhbVNlbGVjdFZpc2libGUgPSB0cnVlOwogICAgfSwKICAgIGhhbmRsZUFwcGx5V2hvbGU6IGZ1bmN0aW9uIGhhbmRsZUFwcGx5V2hvbGUoKSB7CiAgICAgIHRoaXMuYXBwbHlNb2RlID0gJ3dob2xlJzsKICAgICAgdGhpcy5jb3B5Tm90ZSA9ICflsIbmlbTkuKrnj63ljoblpI3liLbliLDmiYDpgInnj63mrKEnOwogICAgICB0aGlzLnRlYW1TZWxlY3RWaXNpYmxlID0gdHJ1ZTsKICAgIH0sCiAgICBoYW5kbGVUZWFtQ29uZmlybTogZnVuY3Rpb24gaGFuZGxlVGVhbUNvbmZpcm0odGFyZ2V0cykgewogICAgICB2YXIgX3RoaXM5ID0gdGhpczsKICAgICAgaWYgKCF0YXJnZXRzIHx8ICF0YXJnZXRzLmxlbmd0aCkgcmV0dXJuOwogICAgICB2YXIgdGFyZ2V0QmhMaXN0ID0gdGFyZ2V0cy5tYXAoZnVuY3Rpb24gKHQpIHsKICAgICAgICByZXR1cm4gdC5iaDsKICAgICAgfSk7CiAgICAgIGlmICh0aGlzLmFwcGx5TW9kZSA9PT0gJ3dob2xlJykgewogICAgICAgIGJhdGNoQ29weUNhbGVuZGFyQnlTZW1lc3Rlcih7CiAgICAgICAgICBzb3VyY2VYeWR4cWJoOiB0aGlzLnNlbWVzdGVyLmJoLAogICAgICAgICAgdGFyZ2V0QmhMaXN0OiB0YXJnZXRCaExpc3QKICAgICAgICB9KS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICAgIHZhciBkYXRhID0gcmVzICYmIHJlcy5kYXRhIHx8IHt9OwogICAgICAgICAgX3RoaXM5LiRtZXNzYWdlLnN1Y2Nlc3MoIlx1NURGMlx1NTkwRFx1NTIzNlx1NjU3NFx1NEUyQVx1NzNFRFx1NTM4Nlx1RkYwQ1x1NTE3MVx1NjVCMFx1NTg5RSAiLmNvbmNhdChkYXRhLmNvdW50IHx8IDAsICIgXHU2NzYxXHU4QkIwXHU1RjU1IikpOwogICAgICAgICAgX3RoaXM5LmxvYWREYXRhKCk7CiAgICAgICAgfSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgYmF0Y2hDb3B5Q2FsZW5kYXIoewogICAgICAgICAgc291cmNlQmhMaXN0OiB0aGlzLnNlbGVjdGlvbi5tYXAoZnVuY3Rpb24gKHIpIHsKICAgICAgICAgICAgcmV0dXJuIHIuYmg7CiAgICAgICAgICB9KSwKICAgICAgICAgIHRhcmdldEJoTGlzdDogdGFyZ2V0QmhMaXN0CiAgICAgICAgfSkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgICB2YXIgZGF0YSA9IHJlcyAmJiByZXMuZGF0YSB8fCB7fTsKICAgICAgICAgIF90aGlzOS4kbWVzc2FnZS5zdWNjZXNzKCJcdTVERjJcdTU5MERcdTUyMzZcdTkwMDlcdTVCOUFcdTUzM0FcdTU3REZcdUZGMENcdTUxNzFcdTY1QjBcdTU4OUUgIi5jb25jYXQoZGF0YS5jb3VudCB8fCAwLCAiIFx1Njc2MVx1OEJCMFx1NUY1NSIpKTsKICAgICAgICAgIF90aGlzOS5sb2FkRGF0YSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICB9LAogICAgLyogLS0tLS0tLS0tLSDliLfmlrAgLS0tLS0tLS0tLSAqL2hhbmRsZVJlZnJlc2g6IGZ1bmN0aW9uIGhhbmRsZVJlZnJlc2goKSB7CiAgICAgIHRoaXMubG9hZERhdGEoKTsKICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKCflt7LliLfmlrDnj63ljoYnKTsKICAgIH0KICB9Cn07"},null]}