{"remainingRequest":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Device\\deviceManage\\components\\videoFormDialog.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Device\\deviceManage\\components\\videoFormDialog.vue","mtime":1731062408878},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgVmlkZW9GYWNpbGl0aWVzIGZyb20gJ0AvYXBpL2RldmljZS9WaWRlb0ZhY2lsaXRpZXMuanMnDQppbXBvcnQgU3BhcmVDb21wYW55IGZyb20gJ0AvYXBpL2RldmljZS9TcGFyZU1hbmFnZS5qcycNCmltcG9ydCB1c2VyTWFuYWdlIGZyb20gJ0AvYXBpL2RldmljZS91c2VyTWFuYWdlLmpzJw0KaW1wb3J0IHJlc291cmNlTWFuYWdlIGZyb20gJ0AvYXBpL2RldmljZS9yZXNvdXJjZU1hbmFnZS5qcycNCmltcG9ydCBkaWN0VXRpbHMgZnJvbSAnQC9jb21wb25lbnRzL2RpY3QvRGljdFNlbGVjdFV0aWxzLmpzJw0KaW1wb3J0IHJlcSBmcm9tICdAL3JlcXVlc3QuanMnDQppbXBvcnQge21hcFN0YXRlfSBmcm9tICd2dWV4Jw0KaW1wb3J0IENob29zZU1hcFBvaW50VnVlIGZyb20gJy4vQ2hvb3NlTWFwUG9pbnQudnVlJw0KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICd2aWRlb0Zvcm1EaWFsb2cnLA0KICBjb21wb25lbnRzOiB7DQogICAgQ2hvb3NlTWFwUG9pbnRWdWUNCiAgfSwNCiAgcHJvcHM6IHt9LA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICB2aWRlb1RyZWU6IFtdLA0KICAgICAgZnVsbElkOiAnJywgLy/nm67lvZXmoJHnvJbnoIENCiAgICAgIGNhdGFsb2dDb2RlOiAnJywgLy/nm67lvZXnvJbnoIENCiAgICAgIGNhdGFsb2dQbGF0Zm9ybTogJycsDQogICAgICBjYXRhbG9nczogW10sIC8v6KeG6aKR55uu5b2VDQogICAgICBpbXBvcnRhbnREYXRhOiBbDQogICAgICAgIHsNCiAgICAgICAgICBuYW1lOiAn5LiA6Iis6K6+5aSHJywNCiAgICAgICAgICB2YWx1ZTogJzAnDQogICAgICAgIH0sDQogICAgICAgIHsNCiAgICAgICAgICBuYW1lOiAn6YeN54K56K6+5aSHJywNCiAgICAgICAgICB2YWx1ZTogJzEnDQogICAgICAgIH0NCiAgICAgIF0sDQogICAgICBzaG93VHlwZTogJycsDQogICAgICB2aWRlb1R5cGVMaXN0OiBbXSwgLy/mkYTlg4/lpLTnsbvlnosNCiAgICAgIGZsb29yTGlzdDogW10sIC8v5a6J6KOF5qW85bGC5a2X5q615YiX6KGoDQogICAgICBhZGRyZXNzVHlwZUxpc3Q6IFtdLCAvL+WuieijheWcsOeCueexu+Wei+Wtl+auteWIl+ihqA0KICAgICAgYXJlYU9wdGlvbnM6IFtdLCAvLyDljLrln5/mlbDmja4NCiAgICAgIGFkZHZjZE9wdGlvbnM6IFtdLCAvLyDooYzmlL/ljLrliJLmlbDmja4NCiAgICAgIHJlcGFpclVzZXJEYXRhOiBbXSwgLy/nu7TmiqTkurrlkZjmlbDmja4NCiAgICAgIHN1cHBsaWVyRGF0YTogW10sIC8vIOS+m+W6lOWVhuaVsOaNrg0KICAgICAgbWFuYWdlclVzZXJEYXRhOiBbXSwgLy/nrqHnkIbkurrlkZjmlbDmja4NCiAgICAgIG1hbmFnZXJDb21wYW55OiBbXSwgLy/nrqHnkIbljZXkvY3mlbDmja4NCiAgICAgIHJlcGFpckNvbXBhbnk6IFtdLCAvL+e7tOaKpOWNleS9jQ0KICAgICAgc3JjTGlzdDogW10sDQogICAgICBlbGVjdHJpY2l0eVR5cGVMaXN0OiBbXSwgLy/nlKjnlLXnsbvlnosNCiAgICAgIGNvbnN0cnVjdGlvblVuaXROYW1lT3B0OiBbDQogICAgICAgIHtuYW1lOiAn5pS/5bqc6YOo6ZeoJywgdmFsdWU6ICfmlL/lupzpg6jpl6gnfSwNCiAgICAgICAge25hbWU6ICflm73mnInkvIHkuJonLCB2YWx1ZTogJ+WbveacieS8geS4mid9LA0KICAgICAgICB7bmFtZTogJ+awkeiQpeS8geS4micsIHZhbHVlOiAn5rCR6JCl5LyB5LiaJ30sDQogICAgICAgIHtuYW1lOiAn56S+5Lya5YWs5YWxJywgdmFsdWU6ICfnpL7kvJrlhazlhbEnfQ0KICAgICAgXSwNCiAgICAgIGFwcGxpY2F0aW9uQXJlYU9wdDogWw0KICAgICAgICB7bmFtZTogJ+S6pOmAmueuoeeQhicsIHZhbHVlOiAn5Lqk6YCa566h55CGJ30sDQogICAgICAgIHtuYW1lOiAn5pWZ6IKy6KGM5LiaJywgdmFsdWU6ICfmlZnogrLooYzkuJonfSwNCiAgICAgICAge25hbWU6ICfph5Hono3ooYzkuJonLCB2YWx1ZTogJ+mHkeiejeihjOS4mid9LA0KICAgICAgICB7bmFtZTogJ+WNq+eUn+WBpeW6tycsIHZhbHVlOiAn5Y2r55Sf5YGl5bq3J30sDQogICAgICAgIHtuYW1lOiAn5Z+O5biC566h55CGJywgdmFsdWU6ICfln47luILnrqHnkIYnfSwNCiAgICAgICAge25hbWU6ICfkvY/miL/ln47kuaEnLCB2YWx1ZTogJ+S9j+aIv+WfjuS5oSd9LA0KICAgICAgICB7bmFtZTogJ+iHqueEtui1hOa6kCcsIHZhbHVlOiAn6Ieq54S26LWE5rqQJ30sDQogICAgICAgIHtuYW1lOiAn5ZWG5Lia5pyN5YqhJywgdmFsdWU6ICfllYbkuJrmnI3liqEnfSwNCiAgICAgICAge25hbWU6ICfmlofljJbml4XmuLgnLCB2YWx1ZTogJ+aWh+WMluaXhea4uCd9LA0KICAgICAgICB7bmFtZTogJ+W6lOaApeeuoeeQhicsIHZhbHVlOiAn5bqU5oCl566h55CGJ30sDQogICAgICAgIHtuYW1lOiAn5biC5Zy655uR566hJywgdmFsdWU6ICfluILlnLrnm5HnrqEnfSwNCiAgICAgICAge25hbWU6ICfnu4/mtY7kv6Hmga8nLCB2YWx1ZTogJ+e7j+a1juS/oeaBryd9LA0KICAgICAgICB7bmFtZTogJ+awkeaUv+acjeWKoScsIHZhbHVlOiAn5rCR5pS/5pyN5YqhJ30sDQogICAgICAgIHtuYW1lOiAn6YKu5pS/54mp5rWBJywgdmFsdWU6ICfpgq7mlL/nianmtYEnfSwNCiAgICAgICAge25hbWU6ICfkvZPogrLooYzkuJonLCB2YWx1ZTogJ+S9k+iCsuihjOS4mid9LA0KICAgICAgICB7bmFtZTogJ+awkeaXj+Wul+aVmScsIHZhbHVlOiAn5rCR5peP5a6X5pWZJ30sDQogICAgICAgIHtuYW1lOiAn5Y+45rOV566h55CGJywgdmFsdWU6ICflj7jms5XnrqHnkIYnfSwNCiAgICAgICAge25hbWU6ICflhpzkuJrmsLTliKknLCB2YWx1ZTogJ+WGnOS4muawtOWIqSd9LA0KICAgICAgICB7bmFtZTogJ+acuuaehOe7hOe7hycsIHZhbHVlOiAn5py65p6E57uE57uHJ30sDQogICAgICAgIHtuYW1lOiAn55Sf5oCB546v5L+dJywgdmFsdWU6ICfnlJ/mgIHnjq/kv50nfSwNCiAgICAgICAge25hbWU6ICflhbbku5booYzkuJonLCB2YWx1ZTogJ+WFtuS7luihjOS4mid9DQogICAgICBdLA0KICAgICAgZGV2aWNlU3RhdHVzT3B0aW9uczogWw0KICAgICAgICB7bmFtZTogJ+WPr+eUqCcsIHZhbHVlOiAn5Y+v55SoJ30sDQogICAgICAgIHtuYW1lOiAn5LiN5Y+v55SoJywgdmFsdWU6ICfkuI3lj6/nlKgnfQ0KICAgICAgXSwNCiAgICAgIG5ldHdvcmtUeXBlT3B0OiBbDQogICAgICAgIHtuYW1lOiAn6YOo6Zeo5LiT572RJywgdmFsdWU6ICfpg6jpl6jkuJPnvZEnfSwNCiAgICAgICAge25hbWU6ICflhazlronkuJPnvZEnLCB2YWx1ZTogJ+WFrOWuieS4k+e9kSd9LA0KICAgICAgICB7bmFtZTogJ+aUv+WKoeWklue9kScsIHZhbHVlOiAn5pS/5Yqh5aSW572RJ30sDQogICAgICAgIHtuYW1lOiAn5LqS6IGU572RJywgdmFsdWU6ICfkupLogZTnvZEnfSwNCiAgICAgICAge25hbWU6ICfnp7vliqjnvZHvvIg0R+OAgTVH77yJJywgdmFsdWU6ICfnp7vliqjnvZHvvIg0R+OAgTVH77yJJ30sDQogICAgICAgIHtuYW1lOiAn5YW25LuW572R57ucJywgdmFsdWU6ICflhbbku5bnvZHnu5wnfQ0KICAgICAgXSwNCiAgICAgIHJ1bGVzOiB7DQogICAgICAgIG5hbWU6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfor7fovpPlhaXop4bpopHngrnlkI3np7AnLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2NoYW5nZScNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIGNvZGU6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfor7fovpPlhaXop4bpopHngrnnvJbnoIEnLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2NoYW5nZScNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIGltcG9ydGFudDogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+ivt+i+k+WFpemHjeeCueiuvuWkhycsDQogICAgICAgICAgICB0cmlnZ2VyOiAnY2hhbmdlJw0KICAgICAgICAgIH0NCiAgICAgICAgXSwNCiAgICAgICAgY2F0YWxvZ0NvZGU6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfor7fpgInmi6nnm5Hmjqfnm67lvZUnLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2NoYW5nZScNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIHpvbmVDb2RlOiBbDQogICAgICAgICAgew0KICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsDQogICAgICAgICAgICBtZXNzYWdlOiAn6K+36YCJ5oup5omA5bGe5Yy65Z+fJywNCiAgICAgICAgICAgIHRyaWdnZXI6ICdjaGFuZ2UnDQogICAgICAgICAgfQ0KICAgICAgICBdLA0KICAgICAgICBjb25zdHJ1Y3Rpb25Qcm9qZWN0TmFtZTogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+W7uuiuvumhueebruWQjeensOS4jeiDveS4uuepuicsDQogICAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIGNvbnN0cnVjdGlvblVuaXROYW1lOiBbDQogICAgICAgICAgew0KICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsDQogICAgICAgICAgICBtZXNzYWdlOiAn5bu66K6+5Y2V5L2N57G75Z6L5LiN6IO95Li656m6JywNCiAgICAgICAgICAgIHRyaWdnZXI6ICdjaGFuZ2UnDQogICAgICAgICAgfQ0KICAgICAgICBdLA0KICAgICAgICB0ZXJtaW5hbEJlbG9uZ1RvRGVwdDogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+e7iOerr+aJgOWxnumDqOmXqOS4jeiDveS4uuepuicsDQogICAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIGFwcGxpY2F0aW9uQXJlYTogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+W6lOeUqOmihuWfn+S4jeiDveS4uuepuicsDQogICAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIGFkbWluaXN0cmF0aXZlQXJlYTogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+ihjOaUv+WMuuWfn+S4jeiDveS4uuepuicsDQogICAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIGluc3RhbGxUaW1lOiBbDQogICAgICAgICAgew0KICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsDQogICAgICAgICAgICBtZXNzYWdlOiAn5a6J6KOF5pe26Ze05LiN6IO95Li656m6JywNCiAgICAgICAgICAgIHRyaWdnZXI6ICdjaGFuZ2UnDQogICAgICAgICAgfQ0KICAgICAgICBdLA0KICAgICAgICByZWdpb246IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfmiYDlsZ7ljLrkuI3og73kuLrnqbonLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2JsdXInDQogICAgICAgICAgfQ0KICAgICAgICBdLA0KICAgICAgICBzdHJlZXQ6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfmiYDlsZ7ooZfpgZPkuI3og73kuLrnqbonLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2JsdXInDQogICAgICAgICAgfQ0KICAgICAgICBdLA0KICAgICAgICBjb21tdW5pdHk6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfmiYDlsZ7npL7ljLrkuI3og73kuLrnqbonLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2JsdXInDQogICAgICAgICAgfQ0KICAgICAgICBdLA0KICAgICAgICBkZXZpY2VTdGF0dXM6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICforr7lpIfnirbmgIHkuI3og73kuLrnqbonLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2NoYW5nZScNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIHNlbnNpdGl2ZUVxdWlwbWVudDogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+aYr+WQpuS4uuaVj+aEn+iuvuWkh+S4jeiDveS4uuepuicsDQogICAgICAgICAgICB0cmlnZ2VyOiAnY2hhbmdlJw0KICAgICAgICAgIH0NCiAgICAgICAgXSwNCiAgICAgICAgbmV0d29ya1R5cGU6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfnvZHnu5znsbvlnovkuI3og73kuLrnqbonLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2NoYW5nZScNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIGVxdWlwbWVudE1hbnVmYWN0dXJlcjogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+iuvuWkh+WOguWVhuS4jeiDveS4uuepuicsDQogICAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicNCiAgICAgICAgICB9DQogICAgICAgIF0sDQogICAgICAgIG9wZXJhdGlvblVuaXQ6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfov5Dnu7TljZXkvY3kuI3og73kuLrnqbonLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2JsdXInDQogICAgICAgICAgfQ0KICAgICAgICBdLA0KICAgICAgICBvcGVyYXRpb25Vbml0UGhvbmU6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfov5Dnu7TljZXkvY3ogZTns7vnlLXor53kuI3og73kuLrnqbonLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2JsdXInDQogICAgICAgICAgfQ0KICAgICAgICBdLA0KICAgICAgICBzaGFyZVByb3BlcnR5OiBbDQogICAgICAgICAgew0KICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsDQogICAgICAgICAgICBtZXNzYWdlOiAn5YWx5Lqr5bGe5oCn5LiN6IO95Li656m6JywNCiAgICAgICAgICAgIHRyaWdnZXI6ICdjaGFuZ2UnDQogICAgICAgICAgfQ0KICAgICAgICBdDQogICAgICB9LA0KICAgICAgZGlhbG9nVmlzaWJsZTogZmFsc2UsDQogICAgICB0aXRsZTogJ+S/ruaUuScsDQogICAgICBhY3RpdmVDb2xsYXBzZTogWycxJywgJzInXSwNCiAgICAgIHBhcmFtczogew0KICAgICAgICBuYW1lOiAnJywNCiAgICAgICAgY29kZTogJycsDQogICAgICAgIGlwOiAnJywNCiAgICAgICAgYWlzbGU6ICcnLA0KICAgICAgICBsZ3RkOiAnJywNCiAgICAgICAgbHR0ZDogJycsDQogICAgICAgIHN0YXR1czogJzEnLA0KICAgICAgICBhZGRyZXNzOiAnJywNCiAgICAgICAgaW1wb3J0YW50OiAnJywNCiAgICAgICAgem9uZUNvZGU6ICcnDQogICAgICAgIC8vIGRldmljZVZpZGVvUG9pbnRFeHRlbmQ6IHsNCiAgICAgICAgLy8gCWFkZHJlc3NUeXBlOiAnJywNCiAgICAgICAgLy8gCWFkZHZjZDogJycsDQogICAgICAgIC8vIAlhcmVhY29kZTogJycsDQogICAgICAgIC8vIAlhcmVhTmFtZTogJycsDQogICAgICAgIC8vIAlmbG9vcjogJycsDQogICAgICAgIC8vIAlnaXNBcmVhOiAnJywNCiAgICAgICAgLy8gCWljb246ICcnLA0KICAgICAgICAvLyAJYXJlYUlkOiAnJywNCiAgICAgICAgLy8gCW1hbmFnZXJDb21wYW55SWQ6ICcnLA0KICAgICAgICAvLyAJbWFuYWdlclVzZXJJZDogJycsDQogICAgICAgIC8vIAlyZXBhaXJDb21wYW55SWQ6ICcnLA0KICAgICAgICAvLyAJcmVwYWlyVXNlcklkOiAnJywNCiAgICAgICAgLy8gCXN1cHBsaWVyQ29tcGFueUlkOiAnJywNCiAgICAgICAgLy8gCXR5cGU6ICcnLA0KICAgICAgICAvLyAJY29kZTogJycsDQogICAgICAgIC8vIAllbGVjdHJpY2l0eVR5cGU6ICcnLA0KICAgICAgICAvLyAJbGlmZTogJycNCiAgICAgICAgLy8gfQ0KICAgICAgfSwNCiAgICAgIGltYWdlVXJsOiAnJywNCiAgICAgIHVwbG9hZFVybDogd2luZG93LmNvbnRleHQucG9ydGFsICsgJy9maWxlL3YxL2ZpbGVVcGxvYWQnLA0KICAgICAgcHJldmlld1VybDoNCiAgICAgICAgd2luZG93LmNvbnRleHQucG9ydGFsICsNCiAgICAgICAgJy9maWxlL29ubGluZVByZXZpZXdDb250cm9sbGVyL3YxL2dldEZpbGVCeUlkXycsDQogICAgICBVcGxvYWREYXRhOiB7DQogICAgICAgIGJpekNvZGU6ICdWaWRlb0ljb24nLA0KICAgICAgICBiaXpJZDogJycNCiAgICAgIH0sDQogICAgICBkZXZpY2VTdGF0dXNPcHQ6IFsn5ZCv55SoJywgJ+aVhemanCcsICflgZznlKgnLCAn6KeE5YiSJywgJ+aKpeW6nycsICflhbbku5YnLCAn5ouG6ZmkJywgJ+e7tOS/riddDQogICAgfQ0KICB9LA0KICB3YXRjaDoge30sDQogIGNvbXB1dGVkOiBtYXBTdGF0ZSh7DQogICAgaGVhZGVyOiAoc3RhdGUpID0+IHsNCiAgICAgIHJldHVybiB7DQogICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHtzdGF0ZS5sb2dpbi5jdXJyZW50VXNlci50b2tlbn1gDQogICAgICB9DQogICAgfQ0KICB9KSwNCiAgY3JlYXRlZCgpIHsNCiAgICB0aGlzLmZsb29yTGlzdCA9IGRpY3RVdGlscy5nZXREaWN0SXRlbXNGcm9tQ2FjaGUoJ2F6bGMnKQ0KICAgIHRoaXMuYWRkcmVzc1R5cGVMaXN0ID0gZGljdFV0aWxzLmdldERpY3RJdGVtc0Zyb21DYWNoZSgnYXpkZGx4JykNCiAgICB0aGlzLnZpZGVvVHlwZUxpc3QgPSBkaWN0VXRpbHMuZ2V0RGljdEl0ZW1zRnJvbUNhY2hlKCdzeHRseCcpDQogICAgdGhpcy5lbGVjdHJpY2l0eVR5cGVMaXN0ID0gZGljdFV0aWxzLmdldERpY3RJdGVtc0Zyb21DYWNoZSgneWRseCcpDQoNCiAgICB0aGlzLmxvYWRVc2VyKCkNCiAgICB0aGlzLmxvYWRTdXBwbGllcigpDQogICAgdGhpcy5sb2FkTWFpbnRhaW5Vc2VyKCkNCiAgICB0aGlzLmxvYWRBZGR2Y2QoKQ0KICAgIHRoaXMubG9hZEFyZWEoKQ0KICAgIHRoaXMubG9hZG1hbmFnZSgpDQogICAgdGhpcy5sb2FkcmVwYWlyKCkNCiAgICB0aGlzLmdldFRyZWVEaWN0KCkNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIHNldFBvc2l0aW9uKCkgew0KICAgICAgdGhpcy4kcmVmcy5tYXBEaWFsb2cuaGFuZGxlT3Blbih0aGlzLnBhcmFtcykNCiAgICB9LA0KICAgIGdldFBvc2l0aW9uKGRhdGEpIHsNCiAgICAgIHRoaXMucGFyYW1zLmxndGQgPSBkYXRhLmxndGQgKyAnJw0KICAgICAgdGhpcy5wYXJhbXMubHR0ZCA9IGRhdGEubHR0ZCArICcnDQogICAgICB0aGlzLnBhcmFtcy56b25lQ29kZSA9IGRhdGEuYXJlYUNvZGUNCiAgICB9LA0KICAgIC8vIOWIh+aNouebruW9lQ0KICAgIGNoYW5nZUNhdGFsb2codmFsKSB7DQogICAgICBsZXQgcXVlcnkgPSB7DQogICAgICAgIHpvbmVDb2RlOiB2YWwNCiAgICAgIH0NCiAgICAgIFZpZGVvRmFjaWxpdGllcy5nZXRWaWRlb1RyZWUocXVlcnksIChyZXMpID0+IHsNCiAgICAgICAgY29uc29sZS5sb2cocmVzKQ0KICAgICAgICB0aGlzLnZpZGVvVHJlZSA9IHJlcy52YWx1ZQ0KICAgICAgfSkNCiAgICB9LA0KICAgIC8vIOiOt+WPluebruW9leagkQ0KICAgIGdldFRyZWUoKSB7DQogICAgICBsZXQgcXVlcnkgPSB7DQogICAgICAgIHpvbmVDb2RlOiB0aGlzLmNhdGFsb2dDb2RlDQogICAgICB9DQogICAgICBWaWRlb0ZhY2lsaXRpZXMuZ2V0VmlkZW9UcmVlKHF1ZXJ5LCAocmVzKSA9PiB7DQogICAgICAgIGNvbnNvbGUubG9nKHJlcykNCiAgICAgICAgdGhpcy52aWRlb1RyZWUgPSByZXMudmFsdWUNCiAgICAgIH0pDQogICAgfSwNCiAgICAvLyDojrflj5bnm67lvZUNCiAgICBnZXRUcmVlRGljdCgpIHsNCiAgICAgIFZpZGVvRmFjaWxpdGllcy5nZXRWaWRlb0Yoe30sIChyZXMpID0+IHsNCiAgICAgICAgY29uc29sZS5sb2cocmVzKQ0KICAgICAgICB0aGlzLmNhdGFsb2dzID0gcmVzLnZhbHVlDQogICAgICAgIHRoaXMuY2F0YWxvZ0NvZGUgPSB0aGlzLmNhdGFsb2dzWzBdLmNvZGUNCiAgICAgICAgLy8gdGhpcy5jYXRhbG9nUGxhdGZvcm0gPSB0aGlzLmNhdGFsb2dzWzBdLnBsYXRmb3JtDQogICAgICAgIHRoaXMuZ2V0VHJlZSgpDQogICAgICB9KQ0KICAgIH0sDQogICAgaGFuZGxlQ2hhbmdlKHR5cGUpIHsNCiAgICAgIGlmICh0eXBlID09ICdyZXBhaXJVc2VySWQnKSB7DQogICAgICAgIGxldCBub2RlcyA9IHRoaXMuJHJlZnMuY2FzY2FkZXJSZXBhaXIuZ2V0Q2hlY2tlZE5vZGVzKCkNCiAgICAgICAgaWYgKG5vZGVzICYmIG5vZGVzLmxlbmd0aCA+IDApIHsNCiAgICAgICAgICB0aGlzLnBhcmFtcy5yZXBhaXJVc2VySWQgPSBub2Rlc1swXS5kYXRhLmlkDQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgdGhpcy4kcmVmcy5jYXNjYWRlclJlcGFpci4kcmVmcy5wYW5lbC5jbGVhckNoZWNrZWROb2RlcygpDQogICAgICAgICAgdGhpcy4kcmVmcy5jYXNjYWRlclJlcGFpci4kcmVmcy5wYW5lbC5jaGVja2VkVmFsdWUgPSAnJyAvLyDmuIXnqbrpgInkuK3lgLwNCiAgICAgICAgICB0aGlzLiRyZWZzLmNhc2NhZGVyUmVwYWlyLiRyZWZzLnBhbmVsLmFjdGl2ZVBhdGggPSAnJyAvLyDmuIXpmaTpq5jkuq4NCiAgICAgICAgICB0aGlzLiRyZWZzLmNhc2NhZGVyUmVwYWlyLiRyZWZzLnBhbmVsLnN5bmNBY3RpdmVQYXRoKCkgLy8g5Yid5aeL5YyW77yI5Y+q5bGV56S65LiA57qn6IqC54K577yJDQogICAgICAgICAgdGhpcy5wYXJhbXMucmVwYWlyVXNlcklkID0gJycNCiAgICAgICAgfQ0KICAgICAgfQ0KICAgICAgaWYgKHR5cGUgPT0gJ21hbmFnZXJVc2VySWQnKSB7DQogICAgICAgIGxldCBub2RlcyA9IHRoaXMuJHJlZnMuY2FzY2FkZXJNYW5hZ2VyLmdldENoZWNrZWROb2RlcygpDQogICAgICAgIGlmIChub2RlcyAmJiBub2Rlcy5sZW5ndGggPiAwKSB7DQogICAgICAgICAgdGhpcy5wYXJhbXMubWFuYWdlclVzZXJJZCA9IG5vZGVzWzBdLmRhdGEuaWQNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICB0aGlzLiRyZWZzLmNhc2NhZGVyTWFuYWdlci4kcmVmcy5wYW5lbC5jbGVhckNoZWNrZWROb2RlcygpDQogICAgICAgICAgdGhpcy4kcmVmcy5jYXNjYWRlck1hbmFnZXIuJHJlZnMucGFuZWwuY2hlY2tlZFZhbHVlID0gJycgLy8g5riF56m66YCJ5Lit5YC8DQogICAgICAgICAgdGhpcy4kcmVmcy5jYXNjYWRlck1hbmFnZXIuJHJlZnMucGFuZWwuYWN0aXZlUGF0aCA9ICcnIC8vIOa4hemZpOmrmOS6rg0KICAgICAgICAgIHRoaXMuJHJlZnMuY2FzY2FkZXJNYW5hZ2VyLiRyZWZzLnBhbmVsLnN5bmNBY3RpdmVQYXRoKCkgLy8g5Yid5aeL5YyW77yI5Y+q5bGV56S65LiA57qn6IqC54K577yJDQogICAgICAgICAgdGhpcy5wYXJhbXMubWFuYWdlclVzZXJJZCA9ICcnDQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgIGlmICh0eXBlID09ICd6b25lQ29kZScpIHsNCiAgICAgICAgbGV0IG5vZGVzID0gdGhpcy4kcmVmcy5jYXNjYWRlckFyZWEuZ2V0Q2hlY2tlZE5vZGVzKCkNCiAgICAgICAgaWYgKG5vZGVzICYmIG5vZGVzLmxlbmd0aCA+IDApIHsNCiAgICAgICAgICB0aGlzLnBhcmFtcy5hcmVhSWQgPSBub2Rlc1swXS5kYXRhLmlkDQogICAgICAgICAgdGhpcy5wYXJhbXMuYXJlYUNvZGUgPSBub2Rlc1swXS5kYXRhLmNvZGUNCiAgICAgICAgICB0aGlzLnBhcmFtcy5hcmVhTmFtZSA9IG5vZGVzWzBdLmRhdGEubmFtZQ0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgIHRoaXMuJHJlZnMuY2FzY2FkZXJBcmVhLiRyZWZzLnBhbmVsLmNsZWFyQ2hlY2tlZE5vZGVzKCkNCiAgICAgICAgICB0aGlzLiRyZWZzLmNhc2NhZGVyQXJlYS4kcmVmcy5wYW5lbC5jaGVja2VkVmFsdWUgPSAnJyAvLyDmuIXnqbrpgInkuK3lgLwNCiAgICAgICAgICB0aGlzLiRyZWZzLmNhc2NhZGVyQXJlYS4kcmVmcy5wYW5lbC5hY3RpdmVQYXRoID0gJycgLy8g5riF6Zmk6auY5LquDQogICAgICAgICAgdGhpcy4kcmVmcy5jYXNjYWRlckFyZWEuJHJlZnMucGFuZWwuc3luY0FjdGl2ZVBhdGgoKSAvLyDliJ3lp4vljJbvvIjlj6rlsZXnpLrkuIDnuqfoioLngrnvvIkNCiAgICAgICAgICB0aGlzLnBhcmFtcy5hcmVhSWQgPSAnJw0KICAgICAgICB9DQogICAgICB9DQogICAgICBpZiAodHlwZSA9PSAnYWRkdmNkJykgew0KICAgICAgICBsZXQgbm9kZXMgPSB0aGlzLiRyZWZzLmNhc2NhZGVyQWRkdmNkLmdldENoZWNrZWROb2RlcygpDQogICAgICAgIGlmIChub2RlcyAmJiBub2Rlcy5sZW5ndGggPiAwKSB7DQogICAgICAgICAgdGhpcy5wYXJhbXMuYWRkdmNkID0gbm9kZXNbMF0uZGF0YS5pZA0KICAgICAgICAgIGNvbnNvbGUubG9nKG5vZGVzWzBdLmRhdGEuaWQpDQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgdGhpcy4kcmVmcy5jYXNjYWRlckFkZHZjZC4kcmVmcy5wYW5lbC5jbGVhckNoZWNrZWROb2RlcygpDQogICAgICAgICAgdGhpcy4kcmVmcy5jYXNjYWRlckFkZHZjZC4kcmVmcy5wYW5lbC5jaGVja2VkVmFsdWUgPSAnJyAvLyDmuIXnqbrpgInkuK3lgLwNCiAgICAgICAgICB0aGlzLiRyZWZzLmNhc2NhZGVyQWRkdmNkLiRyZWZzLnBhbmVsLmFjdGl2ZVBhdGggPSAnJyAvLyDmuIXpmaTpq5jkuq4NCiAgICAgICAgICB0aGlzLiRyZWZzLmNhc2NhZGVyQWRkdmNkLiRyZWZzLnBhbmVsLnN5bmNBY3RpdmVQYXRoKCkgLy8g5Yid5aeL5YyW77yI5Y+q5bGV56S65LiA57qn6IqC54K577yJDQogICAgICAgICAgdGhpcy5wYXJhbXMuYWRkdmNkID0gJycNCiAgICAgICAgfQ0KICAgICAgfQ0KICAgIH0sDQogICAgLy8g6I635Y+W5omA5bGe5Yy65Z+fDQogICAgbG9hZEFyZWEoKSB7DQogICAgICB0aGlzLmFyZWFPcHRpb25zID0gW10NCiAgICAgIHJlc291cmNlTWFuYWdlLmxvYWRBcmVhVHJlZSgNCiAgICAgICAgew0KICAgICAgICAgIGlkOiAnMCcNCiAgICAgICAgfSwNCiAgICAgICAgKHJlcykgPT4gew0KICAgICAgICAgIGNvbnNvbGUubG9nKHJlcykNCiAgICAgICAgICB0aGlzLmFyZWFPcHRpb25zID0gcmVzLnZhbHVlDQogICAgICAgIH0NCiAgICAgICkNCiAgICB9LA0KICAgIC8vIOiOt+WPluaJgOWxnuihjOaUv+WMuuWIkg0KICAgIGxvYWRBZGR2Y2QoKSB7DQogICAgICB0aGlzLmFkZHZjZE9wdGlvbnMgPSBbXQ0KICAgICAgcmVzb3VyY2VNYW5hZ2UubG9hZEFkbWluQXJlYVRyZWUoe30sIChyZXMpID0+IHsNCiAgICAgICAgdGhpcy5hZGR2Y2RPcHRpb25zID0gcmVzLnZhbHVlDQogICAgICB9KQ0KICAgIH0sDQogICAgLy8g57u05oqk5Lq65ZGYDQogICAgbG9hZE1haW50YWluVXNlcigpIHsNCiAgICAgIGxldCBkYXRhID0gew0KICAgICAgICBjb21wYW55VHlwZTogJzMnDQogICAgICB9DQogICAgICB0aGlzLnJlcGFpclVzZXJEYXRhID0gW10NCiAgICAgIHVzZXJNYW5hZ2UuQ29tcGFueVVzZXIoZGF0YSkudGhlbigocmVzKSA9PiB7DQogICAgICAgIHRoaXMucmVwYWlyVXNlckRhdGEgPSByZXMNCiAgICAgIH0pDQogICAgfSwNCiAgICAvLyDnrqHnkIbkurrlkZgNCiAgICBsb2FkVXNlcigpIHsNCiAgICAgIGxldCBkYXRhID0gew0KICAgICAgICBjb21wYW55VHlwZTogJzEnDQogICAgICB9DQogICAgICB0aGlzLm1hbmFnZXJVc2VyRGF0YSA9IFtdDQogICAgICB1c2VyTWFuYWdlLkNvbXBhbnlVc2VyKGRhdGEpLnRoZW4oKHJlcykgPT4gew0KICAgICAgICB0aGlzLm1hbmFnZXJVc2VyRGF0YSA9IHJlcw0KICAgICAgfSkNCiAgICB9LA0KICAgIC8vIOeuoeeQhuWNleS9jQ0KICAgIGxvYWRtYW5hZ2UoKSB7DQogICAgICBsZXQgcGFyYW1zID0gew0KICAgICAgICBjb21wYW55VHlwZTogJzEnDQogICAgICB9DQogICAgICBTcGFyZUNvbXBhbnkuZmluZENvbXBhbnlMaXN0KHBhcmFtcywgKHJlcykgPT4gew0KICAgICAgICB0aGlzLm1hbmFnZXJDb21wYW55ID0gcmVzDQogICAgICB9KQ0KICAgIH0sDQogICAgLy8g57u05oqk5Y2V5L2NDQogICAgbG9hZHJlcGFpcigpIHsNCiAgICAgIGxldCBwYXJhbXMgPSB7DQogICAgICAgIGNvbXBhbnlUeXBlOiAnMycNCiAgICAgIH0NCiAgICAgIFNwYXJlQ29tcGFueS5maW5kQ29tcGFueUxpc3QocGFyYW1zLCAocmVzKSA9PiB7DQogICAgICAgIHRoaXMucmVwYWlyQ29tcGFueSA9IHJlcw0KICAgICAgfSkNCiAgICB9LA0KICAgIC8vIOiOt+WPluS+m+W6lOWVhg0KICAgIGxvYWRTdXBwbGllcigpIHsNCiAgICAgIGxldCBwYXJhbXMgPSB7fQ0KICAgICAgU3BhcmVDb21wYW55LmZpbmRDb21wYW55TGlzdChwYXJhbXMsIChyZXMpID0+IHsNCiAgICAgICAgbGV0IGRhdGEgPSBbXQ0KICAgICAgICB0aGlzLnN1cHBsaWVyRGF0YSA9IFtdDQogICAgICAgIGRhdGEgPSByZXMNCiAgICAgICAgZGF0YS5mb3JFYWNoKChpdGVtKSA9PiB7DQogICAgICAgICAgaWYgKGl0ZW0uY29tcGFueVR5cGUuaW5jbHVkZXMoJzQnKSkgew0KICAgICAgICAgICAgdGhpcy5zdXBwbGllckRhdGEucHVzaChpdGVtKQ0KICAgICAgICAgIH0NCiAgICAgICAgfSkNCiAgICAgIH0pDQogICAgfSwNCiAgICAvLyDkuIrkvKDlm77moIcNCiAgICBoYW5kbGVBdmF0YXJTdWNjZXNzKHJlcywgZmlsZSkgew0KICAgICAgY29uc29sZS5sb2cocmVzKQ0KICAgICAgY29uc29sZS5sb2coZmlsZSkNCiAgICAgIGlmIChyZXMpIHsNCiAgICAgICAgdGhpcy5wYXJhbXMuaWNvbiA9IHJlcy5maWxlSWQNCiAgICAgICAgdGhpcy5pbWFnZVVybCA9IHRoaXMucHJldmlld1VybCArIHJlcy5maWxlSWQNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIC8vIOaPkOekuuS/oeaBr++8jOmcgOW8leWFpU1lc3NhZ2UNCiAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcign5LiK5Lyg5aSx6LSl77yBJykNCiAgICAgIH0NCiAgICAgIC8vIHRoaXMuaW1hZ2VVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUucmF3KTsNCiAgICB9LA0KICAgIC8vIOWbvuagh+Wkp+Wwj+mZkOWItg0KICAgIGJlZm9yZUF2YXRhclVwbG9hZChmaWxlKSB7DQogICAgICBjb25zdCBpc0x0Mk0gPSBmaWxlLnNpemUgLyAxMDI0IC8gMTAyNCA8IDINCiAgICAgIGlmICghaXNMdDJNKSB7DQogICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoJ+S4iuS8oOWbvueJh+Wkp+Wwj+S4jeiDvei2hei/hyAyTUIhJykNCiAgICAgIH0NCiAgICAgIHJldHVybiBpc0x0Mk0NCiAgICB9LA0KICAgIGhhbmRsZVNhdmUoKSB7DQogICAgICB0aGlzLnBhcmFtcy5jb2RlID0gdGhpcy5wYXJhbXMuY29kZQ0KICAgICAgdGhpcy4kcmVmcy5mb3JtSW5mby52YWxpZGF0ZSgodmFsaWQpID0+IHsNCiAgICAgICAgaWYgKHZhbGlkKSB7DQogICAgICAgICAgbGV0IEFQSQ0KICAgICAgICAgIGlmICh0aGlzLnNob3dUeXBlID09ICdhZGQnKSB7DQogICAgICAgICAgICBBUEkgPSBWaWRlb0ZhY2lsaXRpZXMuYWRkVmlkZW9TaXRlDQogICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIEFQSSA9IFZpZGVvRmFjaWxpdGllcy51cGRhdGVWaWRlb1NpdGUNCiAgICAgICAgICB9DQogICAgICAgICAgLy8gdGhpcy5wYXJhbXMuZGV2aWNlVmlkZW9Qb2ludEV4dGVuZCA9DQogICAgICAgICAgLy8gICAgIHRoaXMuZGV2aWNlVmlkZW9Qb2ludEV4dGVuZA0KICAgICAgICAgIEFQSSh0aGlzLnBhcmFtcywgKHJlcykgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2cocmVzLCAnMTIzJykNCiAgICAgICAgICAgIGlmIChyZXMuc3RhdGUpIHsNCiAgICAgICAgICAgICAgdGhpcy4kbm90aWZ5KHsNCiAgICAgICAgICAgICAgICB0eXBlOiAnc3VjY2VzcycsDQogICAgICAgICAgICAgICAgbWVzc2FnZTogJ+S/neWtmOaIkOWKnycsDQogICAgICAgICAgICAgICAgZHVyYXRpb246IDIwMDANCiAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgdGhpcy5jbG9zZUZvcm1EaWFvKCkNCiAgICAgICAgICAgICAgdGhpcy4kcGFyZW50LmxvYWREYXRhKCkNCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9KQ0KICAgICAgICB9DQogICAgICB9KQ0KICAgIH0sDQogICAgZWRpdEJhc2ljKHZhbCkgew0KICAgICAgdGhpcy50aXRsZSA9ICfkv67mlLknDQogICAgICBWaWRlb0ZhY2lsaXRpZXMuSW5xdWlyZUJhc2VQb2ludCh2YWwuaWQsIChyZXMpID0+IHsNCiAgICAgICAgdGhpcy5wYXJhbXMgPSByZXMNCiAgICAgICAgdGhpcy5wYXJhbXMuZWxlY3RyaWNpdHlUeXBlID0gdGhpcy5wYXJhbXMuZWxlY3RyaWNpdHlUeXBlDQogICAgICAgICAgPyB0aGlzLnBhcmFtcy5lbGVjdHJpY2l0eVR5cGUudG9TdHJpbmcoKQ0KICAgICAgICAgIDogJycNCiAgICAgICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gdHJ1ZQ0KICAgICAgfSkNCiAgICAgIC8vIHRoaXMuc2hvd1R5cGUgPSAnZWRpdEJhc2ljJw0KICAgICAgLy8gdGhpcy5wYXJhbXMgPSB2YWwNCiAgICAgIC8vIHRoaXMucGFyYW1zLnN0YXR1cyA9IE51bWJlcih2YWwuc3RhdHVzKQ0KDQogICAgICAvLyB0aGlzLnBhcmFtcy5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kLmNvZGUgPSB2YWwuY29kZQ0KICAgICAgLy8gdGhpcy5VcGxvYWREYXRhLmJpeklkID0gdmFsLmNvZGUNCiAgICAgIC8vIGlmICh2YWwuZGV2aWNlVmlkZW9Qb2ludEV4dGVuZCkgew0KICAgICAgLy8gICAvLyDlm77moIcNCiAgICAgIC8vICAgdGhpcy5pbWFnZVVybCA9IHRoaXMucHJldmlld1VybCArIHZhbC5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kLmljb24NCiAgICAgIC8vICAgdGhpcy5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kID0gdmFsLmRldmljZVZpZGVvUG9pbnRFeHRlbmQNCiAgICAgIC8vICAgdGhpcy5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kLmZsb29yID0gU3RyaW5nKA0KICAgICAgLy8gICAgIHZhbC5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kLmZsb29yDQogICAgICAvLyAgICkNCiAgICAgIC8vIH0NCiAgICB9LA0KICAgIC8vIE9wZW5Gb3JtRGlhbyh2YWwpIHsNCiAgICAvLyAgIHRoaXMudGl0bGUgPSAn5L+u5pS5Jw0KICAgIC8vICAgdGhpcy5zaG93VHlwZSA9ICdlZGl0RXh0ZW5kJw0KICAgIC8vICAgdGhpcy5wYXJhbXMgPSB2YWwNCiAgICAvLyAgIHRoaXMucGFyYW1zLnN0YXR1cyA9IE51bWJlcih2YWwuc3RhdHVzKQ0KICAgIC8vICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gdHJ1ZQ0KICAgIC8vICAgdGhpcy5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kLmNvZGUgPSB2YWwuY29kZQ0KICAgIC8vICAgdGhpcy5VcGxvYWREYXRhLmJpeklkID0gdmFsLmNvZGUNCiAgICAvLyAgIGlmICh2YWwuZGV2aWNlVmlkZW9Qb2ludEV4dGVuZCkgew0KICAgIC8vICAgICAvLyDlm77moIcNCiAgICAvLyAgICAgdGhpcy5pbWFnZVVybCA9IHRoaXMucHJldmlld1VybCArIHZhbC5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kLmljb24NCiAgICAvLyAgICAgdGhpcy5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kID0gdmFsLmRldmljZVZpZGVvUG9pbnRFeHRlbmQNCiAgICAvLyAgICAgdGhpcy5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kLmZsb29yID0gU3RyaW5nKA0KICAgIC8vICAgICAgIHZhbC5kZXZpY2VWaWRlb1BvaW50RXh0ZW5kLmZsb29yDQogICAgLy8gICAgICkNCiAgICAvLyAgIH0NCiAgICAvLyB9LA0KICAgIGNsb3NlRm9ybURpYW8oKSB7DQogICAgICB0aGlzLnBhcmFtcyA9IHsNCiAgICAgICAgbmFtZTogJycsDQogICAgICAgIGNvZGU6ICcnLA0KICAgICAgICBpcDogJycsDQogICAgICAgIGFpc2xlOiAnJywNCiAgICAgICAgbGd0ZDogJycsDQogICAgICAgIGx0dGQ6ICcnLA0KICAgICAgICBzdGF0dXM6ICcxJywNCiAgICAgICAgYWRkcmVzczogJycsDQogICAgICAgIGltcG9ydGFudDogJycsDQogICAgICAgIHpvbmVDb2RlOiAnJw0KICAgICAgICAvLyBkZXZpY2VWaWRlb1BvaW50RXh0ZW5kOiB7DQogICAgICAgIC8vIAlhZGRyZXNzVHlwZTogJycsDQogICAgICAgIC8vIAlhZGR2Y2Q6ICcnLA0KICAgICAgICAvLyAJYXJlYUlkOiAnJywNCiAgICAgICAgLy8gCWFyZWFjb2RlOiAnJywNCiAgICAgICAgLy8gCWFyZWFOYW1lOiAnJywNCiAgICAgICAgLy8gCWZsb29yOiAnJywNCiAgICAgICAgLy8gCWdpc0FyZWE6ICcnLA0KICAgICAgICAvLyAJaWNvbjogJycsDQogICAgICAgIC8vIAltYW5hZ2VyQ29tcGFueUlkOiAnJywNCiAgICAgICAgLy8gCW1hbmFnZXJVc2VySWQ6ICcnLA0KICAgICAgICAvLyAJcmVwYWlyQ29tcGFueUlkOiAnJywNCiAgICAgICAgLy8gCXJlcGFpclVzZXJJZDogJycsDQogICAgICAgIC8vIAlzdXBwbGllckNvbXBhbnlJZDogJycsDQogICAgICAgIC8vIAl0eXBlOiAnJywNCiAgICAgICAgLy8gCWNvZGU6ICcnLA0KICAgICAgICAvLyAJZWxlY3RyaWNpdHlUeXBlOiAnJw0KICAgICAgICAvLyB9DQogICAgICB9DQogICAgICB0aGlzLiRyZWZzLmZvcm1JbmZvICYmIHRoaXMuJHJlZnMuZm9ybUluZm8uY2xlYXJWYWxpZGF0ZSgpDQogICAgICB0aGlzLmRpYWxvZ1Zpc2libGUgPSBmYWxzZQ0KICAgICAgdGhpcy5Qb2ludEV4dGVuZFNob3cgPSBmYWxzZQ0KICAgICAgdGhpcy5hY3RpdmVDb2xsYXBzZSA9IFsnMScsICcyJ10NCiAgICB9LA0KICAgIGFkZChwZGF0YSkgew0KICAgICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gdHJ1ZQ0KICAgICAgdGhpcy5zaG93VHlwZSA9ICdhZGQnDQogICAgICB0aGlzLnRpdGxlID0gJ+aWsOWinicNCiAgICAgIHRoaXMucGFyYW1zLnpvbmVDb2RlID0gcGRhdGEuem9uZUNvZGUNCiAgICAgIHRoaXMucGFyYW1zLnBsYXRmb3JtID0gcGRhdGEucGxhdGZvcm0NCiAgICAgIHRoaXMucGFyYW1zLmNhdGFsb2dDb2RlID0gcGRhdGEuY2F0YWxvZ0NvZGUNCiAgICAgIHRoaXMuJHJlZnMuZm9ybUluZm8gJiYgdGhpcy4kcmVmcy5mb3JtSW5mby5jbGVhclZhbGlkYXRlKCkNCg0KICAgIH0NCiAgfQ0KfQ0K"},null]}