{"remainingRequest":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/cache-loader/dist/cjs.js??ref--13-0!/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/babel-loader/lib/index.js!/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/cache-loader/dist/cjs.js??ref--1-0!/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/vue-loader/lib/index.js??vue-loader-options!/data/jenkins/workspace/badp-bcxin-web-5.x-staff/src/views/Employee/index.vue?vue&type=template&id=449b4e02","dependencies":[{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/src/views/Employee/index.vue","mtime":1749019021539},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/babel.config.js","mtime":1725615667903},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/babel-loader/lib/index.js","mtime":456789000000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/vue-loader/lib/loaders/templateLoader.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:dmFyIHJlbmRlciA9IGZ1bmN0aW9uIHJlbmRlcigpIHsKICB2YXIgX3ZtID0gdGhpcywKICAgIF9jID0gX3ZtLl9zZWxmLl9jOwogIHJldHVybiBfYygnZGl2JywgewogICAgc3RhdGljQ2xhc3M6ICJDb250YWluZXJCb3giCiAgfSwgW192bS5TdGFmZkJveEZsYWcgPyBfYygnc2VjdGlvbicsIHsKICAgIHN0YXRpY0NsYXNzOiAiQ29udGFpbmVyQm94TGlzdCIKICB9LCBbX2MoJ3NlY3Rpb24nLCB7CiAgICBzdGF0aWNDbGFzczogInJlbWFya0JveCIKICB9LCBbX2MoJ2RpdicsIHsKICAgIHN0YXRpY0NsYXNzOiAicmVtYXJrSW5mbyIKICB9LCBbX2MoJ2knLCB7CiAgICBzdGF0aWNDbGFzczogImVsLWljb24td2FybmluZy1vdXRsaW5lIGVsLWljb24tZmxhZyIKICB9KSwgX2MoJ3NwYW4nLCB7CiAgICBzdGF0aWNDbGFzczogInRpcHNGbGFnIgogIH0sIFtfYygnc3BhbicsIFtfdm0uX3YoIjEuIOiLpeaCqOaYryIgKyBfdm0uX3MoX3ZtLiRTdXBlcnZpc2VTdHIuZGVwYXJ0KSArICLnrqHnkIblkZjvvIzliJnlj6rog73mn6XnnIvliLDlj6/nrqHnkIbnmoQiICsgX3ZtLl9zKF92bS4kU3VwZXJ2aXNlU3RyLmVtcGxveWVlKSArICLkv6Hmga/vvIzngrnlh7vmlbDmja7nnIvmnb/nmoTmoIfnrb7ljaHlj6/ku6Xlv6vpgJ/nrZvpgInjgIIiKV0pLCBfYygnc3BhbicsIFtfdm0uX3YoIjIuIOiLpemcgOimgeWvuSIgKyBfdm0uX3MoX3ZtLiRTdXBlcnZpc2VTdHIuZW1wbG95ZWUpICsgIui/m+ihjOemu+iBjOWkhOeQhu+8jOivt+iuv+mXruemu+iBjOeuoeeQhumhtemdoui/m+ihjOaTjeS9nOOAgiIpXSksIF9jKCdzcGFuJywgW192bS5fdihfdm0uX3MoX3ZtLmluc3RpdHV0aW9uYWxDb2RlRmxhZyA/ICczLiDog4zmma/nrZvmn6XnirbmgIHmmL7npLrjgJDlhbPms6jjgJHku4XooajnpLror6XkurrlkZjmnInmj5DphpLorrDlvZXvvIzlhbfkvZPor6bmg4Xor7foh7PjgJDmmbrog73pooTorabjgJHmn6XnnIvlpITnkIbjgIInIDogJycpKV0pLCBfYygnc3BhbicsIFtfdm0uX3YoX3ZtLl9zKF92bS5pbnN0aXR1dGlvbmFsQ29kZUZsYWcgPyAnNC4g5YyX5Lqs6LaF6b6E5L+d5a6J5ZGY77ya5oyJ54Wn5Lq656S+6YOo6KeE5a6a77yb6ZmV6KW/IOi2hem+hOS/neWuieWRmDrnlLfotoXov4c2M+Wyge+8jOWls+i2hei/hzU45bKB77yM5Y+v6YCa6L+H562b6YCJ6aG544CQ6IGM5Lia57G75Z6L44CR44CB44CQ5byA5aeL5bm06b6E44CR6L+b6KGM5p+l6K+i44CCJyA6ICcnKSldKSwgX2MoJ3NwYW4nLCBbX3ZtLl92KF92bS5fcyhfdm0uaW5zdGl0dXRpb25hbENvZGVGbGFnID8gJzUuIOi2heacn+acquaMgeivgeS/neWuieWRmO+8muWFpeiBjOaXpeacn+i2hei/hzE05aSp5pyq5Y+W6K+B5L+d5a6J5ZGY77yM5Y+v6YCa6L+H562b6YCJ6aG544CQ6IGM5Lia57G75Z6L44CR44CB44CQ5oyB6K+B54q25oCB44CR44CB44CQ5YWl6IGM5pel5pyf44CR6L+b6KGM5p+l6K+i44CCJyA6ICcnKSldKV0pXSldKSwgX2MoJ3NlY3Rpb24nLCB7CiAgICBzdGF0aWNDbGFzczogImJ1dHRvbkJveCIKICB9LCBbX2MoJ2VsLXJvdycsIHsKICAgIHN0YXRpY0NsYXNzOiAicm93LWJnIiwKICAgIGF0dHJzOiB7CiAgICAgICJ0eXBlIjogImZsZXgiLAogICAgICAianVzdGlmeSI6ICJzcGFjZS1iZXR3ZWVuIgogICAgfQogIH0sIFtfYygnZWwtY29sJywgewogICAgYXR0cnM6IHsKICAgICAgInNwYW4iOiAxMgogICAgfQogIH0sIFtfYygnZGl2JywgW19jKCdlbC1idXR0b24nLCB7CiAgICBhdHRyczogewogICAgICAidHlwZSI6ICJwcmltYXJ5IgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjbGljayI6IF92bS5hZGRVc2VyCiAgICB9CiAgfSwgW192bS5fdigi5re75YqgIiArIF92bS5fcyhfdm0uJFN1cGVydmlzZVN0ci5lbXBsb3llZSkpXSksIF9jKCdlbC1idXR0b24nLCB7CiAgICBvbjogewogICAgICAiY2xpY2siOiBfdm0uaW1wb3J0RW1wbG95ZWUKICAgIH0KICB9LCBbX3ZtLl92KCLlr7zlhaUiICsgX3ZtLl9zKF92bS4kU3VwZXJ2aXNlU3RyLmVtcGxveWVlKSldKSwgX2MoJ2VsLWJ1dHRvbicsIHsKICAgIG9uOiB7CiAgICAgICJjbGljayI6IF92bS5leHBvcnRFbXBsb3llZQogICAgfQogIH0sIFtfdm0uX3YoIuWvvOWHuiIgKyBfdm0uX3MoX3ZtLiRTdXBlcnZpc2VTdHIuZW1wbG95ZWUpKV0pLCBfdm0uJFN1cGVydmlzZVN0ci5lbXBsb3llZSA9PT0gJ+WRmOW3pScgJiYgX3ZtLiRTdXBlcnZpc2VTdHIuaXNub3RTdXBlcnZpc2VCdXR0b24gJiYgX3ZtLmluc3RpdHV0aW9uYWxDb2RlICE9ICcwNjAxJyAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLnN0YXJ0c1dpdGgoJzA0JykgJiYgIV92bS5pbnN0aXR1dGlvbmFsQ29kZS5zdGFydHNXaXRoKCcwNycpICYmICFfdm0uaW5zdGl0dXRpb25hbENvZGUuZW5kc1dpdGgoJzA3JykgJiYgIV92bS5pbnN0aXR1dGlvbmFsQ29kZS5lbmRzV2l0aCgnMDgnKSAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLmVuZHNXaXRoKCcwOScpID8gX2MoJ2VsLWJ1dHRvbicsIHsKICAgIG9uOiB7CiAgICAgICJjbGljayI6IF92bS5hZGRVc2VySW4KICAgIH0KICB9LCBbX3ZtLl92KCLpgoDor7flhaXogYwiKV0pIDogX3ZtLl9lKCksIF92bS4kU3VwZXJ2aXNlU3RyLmVtcGxveWVlID09PSAn5ZGY5belJyAmJiBfdm0uJFN1cGVydmlzZVN0ci5pc25vdFN1cGVydmlzZUJ1dHRvbiAmJiBfdm0uaG9tZVRlbXBsYXRlQm9yYWRUeXBlICE9ICdydHBheVRlbXBsYXRlJyAmJiBfdm0uaW5zdGl0dXRpb25hbENvZGUgIT0gJzA2MDEnICYmICFfdm0uaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDQnKSAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLnN0YXJ0c1dpdGgoJzA3JykgJiYgIV92bS5pbnN0aXR1dGlvbmFsQ29kZS5lbmRzV2l0aCgnMDcnKSAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLmVuZHNXaXRoKCcwOCcpICYmICFfdm0uaW5zdGl0dXRpb25hbENvZGUuZW5kc1dpdGgoJzA5JykgJiYgIV92bS5pbnN0aXR1dGlvbmFsQ29kZS5zdGFydHNXaXRoKCcwMicpID8gX2MoJ2VsLWJ1dHRvbicsIHsKICAgIG9uOiB7CiAgICAgICJjbGljayI6IF92bS5hZGRVc2VyRHV0eQogICAgfQogIH0sIFtfdm0uX3YoIumCgOivt+mpu+WLpCIpXSkgOiBfdm0uX2UoKSwgX3ZtLiRTdXBlcnZpc2VTdHIuZW1wbG95ZWUgPT09ICflkZjlt6UnID8gX2MoJ2VsLWJ1dHRvbicsIHsKICAgIGF0dHJzOiB7CiAgICAgICJ0eXBlIjogInByaW1hcnkiLAogICAgICAiaWNvbiI6ICJlbC1pY29uLWRvd25sb2FkIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLmRvd25sb2FkVGVtcGxhdGUoJ+S/neWuieWRmOi1hOagvOWuoeafpeihqC5kb2MnKTsKICAgICAgfQogICAgfQogIH0sIFtfdm0uX3YoIiDkuIvovb3otYTmoLzlrqHmn6XooaggIildKSA6IF92bS5fZSgpLCBfdm0uJFN1cGVydmlzZVN0ci5lbXBsb3llZSA9PT0gJ+WRmOW3pScgPyBfYygnZWwtYnV0dG9uJywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIm1hcmdpbi1sZWZ0IjogIjE1cHgiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInR5cGUiOiAicHJpbWFyeSIsCiAgICAgICJpY29uIjogImVsLWljb24tZG93bmxvYWQiCiAgICB9LAogICAgb246IHsKICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIHJldHVybiBfdm0uZG93bmxvYWRUZW1wbGF0ZSgn5L+d5a6J5ZGY6ICD6K+V5oql5ZCN55m76K6w6KGoLmRvYycpOwogICAgICB9CiAgICB9CiAgfSwgW192bS5fdigiIOS4i+i9veiAg+ivleaKpeWQjeihqCAiKV0pIDogX3ZtLl9lKCldLCAxKV0pLCBfYygnZWwtY29sJywgewogICAgYXR0cnM6IHsKICAgICAgInNwYW4iOiAxMgogICAgfQogIH0sIFtfYygnZGl2JywgewogICAgc3RhdGljQ2xhc3M6ICJyaWdodEJveCIKICB9LCBbX2MoJ2VsLWlucHV0JywgewogICAgZGlyZWN0aXZlczogW3sKICAgICAgbmFtZTogInNob3ciLAogICAgICByYXdOYW1lOiAidi1zaG93IiwKICAgICAgdmFsdWU6ICFfdm0uSGlnaFNlYXJjaEZsYWcsCiAgICAgIGV4cHJlc3Npb246ICIhSGlnaFNlYXJjaEZsYWciCiAgICB9XSwKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICI0NSUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInBsYWNlaG9sZGVyIjogIui+k+WFpeWnk+WQjS/otKblj7cv5omL5py65Y+3L+ivgeS7tuWPt+eggSIsCiAgICAgICJjbGVhcmFibGUiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJpbnB1dCI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLmtleXdvcmRJbnB1dCgpOwogICAgICB9CiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMua2V5d29yZCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAia2V5d29yZCIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMua2V5d29yZCIKICAgIH0KICB9KSwgIV92bS5IaWdoU2VhcmNoRmxhZyA/IF9jKCdlbC1idXR0b24nLCB7CiAgICBhdHRyczogewogICAgICAidHlwZSI6ICJwcmltYXJ5IgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjbGljayI6IF92bS5zZWFyY2gKICAgIH0KICB9LCBbX3ZtLl92KCLmn6Xor6IiKV0pIDogX3ZtLl9lKCksIF9jKCdlbC1idXR0b24nLCB7CiAgICBvbjogewogICAgICAiY2xpY2siOiBfdm0uc3dpdGNoSGlnaAogICAgfQogIH0sIFtfdm0uX3YoIumrmOe6pyIpLCAhX3ZtLkhpZ2hTZWFyY2hGbGFnID8gX2MoJ2knLCB7CiAgICBzdGF0aWNDbGFzczogImVsLWljb24tYXJyb3ctZG93biIKICB9KSA6IF92bS5fZSgpLCBfdm0uSGlnaFNlYXJjaEZsYWcgPyBfYygnaScsIHsKICAgIHN0YXRpY0NsYXNzOiAiZWwtaWNvbi1hcnJvdy11cCIKICB9KSA6IF92bS5fZSgpXSksIF92bS5EYXRhQm9hcmRzaG93T2JqICYmIF92bS5pbnN0aXR1dGlvbmFsQ29kZSAhPSAnMDYwMScgJiYgIV92bS5pbnN0aXR1dGlvbmFsQ29kZS5zdGFydHNXaXRoKCcwNCcpID8gX2MoJ2VsLWJ1dHRvbicsIHsKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uSGlnaERhdGFGbGFnID0gIV92bS5IaWdoRGF0YUZsYWc7CiAgICAgICAgX3ZtLkRhdGFCb2FyZCgpOwogICAgICB9CiAgICB9CiAgfSwgW192bS5fdigi5pWw5o2u55yL5p2/IiksICFfdm0uSGlnaERhdGFGbGFnID8gX2MoJ2knLCB7CiAgICBzdGF0aWNDbGFzczogImVsLWljb24tYXJyb3ctZG93biIKICB9KSA6IF92bS5fZSgpLCBfdm0uSGlnaERhdGFGbGFnID8gX2MoJ2knLCB7CiAgICBzdGF0aWNDbGFzczogImVsLWljb24tYXJyb3ctdXAiCiAgfSkgOiBfdm0uX2UoKV0pIDogX3ZtLl9lKCldLCAxKV0pXSwgMSldLCAxKSwgX2MoJ3NlY3Rpb24nLCB7CiAgICBkaXJlY3RpdmVzOiBbewogICAgICBuYW1lOiAic2hvdyIsCiAgICAgIHJhd05hbWU6ICJ2LXNob3ciLAogICAgICB2YWx1ZTogX3ZtLkhpZ2hTZWFyY2hGbGFnLAogICAgICBleHByZXNzaW9uOiAiSGlnaFNlYXJjaEZsYWciCiAgICB9XSwKICAgIHN0YXRpY0NsYXNzOiAiSGlnaFNlYXJjaEJveCIKICB9LCBbX3ZtLmluc3RpdHV0aW9uYWxDb2RlID09ICcwNjAxJyA/IF9jKCdlbC1yb3cnLCBbX2MoJ2VsLWZvcm0nLCB7CiAgICByZWY6ICJydWxlRm9ybSIsCiAgICBhdHRyczogewogICAgICAiaW5saW5lIjogdHJ1ZSwKICAgICAgIm1vZGVsIjogX3ZtLnBhcmFtcywKICAgICAgImxhYmVsLXdpZHRoIjogIjEzMHB4IiwKICAgICAgImxhYmVsLXBvc2l0aW9uIjogInJpZ2h0IgogICAgfQogIH0sIFtfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuWFs+mUruivje+8miIsCiAgICAgICJwcm9wIjogImtleXdvcmQiCiAgICB9CiAgfSwgW19jKCdlbC1pbnB1dCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJwbGFjZWhvbGRlciI6ICLlp5PlkI0v6LSm5Y+3L+aJi+acuuWPty/or4Hku7blj7fnoIEiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiaW5wdXQiOiBfdm0uaW5wdXRrZXl3b3JrCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMua2V5d29yZCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAia2V5d29yZCIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMua2V5d29yZCIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuivgeS7tuexu+Wei++8miIsCiAgICAgICJwcm9wIjogImNyZWRlbnRpYWxUeXBlcyIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2UtdGFncyI6ICIiLAogICAgICAicGxhY2Vob2xkZXIiOiAi6K+36YCJ5oupIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlY3JlZGVudGlhbFR5cGVzCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuY3JlZGVudGlhbFR5cGVzLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJjcmVkZW50aWFsVHlwZXMiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmNyZWRlbnRpYWxUeXBlcyIKICAgIH0KICB9LCBfdm0uX2woX3ZtLmNyZWRlbnRpYWxUeXBlc29wdGlvbnMsIGZ1bmN0aW9uIChpdGVtKSB7CiAgICByZXR1cm4gX2MoJ2VsLW9wdGlvbicsIHsKICAgICAga2V5OiBpdGVtLnZhbHVlLAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLor4Hku7bmoLjpqoznirbmgIHvvJoiLAogICAgICAicHJvcCI6ICJjaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgW19jKCdlbC1zZWxlY3QnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAibXVsdGlwbGUiOiAiIiwKICAgICAgImNvbGxhcHNlLXRhZ3MiOiAiIiwKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWNoZWNrZWRTdGF0dXNlcwogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmNoZWNrZWRTdGF0dXNlcywKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiY2hlY2tlZFN0YXR1c2VzIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5jaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5jaGVja2VkU3RhdHVzZXNvcHRpb25zLCBmdW5jdGlvbiAoaXRlbSkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaXRlbS52YWx1ZSwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiBfdm0uZGVwYXJ0bGFiZWwsCiAgICAgICJwcm9wIjogImRlcGFydElkcyIKICAgIH0KICB9LCBbX2MoJ3NlbGVjdFRyZWUnLCB7CiAgICByZWY6ICJzZWxlY3RUcmVlIiwKICAgIGF0dHJzOiB7CiAgICAgICJjdXJWYWx1ZSI6IF92bS5kZWZhdWxEYXRhLAogICAgICAiZGF0YSI6IF92bS50YWJsZURhdGEsCiAgICAgICJvYmoiOiB7CiAgICAgICAgaWQ6ICdpZCcsCiAgICAgICAgbGFiZWw6ICduYW1lJywKICAgICAgICBjaGlsZHJlbjogJ2NoaWxkcmVuJwogICAgICB9LAogICAgICAiY2hlY2tTdHJpY3RseSI6ICIiLAogICAgICAiY2xlYXJhYmxlIjogIiIsCiAgICAgICJmaWx0ZXJhYmxlIjogIiIsCiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2VUYWdzIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiZ2V0VmFsdWUiOiBfdm0uY2hlY2tDaGFuZ2UKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuWyl+S9je+8miIsCiAgICAgICJwcm9wIjogInBvc2l0aW9uIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIsCiAgICAgICJjbGVhcmFibGUiOiAiIgogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLnBvc2l0aW9uLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJwb3NpdGlvbiIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMucG9zaXRpb24iCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5wb3NpdGlvbkFyck9wdGlvbnMsIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuaAp+WIq++8miIsCiAgICAgICJwcm9wIjogInNleCIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZXNleAogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLnNleCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAic2V4IiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5zZXgiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5zZXhBcnJPcHRpb25zLCBmdW5jdGlvbiAoaXRlbSwgaW5kZXgpIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGluZGV4LAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLlvIDlp4vlubTpvoTvvJoiLAogICAgICAicHJvcCI6ICJiZWdpbkFnZSIKICAgIH0KICB9LCBbX2MoJ2VsLWlucHV0LW51bWJlcicsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxNzVweCIKICAgIH0sCiAgICBhdHRyczogewogICAgICAiY29udHJvbHMiOiBmYWxzZSwKICAgICAgIm1pbiI6IDEsCiAgICAgICJtYXgiOiAxMDAsCiAgICAgICJwbGFjZWhvbGRlciI6ICLlvIDlp4vlubTpvoQiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2ViZWdpbkFnZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmJlZ2luQWdlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJiZWdpbkFnZSIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuYmVnaW5BZ2UiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLnu5PmnZ/lubTpvoTvvJoiLAogICAgICAicHJvcCI6ICJlbmRBZ2UiCiAgICB9CiAgfSwgW19jKCdlbC1pbnB1dC1udW1iZXInLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTc1cHgiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgImNvbnRyb2xzIjogZmFsc2UsCiAgICAgICJtaW4iOiAxLAogICAgICAibWF4IjogMTAwLAogICAgICAicGxhY2Vob2xkZXIiOiAi57uT5p2f5bm06b6EIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlZW5kQWdlCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuZW5kQWdlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJlbmRBZ2UiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmVuZEFnZSIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogYCR7X3ZtLiRTdXBlcnZpc2VTdHIuZW50cnl95pe26Ze077yaYCwKICAgICAgInByb3AiOiAic3RhcnRFbmREYXRlIgogICAgfQogIH0sIFtfYygnZWwtZGF0ZS1waWNrZXInLCB7CiAgICBhdHRyczogewogICAgICAidHlwZSI6ICJkYXRlcmFuZ2UiLAogICAgICAidmFsdWUtZm9ybWF0IjogInl5eXktTU0tZGQiLAogICAgICAiZm9ybWF0IjogInl5eXktTU0tZGQiLAogICAgICAicmFuZ2Utc2VwYXJhdG9yIjogIuiHsyIsCiAgICAgICJzdGFydC1wbGFjZWhvbGRlciI6ICLlvIDlp4vml6XmnJ8iLAogICAgICAiZW5kLXBsYWNlaG9sZGVyIjogIue7k+adn+aXpeacnyIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZXN0YXJ0RW5kRGF0ZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLnN0YXJ0RW5kRGF0ZSwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAic3RhcnRFbmREYXRlIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5zdGFydEVuZERhdGUiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIFtfYygnZWwtYnV0dG9uJywgewogICAgYXR0cnM6IHsKICAgICAgInR5cGUiOiAicHJpbWFyeSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2xpY2siOiBfdm0uaGlnaFNlYXJjaEJ1dHRvbgogICAgfQogIH0sIFtfdm0uX3YoIuafpeivoiIpXSksIF9jKCdlbC1idXR0b24nLCB7CiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5yZXNldFNlYXJjaEZvcm0oKTsKICAgICAgfQogICAgfQogIH0sIFtfdm0uX3YoIumHjee9riIpXSldLCAxKV0sIDEpXSwgMSkgOiBfdm0uaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDQnKSB8fCBfdm0uaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDcnKSA/IF9jKCdlbC1yb3cnLCBbX2MoJ2VsLWZvcm0nLCB7CiAgICByZWY6ICJydWxlRm9ybSIsCiAgICBhdHRyczogewogICAgICAiaW5saW5lIjogdHJ1ZSwKICAgICAgIm1vZGVsIjogX3ZtLnBhcmFtcywKICAgICAgImxhYmVsLXdpZHRoIjogIjEzMHB4IiwKICAgICAgImxhYmVsLXBvc2l0aW9uIjogInJpZ2h0IgogICAgfQogIH0sIFtfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuWFs+mUruivje+8miIsCiAgICAgICJwcm9wIjogImtleXdvcmQiCiAgICB9CiAgfSwgW19jKCdlbC1pbnB1dCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJwbGFjZWhvbGRlciI6ICLlp5PlkI0v6LSm5Y+3L+aJi+acuuWPty/or4Hku7blj7fnoIEiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiaW5wdXQiOiBfdm0uaW5wdXRrZXl3b3JrCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMua2V5d29yZCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAia2V5d29yZCIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMua2V5d29yZCIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuivgeS7tuexu+Wei++8miIsCiAgICAgICJwcm9wIjogImNyZWRlbnRpYWxUeXBlcyIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2UtdGFncyI6ICIiLAogICAgICAicGxhY2Vob2xkZXIiOiAi6K+36YCJ5oupIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlY3JlZGVudGlhbFR5cGVzCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuY3JlZGVudGlhbFR5cGVzLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJjcmVkZW50aWFsVHlwZXMiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmNyZWRlbnRpYWxUeXBlcyIKICAgIH0KICB9LCBfdm0uX2woX3ZtLmNyZWRlbnRpYWxUeXBlc29wdGlvbnMsIGZ1bmN0aW9uIChpdGVtKSB7CiAgICByZXR1cm4gX2MoJ2VsLW9wdGlvbicsIHsKICAgICAga2V5OiBpdGVtLnZhbHVlLAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLor4Hku7bmoLjpqoznirbmgIHvvJoiLAogICAgICAicHJvcCI6ICJjaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgW19jKCdlbC1zZWxlY3QnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAibXVsdGlwbGUiOiAiIiwKICAgICAgImNvbGxhcHNlLXRhZ3MiOiAiIiwKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWNoZWNrZWRTdGF0dXNlcwogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmNoZWNrZWRTdGF0dXNlcywKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiY2hlY2tlZFN0YXR1c2VzIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5jaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5jaGVja2VkU3RhdHVzZXNvcHRpb25zLCBmdW5jdGlvbiAoaXRlbSkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaXRlbS52YWx1ZSwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiBfdm0uZGVwYXJ0bGFiZWwsCiAgICAgICJwcm9wIjogImRlcGFydElkcyIKICAgIH0KICB9LCBbX2MoJ3NlbGVjdFRyZWUnLCB7CiAgICByZWY6ICJzZWxlY3RUcmVlIiwKICAgIGF0dHJzOiB7CiAgICAgICJjdXJWYWx1ZSI6IF92bS5kZWZhdWxEYXRhLAogICAgICAiZGF0YSI6IF92bS50YWJsZURhdGEsCiAgICAgICJvYmoiOiB7CiAgICAgICAgaWQ6ICdpZCcsCiAgICAgICAgbGFiZWw6ICduYW1lJywKICAgICAgICBjaGlsZHJlbjogJ2NoaWxkcmVuJwogICAgICB9LAogICAgICAiY2hlY2tTdHJpY3RseSI6ICIiLAogICAgICAiY2xlYXJhYmxlIjogIiIsCiAgICAgICJmaWx0ZXJhYmxlIjogIiIsCiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2VUYWdzIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiZ2V0VmFsdWUiOiBfdm0uY2hlY2tDaGFuZ2UKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuaAp+WIq++8miIsCiAgICAgICJwcm9wIjogInNleCIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZXNleAogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLnNleCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAic2V4IiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5zZXgiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5zZXhBcnJPcHRpb25zLCBmdW5jdGlvbiAoaXRlbSwgaW5kZXgpIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGluZGV4LAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLlvIDlp4vlubTpvoTvvJoiLAogICAgICAicHJvcCI6ICJiZWdpbkFnZSIKICAgIH0KICB9LCBbX2MoJ2VsLWlucHV0LW51bWJlcicsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxNzVweCIKICAgIH0sCiAgICBhdHRyczogewogICAgICAiY29udHJvbHMiOiBmYWxzZSwKICAgICAgIm1pbiI6IDEsCiAgICAgICJtYXgiOiAxMDAsCiAgICAgICJwbGFjZWhvbGRlciI6ICLlvIDlp4vlubTpvoQiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2ViZWdpbkFnZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmJlZ2luQWdlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJiZWdpbkFnZSIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuYmVnaW5BZ2UiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLnu5PmnZ/lubTpvoTvvJoiLAogICAgICAicHJvcCI6ICJlbmRBZ2UiCiAgICB9CiAgfSwgW19jKCdlbC1pbnB1dC1udW1iZXInLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTc1cHgiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgImNvbnRyb2xzIjogZmFsc2UsCiAgICAgICJtaW4iOiAxLAogICAgICAibWF4IjogMTAwLAogICAgICAicGxhY2Vob2xkZXIiOiAi57uT5p2f5bm06b6EIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlZW5kQWdlCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuZW5kQWdlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJlbmRBZ2UiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmVuZEFnZSIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogYCR7X3ZtLiRTdXBlcnZpc2VTdHIuZW50cnl95pe26Ze077yaYCwKICAgICAgInByb3AiOiAic3RhcnRFbmREYXRlIgogICAgfQogIH0sIFtfYygnZWwtZGF0ZS1waWNrZXInLCB7CiAgICBhdHRyczogewogICAgICAidHlwZSI6ICJkYXRlcmFuZ2UiLAogICAgICAidmFsdWUtZm9ybWF0IjogInl5eXktTU0tZGQiLAogICAgICAiZm9ybWF0IjogInl5eXktTU0tZGQiLAogICAgICAicmFuZ2Utc2VwYXJhdG9yIjogIuiHsyIsCiAgICAgICJzdGFydC1wbGFjZWhvbGRlciI6ICLlvIDlp4vml6XmnJ8iLAogICAgICAiZW5kLXBsYWNlaG9sZGVyIjogIue7k+adn+aXpeacnyIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZXN0YXJ0RW5kRGF0ZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLnN0YXJ0RW5kRGF0ZSwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAic3RhcnRFbmREYXRlIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5zdGFydEVuZERhdGUiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIFtfYygnZWwtYnV0dG9uJywgewogICAgYXR0cnM6IHsKICAgICAgInR5cGUiOiAicHJpbWFyeSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2xpY2siOiBfdm0uaGlnaFNlYXJjaEJ1dHRvbgogICAgfQogIH0sIFtfdm0uX3YoIuafpeivoiIpXSksIF9jKCdlbC1idXR0b24nLCB7CiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5yZXNldFNlYXJjaEZvcm0oKTsKICAgICAgfQogICAgfQogIH0sIFtfdm0uX3YoIumHjee9riIpXSldLCAxKV0sIDEpXSwgMSkgOiBfdm0uaW5zdGl0dXRpb25hbENvZGUuZW5kc1dpdGgoJzA3JykgfHwgX3ZtLmluc3RpdHV0aW9uYWxDb2RlLmVuZHNXaXRoKCcwOCcpIHx8IF92bS5pbnN0aXR1dGlvbmFsQ29kZS5lbmRzV2l0aCgnMDknKSA/IF9jKCdlbC1yb3cnLCBbX2MoJ2VsLWZvcm0nLCB7CiAgICByZWY6ICJydWxlRm9ybSIsCiAgICBhdHRyczogewogICAgICAiaW5saW5lIjogdHJ1ZSwKICAgICAgIm1vZGVsIjogX3ZtLnBhcmFtcywKICAgICAgImxhYmVsLXdpZHRoIjogIjEzMHB4IiwKICAgICAgImxhYmVsLXBvc2l0aW9uIjogInJpZ2h0IgogICAgfQogIH0sIFtfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuWFs+mUruivje+8miIsCiAgICAgICJwcm9wIjogImtleXdvcmQiCiAgICB9CiAgfSwgW19jKCdlbC1pbnB1dCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJwbGFjZWhvbGRlciI6ICLlp5PlkI0v6LSm5Y+3L+aJi+acuuWPty/or4Hku7blj7fnoIEiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiaW5wdXQiOiBfdm0uaW5wdXRrZXl3b3JrCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMua2V5d29yZCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAia2V5d29yZCIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMua2V5d29yZCIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogX3ZtLmRlcGFydGxhYmVsLAogICAgICAicHJvcCI6ICJkZXBhcnRJZHMiCiAgICB9CiAgfSwgW19jKCdzZWxlY3RUcmVlJywgewogICAgcmVmOiAic2VsZWN0VHJlZSIsCiAgICBhdHRyczogewogICAgICAiY3VyVmFsdWUiOiBfdm0uZGVmYXVsRGF0YSwKICAgICAgImRhdGEiOiBfdm0udGFibGVEYXRhLAogICAgICAib2JqIjogewogICAgICAgIGlkOiAnaWQnLAogICAgICAgIGxhYmVsOiAnbmFtZScsCiAgICAgICAgY2hpbGRyZW46ICdjaGlsZHJlbicKICAgICAgfSwKICAgICAgImNoZWNrU3RyaWN0bHkiOiAiIiwKICAgICAgImNsZWFyYWJsZSI6ICIiLAogICAgICAiZmlsdGVyYWJsZSI6ICIiLAogICAgICAibXVsdGlwbGUiOiAiIiwKICAgICAgImNvbGxhcHNlVGFncyI6ICIiCiAgICB9LAogICAgb246IHsKICAgICAgImdldFZhbHVlIjogX3ZtLmNoZWNrQ2hhbmdlCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIFtfYygnZWwtYnV0dG9uJywgewogICAgYXR0cnM6IHsKICAgICAgInR5cGUiOiAicHJpbWFyeSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2xpY2siOiBfdm0uaGlnaFNlYXJjaEJ1dHRvbgogICAgfQogIH0sIFtfdm0uX3YoIuafpeivoiIpXSksIF9jKCdlbC1idXR0b24nLCB7CiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5yZXNldFNlYXJjaEZvcm0oKTsKICAgICAgfQogICAgfQogIH0sIFtfdm0uX3YoIumHjee9riIpXSldLCAxKV0sIDEpXSwgMSkgOiBfYygnZWwtcm93JywgW19jKCdlbC1mb3JtJywgewogICAgcmVmOiAicnVsZUZvcm0iLAogICAgYXR0cnM6IHsKICAgICAgImlubGluZSI6IHRydWUsCiAgICAgICJtb2RlbCI6IF92bS5wYXJhbXMsCiAgICAgICJsYWJlbC13aWR0aCI6ICIxMzBweCIsCiAgICAgICJsYWJlbC1wb3NpdGlvbiI6ICJyaWdodCIKICAgIH0KICB9LCBbX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLlhbPplK7or43vvJoiLAogICAgICAicHJvcCI6ICJrZXl3b3JkIgogICAgfQogIH0sIFtfYygnZWwtaW5wdXQnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAicGxhY2Vob2xkZXIiOiAi5aeT5ZCNL+i0puWPty/miYvmnLrlj7cv6K+B5Lu25Y+356CBIiwKICAgICAgImNsZWFyYWJsZSI6ICIiCiAgICB9LAogICAgb246IHsKICAgICAgImlucHV0IjogX3ZtLmlucHV0a2V5d29yawogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmtleXdvcmQsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImtleXdvcmQiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmtleXdvcmQiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLor4Hku7bnsbvlnovvvJoiLAogICAgICAicHJvcCI6ICJjcmVkZW50aWFsVHlwZXMiCiAgICB9CiAgfSwgW19jKCdlbC1zZWxlY3QnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAibXVsdGlwbGUiOiAiIiwKICAgICAgImNvbGxhcHNlLXRhZ3MiOiAiIiwKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWNyZWRlbnRpYWxUeXBlcwogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmNyZWRlbnRpYWxUeXBlcywKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiY3JlZGVudGlhbFR5cGVzIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5jcmVkZW50aWFsVHlwZXMiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5jcmVkZW50aWFsVHlwZXNvcHRpb25zLCBmdW5jdGlvbiAoaXRlbSkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaXRlbS52YWx1ZSwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi6IGM5Lia57G75Z6L77yaIiwKICAgICAgInByb3AiOiAib2NjdXBhdGlvblR5cGVzIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZS10YWdzIjogIiIsCiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2VvY2N1cGF0aW9uVHlwZXMKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5vY2N1cGF0aW9uVHlwZXMsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgIm9jY3VwYXRpb25UeXBlcyIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMub2NjdXBhdGlvblR5cGVzIgogICAgfQogIH0sIF92bS5fbChfdm0ub2NjdXBhdGlvblR5cGVBcnIsIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgZGlyZWN0aXZlczogW3sKICAgICAgbmFtZTogInNob3ciLAogICAgICByYXdOYW1lOiAidi1zaG93IiwKICAgICAgdmFsdWU6IF92bS5saXN0c2hvd09iai5hdXRoZW50aWNhdGVkU3RhdHVzZXMgJiYgIV92bS5pbnN0aXR1dGlvbmFsQ29kZS5zdGFydHNXaXRoKCcwMicpLAogICAgICBleHByZXNzaW9uOiAibGlzdHNob3dPYmouYXV0aGVudGljYXRlZFN0YXR1c2VzICYmICFpbnN0aXR1dGlvbmFsQ29kZS5zdGFydHNXaXRoKCcwMicpIgogICAgfV0sCiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5a6e5ZCN6K6k6K+B54q25oCB77yaIiwKICAgICAgInByb3AiOiAiYXV0aGVudGljYXRlZFN0YXR1c2VzIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZS10YWdzIjogIiIsCiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2VhdXRoZW50aWNhdGVkU3RhdHVzZXMKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5hdXRoZW50aWNhdGVkU3RhdHVzZXMsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImF1dGhlbnRpY2F0ZWRTdGF0dXNlcyIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuYXV0aGVudGljYXRlZFN0YXR1c2VzIgogICAgfQogIH0sIF92bS5fbChfdm0uYXV0aGVudGljYXRlZFN0YXR1c2Vzb3B0aW9ucywgZnVuY3Rpb24gKGl0ZW0pIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGl0ZW0udmFsdWUsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgZGlyZWN0aXZlczogW3sKICAgICAgbmFtZTogInNob3ciLAogICAgICByYXdOYW1lOiAidi1zaG93IiwKICAgICAgdmFsdWU6IF92bS5saXN0c2hvd09iai5jaGVja2VkU3RhdHVzZXMsCiAgICAgIGV4cHJlc3Npb246ICJsaXN0c2hvd09iai5jaGVja2VkU3RhdHVzZXMiCiAgICB9XSwKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLor4Hku7bmoLjpqoznirbmgIHvvJoiLAogICAgICAicHJvcCI6ICJjaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgW19jKCdlbC1zZWxlY3QnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAibXVsdGlwbGUiOiAiIiwKICAgICAgImNvbGxhcHNlLXRhZ3MiOiAiIiwKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWNoZWNrZWRTdGF0dXNlcwogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmNoZWNrZWRTdGF0dXNlcywKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiY2hlY2tlZFN0YXR1c2VzIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5jaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5jaGVja2VkU3RhdHVzZXNvcHRpb25zLCBmdW5jdGlvbiAoaXRlbSkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaXRlbS52YWx1ZSwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBkaXJlY3RpdmVzOiBbewogICAgICBuYW1lOiAic2hvdyIsCiAgICAgIHJhd05hbWU6ICJ2LXNob3ciLAogICAgICB2YWx1ZTogX3ZtLmxpc3RzaG93T2JqLmNlclN0YXR1cyAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLnN0YXJ0c1dpdGgoJzAyJyksCiAgICAgIGV4cHJlc3Npb246ICJsaXN0c2hvd09iai5jZXJTdGF0dXMmJiFpbnN0aXR1dGlvbmFsQ29kZS5zdGFydHNXaXRoKCcwMicpIgogICAgfV0sCiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5oyB6LWE5qC86K+B77yaIiwKICAgICAgInByb3AiOiAiY2VyU3RhdHVzIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgImNvbGxhcHNlLXRhZ3MiOiAiIiwKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIsCiAgICAgICJjbGVhcmFibGUiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlY2VyU3RhdHVzCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuY2VyU3RhdHVzLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJjZXJTdGF0dXMiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmNlclN0YXR1cyIKICAgIH0KICB9LCBfdm0uX2woX3ZtLmNlclN0YXR1c0FyciwgZnVuY3Rpb24gKGl0ZW0sIGluZGV4KSB7CiAgICByZXR1cm4gX2MoJ2VsLW9wdGlvbicsIHsKICAgICAga2V5OiBpbmRleCwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBkaXJlY3RpdmVzOiBbewogICAgICBuYW1lOiAic2hvdyIsCiAgICAgIHJhd05hbWU6ICJ2LXNob3ciLAogICAgICB2YWx1ZTogX3ZtLmxpc3RzaG93T2JqLmNvbnRyYWN0U3RhdHVzICYmICFfdm0uaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDInKSwKICAgICAgZXhwcmVzc2lvbjogImxpc3RzaG93T2JqLmNvbnRyYWN0U3RhdHVzJiYhaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDInKSIKICAgIH1dLAogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuetvuiuouWQiOWQjO+8miIsCiAgICAgICJwcm9wIjogImNvbnRyYWN0U3RhdHVzIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgImNvbGxhcHNlLXRhZ3MiOiAiIiwKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIsCiAgICAgICJjbGVhcmFibGUiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlY29udHJhY3RTdGF0dXMKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5jb250cmFjdFN0YXR1cywKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiY29udHJhY3RTdGF0dXMiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmNvbnRyYWN0U3RhdHVzIgogICAgfQogIH0sIF92bS5fbChfdm0uY29udHJhY3RTdGF0dXNBcnIsIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogYCR7X3ZtLiRTdXBlcnZpc2VTdHIuZW50cnl95pel5pyf77yaYCwKICAgICAgInByb3AiOiAiaGlyZWREYXRlIgogICAgfQogIH0sIFtfYygnZWwtZGF0ZS1waWNrZXInLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTc1cHgiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInR5cGUiOiAiZGF0ZSIsCiAgICAgICJmb3JtYXQiOiAieXl5eS1NTS1kZCIsCiAgICAgICJ2YWx1ZS1mb3JtYXQiOiAieXl5eS1NTS1kZCIsCiAgICAgICJwbGFjZWhvbGRlciI6ICLpgInmi6nml6XmnJ8iCiAgICB9LAogICAgb246IHsKICAgICAgImlucHV0IjogX3ZtLmNoYW5nZUhpcmVkRGF0ZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmhpcmVkRGF0ZSwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiaGlyZWREYXRlIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5oaXJlZERhdGUiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6IF92bS5kZXBhcnRsYWJlbCwKICAgICAgInByb3AiOiAiZGVwYXJ0SWRzIgogICAgfQogIH0sIFtfYygnc2VsZWN0VHJlZScsIHsKICAgIHJlZjogInNlbGVjdFRyZWUiLAogICAgYXR0cnM6IHsKICAgICAgImN1clZhbHVlIjogX3ZtLmRlZmF1bERhdGEsCiAgICAgICJkYXRhIjogX3ZtLnRhYmxlRGF0YSwKICAgICAgIm9iaiI6IHsKICAgICAgICBpZDogJ2lkJywKICAgICAgICBsYWJlbDogJ25hbWUnLAogICAgICAgIGNoaWxkcmVuOiAnY2hpbGRyZW4nCiAgICAgIH0sCiAgICAgICJjaGVja1N0cmljdGx5IjogIiIsCiAgICAgICJjbGVhcmFibGUiOiAiIiwKICAgICAgImZpbHRlcmFibGUiOiAiIiwKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZVRhZ3MiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJnZXRWYWx1ZSI6IF92bS5jaGVja0NoYW5nZQogICAgfQogIH0pXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBkaXJlY3RpdmVzOiBbewogICAgICBuYW1lOiAic2hvdyIsCiAgICAgIHJhd05hbWU6ICJ2LXNob3ciLAogICAgICB2YWx1ZTogX3ZtLmxpc3RzaG93T2JqLmxldmVsICYmICFfdm0uaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDInKSwKICAgICAgZXhwcmVzc2lvbjogImxpc3RzaG93T2JqLmxldmVsJiYhaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDInKSIKICAgIH1dLAogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuS/neWuieiBjOS4muaKgOiDveetiee6p++8miIsCiAgICAgICJwcm9wIjogImxldmVsIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZS10YWdzIjogIiIsCiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2VsZXZlbAogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmxldmVsLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJsZXZlbCIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMubGV2ZWwiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5sZXZlbEFyciwgZnVuY3Rpb24gKGl0ZW0sIGluZGV4KSB7CiAgICByZXR1cm4gX2MoJ2VsLW9wdGlvbicsIHsKICAgICAga2V5OiBpbmRleCwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5oCn5Yir77yaIiwKICAgICAgInByb3AiOiAic2V4IgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIsCiAgICAgICJjbGVhcmFibGUiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlc2V4CiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuc2V4LAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJzZXgiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLnNleCIKICAgIH0KICB9LCBfdm0uX2woX3ZtLnNleEFyck9wdGlvbnMsIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuW8gOWni+W5tOm+hO+8miIsCiAgICAgICJwcm9wIjogImJlZ2luQWdlIgogICAgfQogIH0sIFtfYygnZWwtaW5wdXQtbnVtYmVyJywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjE3NXB4IgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJjb250cm9scyI6IGZhbHNlLAogICAgICAibWluIjogMSwKICAgICAgIm1heCI6IDEwMCwKICAgICAgInBsYWNlaG9sZGVyIjogIuW8gOWni+W5tOm+hCIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWJlZ2luQWdlCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuYmVnaW5BZ2UsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImJlZ2luQWdlIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5iZWdpbkFnZSIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIue7k+adn+W5tOm+hO+8miIsCiAgICAgICJwcm9wIjogImVuZEFnZSIKICAgIH0KICB9LCBbX2MoJ2VsLWlucHV0LW51bWJlcicsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxNzVweCIKICAgIH0sCiAgICBhdHRyczogewogICAgICAiY29udHJvbHMiOiBmYWxzZSwKICAgICAgIm1pbiI6IDEsCiAgICAgICJtYXgiOiAxMDAsCiAgICAgICJwbGFjZWhvbGRlciI6ICLnu5PmnZ/lubTpvoQiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2VlbmRBZ2UKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5lbmRBZ2UsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImVuZEFnZSIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuZW5kQWdlIgogICAgfQogIH0pXSwgMSksIF92bS5pbnN0U2hvdyA/IF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi6IOM5pmv562b5p+l54q25oCB77yaIiwKICAgICAgInByb3AiOiAiYmFja2dyb3VuZFNjcmVlbmluZ1N0YXR1cyIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2UtdGFncyI6ICIiLAogICAgICAicGxhY2Vob2xkZXIiOiAi6K+36YCJ5oupIgogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmJhY2tncm91bmRTY3JlZW5pbmdTdGF0dXMsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImJhY2tncm91bmRTY3JlZW5pbmdTdGF0dXMiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmJhY2tncm91bmRTY3JlZW5pbmdTdGF0dXMiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5iYWNrZ3JvdW5kU2NyZWVuaW5nU3RhdHVzT3B0aW9ucywgZnVuY3Rpb24gKGl0ZW0pIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGl0ZW0udmFsdWUsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpIDogX3ZtLl9lKCksICFfdm0uaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDInKSA/IF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5piv5ZCm5oqV5L+d77yaIiwKICAgICAgInByb3AiOiAiaW5zdXJlIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIsCiAgICAgICJjbGVhcmFibGUiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlaW5zdXJlCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuaW5zdXJlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJpbnN1cmUiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmluc3VyZSIKICAgIH0KICB9LCBfdm0uX2woX3ZtLmluc3VyZUFyck9wdGlvbnMsIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpIDogX3ZtLl9lKCksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiBgJHtfdm0uJFN1cGVydmlzZVN0ci5lbnRyeX3ml7bpl7TvvJpgLAogICAgICAicHJvcCI6ICJzdGFydEVuZERhdGUiCiAgICB9CiAgfSwgW19jKCdlbC1kYXRlLXBpY2tlcicsIHsKICAgIGF0dHJzOiB7CiAgICAgICJ0eXBlIjogImRhdGVyYW5nZSIsCiAgICAgICJ2YWx1ZS1mb3JtYXQiOiAieXl5eS1NTS1kZCIsCiAgICAgICJmb3JtYXQiOiAieXl5eS1NTS1kZCIsCiAgICAgICJyYW5nZS1zZXBhcmF0b3IiOiAi6IezIiwKICAgICAgInN0YXJ0LXBsYWNlaG9sZGVyIjogIuW8gOWni+aXpeacnyIsCiAgICAgICJlbmQtcGxhY2Vob2xkZXIiOiAi57uT5p2f5pel5pyfIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlc3RhcnRFbmREYXRlCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuc3RhcnRFbmREYXRlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJzdGFydEVuZERhdGUiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLnN0YXJ0RW5kRGF0ZSIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgW19jKCdlbC1idXR0b24nLCB7CiAgICBhdHRyczogewogICAgICAidHlwZSI6ICJwcmltYXJ5IgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjbGljayI6IF92bS5oaWdoU2VhcmNoQnV0dG9uCiAgICB9CiAgfSwgW192bS5fdigi5p+l6K+iIildKSwgX2MoJ2VsLWJ1dHRvbicsIHsKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLnJlc2V0U2VhcmNoRm9ybSgpOwogICAgICB9CiAgICB9CiAgfSwgW192bS5fdigi6YeN572uIildKV0sIDEpXSwgMSldLCAxKV0sIDEpLCBfdm0uSGlnaERhdGFGbGFnID8gX2MoJ3NlY3Rpb24nLCB7CiAgICBzdGF0aWNDbGFzczogIkRhdGFUQm94IgogIH0sIFtfYygnZGl2JywgewogICAgc3RhdGljQ2xhc3M6ICJ0aiIKICB9LCBbX2MoJ3NwYW4nLCB7CiAgICBzdGF0aWNDbGFzczogImNvdW50c3RqIiwKICAgIGNsYXNzOiBfdm0uaW5kZXggPT0gMCA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygwLCAnb2NjdXBhdGlvblR5cGVzJywgW10pOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuWcqOiBjOWRmOW3peaAu+aVsCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmoudG90YWwpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDEsICdjaGVja2VkU3RhdHVzZXMnLCBbMF0pOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuacquaPkOS6pCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmoudW5DaGVja2VkQ291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAyID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDIsICdjaGVja2VkU3RhdHVzZXMnLCBbMl0pOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuW3suaPkOS6pCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouY29tbWl0Q291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAzID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDMsICdjaGVja2VkU3RhdHVzZXMnLCBbMV0pOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuW3suaguOmqjCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouY2hlY2tlZENvdW50KSldKV0pLCBfYygnc3BhbicsIHsKICAgIGNsYXNzOiBfdm0uaW5kZXggPT0gNCA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljayg0LCAnY29udHJhY3RTdGF0dXMnLCAnMCcpOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuacquetvuWQiOWQjCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmoudW5Db250cmFjdENvdW50KSldKV0pLCBfYygnc3BhbicsIHsKICAgIGNsYXNzOiBfdm0uaW5kZXggPT0gNSA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljayg1LCAnY29udHJhY3RTdGF0dXMnLCAnMScpOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuW3suetvuWQiOWQjCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouY29udHJhY3RDb3VudCkpXSldKV0pLCBfdm0uaW5zdFNob3cgPyBfYygnZGl2JywgewogICAgc3RhdGljQ2xhc3M6ICJ0aiIKICB9LCBbX2MoJ3NwYW4nLCB7CiAgICBzdGF0aWNDbGFzczogImNvdW50c3RqIiwKICAgIGNsYXNzOiBfdm0uaW5kZXggPT0gMTAgPyAnYWN0aXZlJyA6ICcnLAogICAgb246IHsKICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIHJldHVybiBfdm0uRGF0YVRqY2xpY2soMTAsICdvY2N1cGF0aW9uVHlwZXMnLCBbJ1NlY3VyaXR5R3VhcmQnXSk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5L+d5a6J5ZGY5oC75pWwIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNUb3RhbCkpXSldKSwgX2MoJ3NwYW4nLCB7CiAgICBjbGFzczogX3ZtLmluZGV4ID09IDExID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDExLCAnY2hlY2tlZFN0YXR1c2VzJywgWzBdLCAnb2NjdXBhdGlvblR5cGVzJyk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5pyq5o+Q5LqkIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNVbkNoZWNrZWRDb3VudCkpXSldKSwgX2MoJ3NwYW4nLCB7CiAgICBjbGFzczogX3ZtLmluZGV4ID09IDEyID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDEyLCAnY2hlY2tlZFN0YXR1c2VzJywgWzFdLCAnb2NjdXBhdGlvblR5cGVzJyk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5bey5qC46aqMIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNDaGVja2VkQ291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgZGlyZWN0aXZlczogW3sKICAgICAgbmFtZTogInNob3ciLAogICAgICByYXdOYW1lOiAidi1zaG93IiwKICAgICAgdmFsdWU6IF92bS5EYXRhQm9hcmRzaG93T2JqLkF1dGhlbnRpY2F0aW5nLAogICAgICBleHByZXNzaW9uOiAiRGF0YUJvYXJkc2hvd09iai5BdXRoZW50aWNhdGluZyIKICAgIH1dLAogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxMyA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygxMywgJ2F1dGhlbnRpY2F0ZWRTdGF0dXNlcycsIFsnQXV0aGVudGljYXRpbmcnXSwgJ29jY3VwYXRpb25UeXBlcycpOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuWunuWQjeiupOivgeS4rSIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouc2VjVW5BdXRoQ291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgZGlyZWN0aXZlczogW3sKICAgICAgbmFtZTogInNob3ciLAogICAgICByYXdOYW1lOiAidi1zaG93IiwKICAgICAgdmFsdWU6IF92bS5EYXRhQm9hcmRzaG93T2JqLlBhc3NlZCwKICAgICAgZXhwcmVzc2lvbjogIkRhdGFCb2FyZHNob3dPYmouUGFzc2VkIgogICAgfV0sCiAgICBjbGFzczogX3ZtLmluZGV4ID09IDE0ID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDE0LCAnYXV0aGVudGljYXRlZFN0YXR1c2VzJywgWydQYXNzZWQnXSwgJ29jY3VwYXRpb25UeXBlcycpOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuW3suWunuWQjeiupOivgSIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouc2VjQXV0aENvdW50KSldKV0pLCBfYygnc3BhbicsIHsKICAgIGRpcmVjdGl2ZXM6IFt7CiAgICAgIG5hbWU6ICJzaG93IiwKICAgICAgcmF3TmFtZTogInYtc2hvdyIsCiAgICAgIHZhbHVlOiBfdm0uRGF0YUJvYXJkc2hvd09iai5GYWlsZWQsCiAgICAgIGV4cHJlc3Npb246ICJEYXRhQm9hcmRzaG93T2JqLkZhaWxlZCIKICAgIH1dLAogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxNSA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygxNSwgJ2F1dGhlbnRpY2F0ZWRTdGF0dXNlcycsIFsnRmFpbGVkJ10sICdvY2N1cGF0aW9uVHlwZXMnKTsKICAgICAgfQogICAgfQogIH0sIFtfYygnZW0nLCBbX3ZtLl92KCLlrp7lkI3orqTor4HlpLHotKUiKV0pLCBfYygnc3Ryb25nJywgW192bS5fdihfdm0uX3MoX3ZtLnRqT2JqLnNlY0F1dGhGYWlsQ291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxNiA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygxNiwgJ2NvbnRyYWN0U3RhdHVzJywgJzAnLCAnb2NjdXBhdGlvblR5cGVzJyk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5pyq562+5ZCI5ZCMIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNVbkNvbnRyYWN0Q291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxNyA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygxNywgJ2NvbnRyYWN0U3RhdHVzJywgJzEnLCAnb2NjdXBhdGlvblR5cGVzJyk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5bey562+5ZCI5ZCMIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNDb250cmFjdENvdW50KSldKV0pXSkgOiBfdm0uX2UoKV0pIDogX3ZtLl9lKCksIF9jKCdzZWN0aW9uJywgewogICAgc3RhdGljQ2xhc3M6ICJjb250ZW50Qm94IgogIH0sIFtfYygnZWwtdGFibGUnLCB7CiAgICByZWY6ICJkaXN0cmljdFRhYmxlIiwKICAgIGF0dHJzOiB7CiAgICAgICJkYXRhIjogX3ZtLnRhYmxlRGF0YUVtcGxveWVlLAogICAgICAibWF4LWhlaWdodCI6ICI1MDAiLAogICAgICAiZGVmYXVsdC1leHBhbmQtYWxsIjogIiIsCiAgICAgICJyb3cta2V5IjogImlkIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJzZWxlY3Rpb24tY2hhbmdlIjogX3ZtLmhhbmRsZVNlbGVjdGlvbkNoYW5nZSwKICAgICAgInNlbGVjdC1hbGwiOiBfdm0uaGFuZGxlU2VsZWN0aW9uQWxsQ2hhbmdlCiAgICB9CiAgfSwgW192bS5fbChfdm0udGFibGVDb2x1bW4sIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIGl0ZW0uc2hvdyA/IF9jKCdlbC10YWJsZS1jb2x1bW4nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgInByb3AiOiBpdGVtLnByb3AsCiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAid2lkdGgiOiBpdGVtLndpZHRoLAogICAgICAgICJmaXhlZCI6IGl0ZW0ubGFiZWwgPT0gIuWnk+WQjSIKICAgICAgfSwKICAgICAgc2NvcGVkU2xvdHM6IF92bS5fdShbewogICAgICAgIGtleTogImRlZmF1bHQiLAogICAgICAgIGZuOiBmdW5jdGlvbiAoc2NvcGUpIHsKICAgICAgICAgIHJldHVybiBbX2MoJ3NwYW4nLCBbX3ZtLl92KF92bS5fcyhzY29wZS5yb3dbaXRlbS5wcm9wXSkpXSldOwogICAgICAgIH0KICAgICAgfV0sIG51bGwsIHRydWUpCiAgICB9KSA6IF92bS5fZSgpOwogIH0pLCBfYygnZWwtdGFibGUtY29sdW1uJywgewogICAgYXR0cnM6IHsKICAgICAgImZpeGVkIjogInJpZ2h0IiwKICAgICAgIm1pbi13aWR0aCI6ICIxODAiCiAgICB9LAogICAgc2NvcGVkU2xvdHM6IF92bS5fdShbewogICAgICBrZXk6ICJoZWFkZXIiLAogICAgICBmbjogZnVuY3Rpb24gKHNjb3BlKSB7CiAgICAgICAgcmV0dXJuIFtfYygnc3BhbicsIHsKICAgICAgICAgIHN0YXRpY0NsYXNzOiAiY29sdW1uSGVhZGVyIgogICAgICAgIH0sIFtfYygnc3Ryb25nJywgW192bS5fdigi5pON5L2cIildKSwgX2MoJ2knLCB7CiAgICAgICAgICBzdGF0aWNDbGFzczogImVsLWljb24tc2V0dGluZyIsCiAgICAgICAgICBvbjogewogICAgICAgICAgICAiY2xpY2siOiBfdm0uY29sdW1uU2V0UG9wCiAgICAgICAgICB9CiAgICAgICAgfSldKV07CiAgICAgIH0KICAgIH0sIHsKICAgICAga2V5OiAiZGVmYXVsdCIsCiAgICAgIGZuOiBmdW5jdGlvbiAoc2NvcGUpIHsKICAgICAgICByZXR1cm4gW19jKCdlbC1idXR0b24nLCB7CiAgICAgICAgICBzdGF0aWNDbGFzczogInByaW1hcnlDb2xvciIsCiAgICAgICAgICBhdHRyczogewogICAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICAgInNpemUiOiAic21hbGwiCiAgICAgICAgICB9LAogICAgICAgICAgb246IHsKICAgICAgICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgICAgICAgIHJldHVybiBfdm0uZWRpdFN0YWZmKHNjb3BlLnJvdyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBbX3ZtLl92KCLnvJbovpEiKV0pLCBfdm0uZG9tYWluQWRtaW4gfHwgX3ZtLnBlcm1pc3Npb25zU3RyLmluZGV4T2YoJ1Jlc2V0UHdkJykgPiAtMSA/IF9jKCdlbC1idXR0b24nLCB7CiAgICAgICAgICBzdGF0aWNDbGFzczogInByaW1hcnlDb2xvciIsCiAgICAgICAgICBhdHRyczogewogICAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICAgInNpemUiOiAic21hbGwiCiAgICAgICAgICB9LAogICAgICAgICAgb246IHsKICAgICAgICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgICAgICAgIHJldHVybiBfdm0ucmVzZXRQV0RTdGFmZihzY29wZS5yb3cpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgW192bS5fdigi6YeN572u5a+G56CBIildKSA6IF92bS5fZSgpXTsKICAgICAgfQogICAgfV0sIG51bGwsIGZhbHNlLCAyNDk3ODgyNTE2KQogIH0pXSwgMiksIF9jKCdwYWdlcycsIHsKICAgIGF0dHJzOiB7CiAgICAgICJ0b3RhbCI6IF92bS5wYXJhbXMudG90YWwsCiAgICAgICJjdXJyZW50UGFnZSI6IF92bS5wYXJhbXMucGFnZUluZGV4LAogICAgICAicGFnZVNpemUiOiBfdm0ucGFyYW1zLnBhZ2VTaXplCiAgICB9LAogICAgb246IHsKICAgICAgInVwZGF0ZTpjdXJyZW50UGFnZSI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLiRzZXQoX3ZtLnBhcmFtcywgInBhZ2VJbmRleCIsICRldmVudCk7CiAgICAgIH0sCiAgICAgICJ1cGRhdGU6Y3VycmVudC1wYWdlIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIHJldHVybiBfdm0uJHNldChfdm0ucGFyYW1zLCAicGFnZUluZGV4IiwgJGV2ZW50KTsKICAgICAgfSwKICAgICAgImhhbmRsZUN1cnJlbnRDaGFuZ2VTdWIiOiBfdm0uaGFuZGxlQ3VycmVudENoYW5nZSwKICAgICAgImhhbmRsZVNpemVDaGFuZ2VTdWIiOiBfdm0uaGFuZGxlU2l6ZUNoYW5nZQogICAgfQogIH0pXSwgMSksIF9jKCdVc2VyRW1wbG95ZWVEaWFsb2cnLCB7CiAgICByZWY6ICJwb3BDaGlsZHJlbiIsCiAgICBhdHRyczogewogICAgICAiZGVwdERhdGFMaXN0IjogX3ZtLnRhYmxlRGF0YSwKICAgICAgInNob3dkaWFsb2ciOiBfdm0uc2hvd2RpYWxvZwogICAgfSwKICAgIG9uOiB7CiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZyI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZyA9ICRldmVudDsKICAgICAgfSwKICAgICAgInJlZnVybGlzdCI6IF92bS5yZWZ1cmxpc3QKICAgIH0KICB9KSwgX2MoJ0ltcG9ydEVtcGxveWVlRGlhbG9nJywgewogICAgcmVmOiAiSW1wb3J0cG9wQ2hpbGRyZW4iLAogICAgYXR0cnM6IHsKICAgICAgInNob3dkaWFsb2dJbXBvcnQiOiBfdm0uc2hvd2RpYWxvZ0ltcG9ydAogICAgfSwKICAgIG9uOiB7CiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZ0ltcG9ydCI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ0ltcG9ydCA9ICRldmVudDsKICAgICAgfSwKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nLWltcG9ydCI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ0ltcG9ydCA9ICRldmVudDsKICAgICAgfSwKICAgICAgInJlZnVybGlzdCI6IF92bS5yZWZ1cmxpc3QKICAgIH0KICB9KSwgX2MoJ0V4cG9ydEVtcGxveWVlRGlhbG9nJywgewogICAgcmVmOiAiRXhwb3J0cG9wQ2hpbGRyZW4iLAogICAgYXR0cnM6IHsKICAgICAgInNob3dkaWFsb2dFeHBvcnQiOiBfdm0uc2hvd2RpYWxvZ0V4cG9ydAogICAgfSwKICAgIG9uOiB7CiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZ0V4cG9ydCI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ0V4cG9ydCA9ICRldmVudDsKICAgICAgfSwKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nLWV4cG9ydCI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ0V4cG9ydCA9ICRldmVudDsKICAgICAgfSwKICAgICAgInJlZnVybGlzdCI6IF92bS5yZWZ1cmxpc3QKICAgIH0KICB9KSwgX2MoJ1VzZXJFbXBsb3llZUludml0ZUluRGlhbG9nJywgewogICAgcmVmOiAicG9wQ2hpbGRyZW4iLAogICAgYXR0cnM6IHsKICAgICAgImRlcHREYXRhTGlzdCI6IF92bS50YWJsZURhdGEsCiAgICAgICJzaG93ZGlhbG9nSW4iOiBfdm0uc2hvd2RpYWxvZ0luCiAgICB9LAogICAgb246IHsKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nSW4iOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgX3ZtLnNob3dkaWFsb2dJbiA9ICRldmVudDsKICAgICAgfSwKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nLWluIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIF92bS5zaG93ZGlhbG9nSW4gPSAkZXZlbnQ7CiAgICAgIH0sCiAgICAgICJyZWZ1cmxpc3QiOiBfdm0ucmVmdXJsaXN0CiAgICB9CiAgfSksIF9jKCdVc2VyRW1wbG95ZWVEdXR5RGlhbG9nJywgewogICAgcmVmOiAiRHV0eUNoaWxkcmVuIiwKICAgIGF0dHJzOiB7CiAgICAgICJkZXB0RGF0YUxpc3QiOiBfdm0udGFibGVEYXRhLAogICAgICAic2hvd2RpYWxvZ0R1dHkiOiBfdm0uc2hvd2RpYWxvZ0R1dHkKICAgIH0sCiAgICBvbjogewogICAgICAidXBkYXRlOnNob3dkaWFsb2dEdXR5IjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIF92bS5zaG93ZGlhbG9nRHV0eSA9ICRldmVudDsKICAgICAgfSwKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nLWR1dHkiOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgX3ZtLnNob3dkaWFsb2dEdXR5ID0gJGV2ZW50OwogICAgICB9LAogICAgICAicmVmdXJsaXN0IjogX3ZtLnJlZnVybGlzdAogICAgfQogIH0pLCBfYygnVXNlckVtcGxveWVlY2hhbmdlT2NjdXBhdGlvblR5cGVEaWFsb2cnLCB7CiAgICByZWY6ICJPY2NUeXBlQ2hpbGRyZW4iLAogICAgYXR0cnM6IHsKICAgICAgInNob3dkaWFsb2dPY2NUeXBlIjogX3ZtLnNob3dkaWFsb2dPY2NUeXBlCiAgICB9LAogICAgb246IHsKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nT2NjVHlwZSI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ09jY1R5cGUgPSAkZXZlbnQ7CiAgICAgIH0sCiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZy1vY2MtdHlwZSI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ09jY1R5cGUgPSAkZXZlbnQ7CiAgICAgIH0sCiAgICAgICJyZWZ1cmxpc3QiOiBfdm0ucmVmdXJsaXN0CiAgICB9CiAgfSldLCAxKSA6IF92bS5fZSgpLCAhX3ZtLlN0YWZmQm94RmxhZyA/IF9jKCdzZWN0aW9uJywgewogICAgc3RhdGljQ2xhc3M6ICJDb250YWluZXJCb3hEZXRhaWwiCiAgfSwgW19jKCdTdGFmZkJveERldGFpbCcsIHsKICAgIGF0dHJzOiB7CiAgICAgICJzdGFmZmluZm8iOiBfdm0uc3RhZmZpbmZvCiAgICB9LAogICAgb246IHsKICAgICAgInJlZnVybGlzdEJhY2siOiBfdm0ucmVmdXJsaXN0QmFjawogICAgfQogIH0pXSwgMSkgOiBfdm0uX2UoKSwgX2MoJ0NvbHVtblNldCcsIHsKICAgIHJlZjogImNvbHVtblJlZiIsCiAgICBhdHRyczogewogICAgICAic2hvd2RpYWxvZ0NvbHVtblNldCI6IF92bS5zaG93ZGlhbG9nQ29sdW1uU2V0LAogICAgICAidHlwZUZsYWciOiBfdm0udHlwZUZsYWcKICAgIH0sCiAgICBvbjogewogICAgICAidXBkYXRlOnNob3dkaWFsb2dDb2x1bW5TZXQiOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgX3ZtLnNob3dkaWFsb2dDb2x1bW5TZXQgPSAkZXZlbnQ7CiAgICAgIH0sCiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZy1jb2x1bW4tc2V0IjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIF92bS5zaG93ZGlhbG9nQ29sdW1uU2V0ID0gJGV2ZW50OwogICAgICB9LAogICAgICAicmVmdXJsaXN0IjogX3ZtLnJlZnVybGlzdAogICAgfQogIH0pXSwgMSk7Cn07CnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXTsKZXhwb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfTs="},null]}