{"remainingRequest":"D:\\jenkins\\workspace\\ljzc-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\ljzc-fvue\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\ljzc-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\jenkins\\workspace\\ljzc-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\ljzc-fvue\\src\\components\\flow\\start.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\ljzc-fvue\\src\\components\\flow\\start.vue","mtime":1705040076868},{"path":"D:\\jenkins\\workspace\\ljzc-fvue\\babel.config.js","mtime":1701311296006},{"path":"D:\\jenkins\\workspace\\ljzc-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\ljzc-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\ljzc-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\ljzc-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\ljzc-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF90eXBlb2YgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvbGp6Yy1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS90eXBlb2YuanMiOwppbXBvcnQgX2RlZmluZVByb3BlcnR5IGZyb20gIkQ6L2plbmtpbnMvd29ya3NwYWNlL2xqemMtZnZ1ZS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZGVmaW5lUHJvcGVydHkuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5jb25jYXQuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5wdXNoLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LmtleXMuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMucmVnZXhwLmV4ZWMuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5zdHJpbmcucmVwbGFjZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmpzb24uc3RyaW5naWZ5LmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuZnVuY3Rpb24ubmFtZS5qcyI7Ci8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCgppbXBvcnQgcmVxIGZyb20gIkAvcmVxdWVzdC5qcyI7CmltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAidnVleCI7CmltcG9ydCBGb3JtQ29udGVudCBmcm9tICJAL2NvbXBvbmVudHMvZmxvdy9mb3JtQ29udGVudC52dWUiOwppbXBvcnQgVGFza1NlbGVjdERlc3RpbmF0aW9uIGZyb20gIkAvY29tcG9uZW50cy9mbG93L3Rhc2svdGFza1NlbGVjdERlc3RpbmF0aW9uLnZ1ZSI7CmltcG9ydCB1dGlscyBmcm9tICJAL3V0aWxzLmpzIjsKaW1wb3J0IHsgQmFzZTY0IH0gZnJvbSAianMtYmFzZTY0IjsKZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICJzdGFydCIsCiAgY29tcG9uZW50czogewogICAgRm9ybUNvbnRlbnQ6IEZvcm1Db250ZW50LAogICAgVGFza1NlbGVjdERlc3RpbmF0aW9uOiBUYXNrU2VsZWN0RGVzdGluYXRpb24KICB9LAogIHByb3BzOiBbImRlZklkIiwgImluc3RJZCIsICJsZWFkZXJJZCIsICJjb3B5SW5zdElkIl0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiBfZGVmaW5lUHJvcGVydHkoX2RlZmluZVByb3BlcnR5KF9kZWZpbmVQcm9wZXJ0eShfZGVmaW5lUHJvcGVydHkoX2RlZmluZVByb3BlcnR5KHsKICAgICAgdGFibGVEYXRhOiBbXSwKICAgICAgZGlhbG9nVmlzaWJsZTogZmFsc2UsCiAgICAgIGRpc2FibGVkOiB0cnVlLAogICAgICBub2RlRGVmOiB7fSwKICAgICAgZmxvd0lkOiAiIiwKICAgICAgaXNTaG93U3RhcnRCdG46IHRydWUsCiAgICAgIGlzTXlSZXF1ZXN0OiBmYWxzZSwKICAgICAgZGVmTmFtZTogIiIsCiAgICAgIGluaXRGaWxsRGF0YTogZmFsc2UsCiAgICAgIHJlbG9hZEZvcm06IGZhbHNlCiAgICB9LCAiZGVmTmFtZSIsICIiKSwgImJ0bkFsaWFzIiwgIiIpLCAiZGF0YSIsIG51bGwpLCAic2hvdyIsIGZhbHNlKSwgImxvY2FsSW5zdElkIiwgdGhpcy5pbnN0SWQpOwogIH0sCiAgY29tcHV0ZWQ6IG1hcFN0YXRlKHsKICAgIGN1ck9yZ1Bvc3Q6IGZ1bmN0aW9uIGN1ck9yZ1Bvc3Qoc3RhdGUpIHsKICAgICAgcmV0dXJuIHN0YXRlLnVzZXIucG9zdENoYXJnZTsKICAgIH0KICB9KSwKICBiZWZvcmVSb3V0ZUVudGVyOiBmdW5jdGlvbiBiZWZvcmVSb3V0ZUVudGVyKHRvLCBmcm9tLCBuZXh0KSB7CiAgICBuZXh0KGZ1bmN0aW9uICh2bSkgewogICAgICAvL+WIpOaWreeUqOaIt+aYr+WQpuWFt+aciea1geeoi+WQr+WKqOadg+mZkAogICAgICB2YXIgdXNlcklkID0gdm0uJHN0b3JlLnN0YXRlLmxvZ2luLmN1cnJlbnRVc2VyLnVzZXJJZCwKICAgICAgICBpbnN0SWQgPSB0by5wYXJhbXMuaW5zdElkLAogICAgICAgIGRlZklkID0gdG8ucGFyYW1zLmRlZklkLAogICAgICAgIGxlYWRJZCA9IHRvLnBhcmFtcy5sZWFkZXJJZDsKICAgICAgdmFyIHVybCA9ICIiLmNvbmNhdCh3aW5kb3cuY29udGV4dC5icG1Nb2RlbCwgIi9mbG93L2RlZkF1dGhvcml6ZS92MS9zdGFydFJpZ2h0P3VzZXJJZD0iKS5jb25jYXQodXNlcklkLCAiJmRlZklkPSIpLmNvbmNhdChkZWZJZCwgIiZsZWFkSWQ9IikuY29uY2F0KGxlYWRJZCk7CiAgICAgIC8vIOWPkei1t+eahOaYr+a1geeoi+iNieeov+aXtgogICAgICBpZiAoaW5zdElkKSB7CiAgICAgICAgdXJsID0gIiIuY29uY2F0KHVybCwgIiZpbnN0SWQ9IikuY29uY2F0KGluc3RJZCk7CiAgICAgIH0KICAgICAgcmVxLmdldCh1cmwpLnRoZW4oZnVuY3Rpb24gKHJlc3ApIHsKICAgICAgICBpZiAoIXJlc3AuZGF0YSB8fCAhcmVzcC5kYXRhLnN0YXRlIHx8ICFyZXNwLmRhdGEudmFsdWUpIHsKICAgICAgICAgIHZtLiRhbGVydCgn5oKo5rKh5pyJ6K+l5rWB56iL55qE5ZCv5Yqo5p2D6ZmQJywgJ+aXoOadg+mZkCcsIHsKICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICLov5Tlm57kuLvpobUiLAogICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24gY2FsbGJhY2soYWN0aW9uKSB7CiAgICAgICAgICAgICAgdm0uJHJvdXRlci5wdXNoKCIvaG9tZSIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdm0uc2hvdyA9IHRydWU7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0pOwogIH0sCiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHsKICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAvL+WmguaenOivpeWtl+auteeahOagoemqjOWPl+WPpuS4gOS4quWtl+auteW9seWTjeOAguWImeebkeWQrOWPpuS4gOS4quWtl+auteaOp+S7tuWPkeW4g+eahOWAvOaUueWPmOS6i+S7tgogICAgdGhpcy4kcm9vdC4kb24oInN0YXJ0Rmxvd0J0bkNoYW5nZSIsIGZ1bmN0aW9uICh2YWx1ZSkgewogICAgICBfdGhpcy5pc1Nob3dTdGFydEJ0biA9IHZhbHVlOwogICAgfSk7CiAgICAvL+ebkeWQrOihqOWNleWKoOi9veWujOaIkOWPkeW4g+S6i+S7tgogICAgdGhpcy4kcm9vdC4kb24oImZvcm1Mb2FkaW5nIiwgZnVuY3Rpb24gKHZhbHVlKSB7CiAgICAgIF90aGlzLmRpc2FibGVkID0gdmFsdWU7CiAgICB9KTsKICB9LAogIG1ldGhvZHM6IHsKICAgIC8v5aSE55CG5Lu75YqhCiAgICBoYW5kbGVUYXNrOiBmdW5jdGlvbiBoYW5kbGVUYXNrKHJvdykgewogICAgICB0aGlzLiRyb3V0ZXIucHVzaCgiL3Rhc2svIiArIHJvdy5pZCArICIvMCIpOwogICAgfSwKICAgIC8vIOWHhuWkh+aVsOaNrgogICAgaGFuZGxlRGF0YTogZnVuY3Rpb24gaGFuZGxlRGF0YShmb3JtRGF0YVN0cikgewogICAgICB2YXIgZGF0YSA9IHsKICAgICAgICBkZWZJZDogdGhpcy5kZWZJZAogICAgICB9OwogICAgICBpZiAoZm9ybURhdGFTdHIpIHsKICAgICAgICAvLyBVUkzooajljZUKICAgICAgICBpZiAoZm9ybURhdGFTdHIuY29uc3RydWN0b3IgPT0gT2JqZWN0KSB7CiAgICAgICAgICBkYXRhLmZvcm1UeXBlID0gImZyYW1lIjsKICAgICAgICAgIGlmIChmb3JtRGF0YVN0ci5idXNpbmVzc0tleSkgewogICAgICAgICAgICBkYXRhLmJ1c2luZXNzS2V5ID0gZm9ybURhdGFTdHIuYnVzaW5lc3NLZXk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZm9ybURhdGFTdHIuc3lzQ29kZSkgewogICAgICAgICAgICBkYXRhLnN5c0NvZGUgPSBmb3JtRGF0YVN0ci5zeXNDb2RlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGZvcm1EYXRhU3RyLnZhcnMpIHsKICAgICAgICAgICAgZGF0YS52YXJzID0gZm9ybURhdGFTdHIudmFyczsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKGZvcm1EYXRhU3RyLmNvbnN0cnVjdG9yID09IFN0cmluZykgewogICAgICAgICAgZGF0YS5kYXRhID0gQmFzZTY0LmVuY29kZShmb3JtRGF0YVN0cik7CiAgICAgICAgICBkYXRhLmZvcm1UeXBlID0gImlubmVyIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZGF0YS5zdXBwb3J0TW9iaWxlID0gMDsKICAgICAgaWYgKHRoaXMuaW5zdElkKSB7CiAgICAgICAgZGF0YS5wcm9JbnN0SWQgPSB0aGlzLmluc3RJZDsKICAgICAgfQogICAgICBpZiAodGhpcy5jdXJPcmdQb3N0ICYmIHRoaXMuY3VyT3JnUG9zdC5vcmcpIHsKICAgICAgICBkYXRhLnN0YXJ0T3JnSWQgPSB0aGlzLmN1ck9yZ1Bvc3Qub3JnLmlkOwogICAgICB9CiAgICAgIGlmICh3aW5kb3cudXJnZW50U3RhdGVWYWx1ZSkgewogICAgICAgIGRhdGEudXJnZW50U3RhdGVWYWx1ZSA9IHdpbmRvdy51cmdlbnRTdGF0ZVZhbHVlOwogICAgICB9CiAgICAgIGlmICh0aGlzLmxlYWRlcklkICYmIHRoaXMubGVhZGVySWQgIT0gMCkgewogICAgICAgIGRhdGEuYWdlbnRMZWFkZXJJZCA9IHRoaXMubGVhZGVySWQ7CiAgICAgIH0KICAgICAgcmV0dXJuIGRhdGE7CiAgICB9LAogICAgLy/lkK/liqgKICAgIHN0YXJ0OiBmdW5jdGlvbiBzdGFydCgpIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CiAgICAgIHRoaXMuYnRuQWxpYXMgPSAic3RhcnRGbG93IjsKICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgLy/ojrflj5ZWVUXooajljZXlrp7kvoso5Yik5pat5piv5ZCm5piv5Zyo57q/6KGo5Y2VKQogICAgICBpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoIm9ubGluZS1mb3JtIilbMF0pIHsKICAgICAgICB2YXIgdGFibGVzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoIm9ubGluZS1mb3JtIilbMF0uX192dWVfXy5wZXJtaXNzaW9uLnRhYmxlOyAvL+iOt+WPluWtkOihqOadg+mZkAogICAgICAgIHZhciBib0RhdGEgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5TmFtZSgib25saW5lLWZvcm0iKVswXS5fX3Z1ZV9fLmRhdGE7IC8v6I635Y+W6KGo5Y2VYm/lr7nosaEKICAgICAgICB2YXIgekRhdGEgPSB7fTsKICAgICAgICBmb3IgKHZhciBrIGluIGJvRGF0YSkgewogICAgICAgICAgekRhdGEgPSBib0RhdGFba107CiAgICAgICAgfQogICAgICAgIGZvciAodmFyIGtleSBpbiB0YWJsZXMpIHsKICAgICAgICAgIC8v5aaC5p6c5pyJ5a+85YWl5bGe5oCn77yM5YiZ6KGo5piO5LiN5piv5a2Q6KGo6ICM5piv5pWw5o2u5oql6KGo77yM5LiN5YGa5b+F5aGr5qCh6aqMCiAgICAgICAgICBpZiAodGFibGVzW2tleV0gJiYgdGFibGVzW2tleV0uaGFzT3duUHJvcGVydHkoImV4cG9ydCIpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCh0YWJsZXNba2V5XS5yZXF1aXJlZCA9PSB0cnVlIHx8IHRhYmxlc1trZXldLnJlcXVpcmVkID09ICJ0cnVlIikgJiYgekRhdGFbInN1Yl8iICsga2V5XSAmJiB6RGF0YVsic3ViXyIgKyBrZXldLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2UoewogICAgICAgICAgICAgIG1lc3NhZ2U6ICLlrZDooajlv4XloavkuIDmnaHorrDlvZUiLAogICAgICAgICAgICAgIHR5cGU6ICJ3YXJuaW5nIgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICB1dGlscy5nZXRPbmxpbmVGb3JtRGF0YSh0cnVlKS50aGVuKGZ1bmN0aW9uIChmb3JtRGF0YVN0cikgewogICAgICAgIC8v5omn6KGM5oyJ6ZKu5YmN572u6ISa5pysCiAgICAgICAgaWYgKF90eXBlb2YoZm9ybURhdGFTdHIpID09PSAib2JqZWN0IiAmJiAoZm9ybURhdGFTdHIuaGFzT3duUHJvcGVydHkoJ2J1c2luZXNzS2V5JykgfHwgZm9ybURhdGFTdHIuaGFzT3duUHJvcGVydHkoJ3N5c0NvZGUnKSkpIHsKICAgICAgICAgIF90aGlzMi5kYXRhID0gZm9ybURhdGFTdHI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIF90aGlzMi5kYXRhID0gSlNPTi5wYXJzZShmb3JtRGF0YVN0cik7CiAgICAgICAgfQogICAgICAgIHZhciBzY3JpcHRSZXN1bHQgPSBfdGhpczIucnVuQmVmb3JlU2NyaXB0KCk7CiAgICAgICAgaWYgKHNjcmlwdFJlc3VsdCA9PT0gZmFsc2UpIHJldHVybjsKICAgICAgICBpZiAoc2NyaXB0UmVzdWx0LnRoZW4gJiYgdHlwZW9mIHNjcmlwdFJlc3VsdC50aGVuID09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgIHNjcmlwdFJlc3VsdC50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgLy/mjqXlj6Pov5Tlm57miJDlip/liJnmraPluLjmiafooYzmjInpkq7mk43kvZwKICAgICAgICAgICAgX3RoaXMuc3RhcnROZXh0KCk7CiAgICAgICAgICB9LCBmdW5jdGlvbiAoZmFpbCkgewogICAgICAgICAgICAvL+aOpeWPo+i/lOWbnuWksei0peWImee7iOatouaMiemSruaTjeS9nO+8jOW5tue7meS4juaPkOekugogICAgICAgICAgICBfdGhpcy4kbWVzc2FnZS53YXJuaW5nKGZhaWwpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgLy/miafooYzliY3nva7ohJrmnKzov5Tlm550cnVl5pe25q2j5bi45omn6KGM5oyJ6ZKu5pON5L2cCiAgICAgICAgICBfdGhpcy5zdGFydE5leHQoKTsKICAgICAgICB9CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChyZWFzb24pIHsKICAgICAgICByZXR1cm4gdXRpbHMuaGFuZGxlR2V0Rm9ybURhdGFSZWplY3QocmVhc29uLCB0cnVlKS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICAgIHJldHVybiBfdGhpczIucHJvY2Vzc1N0YXJ0KCk7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfSwKICAgIC8v5omn6KGM5YmN572u6ISa5pysCiAgICBydW5CZWZvcmVTY3JpcHQ6IGZ1bmN0aW9uIHJ1bkJlZm9yZVNjcmlwdCgpIHsKICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgdmFyIGl0ZW0gPSB1dGlscy5pbmRleE9mTGlzdChfdGhpcy4kcmVmcy5mb3JtQ29udGVudC5idXR0b25zLCAiYWxpYXMiLCBfdGhpcy5idG5BbGlhcyk7CiAgICAgIHJldHVybiBfdGhpcy50ZW1wU2NyaXB0KGl0ZW0uYmVmb3JlU2NyaXB0KTsKICAgIH0sCiAgICAvL+aJp+ihjOWJjee9ruiEmuacrAogICAgdGVtcFNjcmlwdDogZnVuY3Rpb24gdGVtcFNjcmlwdChzY3JpcHQpIHsKICAgICAgdmFyIF90aGlzID0gdGhpcy4kcmVmcy5mb3JtQ29udGVudDsKICAgICAgdmFyIF9yZXEgPSByZXE7CiAgICAgIHZhciBib0RhdGEgPSB0aGlzLiRyZWZzLmZvcm1Db250ZW50LmRhdGE7CiAgICAgIHZhciB0ZW1wU2NyaXB0ID0gInZhciB0ZW1wRnVuY3Rpb24gPSBmdW5jdGlvbihfcmVxLGRhdGEsX3RoaXMpeyAiICsgc2NyaXB0ICsgIn07IjsKICAgICAgdmFyIHJlc3VsdCA9IGV2YWwodGVtcFNjcmlwdCArICJ0ZW1wRnVuY3Rpb24oX3JlcSxib0RhdGEsX3RoaXMpOyIpOwogICAgICBpZiAocmVzdWx0ICYmIHJlc3VsdC50aGVuICYmIHR5cGVvZiByZXN1bHQudGhlbiA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICBpZiAocmVzdWx0ID09PSBmYWxzZSkgcmV0dXJuIGZhbHNlOwogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0sCiAgICBzdGFydE5leHQ6IGZ1bmN0aW9uIHN0YXJ0TmV4dCgpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CiAgICAgIHV0aWxzLmdldE9ubGluZUZvcm1EYXRhKGZhbHNlKS50aGVuKGZ1bmN0aW9uIChmb3JtRGF0YVN0cikgewogICAgICAgIHV0aWxzLmNsb3NlQWxsTm90aWZpY2F0aW9uKCk7CiAgICAgICAgaWYgKCFfdGhpczMubm9kZURlZi5sb2NhbFByb3BlcnRpZXMuanVtcFR5cGUgJiYgIV90aGlzMy5ub2RlRGVmLmxvY2FsUHJvcGVydGllcy5jaG9pY2VFeGN1dG9yKSB7CiAgICAgICAgICBfdGhpczMucHJvY2Vzc1N0YXJ0KGZvcm1EYXRhU3RyKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXMzLiRzdG9yZS5kaXNwYXRjaCgic3RvcmVQcm9jZXNzL2dldEFmdGVySnVtcE5vZGVzIiwgewogICAgICAgICAgICB0YXNrSWQ6ICIiLAogICAgICAgICAgICBkYXRhOiBCYXNlNjQuZW5jb2RlKGZvcm1EYXRhU3RyKSwKICAgICAgICAgICAgZGVmSWQ6IF90aGlzMy5kZWZJZCB8fCAiIiwKICAgICAgICAgICAgaW5zdElkOiBfdGhpczMuaW5zdElkIHx8ICIiCiAgICAgICAgICB9KS50aGVuKGZ1bmN0aW9uIChkYXRhKSB7CiAgICAgICAgICAgIGlmIChkYXRhLmFmdGVyTm9kZXMubGVuZ3RoID09IDAgfHwgZGF0YS5hZnRlck5vZGVzLmxlbmd0aCA9PSAxICYmIGRhdGEuYWZ0ZXJOb2Rlc1swXS5leGN1dG9yTGlzdCAhPSB1bmRlZmluZWQgJiYgZGF0YS5hZnRlck5vZGVzWzBdLmV4Y3V0b3JMaXN0Lmxlbmd0aCA9PSAxKSB7CiAgICAgICAgICAgICAgX3RoaXMzLnByb2Nlc3NTdGFydChmb3JtRGF0YVN0cik7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgdmFyIGZvcm1EYXRhID0ge307CiAgICAgICAgICAgICAgaWYgKGZvcm1EYXRhU3RyLmNvbnN0cnVjdG9yID09IE9iamVjdCkgewogICAgICAgICAgICAgICAgZm9ybURhdGEgPSBmb3JtRGF0YVN0cjsKICAgICAgICAgICAgICAgIGZvcm1EYXRhLmRhdGEgPSAiIjsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKGZvcm1EYXRhU3RyLmNvbnN0cnVjdG9yID09IFN0cmluZykgewogICAgICAgICAgICAgICAgZm9ybURhdGEuZGF0YSA9IEJhc2U2NC5lbmNvZGUoZm9ybURhdGFTdHIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBfdGhpczMuJHJlZnMudGFza1NlbGVjdERlc3RpbmF0aW9uLnNob3dEaWFsb2coZm9ybURhdGEsICIiLCAiIik7IC8v54i257uE5Lu26LCD55So5a2Q57uE5Lu25pa55rOVCiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgLy/mtYHnqIvlj5HotbcKICAgIHByb2Nlc3NTdGFydDogZnVuY3Rpb24gcHJvY2Vzc1N0YXJ0KGZvcm1EYXRhU3RyKSB7CiAgICAgIHZhciBfdGhpczQgPSB0aGlzOwogICAgICBjb25zb2xlLmxvZyhmb3JtRGF0YVN0cik7CiAgICAgIHZhciBmb3JtS2V5ID0gdGhpcy4kcmVmcy5mb3JtQ29udGVudC5mb3JtS2V5OwogICAgICB2YXIgZGF0YSA9IHRoaXMuaGFuZGxlRGF0YShmb3JtRGF0YVN0cik7CiAgICAgIGlmIChzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJmb3JtSW1wb3J0VGVtcEpzb24iKSkgewogICAgICAgIGRhdGEudXBkYXRlU3ViVGFibGVKc29uID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgiZm9ybUltcG9ydFRlbXBKc29uIik7CiAgICAgIH0KICAgICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7CiAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCJzdG9yZVByb2Nlc3Mvc3RhcnQiLCBkYXRhKS50aGVuKGZ1bmN0aW9uIChyb3cpIHsKICAgICAgICBpZiAocm93LmN1ckJvUGtWYWwpIHsKICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oImZvcm1JbXBvcnRUZW1wUmVmSWQiLCByb3cuY3VyQm9Qa1ZhbCk7CiAgICAgICAgfQogICAgICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oImZvcm1JbXBvcnRUZW1wSnNvbiIpOwogICAgICAgIGlmIChyb3cudGFza3MgJiYgcm93LnRhc2tzLmxlbmd0aCA+IDApIHsKICAgICAgICAgIGlmIChyb3cudGFza3MubGVuZ3RoID09IDEpIHsKICAgICAgICAgICAgX3RoaXM0LiRyb3V0ZXIucHVzaCgiL3Rhc2svIiArIHJvdy50YXNrc1swXS5pZCArICIvMCIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgLy/lvLnlh7rnqpflj6PorqnnlKjmiLfoh6rlt7HpgInmi6nljrvlk6rkuKrlvoXlip4KICAgICAgICAgICAgX3RoaXM0LnRhYmxlRGF0YSA9IHJvdy50YXNrczsKICAgICAgICAgICAgX3RoaXM0LmRpYWxvZ1Zpc2libGUgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAocm93Lmluc3Quc3RhdHVzICE9ICJlbmQiKSB7CiAgICAgICAgICAgIF90aGlzNC4kcm91dGVyLnB1c2goIi9pbnN0LyIgKyByb3cuaW5zdElkICsgIi9yZXF1ZXN0Iik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBfdGhpczQuJHJvdXRlci5wdXNoKCIvaW5zdFJlYWQvIiArIHJvdy5pbnN0SWQgKyAiL215UmVxdWVzdCIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAvLyB0aGlzLiRzdG9yZQogICAgICAgIC8vICAgLmRpc3BhdGNoKCJzdG9yZVByb2Nlc3MvZ2V0SW5zdGFuY2VCeUluc3RJZCIsIHJvdy5pbnN0SWQpCiAgICAgICAgLy8gICAudGhlbigoaW5zdHMpID0+IHsKCiAgICAgICAgLy8gICAgIGlmIChpbnN0cy5zdGF0dXMgIT0gImVuZCIpIHsKICAgICAgICAvLyAgICAgICB0aGlzLiRyb3V0ZXIucHVzaCgiL2luc3QvIiArIHJvdy5pbnN0SWQgKyAiL3JlcXVlc3QiKTsKICAgICAgICAvLyAgICAgfSBlbHNlIHsKICAgICAgICAvLyAgICAgICB0aGlzLiRyb3V0ZXIucHVzaCgiL2luc3RSZWFkLyIgKyByb3cuaW5zdElkICsgIi9teVJlcXVlc3QiKTsKICAgICAgICAvLyAgICAgfQogICAgICAgIC8vICAgfSk7CiAgICAgIH0pLmZpbmFsbHkoZnVuY3Rpb24gKCkgewogICAgICAgIF90aGlzNC5kaXNhYmxlZCA9IGZhbHNlOwogICAgICB9KTsKICAgIH0sCiAgICAvL+S/neWtmAogICAgc2F2ZURyYWZ0OiBmdW5jdGlvbiBzYXZlRHJhZnQoKSB7CiAgICAgIHZhciBfdGhpczUgPSB0aGlzOwogICAgICB0aGlzLmJ0bkFsaWFzID0gInNhdmVEcmFmdCI7CiAgICAgIHZhciBzY3JpcHRSZXN1bHQgPSB0aGlzLnJ1bkJlZm9yZVNjcmlwdCgpOwogICAgICB2YXIgZm9ybUtleSA9IHRoaXMuJHJlZnMuZm9ybUNvbnRlbnQuZm9ybUtleTsKICAgICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7CiAgICAgIHZhciB0aGlzXyA9IHRoaXM7CiAgICAgIHV0aWxzLmdldE9ubGluZUZvcm1EYXRhKGZhbHNlKS50aGVuKGZ1bmN0aW9uIChmb3JtRGF0YVN0cikgewogICAgICAgIGNvbnNvbGUubG9nKGZvcm1EYXRhU3RyKTsKICAgICAgICB1dGlscy5jbG9zZUFsbE5vdGlmaWNhdGlvbigpOwogICAgICAgIHZhciBkYXRhID0gdGhpc18uaGFuZGxlRGF0YShmb3JtRGF0YVN0cik7CiAgICAgICAgZGF0YS5mb3JtS2V5ID0gZm9ybUtleTsKICAgICAgICBpZiAoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgiZm9ybUltcG9ydFRlbXBKc29uIikpIHsKICAgICAgICAgIGRhdGEudXBkYXRlU3ViVGFibGVKc29uID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgiZm9ybUltcG9ydFRlbXBKc29uIik7CiAgICAgICAgfQogICAgICAgIHRoaXNfLiRzdG9yZS5kaXNwYXRjaCgic3RvcmVQcm9jZXNzL3NhdmVEcmFmdCIsIGRhdGEpLnRoZW4oZnVuY3Rpb24gKHJvdykgewogICAgICAgICAgaWYgKHJvdy5jdXJCb1BrVmFsKSB7CiAgICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oImZvcm1JbXBvcnRUZW1wUmVmSWQiLCByb3cuY3VyQm9Qa1ZhbCk7CiAgICAgICAgICB9CiAgICAgICAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKCJmb3JtSW1wb3J0VGVtcEpzb24iKTsKICAgICAgICAgIHRoaXNfLmlzTXlSZXF1ZXN0ID0gdHJ1ZTsKICAgICAgICAgIHRoaXNfLmxvY2FsSW5zdElkID0gcm93Lmluc3RJZDsKICAgICAgICAgIHRoaXNfLiRyb3V0ZXIucmVwbGFjZSgiL3N0YXJ0LyIgKyB0aGlzXy5kZWZJZCArICIvIiArIHJvdy5pbnN0SWQpOwogICAgICAgIH0pLmZpbmFsbHkoZnVuY3Rpb24gKCkgewogICAgICAgICAgLy/kv53lrZjlrozmiJDlkI4s6ZyA6KaB6YeN5paw5Yqg6L29Ym/mlbDmja4s5LiN54S256ys5LqM5qyh5L+d5a2Y55qE5pe25YCZ5Lya5Zug5Li654mI5pys5Y+35LiN5ZCM6ICM5a+86Ie05L+d5a2Y5aSx6LSlCiAgICAgICAgICBfdGhpczUuJHJlZnMuZm9ybUNvbnRlbnQuaW5pdCh0cnVlKTsKICAgICAgICB9KTsKICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKHJlYXNvbikgewogICAgICAgIGNvbnNvbGUubG9nKHJlYXNvbik7CiAgICAgICAgX3RoaXM1LmRpc2FibGVkID0gZmFsc2U7CiAgICAgICAgdXRpbHMuaGFuZGxlR2V0Rm9ybURhdGFSZWplY3QoNSk7CiAgICAgIH0pOwogICAgfSwKICAgIC8v6L+U5ZueCiAgICBiYWNrOiBmdW5jdGlvbiBiYWNrKCkgewogICAgICB1dGlscy5jbG9zZUFsbE5vdGlmaWNhdGlvbigpOwogICAgICBpZiAodGhpcy5pbnN0SWQpIHsKICAgICAgICB0aGlzLiRyb3V0ZXIucHVzaCgiL3YtZmxvdy92LXJlcXVlc3QiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkodGhpcy4kcm91dGUucXVlcnkpID09ICJ7fSIpIHsKICAgICAgICAgIC8vIHRoaXMuJHJvdXRlci5wdXNoKCIvdi1mbG93L3YtZmxvd0xpc3QiKTsKICAgICAgICAgIHRoaXMuJHJvdXRlci5nbygtMSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuJHJvdXRlci5nbygtMSk7CiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgdG9NeVRvZG86IGZ1bmN0aW9uIHRvTXlUb2RvKCkgewogICAgICB0aGlzLiRyb3V0ZXIucHVzaCgiL3YtZmxvdy92LXRvZG8iKTsKICAgIH0KICB9LAogIGNyZWF0ZWQ6IGZ1bmN0aW9uIGNyZWF0ZWQoKSB7CiAgICB2YXIgX3RoaXM2ID0gdGhpczsKICAgIC8v55uR5ZCs6KGo5Y2V5pWw5o2u6K+35rGC5a6M5oiQCiAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgLy/lj5blj5HotbfoioLngrnnmoTlsZ7mgKfnlKjkuo7liKTmlq3mmK/lkKblj6/ku6XpgInmi6not6/lvoTot7PovawKICAgIHdpbmRvdy5hZ2VudExlYWRlcklkID0gdGhpcy5sZWFkZXJJZDsKICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCJzdG9yZVByb2Nlc3MvZ2V0Q3VyTm9kZVByb3BlcnRpZXMiLCB7CiAgICAgIGRlZklkOiB0aGlzLmRlZklkIHx8ICIiLAogICAgICBpbnN0SWQ6IHRoaXMuaW5zdElkIHx8ICIiLAogICAgICB0YXNrSWQ6ICIiCiAgICB9KS50aGVuKGZ1bmN0aW9uIChOb2RlRGVmKSB7CiAgICAgIF90aGlzNi5ub2RlRGVmID0gTm9kZURlZjsKICAgICAgaWYgKE5vZGVEZWYubm9kZVByb3BlcnRpZXMgJiYgTm9kZURlZi5ub2RlUHJvcGVydGllcy5sZW5ndGggPiAwICYmIE5vZGVEZWYubm9kZVByb3BlcnRpZXNbMF0uaW5pdEZpbGxEYXRhKSB7CiAgICAgICAgX3RoaXMuaW5pdEZpbGxEYXRhID0gTm9kZURlZi5ub2RlUHJvcGVydGllc1swXS5pbml0RmlsbERhdGE7CiAgICAgICAgX3RoaXMuJHJlZnNbImZvcm1Db250ZW50Il0uc2V0SW5pdEZpbGxEYXRhKF90aGlzLmluaXRGaWxsRGF0YSk7CiAgICAgIH0KICAgIH0pOwogICAgLy/ojrflj5bmtYHnqIvkv6Hmga8KICAgIHJlcS5nZXQod2luZG93LmNvbnRleHQuYnBtTW9kZWwgKyAiL2Zsb3cvZGVmL3YxL2RlZkdldD9kZWZJZD0iICsgdGhpcy5kZWZJZCkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgIF90aGlzNi5kZWZOYW1lID0gcmVzLmRhdGEubmFtZTsKICAgIH0pOwogIH0KfTs="},null]}