{"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=2979d940","dependencies":[{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/src/views/Employee/index.vue","mtime":1731050708828},{"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+d5a6J5ZGY77ya55S36LaF6L+HNjDlsoHvvIzlpbPotoXov4c1MOWyge+8m+mZleilvyDotoXpvoTkv53lronlkZg655S36LaF6L+HNjPlsoHvvIzlpbPotoXov4c1OOWyge+8jOWPr+mAmui/h+etm+mAiemhueOAkOiBjOS4muexu+Wei+OAkeOAgeOAkOW8gOWni+W5tOm+hOOAkei/m+ihjOafpeivouOAgicgOiAnJykpXSksIF9jKCdzcGFuJywgW192bS5fdihfdm0uX3MoX3ZtLmluc3RpdHV0aW9uYWxDb2RlRmxhZyA/ICc1LiDotoXmnJ/mnKrmjIHor4Hkv53lronlkZjvvJrlhaXogYzml6XmnJ/otoXov4cxNOWkqeacquWPluivgeS/neWuieWRmO+8jOWPr+mAmui/h+etm+mAiemhueOAkOiBjOS4muexu+Wei+OAkeOAgeOAkOaMgeivgeeKtuaAgeOAkeOAgeOAkOWFpeiBjOaXpeacn+OAkei/m+ihjOafpeivouOAgicgOiAnJykpXSldKV0pXSksIF9jKCdzZWN0aW9uJywgewogICAgc3RhdGljQ2xhc3M6ICJidXR0b25Cb3giCiAgfSwgW19jKCdlbC1yb3cnLCB7CiAgICBzdGF0aWNDbGFzczogInJvdy1iZyIsCiAgICBhdHRyczogewogICAgICAidHlwZSI6ICJmbGV4IiwKICAgICAgImp1c3RpZnkiOiAic3BhY2UtYmV0d2VlbiIKICAgIH0KICB9LCBbX2MoJ2VsLWNvbCcsIHsKICAgIGF0dHJzOiB7CiAgICAgICJzcGFuIjogMTIKICAgIH0KICB9LCBbX2MoJ2RpdicsIFtfYygnZWwtYnV0dG9uJywgewogICAgYXR0cnM6IHsKICAgICAgInR5cGUiOiAicHJpbWFyeSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2xpY2siOiBfdm0uYWRkVXNlcgogICAgfQogIH0sIFtfdm0uX3YoIua3u+WKoCIgKyBfdm0uX3MoX3ZtLiRTdXBlcnZpc2VTdHIuZW1wbG95ZWUpKV0pLCBfYygnZWwtYnV0dG9uJywgewogICAgb246IHsKICAgICAgImNsaWNrIjogX3ZtLmltcG9ydEVtcGxveWVlCiAgICB9CiAgfSwgW192bS5fdigi5a+85YWlIiArIF92bS5fcyhfdm0uJFN1cGVydmlzZVN0ci5lbXBsb3llZSkpXSksIF9jKCdlbC1idXR0b24nLCB7CiAgICBvbjogewogICAgICAiY2xpY2siOiBfdm0uZXhwb3J0RW1wbG95ZWUKICAgIH0KICB9LCBbX3ZtLl92KCLlr7zlh7rlkZjlt6UiKV0pLCBfdm0uJFN1cGVydmlzZVN0ci5pc25vdFN1cGVydmlzZUJ1dHRvbiAmJiBfdm0uaW5zdGl0dXRpb25hbENvZGUgIT0gJzA2MDEnICYmICFfdm0uaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDQnKSAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLnN0YXJ0c1dpdGgoJzA3JykgJiYgIV92bS5pbnN0aXR1dGlvbmFsQ29kZS5lbmRzV2l0aCgnMDcnKSAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLmVuZHNXaXRoKCcwOCcpICYmICFfdm0uaW5zdGl0dXRpb25hbENvZGUuZW5kc1dpdGgoJzA5JykgPyBfYygnZWwtYnV0dG9uJywgewogICAgb246IHsKICAgICAgImNsaWNrIjogX3ZtLmFkZFVzZXJJbgogICAgfQogIH0sIFtfdm0uX3YoIumCgOivt+WFpeiBjCIpXSkgOiBfdm0uX2UoKSwgX3ZtLiRTdXBlcnZpc2VTdHIuaXNub3RTdXBlcnZpc2VCdXR0b24gJiYgX3ZtLmhvbWVUZW1wbGF0ZUJvcmFkVHlwZSAhPSAncnRwYXlUZW1wbGF0ZScgJiYgX3ZtLmluc3RpdHV0aW9uYWxDb2RlICE9ICcwNjAxJyAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLnN0YXJ0c1dpdGgoJzA0JykgJiYgIV92bS5pbnN0aXR1dGlvbmFsQ29kZS5zdGFydHNXaXRoKCcwNycpICYmICFfdm0uaW5zdGl0dXRpb25hbENvZGUuZW5kc1dpdGgoJzA3JykgJiYgIV92bS5pbnN0aXR1dGlvbmFsQ29kZS5lbmRzV2l0aCgnMDgnKSAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLmVuZHNXaXRoKCcwOScpID8gX2MoJ2VsLWJ1dHRvbicsIHsKICAgIG9uOiB7CiAgICAgICJjbGljayI6IF92bS5hZGRVc2VyRHV0eQogICAgfQogIH0sIFtfdm0uX3YoIumCgOivt+mpu+WLpCIpXSkgOiBfdm0uX2UoKV0sIDEpXSksIF9jKCdlbC1jb2wnLCB7CiAgICBhdHRyczogewogICAgICAic3BhbiI6IDEyCiAgICB9CiAgfSwgW19jKCdkaXYnLCB7CiAgICBzdGF0aWNDbGFzczogInJpZ2h0Qm94IgogIH0sIFtfYygnZWwtaW5wdXQnLCB7CiAgICBkaXJlY3RpdmVzOiBbewogICAgICBuYW1lOiAic2hvdyIsCiAgICAgIHJhd05hbWU6ICJ2LXNob3ciLAogICAgICB2YWx1ZTogIV92bS5IaWdoU2VhcmNoRmxhZywKICAgICAgZXhwcmVzc2lvbjogIiFIaWdoU2VhcmNoRmxhZyIKICAgIH1dLAogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjQ1JSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAicGxhY2Vob2xkZXIiOiAi6L6T5YWl5aeT5ZCNL+i0puWPty/miYvmnLrlj7cv6K+B5Lu25Y+356CBIiwKICAgICAgImNsZWFyYWJsZSI6ICIiCiAgICB9LAogICAgb246IHsKICAgICAgImlucHV0IjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIHJldHVybiBfdm0ua2V5d29yZElucHV0KCk7CiAgICAgIH0KICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5rZXl3b3JkLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJrZXl3b3JkIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5rZXl3b3JkIgogICAgfQogIH0pLCAhX3ZtLkhpZ2hTZWFyY2hGbGFnID8gX2MoJ2VsLWJ1dHRvbicsIHsKICAgIGF0dHJzOiB7CiAgICAgICJ0eXBlIjogInByaW1hcnkiCiAgICB9LAogICAgb246IHsKICAgICAgImNsaWNrIjogX3ZtLnNlYXJjaAogICAgfQogIH0sIFtfdm0uX3YoIuafpeivoiIpXSkgOiBfdm0uX2UoKSwgX2MoJ2VsLWJ1dHRvbicsIHsKICAgIG9uOiB7CiAgICAgICJjbGljayI6IF92bS5zd2l0Y2hIaWdoCiAgICB9CiAgfSwgW192bS5fdigi6auY57qnIiksICFfdm0uSGlnaFNlYXJjaEZsYWcgPyBfYygnaScsIHsKICAgIHN0YXRpY0NsYXNzOiAiZWwtaWNvbi1hcnJvdy1kb3duIgogIH0pIDogX3ZtLl9lKCksIF92bS5IaWdoU2VhcmNoRmxhZyA/IF9jKCdpJywgewogICAgc3RhdGljQ2xhc3M6ICJlbC1pY29uLWFycm93LXVwIgogIH0pIDogX3ZtLl9lKCldKSwgX3ZtLkRhdGFCb2FyZHNob3dPYmogJiYgX3ZtLmluc3RpdHV0aW9uYWxDb2RlICE9ICcwNjAxJyAmJiAhX3ZtLmluc3RpdHV0aW9uYWxDb2RlLnN0YXJ0c1dpdGgoJzA0JykgPyBfYygnZWwtYnV0dG9uJywgewogICAgb246IHsKICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIF92bS5IaWdoRGF0YUZsYWcgPSAhX3ZtLkhpZ2hEYXRhRmxhZzsKICAgICAgICBfdm0uRGF0YUJvYXJkKCk7CiAgICAgIH0KICAgIH0KICB9LCBbX3ZtLl92KCLmlbDmja7nnIvmnb8iKSwgIV92bS5IaWdoRGF0YUZsYWcgPyBfYygnaScsIHsKICAgIHN0YXRpY0NsYXNzOiAiZWwtaWNvbi1hcnJvdy1kb3duIgogIH0pIDogX3ZtLl9lKCksIF92bS5IaWdoRGF0YUZsYWcgPyBfYygnaScsIHsKICAgIHN0YXRpY0NsYXNzOiAiZWwtaWNvbi1hcnJvdy11cCIKICB9KSA6IF92bS5fZSgpXSkgOiBfdm0uX2UoKV0sIDEpXSldLCAxKV0sIDEpLCBfYygnc2VjdGlvbicsIHsKICAgIGRpcmVjdGl2ZXM6IFt7CiAgICAgIG5hbWU6ICJzaG93IiwKICAgICAgcmF3TmFtZTogInYtc2hvdyIsCiAgICAgIHZhbHVlOiBfdm0uSGlnaFNlYXJjaEZsYWcsCiAgICAgIGV4cHJlc3Npb246ICJIaWdoU2VhcmNoRmxhZyIKICAgIH1dLAogICAgc3RhdGljQ2xhc3M6ICJIaWdoU2VhcmNoQm94IgogIH0sIFtfdm0uaW5zdGl0dXRpb25hbENvZGUgPT0gJzA2MDEnID8gX2MoJ2VsLXJvdycsIFtfYygnZWwtZm9ybScsIHsKICAgIHJlZjogInJ1bGVGb3JtIiwKICAgIGF0dHJzOiB7CiAgICAgICJpbmxpbmUiOiB0cnVlLAogICAgICAibW9kZWwiOiBfdm0ucGFyYW1zLAogICAgICAibGFiZWwtd2lkdGgiOiAiMTMwcHgiLAogICAgICAibGFiZWwtcG9zaXRpb24iOiAicmlnaHQiCiAgICB9CiAgfSwgW19jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5YWz6ZSu6K+N77yaIiwKICAgICAgInByb3AiOiAia2V5d29yZCIKICAgIH0KICB9LCBbX2MoJ2VsLWlucHV0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInBsYWNlaG9sZGVyIjogIuWnk+WQjS/otKblj7cv5omL5py65Y+3L+ivgeS7tuWPt+eggSIsCiAgICAgICJjbGVhcmFibGUiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJpbnB1dCI6IF92bS5pbnB1dGtleXdvcmsKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5rZXl3b3JkLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJrZXl3b3JkIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5rZXl3b3JkIgogICAgfQogIH0pXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi6K+B5Lu257G75Z6L77yaIiwKICAgICAgInByb3AiOiAiY3JlZGVudGlhbFR5cGVzIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZS10YWdzIjogIiIsCiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2VjcmVkZW50aWFsVHlwZXMKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5jcmVkZW50aWFsVHlwZXMsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImNyZWRlbnRpYWxUeXBlcyIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuY3JlZGVudGlhbFR5cGVzIgogICAgfQogIH0sIF92bS5fbChfdm0uY3JlZGVudGlhbFR5cGVzb3B0aW9ucywgZnVuY3Rpb24gKGl0ZW0pIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGl0ZW0udmFsdWUsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuivgeS7tuaguOmqjOeKtuaAge+8miIsCiAgICAgICJwcm9wIjogImNoZWNrZWRTdGF0dXNlcyIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2UtdGFncyI6ICIiLAogICAgICAicGxhY2Vob2xkZXIiOiAi6K+36YCJ5oupIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlY2hlY2tlZFN0YXR1c2VzCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuY2hlY2tlZFN0YXR1c2VzLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJjaGVja2VkU3RhdHVzZXMiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmNoZWNrZWRTdGF0dXNlcyIKICAgIH0KICB9LCBfdm0uX2woX3ZtLmNoZWNrZWRTdGF0dXNlc29wdGlvbnMsIGZ1bmN0aW9uIChpdGVtKSB7CiAgICByZXR1cm4gX2MoJ2VsLW9wdGlvbicsIHsKICAgICAga2V5OiBpdGVtLnZhbHVlLAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6IF92bS5kZXBhcnRsYWJlbCwKICAgICAgInByb3AiOiAiZGVwYXJ0SWRzIgogICAgfQogIH0sIFtfYygnc2VsZWN0VHJlZScsIHsKICAgIHJlZjogInNlbGVjdFRyZWUiLAogICAgYXR0cnM6IHsKICAgICAgImN1clZhbHVlIjogX3ZtLmRlZmF1bERhdGEsCiAgICAgICJkYXRhIjogX3ZtLnRhYmxlRGF0YSwKICAgICAgIm9iaiI6IHsKICAgICAgICBpZDogJ2lkJywKICAgICAgICBsYWJlbDogJ25hbWUnLAogICAgICAgIGNoaWxkcmVuOiAnY2hpbGRyZW4nCiAgICAgIH0sCiAgICAgICJjaGVja1N0cmljdGx5IjogIiIsCiAgICAgICJjbGVhcmFibGUiOiAiIiwKICAgICAgImZpbHRlcmFibGUiOiAiIiwKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZVRhZ3MiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJnZXRWYWx1ZSI6IF92bS5jaGVja0NoYW5nZQogICAgfQogIH0pXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5bKX5L2N77yaIiwKICAgICAgInByb3AiOiAicG9zaXRpb24iCiAgICB9CiAgfSwgW19jKCdlbC1zZWxlY3QnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAicGxhY2Vob2xkZXIiOiAi6K+36YCJ5oupIiwKICAgICAgImNsZWFyYWJsZSI6ICIiCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMucG9zaXRpb24sCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgInBvc2l0aW9uIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5wb3NpdGlvbiIKICAgIH0KICB9LCBfdm0uX2woX3ZtLnBvc2l0aW9uQXJyT3B0aW9ucywgZnVuY3Rpb24gKGl0ZW0sIGluZGV4KSB7CiAgICByZXR1cm4gX2MoJ2VsLW9wdGlvbicsIHsKICAgICAga2V5OiBpbmRleCwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5oCn5Yir77yaIiwKICAgICAgInByb3AiOiAic2V4IgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIsCiAgICAgICJjbGVhcmFibGUiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlc2V4CiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuc2V4LAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJzZXgiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLnNleCIKICAgIH0KICB9LCBfdm0uX2woX3ZtLnNleEFyck9wdGlvbnMsIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuW8gOWni+W5tOm+hO+8miIsCiAgICAgICJwcm9wIjogImJlZ2luQWdlIgogICAgfQogIH0sIFtfYygnZWwtaW5wdXQtbnVtYmVyJywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjE3NXB4IgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJjb250cm9scyI6IGZhbHNlLAogICAgICAibWluIjogMSwKICAgICAgIm1heCI6IDEwMCwKICAgICAgInBsYWNlaG9sZGVyIjogIuW8gOWni+W5tOm+hCIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWJlZ2luQWdlCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuYmVnaW5BZ2UsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImJlZ2luQWdlIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5iZWdpbkFnZSIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIue7k+adn+W5tOm+hO+8miIsCiAgICAgICJwcm9wIjogImVuZEFnZSIKICAgIH0KICB9LCBbX2MoJ2VsLWlucHV0LW51bWJlcicsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxNzVweCIKICAgIH0sCiAgICBhdHRyczogewogICAgICAiY29udHJvbHMiOiBmYWxzZSwKICAgICAgIm1pbiI6IDEsCiAgICAgICJtYXgiOiAxMDAsCiAgICAgICJwbGFjZWhvbGRlciI6ICLnu5PmnZ/lubTpvoQiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2VlbmRBZ2UKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5lbmRBZ2UsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImVuZEFnZSIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuZW5kQWdlIgogICAgfQogIH0pXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5YWl6IGM5pe26Ze077yaIiwKICAgICAgInByb3AiOiAic3RhcnRFbmREYXRlIgogICAgfQogIH0sIFtfYygnZWwtZGF0ZS1waWNrZXInLCB7CiAgICBhdHRyczogewogICAgICAidHlwZSI6ICJkYXRlcmFuZ2UiLAogICAgICAidmFsdWUtZm9ybWF0IjogInl5eXktTU0tZGQiLAogICAgICAiZm9ybWF0IjogInl5eXktTU0tZGQiLAogICAgICAicmFuZ2Utc2VwYXJhdG9yIjogIuiHsyIsCiAgICAgICJzdGFydC1wbGFjZWhvbGRlciI6ICLlvIDlp4vml6XmnJ8iLAogICAgICAiZW5kLXBsYWNlaG9sZGVyIjogIue7k+adn+aXpeacnyIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZXN0YXJ0RW5kRGF0ZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLnN0YXJ0RW5kRGF0ZSwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAic3RhcnRFbmREYXRlIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5zdGFydEVuZERhdGUiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIFtfYygnZWwtYnV0dG9uJywgewogICAgYXR0cnM6IHsKICAgICAgInR5cGUiOiAicHJpbWFyeSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2xpY2siOiBfdm0uaGlnaFNlYXJjaEJ1dHRvbgogICAgfQogIH0sIFtfdm0uX3YoIuafpeivoiIpXSksIF9jKCdlbC1idXR0b24nLCB7CiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5yZXNldFNlYXJjaEZvcm0oKTsKICAgICAgfQogICAgfQogIH0sIFtfdm0uX3YoIumHjee9riIpXSldLCAxKV0sIDEpXSwgMSkgOiBfdm0uaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDQnKSB8fCBfdm0uaW5zdGl0dXRpb25hbENvZGUuc3RhcnRzV2l0aCgnMDcnKSA/IF9jKCdlbC1yb3cnLCBbX2MoJ2VsLWZvcm0nLCB7CiAgICByZWY6ICJydWxlRm9ybSIsCiAgICBhdHRyczogewogICAgICAiaW5saW5lIjogdHJ1ZSwKICAgICAgIm1vZGVsIjogX3ZtLnBhcmFtcywKICAgICAgImxhYmVsLXdpZHRoIjogIjEzMHB4IiwKICAgICAgImxhYmVsLXBvc2l0aW9uIjogInJpZ2h0IgogICAgfQogIH0sIFtfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuWFs+mUruivje+8miIsCiAgICAgICJwcm9wIjogImtleXdvcmQiCiAgICB9CiAgfSwgW19jKCdlbC1pbnB1dCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJwbGFjZWhvbGRlciI6ICLlp5PlkI0v6LSm5Y+3L+aJi+acuuWPty/or4Hku7blj7fnoIEiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiaW5wdXQiOiBfdm0uaW5wdXRrZXl3b3JrCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMua2V5d29yZCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAia2V5d29yZCIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMua2V5d29yZCIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuivgeS7tuexu+Wei++8miIsCiAgICAgICJwcm9wIjogImNyZWRlbnRpYWxUeXBlcyIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2UtdGFncyI6ICIiLAogICAgICAicGxhY2Vob2xkZXIiOiAi6K+36YCJ5oupIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlY3JlZGVudGlhbFR5cGVzCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuY3JlZGVudGlhbFR5cGVzLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJjcmVkZW50aWFsVHlwZXMiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmNyZWRlbnRpYWxUeXBlcyIKICAgIH0KICB9LCBfdm0uX2woX3ZtLmNyZWRlbnRpYWxUeXBlc29wdGlvbnMsIGZ1bmN0aW9uIChpdGVtKSB7CiAgICByZXR1cm4gX2MoJ2VsLW9wdGlvbicsIHsKICAgICAga2V5OiBpdGVtLnZhbHVlLAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLor4Hku7bmoLjpqoznirbmgIHvvJoiLAogICAgICAicHJvcCI6ICJjaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgW19jKCdlbC1zZWxlY3QnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAibXVsdGlwbGUiOiAiIiwKICAgICAgImNvbGxhcHNlLXRhZ3MiOiAiIiwKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWNoZWNrZWRTdGF0dXNlcwogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmNoZWNrZWRTdGF0dXNlcywKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiY2hlY2tlZFN0YXR1c2VzIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5jaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5jaGVja2VkU3RhdHVzZXNvcHRpb25zLCBmdW5jdGlvbiAoaXRlbSkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaXRlbS52YWx1ZSwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiBfdm0uZGVwYXJ0bGFiZWwsCiAgICAgICJwcm9wIjogImRlcGFydElkcyIKICAgIH0KICB9LCBbX2MoJ3NlbGVjdFRyZWUnLCB7CiAgICByZWY6ICJzZWxlY3RUcmVlIiwKICAgIGF0dHJzOiB7CiAgICAgICJjdXJWYWx1ZSI6IF92bS5kZWZhdWxEYXRhLAogICAgICAiZGF0YSI6IF92bS50YWJsZURhdGEsCiAgICAgICJvYmoiOiB7CiAgICAgICAgaWQ6ICdpZCcsCiAgICAgICAgbGFiZWw6ICduYW1lJywKICAgICAgICBjaGlsZHJlbjogJ2NoaWxkcmVuJwogICAgICB9LAogICAgICAiY2hlY2tTdHJpY3RseSI6ICIiLAogICAgICAiY2xlYXJhYmxlIjogIiIsCiAgICAgICJmaWx0ZXJhYmxlIjogIiIsCiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2VUYWdzIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiZ2V0VmFsdWUiOiBfdm0uY2hlY2tDaGFuZ2UKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuaAp+WIq++8miIsCiAgICAgICJwcm9wIjogInNleCIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZXNleAogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLnNleCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAic2V4IiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5zZXgiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5zZXhBcnJPcHRpb25zLCBmdW5jdGlvbiAoaXRlbSwgaW5kZXgpIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGluZGV4LAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLlvIDlp4vlubTpvoTvvJoiLAogICAgICAicHJvcCI6ICJiZWdpbkFnZSIKICAgIH0KICB9LCBbX2MoJ2VsLWlucHV0LW51bWJlcicsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxNzVweCIKICAgIH0sCiAgICBhdHRyczogewogICAgICAiY29udHJvbHMiOiBmYWxzZSwKICAgICAgIm1pbiI6IDEsCiAgICAgICJtYXgiOiAxMDAsCiAgICAgICJwbGFjZWhvbGRlciI6ICLlvIDlp4vlubTpvoQiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2ViZWdpbkFnZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmJlZ2luQWdlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJiZWdpbkFnZSIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuYmVnaW5BZ2UiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLnu5PmnZ/lubTpvoTvvJoiLAogICAgICAicHJvcCI6ICJlbmRBZ2UiCiAgICB9CiAgfSwgW19jKCdlbC1pbnB1dC1udW1iZXInLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTc1cHgiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgImNvbnRyb2xzIjogZmFsc2UsCiAgICAgICJtaW4iOiAxLAogICAgICAibWF4IjogMTAwLAogICAgICAicGxhY2Vob2xkZXIiOiAi57uT5p2f5bm06b6EIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlZW5kQWdlCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuZW5kQWdlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJlbmRBZ2UiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmVuZEFnZSIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuWFpeiBjOaXtumXtO+8miIsCiAgICAgICJwcm9wIjogInN0YXJ0RW5kRGF0ZSIKICAgIH0KICB9LCBbX2MoJ2VsLWRhdGUtcGlja2VyJywgewogICAgYXR0cnM6IHsKICAgICAgInR5cGUiOiAiZGF0ZXJhbmdlIiwKICAgICAgInZhbHVlLWZvcm1hdCI6ICJ5eXl5LU1NLWRkIiwKICAgICAgImZvcm1hdCI6ICJ5eXl5LU1NLWRkIiwKICAgICAgInJhbmdlLXNlcGFyYXRvciI6ICLoh7MiLAogICAgICAic3RhcnQtcGxhY2Vob2xkZXIiOiAi5byA5aeL5pel5pyfIiwKICAgICAgImVuZC1wbGFjZWhvbGRlciI6ICLnu5PmnZ/ml6XmnJ8iCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2VzdGFydEVuZERhdGUKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5zdGFydEVuZERhdGUsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgInN0YXJ0RW5kRGF0ZSIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuc3RhcnRFbmREYXRlIgogICAgfQogIH0pXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCBbX2MoJ2VsLWJ1dHRvbicsIHsKICAgIGF0dHJzOiB7CiAgICAgICJ0eXBlIjogInByaW1hcnkiCiAgICB9LAogICAgb246IHsKICAgICAgImNsaWNrIjogX3ZtLmhpZ2hTZWFyY2hCdXR0b24KICAgIH0KICB9LCBbX3ZtLl92KCLmn6Xor6IiKV0pLCBfYygnZWwtYnV0dG9uJywgewogICAgb246IHsKICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIHJldHVybiBfdm0ucmVzZXRTZWFyY2hGb3JtKCk7CiAgICAgIH0KICAgIH0KICB9LCBbX3ZtLl92KCLph43nva4iKV0pXSwgMSldLCAxKV0sIDEpIDogX3ZtLmluc3RpdHV0aW9uYWxDb2RlLmVuZHNXaXRoKCcwNycpIHx8IF92bS5pbnN0aXR1dGlvbmFsQ29kZS5lbmRzV2l0aCgnMDgnKSB8fCBfdm0uaW5zdGl0dXRpb25hbENvZGUuZW5kc1dpdGgoJzA5JykgPyBfYygnZWwtcm93JywgW19jKCdlbC1mb3JtJywgewogICAgcmVmOiAicnVsZUZvcm0iLAogICAgYXR0cnM6IHsKICAgICAgImlubGluZSI6IHRydWUsCiAgICAgICJtb2RlbCI6IF92bS5wYXJhbXMsCiAgICAgICJsYWJlbC13aWR0aCI6ICIxMzBweCIsCiAgICAgICJsYWJlbC1wb3NpdGlvbiI6ICJyaWdodCIKICAgIH0KICB9LCBbX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLlhbPplK7or43vvJoiLAogICAgICAicHJvcCI6ICJrZXl3b3JkIgogICAgfQogIH0sIFtfYygnZWwtaW5wdXQnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAicGxhY2Vob2xkZXIiOiAi5aeT5ZCNL+i0puWPty/miYvmnLrlj7cv6K+B5Lu25Y+356CBIiwKICAgICAgImNsZWFyYWJsZSI6ICIiCiAgICB9LAogICAgb246IHsKICAgICAgImlucHV0IjogX3ZtLmlucHV0a2V5d29yawogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmtleXdvcmQsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImtleXdvcmQiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmtleXdvcmQiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6IF92bS5kZXBhcnRsYWJlbCwKICAgICAgInByb3AiOiAiZGVwYXJ0SWRzIgogICAgfQogIH0sIFtfYygnc2VsZWN0VHJlZScsIHsKICAgIHJlZjogInNlbGVjdFRyZWUiLAogICAgYXR0cnM6IHsKICAgICAgImN1clZhbHVlIjogX3ZtLmRlZmF1bERhdGEsCiAgICAgICJkYXRhIjogX3ZtLnRhYmxlRGF0YSwKICAgICAgIm9iaiI6IHsKICAgICAgICBpZDogJ2lkJywKICAgICAgICBsYWJlbDogJ25hbWUnLAogICAgICAgIGNoaWxkcmVuOiAnY2hpbGRyZW4nCiAgICAgIH0sCiAgICAgICJjaGVja1N0cmljdGx5IjogIiIsCiAgICAgICJjbGVhcmFibGUiOiAiIiwKICAgICAgImZpbHRlcmFibGUiOiAiIiwKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZVRhZ3MiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJnZXRWYWx1ZSI6IF92bS5jaGVja0NoYW5nZQogICAgfQogIH0pXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCBbX2MoJ2VsLWJ1dHRvbicsIHsKICAgIGF0dHJzOiB7CiAgICAgICJ0eXBlIjogInByaW1hcnkiCiAgICB9LAogICAgb246IHsKICAgICAgImNsaWNrIjogX3ZtLmhpZ2hTZWFyY2hCdXR0b24KICAgIH0KICB9LCBbX3ZtLl92KCLmn6Xor6IiKV0pLCBfYygnZWwtYnV0dG9uJywgewogICAgb246IHsKICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIHJldHVybiBfdm0ucmVzZXRTZWFyY2hGb3JtKCk7CiAgICAgIH0KICAgIH0KICB9LCBbX3ZtLl92KCLph43nva4iKV0pXSwgMSldLCAxKV0sIDEpIDogX2MoJ2VsLXJvdycsIFtfYygnZWwtZm9ybScsIHsKICAgIHJlZjogInJ1bGVGb3JtIiwKICAgIGF0dHJzOiB7CiAgICAgICJpbmxpbmUiOiB0cnVlLAogICAgICAibW9kZWwiOiBfdm0ucGFyYW1zLAogICAgICAibGFiZWwtd2lkdGgiOiAiMTMwcHgiLAogICAgICAibGFiZWwtcG9zaXRpb24iOiAicmlnaHQiCiAgICB9CiAgfSwgW19jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5YWz6ZSu6K+N77yaIiwKICAgICAgInByb3AiOiAia2V5d29yZCIKICAgIH0KICB9LCBbX2MoJ2VsLWlucHV0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInBsYWNlaG9sZGVyIjogIuWnk+WQjS/otKblj7cv5omL5py65Y+3L+ivgeS7tuWPt+eggSIsCiAgICAgICJjbGVhcmFibGUiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJpbnB1dCI6IF92bS5pbnB1dGtleXdvcmsKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5rZXl3b3JkLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJrZXl3b3JkIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5rZXl3b3JkIgogICAgfQogIH0pXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi6K+B5Lu257G75Z6L77yaIiwKICAgICAgInByb3AiOiAiY3JlZGVudGlhbFR5cGVzIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZS10YWdzIjogIiIsCiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2VjcmVkZW50aWFsVHlwZXMKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5jcmVkZW50aWFsVHlwZXMsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImNyZWRlbnRpYWxUeXBlcyIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuY3JlZGVudGlhbFR5cGVzIgogICAgfQogIH0sIF92bS5fbChfdm0uY3JlZGVudGlhbFR5cGVzb3B0aW9ucywgZnVuY3Rpb24gKGl0ZW0pIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGl0ZW0udmFsdWUsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuiBjOS4muexu+Wei++8miIsCiAgICAgICJwcm9wIjogIm9jY3VwYXRpb25UeXBlcyIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2UtdGFncyI6ICIiLAogICAgICAicGxhY2Vob2xkZXIiOiAi6K+36YCJ5oupIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlb2NjdXBhdGlvblR5cGVzCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMub2NjdXBhdGlvblR5cGVzLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJvY2N1cGF0aW9uVHlwZXMiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLm9jY3VwYXRpb25UeXBlcyIKICAgIH0KICB9LCBfdm0uX2woX3ZtLm9jY3VwYXRpb25UeXBlQXJyLCBmdW5jdGlvbiAoaXRlbSwgaW5kZXgpIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGluZGV4LAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGRpcmVjdGl2ZXM6IFt7CiAgICAgIG5hbWU6ICJzaG93IiwKICAgICAgcmF3TmFtZTogInYtc2hvdyIsCiAgICAgIHZhbHVlOiBfdm0ubGlzdHNob3dPYmouYXV0aGVudGljYXRlZFN0YXR1c2VzLAogICAgICBleHByZXNzaW9uOiAibGlzdHNob3dPYmouYXV0aGVudGljYXRlZFN0YXR1c2VzIgogICAgfV0sCiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5a6e5ZCN6K6k6K+B54q25oCB77yaIiwKICAgICAgInByb3AiOiAiYXV0aGVudGljYXRlZFN0YXR1c2VzIgogICAgfQogIH0sIFtfYygnZWwtc2VsZWN0JywgewogICAgc3RhdGljU3R5bGU6IHsKICAgICAgIndpZHRoIjogIjEwMCUiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZS10YWdzIjogIiIsCiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2VhdXRoZW50aWNhdGVkU3RhdHVzZXMKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5hdXRoZW50aWNhdGVkU3RhdHVzZXMsCiAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7CiAgICAgICAgX3ZtLiRzZXQoX3ZtLnBhcmFtcywgImF1dGhlbnRpY2F0ZWRTdGF0dXNlcyIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuYXV0aGVudGljYXRlZFN0YXR1c2VzIgogICAgfQogIH0sIF92bS5fbChfdm0uYXV0aGVudGljYXRlZFN0YXR1c2Vzb3B0aW9ucywgZnVuY3Rpb24gKGl0ZW0pIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGl0ZW0udmFsdWUsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgZGlyZWN0aXZlczogW3sKICAgICAgbmFtZTogInNob3ciLAogICAgICByYXdOYW1lOiAidi1zaG93IiwKICAgICAgdmFsdWU6IF92bS5saXN0c2hvd09iai5jaGVja2VkU3RhdHVzZXMsCiAgICAgIGV4cHJlc3Npb246ICJsaXN0c2hvd09iai5jaGVja2VkU3RhdHVzZXMiCiAgICB9XSwKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLor4Hku7bmoLjpqoznirbmgIHvvJoiLAogICAgICAicHJvcCI6ICJjaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgW19jKCdlbC1zZWxlY3QnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAibXVsdGlwbGUiOiAiIiwKICAgICAgImNvbGxhcHNlLXRhZ3MiOiAiIiwKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWNoZWNrZWRTdGF0dXNlcwogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmNoZWNrZWRTdGF0dXNlcywKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiY2hlY2tlZFN0YXR1c2VzIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5jaGVja2VkU3RhdHVzZXMiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5jaGVja2VkU3RhdHVzZXNvcHRpb25zLCBmdW5jdGlvbiAoaXRlbSkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaXRlbS52YWx1ZSwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBkaXJlY3RpdmVzOiBbewogICAgICBuYW1lOiAic2hvdyIsCiAgICAgIHJhd05hbWU6ICJ2LXNob3ciLAogICAgICB2YWx1ZTogX3ZtLmxpc3RzaG93T2JqLmNlclN0YXR1cywKICAgICAgZXhwcmVzc2lvbjogImxpc3RzaG93T2JqLmNlclN0YXR1cyIKICAgIH1dLAogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuaMgei1hOagvOivge+8miIsCiAgICAgICJwcm9wIjogImNlclN0YXR1cyIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJjb2xsYXBzZS10YWdzIjogIiIsCiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWNlclN0YXR1cwogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmNlclN0YXR1cywKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiY2VyU3RhdHVzIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5jZXJTdGF0dXMiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5jZXJTdGF0dXNBcnIsIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgZGlyZWN0aXZlczogW3sKICAgICAgbmFtZTogInNob3ciLAogICAgICByYXdOYW1lOiAidi1zaG93IiwKICAgICAgdmFsdWU6IF92bS5saXN0c2hvd09iai5jb250cmFjdFN0YXR1cywKICAgICAgZXhwcmVzc2lvbjogImxpc3RzaG93T2JqLmNvbnRyYWN0U3RhdHVzIgogICAgfV0sCiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi562+6K6i5ZCI5ZCM77yaIiwKICAgICAgInByb3AiOiAiY29udHJhY3RTdGF0dXMiCiAgICB9CiAgfSwgW19jKCdlbC1zZWxlY3QnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAiY29sbGFwc2UtdGFncyI6ICIiLAogICAgICAicGxhY2Vob2xkZXIiOiAi6K+36YCJ5oupIiwKICAgICAgImNsZWFyYWJsZSI6ICIiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2Vjb250cmFjdFN0YXR1cwogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmNvbnRyYWN0U3RhdHVzLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJjb250cmFjdFN0YXR1cyIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuY29udHJhY3RTdGF0dXMiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5jb250cmFjdFN0YXR1c0FyciwgZnVuY3Rpb24gKGl0ZW0sIGluZGV4KSB7CiAgICByZXR1cm4gX2MoJ2VsLW9wdGlvbicsIHsKICAgICAga2V5OiBpbmRleCwKICAgICAgYXR0cnM6IHsKICAgICAgICAibGFiZWwiOiBpdGVtLmxhYmVsLAogICAgICAgICJ2YWx1ZSI6IGl0ZW0udmFsdWUKICAgICAgfQogICAgfSk7CiAgfSksIDEpXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBhdHRyczogewogICAgICAibGFiZWwiOiAi5YWl6IGM5pel5pyf77yaIiwKICAgICAgInByb3AiOiAiaGlyZWREYXRlIgogICAgfQogIH0sIFtfYygnZWwtZGF0ZS1waWNrZXInLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTc1cHgiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgInR5cGUiOiAiZGF0ZSIsCiAgICAgICJmb3JtYXQiOiAieXl5eS1NTS1kZCIsCiAgICAgICJ2YWx1ZS1mb3JtYXQiOiAieXl5eS1NTS1kZCIsCiAgICAgICJwbGFjZWhvbGRlciI6ICLpgInmi6nml6XmnJ8iCiAgICB9LAogICAgb246IHsKICAgICAgImlucHV0IjogX3ZtLmNoYW5nZUhpcmVkRGF0ZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmhpcmVkRGF0ZSwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiaGlyZWREYXRlIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5oaXJlZERhdGUiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6IF92bS5kZXBhcnRsYWJlbCwKICAgICAgInByb3AiOiAiZGVwYXJ0SWRzIgogICAgfQogIH0sIFtfYygnc2VsZWN0VHJlZScsIHsKICAgIHJlZjogInNlbGVjdFRyZWUiLAogICAgYXR0cnM6IHsKICAgICAgImN1clZhbHVlIjogX3ZtLmRlZmF1bERhdGEsCiAgICAgICJkYXRhIjogX3ZtLnRhYmxlRGF0YSwKICAgICAgIm9iaiI6IHsKICAgICAgICBpZDogJ2lkJywKICAgICAgICBsYWJlbDogJ25hbWUnLAogICAgICAgIGNoaWxkcmVuOiAnY2hpbGRyZW4nCiAgICAgIH0sCiAgICAgICJjaGVja1N0cmljdGx5IjogIiIsCiAgICAgICJjbGVhcmFibGUiOiAiIiwKICAgICAgImZpbHRlcmFibGUiOiAiIiwKICAgICAgIm11bHRpcGxlIjogIiIsCiAgICAgICJjb2xsYXBzZVRhZ3MiOiAiIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJnZXRWYWx1ZSI6IF92bS5jaGVja0NoYW5nZQogICAgfQogIH0pXSwgMSksIF9jKCdlbC1mb3JtLWl0ZW0nLCB7CiAgICBkaXJlY3RpdmVzOiBbewogICAgICBuYW1lOiAic2hvdyIsCiAgICAgIHJhd05hbWU6ICJ2LXNob3ciLAogICAgICB2YWx1ZTogX3ZtLmxpc3RzaG93T2JqLmxldmVsLAogICAgICBleHByZXNzaW9uOiAibGlzdHNob3dPYmoubGV2ZWwiCiAgICB9XSwKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLkv53lronogYzkuJrmioDog73nrYnnuqfvvJoiLAogICAgICAicHJvcCI6ICJsZXZlbCIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJtdWx0aXBsZSI6ICIiLAogICAgICAiY29sbGFwc2UtdGFncyI6ICIiLAogICAgICAicGxhY2Vob2xkZXIiOiAi6K+36YCJ5oupIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlbGV2ZWwKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5sZXZlbCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAibGV2ZWwiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmxldmVsIgogICAgfQogIH0sIF92bS5fbChfdm0ubGV2ZWxBcnIsIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIF9jKCdlbC1vcHRpb24nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAidmFsdWUiOiBpdGVtLnZhbHVlCiAgICAgIH0KICAgIH0pOwogIH0pLCAxKV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuaAp+WIq++8miIsCiAgICAgICJwcm9wIjogInNleCIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZXNleAogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLnNleCwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAic2V4IiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5zZXgiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5zZXhBcnJPcHRpb25zLCBmdW5jdGlvbiAoaXRlbSwgaW5kZXgpIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGluZGV4LAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLlvIDlp4vlubTpvoTvvJoiLAogICAgICAicHJvcCI6ICJiZWdpbkFnZSIKICAgIH0KICB9LCBbX2MoJ2VsLWlucHV0LW51bWJlcicsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxNzVweCIKICAgIH0sCiAgICBhdHRyczogewogICAgICAiY29udHJvbHMiOiBmYWxzZSwKICAgICAgIm1pbiI6IDEsCiAgICAgICJtYXgiOiAxMDAsCiAgICAgICJwbGFjZWhvbGRlciI6ICLlvIDlp4vlubTpvoQiCiAgICB9LAogICAgb246IHsKICAgICAgImNoYW5nZSI6IF92bS5jaGFuZ2ViZWdpbkFnZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmJlZ2luQWdlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJiZWdpbkFnZSIsICQkdik7CiAgICAgIH0sCiAgICAgIGV4cHJlc3Npb246ICJwYXJhbXMuYmVnaW5BZ2UiCiAgICB9CiAgfSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLnu5PmnZ/lubTpvoTvvJoiLAogICAgICAicHJvcCI6ICJlbmRBZ2UiCiAgICB9CiAgfSwgW19jKCdlbC1pbnB1dC1udW1iZXInLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTc1cHgiCiAgICB9LAogICAgYXR0cnM6IHsKICAgICAgImNvbnRyb2xzIjogZmFsc2UsCiAgICAgICJtaW4iOiAxLAogICAgICAibWF4IjogMTAwLAogICAgICAicGxhY2Vob2xkZXIiOiAi57uT5p2f5bm06b6EIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlZW5kQWdlCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuZW5kQWdlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJlbmRBZ2UiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLmVuZEFnZSIKICAgIH0KICB9KV0sIDEpLCBfdm0uaW5zdFNob3cgPyBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuiDjOaZr+etm+afpeeKtuaAge+8miIsCiAgICAgICJwcm9wIjogImJhY2tncm91bmRTY3JlZW5pbmdTdGF0dXMiCiAgICB9CiAgfSwgW19jKCdlbC1zZWxlY3QnLCB7CiAgICBzdGF0aWNTdHlsZTogewogICAgICAid2lkdGgiOiAiMTAwJSIKICAgIH0sCiAgICBhdHRyczogewogICAgICAibXVsdGlwbGUiOiAiIiwKICAgICAgImNvbGxhcHNlLXRhZ3MiOiAiIiwKICAgICAgInBsYWNlaG9sZGVyIjogIuivt+mAieaLqSIKICAgIH0sCiAgICBtb2RlbDogewogICAgICB2YWx1ZTogX3ZtLnBhcmFtcy5iYWNrZ3JvdW5kU2NyZWVuaW5nU3RhdHVzLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJiYWNrZ3JvdW5kU2NyZWVuaW5nU3RhdHVzIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5iYWNrZ3JvdW5kU2NyZWVuaW5nU3RhdHVzIgogICAgfQogIH0sIF92bS5fbChfdm0uYmFja2dyb3VuZFNjcmVlbmluZ1N0YXR1c09wdGlvbnMsIGZ1bmN0aW9uIChpdGVtKSB7CiAgICByZXR1cm4gX2MoJ2VsLW9wdGlvbicsIHsKICAgICAga2V5OiBpdGVtLnZhbHVlLAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSA6IF92bS5fZSgpLCBfYygnZWwtZm9ybS1pdGVtJywgewogICAgYXR0cnM6IHsKICAgICAgImxhYmVsIjogIuaYr+WQpuaKleS/ne+8miIsCiAgICAgICJwcm9wIjogImluc3VyZSIKICAgIH0KICB9LCBbX2MoJ2VsLXNlbGVjdCcsIHsKICAgIHN0YXRpY1N0eWxlOiB7CiAgICAgICJ3aWR0aCI6ICIxMDAlIgogICAgfSwKICAgIGF0dHJzOiB7CiAgICAgICJwbGFjZWhvbGRlciI6ICLor7fpgInmi6kiLAogICAgICAiY2xlYXJhYmxlIjogIiIKICAgIH0sCiAgICBvbjogewogICAgICAiY2hhbmdlIjogX3ZtLmNoYW5nZWluc3VyZQogICAgfSwKICAgIG1vZGVsOiB7CiAgICAgIHZhbHVlOiBfdm0ucGFyYW1zLmluc3VyZSwKICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHsKICAgICAgICBfdm0uJHNldChfdm0ucGFyYW1zLCAiaW5zdXJlIiwgJCR2KTsKICAgICAgfSwKICAgICAgZXhwcmVzc2lvbjogInBhcmFtcy5pbnN1cmUiCiAgICB9CiAgfSwgX3ZtLl9sKF92bS5pbnN1cmVBcnJPcHRpb25zLCBmdW5jdGlvbiAoaXRlbSwgaW5kZXgpIHsKICAgIHJldHVybiBfYygnZWwtb3B0aW9uJywgewogICAgICBrZXk6IGluZGV4LAogICAgICBhdHRyczogewogICAgICAgICJsYWJlbCI6IGl0ZW0ubGFiZWwsCiAgICAgICAgInZhbHVlIjogaXRlbS52YWx1ZQogICAgICB9CiAgICB9KTsKICB9KSwgMSldLCAxKSwgX2MoJ2VsLWZvcm0taXRlbScsIHsKICAgIGF0dHJzOiB7CiAgICAgICJsYWJlbCI6ICLlhaXogYzml7bpl7TvvJoiLAogICAgICAicHJvcCI6ICJzdGFydEVuZERhdGUiCiAgICB9CiAgfSwgW19jKCdlbC1kYXRlLXBpY2tlcicsIHsKICAgIGF0dHJzOiB7CiAgICAgICJ0eXBlIjogImRhdGVyYW5nZSIsCiAgICAgICJ2YWx1ZS1mb3JtYXQiOiAieXl5eS1NTS1kZCIsCiAgICAgICJmb3JtYXQiOiAieXl5eS1NTS1kZCIsCiAgICAgICJyYW5nZS1zZXBhcmF0b3IiOiAi6IezIiwKICAgICAgInN0YXJ0LXBsYWNlaG9sZGVyIjogIuW8gOWni+aXpeacnyIsCiAgICAgICJlbmQtcGxhY2Vob2xkZXIiOiAi57uT5p2f5pel5pyfIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjaGFuZ2UiOiBfdm0uY2hhbmdlc3RhcnRFbmREYXRlCiAgICB9LAogICAgbW9kZWw6IHsKICAgICAgdmFsdWU6IF92bS5wYXJhbXMuc3RhcnRFbmREYXRlLAogICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikgewogICAgICAgIF92bS4kc2V0KF92bS5wYXJhbXMsICJzdGFydEVuZERhdGUiLCAkJHYpOwogICAgICB9LAogICAgICBleHByZXNzaW9uOiAicGFyYW1zLnN0YXJ0RW5kRGF0ZSIKICAgIH0KICB9KV0sIDEpLCBfYygnZWwtZm9ybS1pdGVtJywgW19jKCdlbC1idXR0b24nLCB7CiAgICBhdHRyczogewogICAgICAidHlwZSI6ICJwcmltYXJ5IgogICAgfSwKICAgIG9uOiB7CiAgICAgICJjbGljayI6IF92bS5oaWdoU2VhcmNoQnV0dG9uCiAgICB9CiAgfSwgW192bS5fdigi5p+l6K+iIildKSwgX2MoJ2VsLWJ1dHRvbicsIHsKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLnJlc2V0U2VhcmNoRm9ybSgpOwogICAgICB9CiAgICB9CiAgfSwgW192bS5fdigi6YeN572uIildKV0sIDEpXSwgMSldLCAxKV0sIDEpLCBfdm0uSGlnaERhdGFGbGFnID8gX2MoJ3NlY3Rpb24nLCB7CiAgICBzdGF0aWNDbGFzczogIkRhdGFUQm94IgogIH0sIFtfYygnZGl2JywgewogICAgc3RhdGljQ2xhc3M6ICJ0aiIKICB9LCBbX2MoJ3NwYW4nLCB7CiAgICBzdGF0aWNDbGFzczogImNvdW50c3RqIiwKICAgIGNsYXNzOiBfdm0uaW5kZXggPT0gMCA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygwLCAnb2NjdXBhdGlvblR5cGVzJywgW10pOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuWcqOiBjOWRmOW3peaAu+aVsCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmoudG90YWwpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDEsICdjaGVja2VkU3RhdHVzZXMnLCBbMF0pOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuacquaPkOS6pCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmoudW5DaGVja2VkQ291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAyID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDIsICdjaGVja2VkU3RhdHVzZXMnLCBbMl0pOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuW3suaPkOS6pCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouY29tbWl0Q291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAzID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDMsICdjaGVja2VkU3RhdHVzZXMnLCBbMV0pOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuW3suaguOmqjCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouY2hlY2tlZENvdW50KSldKV0pLCBfYygnc3BhbicsIHsKICAgIGNsYXNzOiBfdm0uaW5kZXggPT0gNCA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljayg0LCAnY29udHJhY3RTdGF0dXMnLCAnMCcpOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuacquetvuWQiOWQjCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmoudW5Db250cmFjdENvdW50KSldKV0pLCBfYygnc3BhbicsIHsKICAgIGNsYXNzOiBfdm0uaW5kZXggPT0gNSA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljayg1LCAnY29udHJhY3RTdGF0dXMnLCAnMScpOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuW3suetvuWQiOWQjCIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouY29udHJhY3RDb3VudCkpXSldKV0pLCBfdm0uaW5zdFNob3cgPyBfYygnZGl2JywgewogICAgc3RhdGljQ2xhc3M6ICJ0aiIKICB9LCBbX2MoJ3NwYW4nLCB7CiAgICBzdGF0aWNDbGFzczogImNvdW50c3RqIiwKICAgIGNsYXNzOiBfdm0uaW5kZXggPT0gMTAgPyAnYWN0aXZlJyA6ICcnLAogICAgb246IHsKICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIHJldHVybiBfdm0uRGF0YVRqY2xpY2soMTAsICdvY2N1cGF0aW9uVHlwZXMnLCBbJ1NlY3VyaXR5R3VhcmQnXSk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5L+d5a6J5ZGY5oC75pWwIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNUb3RhbCkpXSldKSwgX2MoJ3NwYW4nLCB7CiAgICBjbGFzczogX3ZtLmluZGV4ID09IDExID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDExLCAnY2hlY2tlZFN0YXR1c2VzJywgWzBdLCAnb2NjdXBhdGlvblR5cGVzJyk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5pyq5o+Q5LqkIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNVbkNoZWNrZWRDb3VudCkpXSldKSwgX2MoJ3NwYW4nLCB7CiAgICBjbGFzczogX3ZtLmluZGV4ID09IDEyID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDEyLCAnY2hlY2tlZFN0YXR1c2VzJywgWzFdLCAnb2NjdXBhdGlvblR5cGVzJyk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5bey5qC46aqMIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNDaGVja2VkQ291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgZGlyZWN0aXZlczogW3sKICAgICAgbmFtZTogInNob3ciLAogICAgICByYXdOYW1lOiAidi1zaG93IiwKICAgICAgdmFsdWU6IF92bS5EYXRhQm9hcmRzaG93T2JqLkF1dGhlbnRpY2F0aW5nLAogICAgICBleHByZXNzaW9uOiAiRGF0YUJvYXJkc2hvd09iai5BdXRoZW50aWNhdGluZyIKICAgIH1dLAogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxMyA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygxMywgJ2F1dGhlbnRpY2F0ZWRTdGF0dXNlcycsIFsnQXV0aGVudGljYXRpbmcnXSwgJ29jY3VwYXRpb25UeXBlcycpOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuWunuWQjeiupOivgeS4rSIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouc2VjVW5BdXRoQ291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgZGlyZWN0aXZlczogW3sKICAgICAgbmFtZTogInNob3ciLAogICAgICByYXdOYW1lOiAidi1zaG93IiwKICAgICAgdmFsdWU6IF92bS5EYXRhQm9hcmRzaG93T2JqLlBhc3NlZCwKICAgICAgZXhwcmVzc2lvbjogIkRhdGFCb2FyZHNob3dPYmouUGFzc2VkIgogICAgfV0sCiAgICBjbGFzczogX3ZtLmluZGV4ID09IDE0ID8gJ2FjdGl2ZScgOiAnJywKICAgIG9uOiB7CiAgICAgICJjbGljayI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLkRhdGFUamNsaWNrKDE0LCAnYXV0aGVudGljYXRlZFN0YXR1c2VzJywgWydQYXNzZWQnXSwgJ29jY3VwYXRpb25UeXBlcycpOwogICAgICB9CiAgICB9CiAgfSwgW19jKCdlbScsIFtfdm0uX3YoIuW3suWunuWQjeiupOivgSIpXSksIF9jKCdzdHJvbmcnLCBbX3ZtLl92KF92bS5fcyhfdm0udGpPYmouc2VjQXV0aENvdW50KSldKV0pLCBfYygnc3BhbicsIHsKICAgIGRpcmVjdGl2ZXM6IFt7CiAgICAgIG5hbWU6ICJzaG93IiwKICAgICAgcmF3TmFtZTogInYtc2hvdyIsCiAgICAgIHZhbHVlOiBfdm0uRGF0YUJvYXJkc2hvd09iai5GYWlsZWQsCiAgICAgIGV4cHJlc3Npb246ICJEYXRhQm9hcmRzaG93T2JqLkZhaWxlZCIKICAgIH1dLAogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxNSA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygxNSwgJ2F1dGhlbnRpY2F0ZWRTdGF0dXNlcycsIFsnRmFpbGVkJ10sICdvY2N1cGF0aW9uVHlwZXMnKTsKICAgICAgfQogICAgfQogIH0sIFtfYygnZW0nLCBbX3ZtLl92KCLlrp7lkI3orqTor4HlpLHotKUiKV0pLCBfYygnc3Ryb25nJywgW192bS5fdihfdm0uX3MoX3ZtLnRqT2JqLnNlY0F1dGhGYWlsQ291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxNiA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygxNiwgJ2NvbnRyYWN0U3RhdHVzJywgJzAnLCAnb2NjdXBhdGlvblR5cGVzJyk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5pyq562+5ZCI5ZCMIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNVbkNvbnRyYWN0Q291bnQpKV0pXSksIF9jKCdzcGFuJywgewogICAgY2xhc3M6IF92bS5pbmRleCA9PSAxNyA/ICdhY3RpdmUnIDogJycsCiAgICBvbjogewogICAgICAiY2xpY2siOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgcmV0dXJuIF92bS5EYXRhVGpjbGljaygxNywgJ2NvbnRyYWN0U3RhdHVzJywgJzEnLCAnb2NjdXBhdGlvblR5cGVzJyk7CiAgICAgIH0KICAgIH0KICB9LCBbX2MoJ2VtJywgW192bS5fdigi5bey562+5ZCI5ZCMIildKSwgX2MoJ3N0cm9uZycsIFtfdm0uX3YoX3ZtLl9zKF92bS50ak9iai5zZWNDb250cmFjdENvdW50KSldKV0pXSkgOiBfdm0uX2UoKV0pIDogX3ZtLl9lKCksIF9jKCdzZWN0aW9uJywgewogICAgc3RhdGljQ2xhc3M6ICJjb250ZW50Qm94IgogIH0sIFtfYygnZWwtdGFibGUnLCB7CiAgICByZWY6ICJkaXN0cmljdFRhYmxlIiwKICAgIGF0dHJzOiB7CiAgICAgICJkYXRhIjogX3ZtLnRhYmxlRGF0YUVtcGxveWVlLAogICAgICAibWF4LWhlaWdodCI6ICI1MDAiLAogICAgICAiZGVmYXVsdC1leHBhbmQtYWxsIjogIiIsCiAgICAgICJyb3cta2V5IjogImlkIgogICAgfSwKICAgIG9uOiB7CiAgICAgICJzZWxlY3Rpb24tY2hhbmdlIjogX3ZtLmhhbmRsZVNlbGVjdGlvbkNoYW5nZSwKICAgICAgInNlbGVjdC1hbGwiOiBfdm0uaGFuZGxlU2VsZWN0aW9uQWxsQ2hhbmdlCiAgICB9CiAgfSwgW192bS5fbChfdm0udGFibGVDb2x1bW4sIGZ1bmN0aW9uIChpdGVtLCBpbmRleCkgewogICAgcmV0dXJuIGl0ZW0uc2hvdyA/IF9jKCdlbC10YWJsZS1jb2x1bW4nLCB7CiAgICAgIGtleTogaW5kZXgsCiAgICAgIGF0dHJzOiB7CiAgICAgICAgInByb3AiOiBpdGVtLnByb3AsCiAgICAgICAgImxhYmVsIjogaXRlbS5sYWJlbCwKICAgICAgICAid2lkdGgiOiBpdGVtLndpZHRoLAogICAgICAgICJmaXhlZCI6IGl0ZW0ubGFiZWwgPT0gIuWnk+WQjSIKICAgICAgfSwKICAgICAgc2NvcGVkU2xvdHM6IF92bS5fdShbewogICAgICAgIGtleTogImRlZmF1bHQiLAogICAgICAgIGZuOiBmdW5jdGlvbiAoc2NvcGUpIHsKICAgICAgICAgIHJldHVybiBbX2MoJ3NwYW4nLCBbX3ZtLl92KF92bS5fcyhzY29wZS5yb3dbaXRlbS5wcm9wXSkpXSldOwogICAgICAgIH0KICAgICAgfV0sIG51bGwsIHRydWUpCiAgICB9KSA6IF92bS5fZSgpOwogIH0pLCBfYygnZWwtdGFibGUtY29sdW1uJywgewogICAgYXR0cnM6IHsKICAgICAgImZpeGVkIjogInJpZ2h0IiwKICAgICAgIm1pbi13aWR0aCI6ICIxODAiCiAgICB9LAogICAgc2NvcGVkU2xvdHM6IF92bS5fdShbewogICAgICBrZXk6ICJoZWFkZXIiLAogICAgICBmbjogZnVuY3Rpb24gKHNjb3BlKSB7CiAgICAgICAgcmV0dXJuIFtfYygnc3BhbicsIHsKICAgICAgICAgIHN0YXRpY0NsYXNzOiAiY29sdW1uSGVhZGVyIgogICAgICAgIH0sIFtfYygnc3Ryb25nJywgW192bS5fdigi5pON5L2cIildKSwgX2MoJ2knLCB7CiAgICAgICAgICBzdGF0aWNDbGFzczogImVsLWljb24tc2V0dGluZyIsCiAgICAgICAgICBvbjogewogICAgICAgICAgICAiY2xpY2siOiBfdm0uY29sdW1uU2V0UG9wCiAgICAgICAgICB9CiAgICAgICAgfSldKV07CiAgICAgIH0KICAgIH0sIHsKICAgICAga2V5OiAiZGVmYXVsdCIsCiAgICAgIGZuOiBmdW5jdGlvbiAoc2NvcGUpIHsKICAgICAgICByZXR1cm4gW19jKCdlbC1idXR0b24nLCB7CiAgICAgICAgICBzdGF0aWNDbGFzczogInByaW1hcnlDb2xvciIsCiAgICAgICAgICBhdHRyczogewogICAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICAgInNpemUiOiAic21hbGwiCiAgICAgICAgICB9LAogICAgICAgICAgb246IHsKICAgICAgICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgICAgICAgIHJldHVybiBfdm0uZWRpdFN0YWZmKHNjb3BlLnJvdyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBbX3ZtLl92KCLnvJbovpEiKV0pLCBfdm0uZG9tYWluQWRtaW4gfHwgX3ZtLnBlcm1pc3Npb25zU3RyLmluZGV4T2YoJ1Jlc2V0UHdkJykgPiAtMSA/IF9jKCdlbC1idXR0b24nLCB7CiAgICAgICAgICBzdGF0aWNDbGFzczogInByaW1hcnlDb2xvciIsCiAgICAgICAgICBhdHRyczogewogICAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICAgInNpemUiOiAic21hbGwiCiAgICAgICAgICB9LAogICAgICAgICAgb246IHsKICAgICAgICAgICAgImNsaWNrIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgICAgICAgIHJldHVybiBfdm0ucmVzZXRQV0RTdGFmZihzY29wZS5yb3cpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgW192bS5fdigi6YeN572u5a+G56CBIildKSA6IF92bS5fZSgpXTsKICAgICAgfQogICAgfV0sIG51bGwsIGZhbHNlLCAyNDk3ODgyNTE2KQogIH0pXSwgMiksIF9jKCdwYWdlcycsIHsKICAgIGF0dHJzOiB7CiAgICAgICJ0b3RhbCI6IF92bS5wYXJhbXMudG90YWwsCiAgICAgICJjdXJyZW50UGFnZSI6IF92bS5wYXJhbXMucGFnZUluZGV4LAogICAgICAicGFnZVNpemUiOiBfdm0ucGFyYW1zLnBhZ2VTaXplCiAgICB9LAogICAgb246IHsKICAgICAgInVwZGF0ZTpjdXJyZW50UGFnZSI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICByZXR1cm4gX3ZtLiRzZXQoX3ZtLnBhcmFtcywgInBhZ2VJbmRleCIsICRldmVudCk7CiAgICAgIH0sCiAgICAgICJ1cGRhdGU6Y3VycmVudC1wYWdlIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIHJldHVybiBfdm0uJHNldChfdm0ucGFyYW1zLCAicGFnZUluZGV4IiwgJGV2ZW50KTsKICAgICAgfSwKICAgICAgImhhbmRsZUN1cnJlbnRDaGFuZ2VTdWIiOiBfdm0uaGFuZGxlQ3VycmVudENoYW5nZSwKICAgICAgImhhbmRsZVNpemVDaGFuZ2VTdWIiOiBfdm0uaGFuZGxlU2l6ZUNoYW5nZQogICAgfQogIH0pXSwgMSksIF9jKCdVc2VyRW1wbG95ZWVEaWFsb2cnLCB7CiAgICByZWY6ICJwb3BDaGlsZHJlbiIsCiAgICBhdHRyczogewogICAgICAiZGVwdERhdGFMaXN0IjogX3ZtLnRhYmxlRGF0YSwKICAgICAgInNob3dkaWFsb2ciOiBfdm0uc2hvd2RpYWxvZwogICAgfSwKICAgIG9uOiB7CiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZyI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZyA9ICRldmVudDsKICAgICAgfSwKICAgICAgInJlZnVybGlzdCI6IF92bS5yZWZ1cmxpc3QKICAgIH0KICB9KSwgX2MoJ0ltcG9ydEVtcGxveWVlRGlhbG9nJywgewogICAgcmVmOiAiSW1wb3J0cG9wQ2hpbGRyZW4iLAogICAgYXR0cnM6IHsKICAgICAgInNob3dkaWFsb2dJbXBvcnQiOiBfdm0uc2hvd2RpYWxvZ0ltcG9ydAogICAgfSwKICAgIG9uOiB7CiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZ0ltcG9ydCI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ0ltcG9ydCA9ICRldmVudDsKICAgICAgfSwKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nLWltcG9ydCI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ0ltcG9ydCA9ICRldmVudDsKICAgICAgfSwKICAgICAgInJlZnVybGlzdCI6IF92bS5yZWZ1cmxpc3QKICAgIH0KICB9KSwgX2MoJ0V4cG9ydEVtcGxveWVlRGlhbG9nJywgewogICAgcmVmOiAiRXhwb3J0cG9wQ2hpbGRyZW4iLAogICAgYXR0cnM6IHsKICAgICAgInNob3dkaWFsb2dFeHBvcnQiOiBfdm0uc2hvd2RpYWxvZ0V4cG9ydAogICAgfSwKICAgIG9uOiB7CiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZ0V4cG9ydCI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ0V4cG9ydCA9ICRldmVudDsKICAgICAgfSwKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nLWV4cG9ydCI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ0V4cG9ydCA9ICRldmVudDsKICAgICAgfSwKICAgICAgInJlZnVybGlzdCI6IF92bS5yZWZ1cmxpc3QKICAgIH0KICB9KSwgX2MoJ1VzZXJFbXBsb3llZUludml0ZUluRGlhbG9nJywgewogICAgcmVmOiAicG9wQ2hpbGRyZW4iLAogICAgYXR0cnM6IHsKICAgICAgImRlcHREYXRhTGlzdCI6IF92bS50YWJsZURhdGEsCiAgICAgICJzaG93ZGlhbG9nSW4iOiBfdm0uc2hvd2RpYWxvZ0luCiAgICB9LAogICAgb246IHsKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nSW4iOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgX3ZtLnNob3dkaWFsb2dJbiA9ICRldmVudDsKICAgICAgfSwKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nLWluIjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIF92bS5zaG93ZGlhbG9nSW4gPSAkZXZlbnQ7CiAgICAgIH0sCiAgICAgICJyZWZ1cmxpc3QiOiBfdm0ucmVmdXJsaXN0CiAgICB9CiAgfSksIF9jKCdVc2VyRW1wbG95ZWVEdXR5RGlhbG9nJywgewogICAgcmVmOiAiRHV0eUNoaWxkcmVuIiwKICAgIGF0dHJzOiB7CiAgICAgICJkZXB0RGF0YUxpc3QiOiBfdm0udGFibGVEYXRhLAogICAgICAic2hvd2RpYWxvZ0R1dHkiOiBfdm0uc2hvd2RpYWxvZ0R1dHkKICAgIH0sCiAgICBvbjogewogICAgICAidXBkYXRlOnNob3dkaWFsb2dEdXR5IjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIF92bS5zaG93ZGlhbG9nRHV0eSA9ICRldmVudDsKICAgICAgfSwKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nLWR1dHkiOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgX3ZtLnNob3dkaWFsb2dEdXR5ID0gJGV2ZW50OwogICAgICB9LAogICAgICAicmVmdXJsaXN0IjogX3ZtLnJlZnVybGlzdAogICAgfQogIH0pLCBfYygnVXNlckVtcGxveWVlY2hhbmdlT2NjdXBhdGlvblR5cGVEaWFsb2cnLCB7CiAgICByZWY6ICJPY2NUeXBlQ2hpbGRyZW4iLAogICAgYXR0cnM6IHsKICAgICAgInNob3dkaWFsb2dPY2NUeXBlIjogX3ZtLnNob3dkaWFsb2dPY2NUeXBlCiAgICB9LAogICAgb246IHsKICAgICAgInVwZGF0ZTpzaG93ZGlhbG9nT2NjVHlwZSI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ09jY1R5cGUgPSAkZXZlbnQ7CiAgICAgIH0sCiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZy1vY2MtdHlwZSI6IGZ1bmN0aW9uICgkZXZlbnQpIHsKICAgICAgICBfdm0uc2hvd2RpYWxvZ09jY1R5cGUgPSAkZXZlbnQ7CiAgICAgIH0sCiAgICAgICJyZWZ1cmxpc3QiOiBfdm0ucmVmdXJsaXN0CiAgICB9CiAgfSldLCAxKSA6IF92bS5fZSgpLCAhX3ZtLlN0YWZmQm94RmxhZyA/IF9jKCdzZWN0aW9uJywgewogICAgc3RhdGljQ2xhc3M6ICJDb250YWluZXJCb3hEZXRhaWwiCiAgfSwgW19jKCdTdGFmZkJveERldGFpbCcsIHsKICAgIGF0dHJzOiB7CiAgICAgICJzdGFmZmluZm8iOiBfdm0uc3RhZmZpbmZvCiAgICB9LAogICAgb246IHsKICAgICAgInJlZnVybGlzdEJhY2siOiBfdm0ucmVmdXJsaXN0QmFjawogICAgfQogIH0pXSwgMSkgOiBfdm0uX2UoKSwgX2MoJ0NvbHVtblNldCcsIHsKICAgIHJlZjogImNvbHVtblJlZiIsCiAgICBhdHRyczogewogICAgICAic2hvd2RpYWxvZ0NvbHVtblNldCI6IF92bS5zaG93ZGlhbG9nQ29sdW1uU2V0LAogICAgICAidHlwZUZsYWciOiBfdm0udHlwZUZsYWcKICAgIH0sCiAgICBvbjogewogICAgICAidXBkYXRlOnNob3dkaWFsb2dDb2x1bW5TZXQiOiBmdW5jdGlvbiAoJGV2ZW50KSB7CiAgICAgICAgX3ZtLnNob3dkaWFsb2dDb2x1bW5TZXQgPSAkZXZlbnQ7CiAgICAgIH0sCiAgICAgICJ1cGRhdGU6c2hvd2RpYWxvZy1jb2x1bW4tc2V0IjogZnVuY3Rpb24gKCRldmVudCkgewogICAgICAgIF92bS5zaG93ZGlhbG9nQ29sdW1uU2V0ID0gJGV2ZW50OwogICAgICB9LAogICAgICAicmVmdXJsaXN0IjogX3ZtLnJlZnVybGlzdAogICAgfQogIH0pXSwgMSk7Cn07CnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXTsKZXhwb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfTs="},null]}