1 line
80 KiB
JSON
1 line
80 KiB
JSON
{"remainingRequest":"D:\\Hjm项目\\suyiScreen\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\Hjm项目\\suyiScreen\\src\\views\\land\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\Hjm项目\\suyiScreen\\src\\views\\land\\index.vue","mtime":1672797296421},{"path":"D:\\Hjm项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\Hjm项目\\suyiScreen\\node_modules\\babel-loader\\lib\\index.js","mtime":499162500000},{"path":"D:\\Hjm项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\Hjm项目\\suyiScreen\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgQ3VzdG9tRHZTY3JvbGxCb2FyZCBmcm9tICJAL2NvbXBvbmVudHMvY3VzdG9tRHZTY3JvbGxCb2FyZCI7DQppbXBvcnQgQ3VzdG9tRHZTY3JvbGxCb2FyZDEgZnJvbSAiQC9jb21wb25lbnRzL2N1c3RvbUR2U2Nyb2xsQm9hcmQxIjsNCmltcG9ydCBkcmF3TWl4aW4gZnJvbSAiQC91dGlscy9kcmF3TWl4aW4iOw0KaW1wb3J0IGhlYWRlckluZGV4IGZyb20gIkAvY29tcG9uZW50cy9sYXlvdXQvaGVhZGVyIjsNCmltcG9ydCBCYXNpY0JveCBmcm9tICJAL2NvbXBvbmVudHMvQmFzaWNCb3giOw0KaW1wb3J0IGRpYWxvZ0NvbXBvbmVudCBmcm9tICJAL2NvbXBvbmVudHMvZGlhbG9nIjsNCmltcG9ydCBDaGFydCBmcm9tICIuL2NoYXJ0LnZ1ZSI7DQovLyBpbXBvcnQgaW8gZnJvbSAnc29ja2V0LmlvLWNsaWVudCcNCmltcG9ydCBCYXNpY0JveDUgZnJvbSAiQC9jb21wb25lbnRzL0Jhc2ljQm94NSI7DQppbXBvcnQgYXhpb3MgZnJvbSAiYXhpb3MiOw0KaW1wb3J0IHtnZXRIb21lUGFnZUluZm99IGZyb20gIkAvYXBpL2FwaSI7DQppbXBvcnQgbXF0dCBmcm9tICdtcXR0Jw0KLy8gbGV0IHNvY2tldFJlZnMgPSAnJzsNCg0KZXhwb3J0IGRlZmF1bHQgew0KICBtaXhpbnM6IFtkcmF3TWl4aW5dLA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBpbmZvZGF0YTpbDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/lrqLmiLfmgLvmlbAucG5nJyksbnVtOiczOTcnLHRleHQ6J+WuouaIt+aAu+aVsCcsdW5pdDon5LiqJyxuYW1lOid0b3RhbEN1c3RvbWVyJ30sDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/lj5jnlLXnq5nmgLvmlbAucG5nJyksbnVtOic0NDcnLHRleHQ6IuWPmOeUteermeaAu+aVsCIsdW5pdDon5bqnJyxuYW1lOid0b3RhbFNpdGUnfSwNCiAgICAgICAge3BpYzpyZXF1aXJlKCdAL2Fzc2V0cy9uZXdpbWdzL+S4u+WPmOaAu+aVsC5wbmcnKSxudW06JzM3OScsdGV4dDoi5Li75Y+Y5oC75pWwIix1bml0Oiflj7AnLG5hbWU6J3RvdGFsVHJhbnNmb3JtYXRpb25TaXRlJ30sDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/kuLvlj5jmgLvlrrnph48ucG5nJyksbnVtOic0OTM0MDUnLHRleHQ6IuS4u+WPmOaAu+WuuemHjyIsdW5pdDona1ZBJyxuYW1lOid0cmFuc2Zvcm1hdGlvbkNhcGFjaXR5J30sDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/lj5jnlLXnq5nmgLvmlbAucG5nJyksbnVtOicyODUwMiAnLHRleHQ6IuWunuaXtui0n+iNtyIsdW5pdDona1cnLG5hbWU6J3JlYWxUaW1lTG9hZCd9LA0KICAgICAgICB7cGljOnJlcXVpcmUoJ0AvYXNzZXRzL25ld2ltZ3Mv56ef5pel5oC755S16YePLnBuZycpLG51bTonNjE0NzMwJyx0ZXh0OiLmmKjml6XmgLvnlLXph48iLHVuaXQ6J2tXaCcsbmFtZToneWVzdGVyZGF5VG90YWxFbGVjdHJpY2l0eSd9LA0KICAgICAgICB7cGljOnJlcXVpcmUoJ0AvYXNzZXRzL25ld2ltZ3Mv5b6F5Yqe5bel5Y2V5oC75pWwLnBuZycpLG51bTonMCcsdGV4dDoi5Luj5Yqe5bel5Y2V5oC75pWwIix1bml0OifmnaEnLG5hbWU6J3dvcmtPcmRlcid9LA0KICAgICAgICB7cGljOnJlcXVpcmUoJ0AvYXNzZXRzL25ld2ltZ3Mv5ZGK6K2m5oC75pWwLnBuZycpLG51bTonMCcsdGV4dDoi5ZGK6K2m5oC75pWwIix1bml0OifmnaEnLG5hbWU6J3dhcm5pbmdOdW0nfSwNCiAgICAgIF0sDQogICAgICBWaXNpYmxlOiBmYWxzZSwNCiAgICAgIGJhc2ljSW5mb1Nob3c6IHRydWUsDQogICAgICB2aWRlb1VybDogIi9sYW5kL2xhbmRNYXAuaHRtbCIsDQogICAgICBjaXR5TmFtZTogIiIsDQogICAgICBuYW5qOiB0cnVlLA0KICAgICAgbGFuZEM6IGZhbHNlLA0KICAgICAgYmFja2dyb3VuZFBpYzogew0KICAgICAgICBpbmRleDogImxhbmRSZXMvQkciLA0KICAgICAgfSwNCiAgICAgIGFjdGl2ZUNvbG9yOiAtMSwNCiAgICAgIGxvYWRpbmc6IGZhbHNlLA0KICAgICAgaW1nTGlzdERhdGE6IHt9LA0KICAgICAgaW1nTGlzdDogW10sDQoNCiAgICAgIGNvbmZpZ0RhdGE6IHsNCiAgICAgICAgamlhbmdzdTogew0KICAgICAgICAgIC8vIGhlYWRlcjpbJ+inhOWIkueUqOmAlCcsICflhajnnIHmlbDph48nLCAn5YWo55yB5Y2g5q+UJ10sDQogICAgICAgICAgZGF0YTogW10sDQogICAgICAgIH0sDQogICAgICAgIG5hbmppbmc6IHsNCiAgICAgICAgICAvLyBoZWFkZXI6Wyfop4TliJLnlKjpgJQnLCAn5Y2X5Lqs5pWw6YePJywgJ+WNl+S6rOWNoOavlCddLA0KICAgICAgICAgIGRhdGE6IFtdLA0KICAgICAgICB9LA0KICAgICAgICB6aGVuZ2ppYW5nOiB7DQogICAgICAgICAgaGVhZGVyOiBbIuinhOWIkueUqOmAlCIsICLlhajnnIHmlbDph48iLCAi5YWo55yB5Y2g5q+UIl0sDQogICAgICAgICAgZGF0YTogW10sDQogICAgICAgIH0sDQogICAgICAgIGNoYW5nemhvdTogew0KICAgICAgICAgIGhlYWRlcjogW10sDQogICAgICAgICAgZGF0YTogW10sDQogICAgICAgIH0sDQogICAgICB9LA0KICAgICAgY29uZmlnOiB7DQogICAgICAgIC8vIGhlYWRlcjpbJ+inhOWIkueUqOmAlCcsICflhajnnIHmlbDph48nLCAn5YWo55yB5Y2g5q+UJ10sDQogICAgICAgIGRhdGE6IFtdLA0KICAgICAgfSwNCiAgICAgIGNvbmZpZzE6IHsNCiAgICAgICAgZGF0YTogW10sDQogICAgICB9LA0KICAgICAgbGV2ZWxDb25maWdEYXRhOiB7IG5hbmppbmc6IHsgZGF0YTogWzBdIH0gfSwNCiAgICAgIGxldmVsQ29uZmlnOiB7DQogICAgICAgIGRhdGE6IFsxMF0sDQogICAgICAgIHNoYXBlOiAicm91bmQiLA0KICAgICAgICB3YXZlTnVtOiAyLA0KICAgICAgfSwNCiAgICAgIGxldmVsQ29uZmlnMTogew0KICAgICAgICBkYXRhOiBbNTVdLA0KICAgICAgICBzaGFwZTogInJvdW5kIiwNCiAgICAgICAgd2F2ZU51bTogMiwNCiAgICAgIH0sDQogICAgICByZXNvdXJjZXNMaXN0RGF0YTogew0KICAgICAgICBuYW5qaW5nOiBbDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuWNl+S6rOinhOWIkumYtuautSIsDQogICAgICAgICAgICBjb3VudDogNCwNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIG5hbWU6ICLljZfkuqzorqHliJLpmLbmrrUiLA0KICAgICAgICAgICAgY291bnQ6IDQsDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi5Y2X5Lqs5bu66K6+6Zi25q61IiwNCiAgICAgICAgICAgIGNvdW50OiAxLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuWNl+S6rOaKlei/kOmYtuautSIsDQogICAgICAgICAgICBjb3VudDogMSwNCiAgICAgICAgICB9LA0KICAgICAgICBdLA0KICAgICAgICB6aGVuZ2ppYW5nOiBbDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuinhOWIkumYtuautSIsDQogICAgICAgICAgICBjb3VudDogNjIsDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi6K6h5YiS6Zi25q61IiwNCiAgICAgICAgICAgIGNvdW50OiA5LA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuW7uuiuvumYtuautSIsDQogICAgICAgICAgICBjb3VudDogMiwNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIG5hbWU6ICLmipXov5DpmLbmrrUiLA0KICAgICAgICAgICAgY291bnQ6IDUsDQogICAgICAgICAgfSwNCiAgICAgICAgXSwNCiAgICAgIH0sDQogICAgICByZXNvdXJjZXNMaXN0OiBbXSwNCiAgICAgIGNlbnRlckxpc3REYXRhOiB7DQogICAgICAgIG5hbmppbmc6IFtdLA0KICAgICAgICB6aGVuZ2ppYW5nOiBbXSwNCiAgICAgIH0sDQogICAgICBjZW50ZXJMaXN0OiBbDQogICAgICAgIHsNCiAgICAgICAgICB0aXRsZTogIuS4jeWKqOS6p+adg+ivgeS/oeaBryIsDQogICAgICAgICAgY291bnQ6IDAsDQogICAgICAgICAgaW1nVXJsOiByZXF1aXJlKCJAL2Fzc2V0cy9sYW5kUmVzL2JkYy5wbmciKSwNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIHRpdGxlOiAi5Zyf5Zyw6K+B5L+h5oGvIiwNCiAgICAgICAgICBjb3VudDogIuaXoCIsDQogICAgICAgICAgaW1nVXJsOiByZXF1aXJlKCJAL2Fzc2V0cy9sYW5kUmVzL3Rkei5wbmciKSwNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIHRpdGxlOiAi5oi/5Lqn6K+B5L+h5oGvIiwNCiAgICAgICAgICBjb3VudDogMCwNCiAgICAgICAgICBpbWdVcmw6IHJlcXVpcmUoIkAvYXNzZXRzL2xhbmRSZXMvZmRjLnBuZyIpLA0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgdGl0bGU6ICLnoa7mnYPmg4XlhrUiLA0KICAgICAgICAgIGNvdW50OiAwLA0KICAgICAgICAgIGltZ1VybDogcmVxdWlyZSgiQC9hc3NldHMvbGFuZFJlcy9xcS5wbmciKSwNCiAgICAgICAgfSwNCiAgICAgIF0sDQogICAgICByYW5raW5nQ29uZmlnOiB7DQogICAgICAgIGRhdGE6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi57G75YirMSIsDQogICAgICAgICAgICB2YWx1ZTogNiwNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIG5hbWU6ICLnsbvliKsyIiwNCiAgICAgICAgICAgIHZhbHVlOiA4LA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuexu+WIqzMiLA0KICAgICAgICAgICAgdmFsdWU6IDksDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi57G75YirNCIsDQogICAgICAgICAgICB2YWx1ZTogMywNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIG5hbWU6ICLnsbvliKs1IiwNCiAgICAgICAgICAgIHZhbHVlOiA4LA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuexu+WIqzYiLA0KICAgICAgICAgICAgdmFsdWU6IDExLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuexu+WIqzciLA0KICAgICAgICAgICAgdmFsdWU6IDEzLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuexu+WIqzciLA0KICAgICAgICAgICAgdmFsdWU6IDYsDQogICAgICAgICAgfSwNCiAgICAgICAgXSwNCiAgICAgICAgcm93TnVtOiA3LA0KICAgICAgICB3YWl0VGltZTogOTk5OTk5OTk5OTk5OTk5OTksDQogICAgICB9LA0KICAgICAgLy8gICBzb2NrZXRJZDonJywNCiAgICAgIC8v6buY6K6k5pWw5o2uDQogICAgICB3b3JrTGlzdERhdGE6IFtdLA0KICAgICAgd29ya0xpc3REYXRhZmN6OiBbXSwNCiAgICAgIC8v5bu6562R54mp5L+h5oGvDQogICAgICAvLyAgIHdvcmtMaXN0OlsNCiAgICAgIC8vICAgICAgeyBrZXk6ICLlu7rnrZHnianlkI3np7AiLCB2YWx1ZTogIiIsbmFtZToiamQiIH0sDQogICAgICAvLyAgICAgeyBrZXk6ICLlnZDokL3lnLDlnYAiLCB2YWx1ZTogIiIsbmFtZToidHVkaSIgfSwNCiAgICAgIC8vICAgICB7IGtleTogIuS4jeWKqOS6p+ivgeWPtyIsIHZhbHVlOiAiIiAsbmFtZToiYmRjemgifSwNCiAgICAgIC8vICAgICB7IGtleTogIuadg+WIqeS6uiIsIHZhbHVlOiAiIixuYW1lOiJxbHIiIH0sDQogICAgICAvLyAgICAgeyBrZXk6ICLlnZDokL0iLCB2YWx1ZTogIiIgLG5hbWU6InpsIn0sDQogICAgICAvLyAgIF0sDQogICAgICB3b3JrTGlzdDogW10sDQogICAgICBydW5PbmNlOiB0cnVlLA0KICAgICAgLy/kuI3liqjkuqfmnYPor4Hkv6Hmga8NCiAgICAgIHdvcmtMaXN0QmRjOiBbXSwNCiAgICAgIC8v5Zyf5Zyw6K+BDQogICAgICB3b3JrTGlzdE5ldzogW10sDQogICAgICAvL+aIv+S6p+ivgeaVsOaNrg0KICAgICAgd29ya0xpc3RGQ1o6IFtdLA0KICAgICAgd29ya0xpc3RxcTogW3sga2V5OiAi56Gu5p2D5L+h5oGvIiwgdmFsdWU6ICIiLCBuYW1lOiAicXEiIH1dLA0KICAgICAgdGl0OiAi5bu6562R54mp5L+h5oGvIiwNCiAgICAgIC8vICAgc29ja2V0RGF0YTonamlhbmdzdScsDQogICAgICBjb3VudDogMSwNCiAgICAgIHBhcmFtczoge30sDQogICAgICBsZWZ0T3BlbjogdHJ1ZSwNCiAgICAgIHJpZ2h0T3BlbjogdHJ1ZSwNCiAgICAgIGpkTmFtZU5ldzogIiIsDQogICAgICBpdGVtVmlld006ICIiLA0KICAgICAgcGhvdG9QYXRoc006IFtdLA0KICAgICAgc2VhcmNoU2hvdzp0cnVlDQogICAgfTsNCiAgfSwNCg0KICBjb21wb25lbnRzOiB7DQogICAgaGVhZGVySW5kZXgsDQogICAgQmFzaWNCb3gsDQogICAgQ3VzdG9tRHZTY3JvbGxCb2FyZCwNCiAgICBDdXN0b21EdlNjcm9sbEJvYXJkMSwNCiAgICBkaWFsb2dDb21wb25lbnQsDQogICAgQmFzaWNCb3g1LA0KICAgIENoYXJ0LA0KICB9LA0KICBjb21wdXRlZDogew0KICAgIC8vIHF1ZXJ5KCkgew0KICAgIC8vICAgcmV0dXJuIHRoaXMuc29ja2V0RGF0YQ0KICAgIC8vIH0sDQogICAgLy8gICdzb2NrZXRSZWZzJzogZnVuY3Rpb24oKXsNCiAgICAvLyAgICAgICByZXR1cm4gdGhpcy5maXJzdG5hbWUgKyAnLScgKyB0aGlzLmxhc3RuYW1lDQogICAgLy8gICB9DQogIH0sDQoNCiAgbW91bnRlZCgpIHsNCiAgICAvLyB0aGlzLmdldERhdGFCeU1xdHQoDQogICAgLy8gICAgICAgIndzOi8vMTc1LjI0LjIzNS4yNDM6ODA4My9tcXR0IiwNCiAgICAvLyAgICAgICAidHJhX3RvcGljIg0KICAgIC8vICk7DQogICAgdGhpcy5jYW5jZWxMb2FkaW5nKCk7DQogICAgLy8gdGhpcy5pbml0V2ViU29ja2V0KCk7DQogICAgLy8gd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCB0aGlzLmhhbmRsZU1lc3NhZ2UpOw0KICAgIHRoaXMuZ28oIm5hbmppbmciKTsNCiAgICAvLyB0aGlzLnR5cGU9dGhpcy5wYXJhbXMudHlwZQ0KICAgIC8vIHRoaXMuZ2V0SmREYXRhKHRoaXMucGFyYW1zLnR5cGUpDQogICAgLy8gdGhpcy53b3JrTGlzdERhdGEgPSB0aGlzLndvcmtMaXN0DQogICAgbGV0IHRoYXQgPSB0aGlzOw0KICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgICAgdmFyIHJlcyA9IGUuZGF0YTsNCiAgICAgICAgICBpZiAocmVzLnBhcmFtcyAhPSBudWxsKSB7DQogICAgICAgICAgICB0aGF0LnNlYXJjaFNob3cgPSBmYWxzZQ0KICAgICAgICAgIH0NCiAgICB9KQ0KICAgIC8vIGdldEhvbWVQYWdlSW5mbyh7DQogICAgLy8gfSkudGhlbigocmVzKT0+ew0KICAgIC8vICAgbGV0IHJlYWxUaW1lTG9hZCA9IHJlcy5kYXRhLmRhdGEucmVhbFRpbWVMb2FkLnRvU3RyaW5nKCk7DQogICAgLy8gICBsZXQgcmVhbERhdGEgPSByZWFsVGltZUxvYWQuc3Vic3RyaW5nKDAscmVhbFRpbWVMb2FkLmluZGV4T2YoIi4iKSszKQ0KICAgIC8vICAgICAgIGZvcih2YXIga2V5IGluIHJlcy5kYXRhLmRhdGEpew0KICAgIC8vICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuaW5mb2RhdGEubGVuZ3RoOyBpKyspIHsNCiAgICAvLyAgICAgICAgICAgICBpZiAoa2V5ID09IHRoaXMuaW5mb2RhdGFbaV0ubmFtZSkgew0KICAgIC8vICAgICAgICAgICAgICAgdGhpcy5pbmZvZGF0YVtpXS5udW0gPSByZXMuZGF0YS5kYXRhW2tleV0NCiAgICAvLyAgICAgICAgICAgICAgIHRoaXMuaW5mb2RhdGFbNF0ubnVtID0gcmVhbERhdGENCiAgICAvLyAgICAgICAgICAgICB9DQogICAgLy8gICAgICAgICAgIH0NCiAgICAvLyAgICAgfQ0KICAgIC8vIH0pDQogICAgICANCiAgICB3aW5kb3cuc2V0SW50ZXJ2YWwoKCk9PnsNCiAgICAgIGdldEhvbWVQYWdlSW5mbyh7DQogICAgfSkudGhlbigocmVzKT0+ew0KICAgICAgbGV0IHJlYWxUaW1lTG9hZCA9IHJlcy5kYXRhLmRhdGEucmVhbFRpbWVMb2FkLnRvU3RyaW5nKCk7DQogICAgICBsZXQgcmVhbERhdGEgPSByZWFsVGltZUxvYWQuc3Vic3RyaW5nKDAscmVhbFRpbWVMb2FkLmluZGV4T2YoIi4iKSszKQ0KICAgICAgICAgIGZvcih2YXIga2V5IGluIHJlcy5kYXRhLmRhdGEpew0KICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuaW5mb2RhdGEubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgICBpZiAoa2V5ID09IHRoaXMuaW5mb2RhdGFbaV0ubmFtZSkgew0KICAgICAgICAgICAgICAgICAgdGhpcy5pbmZvZGF0YVtpXS5udW0gPSByZXMuZGF0YS5kYXRhW2tleV0NCiAgICAgICAgICAgICAgICAgIHRoaXMuaW5mb2RhdGFbNF0ubnVtID0gcmVhbERhdGENCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgIH0pDQogICAgfSwxMDAwKQ0KICAgIA0KICB9LA0KICAvLyAgIHNvY2tldHM6ew0KICAvLyAgICAgY29ubmVjdCgpew0KICAvLyAgICAgICB0aGlzLmlkID0gdGhpcy4kc29ja2V0LmlkOw0KICAvLyAgICAgICAvL+ebkeWQrGNvbm5lY3Tkuovku7YNCiAgLy8gICAgIH0sDQogIC8vICAgICBtZXNzYWdlKGRhdGEpeyAgLy/nm5HlkKxtZXNzYWdl5LqL5Lu277yM5pa55rOV5piv5ZCO5Y+w5a6a5LmJ5ZKM5o+Q5L6b55qEDQogIC8vICAgICAgIGNvbnNvbGUubG9nKGRhdGEpOw0KICAvLyAgICAgfQ0KICAvLyAgIH0sDQogIGJlZm9yZURlc3Ryb3koKSB7DQogICAgY2xlYXJJbnRlcnZhbCh0aGlzLnRpbWluZyk7DQogIH0sDQoNCiAgd2F0Y2g6IHsNCiAgICBqZE5hbWVOZXc6IHsNCiAgICAgIGhhbmRsZXIobmV3VmFsKSB7DQogICAgICAgIHRoaXMuJHJlZnMuaWZyYW1lLmNvbnRlbnRXaW5kb3cuZ2V0TWVzc2FnZUZyb21QYXJlbnQobmV3VmFsKTsNCiAgICAgIH0sDQogICAgfSwNCiAgfSwNCiAgbWV0aG9kczogew0KICAgDQogICAgZ3VpZCgpIHsNCiAgICAgICAgcmV0dXJuICd4eHh4eHh4eHh4eHg0eHh4eXh4eHh4eHh4eHh4eHh4eCcucmVwbGFjZSgvW3h5XS9nLCBmdW5jdGlvbiAoYykgew0KICAgICAgICAgICAgdmFyIHIgPSBNYXRoLnJhbmRvbSgpICogMTYgfCAwLA0KICAgICAgICAgICAgICAgIHYgPSBjID09ICd4JyA/IHIgOiAociAmIDB4MyB8IDB4OCk7DQogICAgICAgICAgICByZXR1cm4gdi50b1N0cmluZygxNik7DQogICAgICAgIH0pOw0KICAgIH0sDQogICAgIC8vIG1xdHTorqLpmIXvvIjni6znq4vvvIkNCiAgICBnZXREYXRhQnlNcXR0KHVybCwgdG9waWMpIHsNCiAgICAgIGNvbnN0IGNsaWVudElkID0gdGhpcy5ndWlkKCk7IC8vIOeUqOaIt+WQjQ0KICAgICAgY29uc3QgaG9zdCA9IHVybDsgLy8g5LiA5Liq5rWL6K+V55SodXJs77yM5pS55oiQ57uZ55qE77yMd3M6Ly9icm9rZXIuZW1xeC5pbzo4MDgzL21xdHQNCiAgICAgIGNvbnN0IG9wdGlvbnMgPSB7DQogICAgICAgIC8vIOmFjee9rg0KICAgICAgICAvLyDmtYvor5XvvJrorqLpmIXmnKzmnLpJUA0KICAgICAgICAvLyBob3N0OiBob3N0LA0KICAgICAgICAvLyBwb3J0OiBwb3J0LA0KDQogICAgICAgIGtlZXBhbGl2ZTogNjAsIC8vIOW/g+i3s+aXtumXtO+8jOm7mOiupDYwc++8jOiuvue9ruS4ujDnpoHnlKgNCiAgICAgICAgLy8gdXNlcm5hbWU6ICd0ZXN0JywgIC8vIOeUqOaIt+WQje+8iOWPr+mAie+8iQ0KICAgICAgICAvLyBwYXNzd29yZDogMTIzNCwgIC8vIOWvhuegge+8iOWPr+mAie+8iQ0KICAgICAgICBjbGllbnRJZDogY2xpZW50SWQsIC8vIOWuouaIt+err0lE77yM6buY6K6k6ZqP5py655Sf5oiQDQogICAgICAgIHByb3RvY29sSWQ6ICJNUVRUIiwNCiAgICAgICAgcHJvdG9jb2xWZXJzaW9uOiA0LA0KICAgICAgICBjbGVhbjogdHJ1ZSwgLy8gZmFsc2XlnKjnprvnur/ml7bmjqXmlLZRb1Mx5ZKMMueahOa2iOaBrw0KICAgICAgICByZWNvbm5lY3RQZXJpb2Q6IDIwMDAsIC8vIOmHjei/numXtOmalO+8jOm7mOiupDEwMDDmr6vnp5INCiAgICAgICAgY29ubmVjdFRpbWVvdXQ6IDMwICogMTAwMCwgLy8g5pS25YiwQ09OTkFDS+S5i+WJjeeahOetieW+heaXtumXtA0KICAgICAgICB3aWxsOiB7DQogICAgICAgICAgLy8g6YGX5Zix5raI5oGv77yI5a6i5oi356uv5Lil6YeN5pat5byA6L+e5o6l5pe2QnJva2Vy5bCG6Ieq5Yqo5Y+R6YCB55qE5raI5oGv77yJDQogICAgICAgICAgdG9waWM6ICJXaWxsTXNnIiwgLy8g6KaB5Y+R5biD55qE5Li76aKYDQogICAgICAgICAgcGF5bG9hZDogIltNUVRULVRFU1RdIOmBl+WYsea2iOaBr++8mui/nuaOpeW8guW4uOaWreW8gO+8gSIsIC8vIOimgeWPkeW4g+eahOa2iOaBrw0KICAgICAgICAgIHFvczogMiwgLy8gUW9TKFF1YWxpdHkgb2YgU2VydmljZSnvvIxRb1Mw77ya5Y+q6LSf6LSj5Y+R77yMUW9TMe+8muS/neivgea2iOaBr+iHs+WwkemAgei+vjHmrKHvvIxRb1My77ya5L+d6K+B5raI5oGv5Yiw5LiU5LuF5YiwMeasoQ0KICAgICAgICAgIHJldGFpbjogZmFsc2UsIC8vIOS/neeVmeagh+W/lw0KICAgICAgICB9LA0KICAgICAgfTsNCiAgICAgIGlmICh0aGlzLm1xdHRDbGllbnQgPT0gdW5kZWZpbmVkKSB7DQogICAgICAgIHRoaXMubXF0dENsaWVudCA9IG1xdHQuY29ubmVjdChob3N0LCBvcHRpb25zKTsgLy8g6L+e5o6lDQogICAgICAgIC8vIGNvbnN0IGNsaWVudCA9IG1xdHQuY29ubmVjdChob3N0LCBvcHRpb25zKTsgLy8g6L+e5o6lDQogICAgICAgIC8vIGNvbnN0IGNsaWVudCA9IG1xdHQuY29ubmVjdChob3N0KSAgLy8g6L+e5o6lDQogICAgICAgIC8vIOmUmeivr+Wbnuiwgw0KICAgICAgICB0aGlzLm1xdHRDbGllbnQub24oImVycm9yIiwgKGVycikgPT4gew0KICAgICAgICAgIGNvbnNvbGUubG9nKCJbTVFUVC1URVNUXSDov57mjqXplJnor6/igKbigKYiKTsNCiAgICAgICAgICB0aGlzLm1xdHRDbGllbnQuZW5kKCk7DQogICAgICAgIH0pOw0KICAgICAgICAvLyDph43ov57lm57osIMNCiAgICAgICAgdGhpcy5tcXR0Q2xpZW50Lm9uKCJyZWNvbm5lY3QiLCAoKSA9PiB7DQogICAgICAgICAgY29uc29sZS5sb2coIltNUVRULVRFU1RdIOmHjei/nuS4reKApuKApiIpOw0KICAgICAgICB9KTsNCiAgICAgICAgLy8g6L+e5o6l5Zue6LCDDQogICAgICAgIHRoaXMubXF0dENsaWVudC5vbigiY29ubmVjdCIsIChlKSA9PiB7DQogICAgICAgICAgLy8gY29uc29sZS5sb2coDQogICAgICAgICAgLy8gKTsNCiAgICAgICAgICAvLyDorqLpmIUNCiAgICAgICAgICB0aGlzLm1xdHRDbGllbnQuc3Vic2NyaWJlKHRvcGljLCB7IHFvczogMn0pOw0KICAgICAgICAgICBjb25zb2xlLmxvZygiW01RVFQtVEVTVF0g6L+e5o6l5Zue6LCDLi4uLiIpOw0KICAgICAgICB9KTsNCiAgICAgICAgLy8g5o6l5pS25Zue6LCDDQogICAgICAgIHRoaXMubXF0dENsaWVudC5vbigibWVzc2FnZSIsICh0b3BpYywgbWVzc2FnZSwgcGFja2V0KSA9PiB7DQogICAgICAgICAgY29uc29sZS5sb2coDQogICAgICAgICAgICBgW01RVFQtVEVTVF0g5LuO5Li76aKYICIke3RvcGljfSIg5pS25Yiw55qE5YaF5a65OiAke21lc3NhZ2UudG9TdHJpbmcoKX1gDQogICAgICAgICAgKTsNCiAgICAgICAgICAvLyDop6PmnpDlkI7nq6/mlbDmja4NCiAgICAgICAgICBsZXQgZGF0YVJlY2VpdmVkID0gSlNPTi5wYXJzZShtZXNzYWdlLnRvU3RyaW5nKCkpOw0KICAgICAgICAgIC8vIHRoaXMuaW5mb2RhdGFbNF0ubnVtID0gIGRhdGFSZWNlaXZlZC5yZWFsVGltZUxvYWQNCiAgICAgICAgICBjb25zb2xlLmxvZyhkYXRhUmVjZWl2ZWQucmVhbFRpbWVMb2FkLCdkYXRhUmVjZWl2ZWQnKTsNCiAgICAgICAgfSk7DQogICAgICB9DQogICAgICANCiAgICB9LA0KICAgIGdvKHZhbCkgew0KICAgICAgaWYgKHZhbCA9PSAibmFuamluZyIpIHsNCiAgICAgICAgdGhpcy5uYW5qID0gZmFsc2U7DQogICAgICAgIHRoaXMubGFuZEMgPSB0cnVlOw0KICAgICAgICAvLyBjb25zb2xlLmxvZygiIikNCiAgICAgICAgdGhpcy5pbWdMaXN0ID0gdGhpcy5pbWdMaXN0RGF0YS5uYW5qaW5nOw0KICAgICAgICAvLyB0aGlzLmNlbnRlckxpc3QgPSAgdGhpcy5jZW50ZXJMaXN0RGF0YS5uYW5qaW5nDQogICAgICAgIHRoaXMuY29uZmlnID0gdGhpcy5jb25maWdEYXRhLm5hbmppbmcuZGF0YTsNCiAgICAgICAgdGhpcy5yZXNvdXJjZXNMaXN0ID0gdGhpcy5yZXNvdXJjZXNMaXN0RGF0YS5uYW5qaW5nOw0KICAgICAgICB0aGlzLmxldmVsQ29uZmlnLmRhdGEgPSB0aGlzLmxldmVsQ29uZmlnRGF0YS5uYW5qaW5nLmRhdGE7DQogICAgICAgIC8vIHRoaXMuJGZvcmNlVXBkYXRlKCk7DQogICAgICAgIC8vICB0aGlzLmNhbmNlbExvYWRpbmcoKTsNCiAgICAgIH0gZWxzZSBpZiAodmFsID09ICJsYW5kQ2hpbGQiKSB7DQogICAgICAgIHRoaXMuJHJvdXRlci5wdXNoKCIvbGFuZENoaWxkIik7DQogICAgICAgIHRoaXMubGFuZEMgPSBmYWxzZTsNCiAgICAgIH0NCiAgICB9LA0KICAgIHNob3c6IGZ1bmN0aW9uICgpIHsNCiAgICAgIHRoaXMubGVmdE9wZW4gPSB0cnVlOw0KICAgICAgdGhpcy5yaWdodE9wZW4gPSB0cnVlOw0KICAgICAgdGhpcy5iYXNpY0luZm9TaG93ID0gdHJ1ZTsNCiAgICB9LA0KICAgIC8v6I635Y+W5Z+65Zyw5pWw5o2uDQogICAgZ2V0SmREYXRhKHZhbCkgew0KICAgICAgYXhpb3MNCiAgICAgICAgLmdldCgiL2pzb24vcXFEYXRhLmpzb24iKQ0KICAgICAgICAudGhlbigocmVzdWx0KSA9PiB7DQogICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZXN1bHQuZGF0YS5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgaWYgKHJlc3VsdC5kYXRhW2ldLmpkID09IHRoaXMucGFyYW1zLnBhcmFtcykgew0KICAgICAgICAgICAgICB0aGlzLndvcmtMaXN0cXFbMF0udmFsdWUgPSByZXN1bHQuZGF0YVtpXS5xcTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHsNCiAgICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7DQogICAgICAgIH0pOw0KICAgICAgaWYgKHZhbCA9PSAi5LiN5Yqo5LqnIikgew0KICAgICAgICAvLyAgIHRoaXMudGl0PSLlnJ/lnLDor4Hkv6Hmga8iDQogICAgICAgIHRoaXMud29ya0xpc3REYXRhID0gW107DQogICAgICAgIGF4aW9zDQogICAgICAgICAgLmdldCgiL2pzb24vamREYXRhLmpzb24iKQ0KICAgICAgICAgIC50aGVuKChyZXN1bHQpID0+IHsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKCJnZXRNZW51RGF0YTExMSIsIHJlc3VsdC5kYXRhKTsNCiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcmVzdWx0LmRhdGEubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgaWYgKHJlc3VsdC5kYXRhW2ldLmpkID09IHRoaXMucGFyYW1zLnBhcmFtcykgew0KICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCJyZXN1bHQuZGF0YVtpXSIsIHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICAvLyB0aGlzLndvcmtMaXN0LnB1c2gocmVzdWx0LmRhdGFbaV0pDQogICAgICAgICAgICAgICAgdGhpcy53b3JrTGlzdERhdGEucHVzaChyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VXb3JrTGlzdEJkYyhyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VXb3JrTGlzdChyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9KQ0KICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTsNCiAgICAgICAgICB9KTsNCiAgICAgIH0gZWxzZSBpZiAodmFsID09ICLlnJ/lnLDor4EiKSB7DQogICAgICAgIC8vIHRoaXMudGl0PSLlnJ/lnLDor4Hkv6Hmga8iDQogICAgICAgIHRoaXMud29ya0xpc3REYXRhID0gW107DQogICAgICAgIHRoaXMuZmN6U2hvdyA9IHRydWU7DQogICAgICAgIGF4aW9zDQogICAgICAgICAgLmdldCgiL2pzb24vdGREYXRhLmpzb24iKQ0KICAgICAgICAgIC50aGVuKChyZXN1bHQpID0+IHsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKCJnZXRNZW51RGF0YTExMSIsIHJlc3VsdC5kYXRhKTsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKCJ0aGlzLnBhcmFtcy5wYXJhbXMiLCB0aGlzLnBhcmFtcy5wYXJhbXMpOw0KICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZXN1bHQuZGF0YS5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICBpZiAocmVzdWx0LmRhdGFbaV0uamQgPT0gdGhpcy5wYXJhbXMucGFyYW1zKSB7DQogICAgICAgICAgICAgICAgY29uc29sZS5sb2coInJlc3VsdC5kYXRhW2ldIiwgcmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIHRoaXMud29ya0xpc3REYXRhLnB1c2gocmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlV29ya0xpc3RUZChyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VXb3JrTGlzdChyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9KQ0KICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTsNCiAgICAgICAgICB9KTsNCiAgICAgICAgdGhpcy53b3JrTGlzdERhdGFmY3ogPSBbXTsNCiAgICAgICAgYXhpb3MNCiAgICAgICAgICAuZ2V0KCIvanNvbi9mY3pEYXRhLmpzb24iKQ0KICAgICAgICAgIC50aGVuKChyZXN1bHQpID0+IHsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKCJnZXRNZW51RGF0YTExMSIsIHJlc3VsdC5kYXRhKTsNCiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcmVzdWx0LmRhdGEubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgaWYgKHJlc3VsdC5kYXRhW2ldLmpkID09IHRoaXMucGFyYW1zLnBhcmFtcykgew0KICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCJyZXN1bHQuZGF0YVtpXSIsIHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICB0aGlzLndvcmtMaXN0RGF0YWZjei5wdXNoKHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVdvcmtMaXN0ZmN6KHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICAvLyAgdGhpcy5jaGFuZ2VXb3JrTGlzdChyZXN1bHQuZGF0YVtpXSkNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0pDQogICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpOw0KICAgICAgICAgIH0pOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpcy53b3JrTGlzdERhdGEgPSBbXTsNCiAgICAgICAgdGhpcy5mY3pTaG93ID0gdHJ1ZTsNCiAgICAgICAgYXhpb3MNCiAgICAgICAgICAuZ2V0KCIvanNvbi9qZERhdGEuanNvbiIpDQogICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coImdldE1lbnVEYXRhMTExIiwgcmVzdWx0LmRhdGEpOw0KICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZXN1bHQuZGF0YS5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICBpZiAocmVzdWx0LmRhdGFbaV0uamQgPT0gdGhpcy5wYXJhbXMucGFyYW1zKSB7DQogICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VXb3JrTGlzdEJkYyhyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9KQ0KICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTsNCiAgICAgICAgICB9KTsNCiAgICAgICAgYXhpb3MNCiAgICAgICAgICAuZ2V0KCIvanNvbi90ZERhdGEuanNvbiIpDQogICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coImdldE1lbnVEYXRhMTExIiwgcmVzdWx0LmRhdGEpOw0KICAgICAgICAgICAgY29uc29sZS5sb2coInRoaXMucGFyYW1zLnBhcmFtcyIsIHRoaXMucGFyYW1zLnBhcmFtcyk7DQogICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJlc3VsdC5kYXRhLmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgICAgIGlmIChyZXN1bHQuZGF0YVtpXS5qZCA9PSB0aGlzLnBhcmFtcy5wYXJhbXMpIHsNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygicmVzdWx0LmRhdGFbaV0iLCByZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgdGhpcy53b3JrTGlzdERhdGEucHVzaChyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VXb3JrTGlzdFRkKHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVdvcmtMaXN0KHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0pDQogICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpOw0KICAgICAgICAgIH0pOw0KICAgICAgICB0aGlzLndvcmtMaXN0RGF0YWZjeiA9IFtdOw0KICAgICAgICBheGlvcw0KICAgICAgICAgIC5nZXQoIi9qc29uL2ZjekRhdGEuanNvbiIpDQogICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coImdldE1lbnVEYXRhMTExIiwgcmVzdWx0LmRhdGEpOw0KICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZXN1bHQuZGF0YS5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICBpZiAocmVzdWx0LmRhdGFbaV0uamQgPT0gdGhpcy5wYXJhbXMucGFyYW1zKSB7DQogICAgICAgICAgICAgICAgY29uc29sZS5sb2coInJlc3VsdC5kYXRhW2ldIiwgcmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIHRoaXMud29ya0xpc3REYXRhZmN6LnB1c2gocmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlV29ya0xpc3RmY3oocmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIC8vICB0aGlzLmNoYW5nZVdvcmtMaXN0KHJlc3VsdC5kYXRhW2ldKQ0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgfSkNCiAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7DQogICAgICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7DQogICAgICAgICAgfSk7DQogICAgICB9DQogICAgfSwNCiAgICBnZXRNYWluKCkgew0KICAgICAgdGhpcy4kcm91dGVyLnB1c2goew0KICAgICAgICBuYW1lOiAibGFuZENoaWxkIiwNCiAgICAgICAgcGFyYW1zOiB7IGlkOiB0aGlzLnBhcmFtcy5wYXJhbXMsIHR5cGU6IHRoaXMucGFyYW1zLnR5cGUgfSwNCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy/lu7rnrZHniankv6Hmga8NCiAgICBjaGFuZ2VXb3JrTGlzdChkYXRhKSB7DQogICAgICB2YXIgZW50cmllcyA9IE9iamVjdC5lbnRyaWVzKGRhdGEpOw0KICAgICAgdmFyIGxpc3QgPSBlbnRyaWVzLm1hcChmdW5jdGlvbiAoaXRlbSkgew0KICAgICAgICByZXR1cm4gew0KICAgICAgICAgIHZhbHVlOiBpdGVtWzFdLA0KICAgICAgICAgIG5hbWU6IGl0ZW1bMF0sDQogICAgICAgIH07DQogICAgICB9KTsNCiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykgew0KICAgICAgICBmb3IgKHZhciB0ID0gMDsgdCA8IHRoaXMud29ya0xpc3QubGVuZ3RoOyB0KyspIHsNCiAgICAgICAgICBpZiAobGlzdFtpXS5uYW1lID09IHRoaXMud29ya0xpc3RbdF0ubmFtZSkgew0KICAgICAgICAgICAgdGhpcy53b3JrTGlzdFt0XS52YWx1ZSA9IGxpc3RbaV0udmFsdWU7DQogICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICB9DQogICAgICB0aGlzLndvcmtMaXN0RGF0YSA9IHRoaXMud29ya0xpc3Q7DQogICAgfSwNCiAgICAvL+S4jeWKqOS6pw0KICAgIGNoYW5nZVdvcmtMaXN0QmRjKGRhdGEpIHsNCiAgICAgIC8vIHRoaXMud29ya0xpc3RCZGM9W10NCiAgICAgIHZhciBlbnRyaWVzID0gT2JqZWN0LmVudHJpZXMoZGF0YSk7DQogICAgICB2YXIgbGlzdCA9IGVudHJpZXMubWFwKGZ1bmN0aW9uIChpdGVtKSB7DQogICAgICAgIHJldHVybiB7DQogICAgICAgICAgdmFsdWU6IGl0ZW1bMV0sDQogICAgICAgICAgbmFtZTogaXRlbVswXSwNCiAgICAgICAgfTsNCiAgICAgIH0pOw0KICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7DQogICAgICAgIGZvciAodmFyIHQgPSAwOyB0IDwgdGhpcy53b3JrTGlzdEJkYy5sZW5ndGg7IHQrKykgew0KICAgICAgICAgIGlmIChsaXN0W2ldLm5hbWUgPT0gdGhpcy53b3JrTGlzdEJkY1t0XS5uYW1lKSB7DQogICAgICAgICAgICB0aGlzLndvcmtMaXN0QmRjW3RdLnZhbHVlID0gbGlzdFtpXS52YWx1ZTsNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgIC8vICB0aGlzLndvcmtMaXN0RGF0YSA9IHRoaXMud29ya0xpc3RCZGMNCiAgICB9LA0KICAgIC8v5Zyf5Zyw6K+BDQogICAgY2hhbmdlV29ya0xpc3RUZChkYXRhKSB7DQogICAgICBjb25zb2xlLmxvZygiZGF0YSIsIGRhdGEpOw0KICAgICAgdmFyIGVudHJpZXMgPSBPYmplY3QuZW50cmllcyhkYXRhKTsNCiAgICAgIHZhciBsaXN0ID0gZW50cmllcy5tYXAoZnVuY3Rpb24gKGl0ZW0pIHsNCiAgICAgICAgcmV0dXJuIHsNCiAgICAgICAgICB2YWx1ZTogaXRlbVsxXSwNCiAgICAgICAgICBuYW1lOiBpdGVtWzBdLA0KICAgICAgICB9Ow0KICAgICAgfSk7DQogICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgZm9yICh2YXIgdCA9IDA7IHQgPCB0aGlzLndvcmtMaXN0TmV3Lmxlbmd0aDsgdCsrKSB7DQogICAgICAgICAgaWYgKGxpc3RbaV0ubmFtZSA9PSB0aGlzLndvcmtMaXN0TmV3W3RdLm5hbWUpIHsNCiAgICAgICAgICAgIHRoaXMud29ya0xpc3ROZXdbdF0udmFsdWUgPSBsaXN0W2ldLnZhbHVlOw0KICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgfQ0KICAgICAgdGhpcy53b3JrTGlzdERhdGEgPSB0aGlzLndvcmtMaXN0TmV3Ow0KICAgIH0sDQogICAgLy/miL/kuqfor4ENCiAgICBjaGFuZ2VXb3JrTGlzdGZjeihkYXRhKSB7DQogICAgICB2YXIgZW50cmllcyA9IE9iamVjdC5lbnRyaWVzKGRhdGEpOw0KICAgICAgdmFyIGxpc3QgPSBlbnRyaWVzLm1hcChmdW5jdGlvbiAoaXRlbSkgew0KICAgICAgICByZXR1cm4gew0KICAgICAgICAgIHZhbHVlOiBpdGVtWzFdLA0KICAgICAgICAgIG5hbWU6IGl0ZW1bMF0sDQogICAgICAgIH07DQogICAgICB9KTsNCiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykgew0KICAgICAgICBmb3IgKHZhciB0ID0gMDsgdCA8IHRoaXMud29ya0xpc3RGQ1oubGVuZ3RoOyB0KyspIHsNCiAgICAgICAgICBpZiAobGlzdFtpXS5uYW1lID09IHRoaXMud29ya0xpc3RGQ1pbdF0ubmFtZSkgew0KICAgICAgICAgICAgdGhpcy53b3JrTGlzdEZDWlt0XS52YWx1ZSA9IGxpc3RbaV0udmFsdWU7DQogICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICB9DQogICAgICAvLyAgdGhpcy53b3JrTGlzdERhdGEgPSB0aGlzLndvcmtMaXN0RkNaDQogICAgfSwNCiAgICAvL+iOt+WPluWcsOWbvuWPguaVsA0KICAgIGdldEZyb21JZnJhbWUodmFsdWUpIHsNCiAgICAgIHRoaXMudGl0ID0gIuW7uuetkeeJqeS/oeaBryI7DQogICAgICAodGhpcy53b3JrTGlzdEJkYyA9IFsNCiAgICAgICAgLy8geyBrZXk6ICLlu7rnrZHnianlkI3np7AiLCB2YWx1ZTogIiIsbmFtZToiamQiIH0sDQogICAgICAgIC8vIHsga2V5OiAi5Z2Q6JC95Zyw5Z2AIiwgdmFsdWU6ICIiLG5hbWU6InR1ZGkiIH0sDQogICAgICAgIHsga2V5OiAi5LiN5Yqo5Lqn6K+B5Y+3IiwgdmFsdWU6ICIiLCBuYW1lOiAiYmRjemgiIH0sDQogICAgICAgIHsga2V5OiAi5p2D5Yqb5oCn6LSoIiwgdmFsdWU6ICIiLCBuYW1lOiAicWx4eiIgfSwNCiAgICAgICAgeyBrZXk6ICLnlKjpgJQiLCB2YWx1ZTogIiIsIG5hbWU6ICJ5dCIgfSwNCiAgICAgICAgeyBrZXk6ICLlrpflnLDpnaLnp68iLCB2YWx1ZTogIiIsIG5hbWU6ICJ6ZG1qIiB9LA0KICAgICAgICB7IGtleTogIuW7uuetkemdouenryIsIHZhbHVlOiAiIiwgbmFtZTogImp6bWoiIH0sDQogICAgICAgIHsga2V5OiAi5p2D5Yip5Lq6IiwgdmFsdWU6ICIiLCBuYW1lOiAicWxyIiB9LA0KICAgICAgICAvLyB7IGtleTogIuWFseacieaDheWGtSIsIHZhbHVlOiAiIixuYW1lOiJneXFrIiB9LA0KICAgICAgICAvLyB7IGtleTogIuWdkOiQvSIsIHZhbHVlOiAiIiAsbmFtZToiemwifSwNCiAgICAgICAgLy8geyBrZXk6ICLkuI3liqjkuqfljZXlhYPlj7ciLCB2YWx1ZTogIiIgLG5hbWU6ImJkY2R5aCJ9LA0KICAgICAgICAvLyB7IGtleTogIuadg+WKm+exu+WeiyIsIHZhbHVlOiAiIiAsbmFtZToicWxseCJ9LA0KICAgICAgICAvLyB7IGtleTogIuS9v+eUqOacn+mZkCIsIHZhbHVlOiAiIiAsbmFtZToic3lxeCJ9LA0KICAgICAgICAvLyB7IGtleTogIuaIv+Wxi+e7k+aehCIsIHZhbHVlOiAiIiAsbmFtZToiZndqZyJ9LA0KICAgICAgICAvLyB7IGtleTogIuaIv+Wxi+aAu+WxguaVsCIsIHZhbHVlOiAiIiAsbmFtZToiZnd6Y3MifSwNCiAgICAgICAgLy8geyBrZXk6ICLmiYDlnKjlsYLmlbAiLCB2YWx1ZTogIiIgLG5hbWU6InN6Y3MifSwNCiAgICAgICAgLy8geyBrZXk6ICLkuJjmnYPlj7ciLCB2YWx1ZTogIiIgLG5hbWU6InFxaCJ9LA0KICAgICAgICAvLyB7IGtleTogIuadpea6kCIsIHZhbHVlOiAiIiAsbmFtZToibHkifSwNCiAgICAgIF0pLA0KICAgICAgICAodGhpcy53b3JrTGlzdE5ldyA9IFsNCiAgICAgICAgICAvLyB7IGtleTogIuW7uuetkeeJqeWQjeensCIsIHZhbHVlOiAiIixuYW1lOiJqZCIgfSwNCiAgICAgICAgICAvLyB7IGtleTogIuWdkOiQveWcsOWdgCIsIHZhbHVlOiAiIixuYW1lOiJ0dWRpIiB9LA0KICAgICAgICAgIHsga2V5OiAi5Zyf5Zyw6K+B5Y+3IiwgdmFsdWU6ICIiLCBuYW1lOiAidGR6aCIgfSwNCiAgICAgICAgICB7IGtleTogIuadg+WKm+aAp+i0qCIsIHZhbHVlOiAiIiwgbmFtZTogInN5cWx4IiB9LA0KICAgICAgICAgIHsga2V5OiAi5Zyf5Zyw55So6YCUIiwgdmFsdWU6ICIiLCBuYW1lOiAiZGx5dCIgfSwNCiAgICAgICAgICB7IGtleTogIuWcn+WcsOmdouenryIsIHZhbHVlOiAiIiwgbmFtZTogInRkbWoiIH0sDQogICAgICAgICAgeyBrZXk6ICLmnYPliKnkuroiLCB2YWx1ZTogIiIsIG5hbWU6ICJ0ZHN5cXIiIH0sDQogICAgICAgICAgLy8gIHsga2V5OiAi5YWx5pyJ5oOF5Ya1IiwgdmFsdWU6ICIiLG5hbWU6Imd5cWsiIH0sDQogICAgICAgICAgLy8geyBrZXk6ICLlnZDokL0iLCB2YWx1ZTogIiIsbmFtZToiemwiIH0sDQogICAgICAgICAgLy8geyBrZXk6ICLlnLDlj7ciLCB2YWx1ZTogIiIgLG5hbWU6ImRoIn0sDQoNCiAgICAgICAgICAvLyB7IGtleTogIuWbvuWPtyIsIHZhbHVlOiAiIiAsbmFtZToidGgifSwNCg0KICAgICAgICAgIC8vIHsga2V5OiAi5L2/55So5p2D6Z2i56evIiwgdmFsdWU6ICIiLG5hbWU6InN5cW1qIiB9LA0KICAgICAgICAgIC8vIHsga2V5OiAi57uI5q2i5pel5pyfIiwgdmFsdWU6ICIiICxuYW1lOiJ6enJxIn0sDQogICAgICAgIF0pLA0KICAgICAgICAodGhpcy53b3JrTGlzdEZDWiA9IFsNCiAgICAgICAgICAvLyB7IGtleTogIuW7uuetkeeJqeWQjeensCIsIHZhbHVlOiAiIixuYW1lOiJqZCIgfSwNCiAgICAgICAgICAvLyB7IGtleTogIuWdkOiQveWcsOWdgCIsIHZhbHVlOiAiIixuYW1lOiJ0dWRpIiB9LA0KICAgICAgICAgIC8vIHsga2V5OiAi5oi/5Lqn6K+B5Y+3IiwgdmFsdWU6ICIiICxuYW1lOiJmY3poIn0sDQogICAgICAgICAgLy8geyBrZXk6ICLmiL/kuqfkvb/nlKjmnYPkuroiLCB2YWx1ZTogIiIsbmFtZToiZndzeXFyIiB9LA0KICAgICAgICAgIC8vIHsga2V5OiAi5Z2Q6JC9IiwgdmFsdWU6ICIiLG5hbWU6InpsIiB9LA0KICAgICAgICAgIC8vIHsga2V5OiAi5oi/5bGL55So6YCUIiwgdmFsdWU6ICIiICxuYW1lOiJmd2NiIn0sDQogICAgICAgICAgLy8geyBrZXk6ICLnu5PmnoQiLCB2YWx1ZTogIiIsbmFtZToiamciIH0sDQogICAgICAgICAgLy8geyBrZXk6ICLmiL/lsYvmgLvlsYLmlbAiLCB2YWx1ZTogIiIsbmFtZToiZnd6Y3MiIH0sDQogICAgICAgICAgLy8geyBrZXk6ICLpnaLnp68iLCB2YWx1ZTogIiIgLG5hbWU6Imp6bWoifSwNCiAgICAgICAgICAvLyAgeyBrZXk6ICLpnaLnp68iLCB2YWx1ZTogIiIgLG5hbWU6ImNxbHkifSwNCiAgICAgICAgICB7IGtleTogIuaIv+S6p+ivgeWPtyIsIHZhbHVlOiAiIiwgbmFtZTogImZjemgiIH0sDQogICAgICAgICAgeyBrZXk6ICLmiL/lsYvkuqfliKsiLCB2YWx1ZTogIiIsIG5hbWU6ICJmd2NiIiB9LA0KICAgICAgICAgIHsga2V5OiAi5oi/5bGL55So6YCUIiwgdmFsdWU6ICIiLCBuYW1lOiAiZnd5dCIgfSwNCiAgICAgICAgICB7IGtleTogIuaIv+Wxi+mdouenryIsIHZhbHVlOiAiIiwgbmFtZTogImp6bWoiIH0sDQogICAgICAgICAgeyBrZXk6ICLmiL/kuqfkvb/nlKjmnYPkuroiLCB2YWx1ZTogIiIsIG5hbWU6ICJmd3N5cXIiIH0sDQogICAgICAgIF0pLA0KICAgICAgICAodGhpcy5hY3RpdmVDb2xvciA9IC0xKTsNCiAgICAgIHRoaXMud29ya0xpc3RxcSA9IFt7IGtleTogIuehruadg+S/oeaBryIsIHZhbHVlOiAiIiwgbmFtZTogInFxIiB9XTsNCiAgICAgIHRoaXMucGFyYW1zID0gdmFsdWU7DQogICAgICBpZiAodGhpcy5wYXJhbXMudHlwZSA9PSAi5LiN5Yqo5LqnIikgew0KICAgICAgICB0aGlzLmNlbnRlckxpc3QgPSBbDQogICAgICAgICAgew0KICAgICAgICAgICAgdGl0bGU6ICLkuI3liqjkuqfmnYPor4Hkv6Hmga8iLA0KICAgICAgICAgICAgY291bnQ6IDAsDQogICAgICAgICAgICBpbWdVcmw6IHJlcXVpcmUoIkAvYXNzZXRzL2xhbmRSZXMvYmRjLnBuZyIpLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgdGl0bGU6ICLnoa7mnYPmg4XlhrUiLA0KICAgICAgICAgICAgY291bnQ6IDAsDQogICAgICAgICAgICBpbWdVcmw6IHJlcXVpcmUoIkAvYXNzZXRzL2xhbmRSZXMvcXEucG5nIiksDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICB0aXRsZTogIuivgeS7tuafpeeciyIsDQogICAgICAgICAgICBjb3VudDogMCwNCiAgICAgICAgICAgIGltZ1VybDogcmVxdWlyZSgiQC9hc3NldHMvbGFuZFJlcy9mZGMucG5nIiksDQogICAgICAgICAgfSwNCiAgICAgICAgXTsNCiAgICAgIH0gZWxzZSBpZiAodGhpcy5wYXJhbXMudHlwZSA9PSAi5Zyf5Zyw6K+BIikgew0KICAgICAgICB0aGlzLmNlbnRlckxpc3QgPSBbDQogICAgICAgICAgew0KICAgICAgICAgICAgdGl0bGU6ICLlnJ/lnLDor4Hkv6Hmga8iLA0KICAgICAgICAgICAgY291bnQ6ICLml6AiLA0KICAgICAgICAgICAgaW1nVXJsOiByZXF1aXJlKCJAL2Fzc2V0cy9sYW5kUmVzL3Rkei5wbmciKSwNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHRpdGxlOiAi5oi/5Lqn6K+B5L+h5oGvIiwNCiAgICAgICAgICAgIGNvdW50OiAwLA0KICAgICAgICAgICAgaW1nVXJsOiByZXF1aXJlKCJAL2Fzc2V0cy9sYW5kUmVzL2ZkYy5wbmciKSwNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHRpdGxlOiAi56Gu5p2D5oOF5Ya1IiwNCiAgICAgICAgICAgIGNvdW50OiAwLA0KICAgICAgICAgICAgaW1nVXJsOiByZXF1aXJlKCJAL2Fzc2V0cy9sYW5kUmVzL3FxLnBuZyIpLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgdGl0bGU6ICLor4Hku7bmn6XnnIsiLA0KICAgICAgICAgICAgY291bnQ6IDAsDQogICAgICAgICAgICBpbWdVcmw6IHJlcXVpcmUoIkAvYXNzZXRzL2xhbmRSZXMvYmRjLnBuZyIpLA0KICAgICAgICAgIH0sDQogICAgICAgIF07DQogICAgICB9DQogICAgICB0aGlzLmdldEpkRGF0YSh0aGlzLnBhcmFtcy50eXBlKTsNCiAgICAgIHRoaXMubGVmdE9wZW4gPSBmYWxzZTsNCiAgICAgIHRoaXMucmlnaHRPcGVuID0gZmFsc2U7DQogICAgICB0aGlzLlZpc2libGUgPSBmYWxzZTsNCiAgICAgIHRoaXMuYmFzaWNJbmZvU2hvdyA9IHRydWU7DQogICAgfSwNCg0KICAgIC8v6I+c5Y2V6Lez6L2sDQogICAgYnRuKHZhbCwgaW5kZXgpIHsNCiAgICAgIGlmICh2YWwgIT0gIuivgeS7tuafpeeciyIpIHsNCiAgICAgICAgdGhpcy50aXQgPSB2YWw7DQogICAgICB9DQoNCiAgICAgIHRoaXMuVmlzaWJsZSA9IGZhbHNlOw0KICAgICAgdGhpcy5iYXNpY0luZm9TaG93ID0gdHJ1ZTsNCiAgICAgIHRoaXMuYWN0aXZlQ29sb3IgPSBpbmRleDsNCiAgICAgIGlmICh2YWwgPT0gIuS4jeWKqOS6p+adg+ivgeS/oeaBryIpIHsNCiAgICAgICAgdGhpcy53b3JrTGlzdERhdGEgPSB0aGlzLndvcmtMaXN0QmRjOw0KICAgICAgICB0aGlzLnJpZ2h0T3BlbiA9IGZhbHNlOw0KICAgICAgfSBlbHNlIGlmICh2YWwgPT0gIuWcn+WcsOivgeS/oeaBryIpIHsNCiAgICAgICAgdGhpcy53b3JrTGlzdERhdGEgPSB0aGlzLndvcmtMaXN0TmV3Ow0KICAgICAgICB0aGlzLnJpZ2h0T3BlbiA9IGZhbHNlOw0KICAgICAgfSBlbHNlIGlmICh2YWwgPT0gIuaIv+S6p+ivgeS/oeaBryIpIHsNCiAgICAgICAgdGhpcy53b3JrTGlzdERhdGEgPSB0aGlzLndvcmtMaXN0RkNaOw0KICAgICAgICB0aGlzLnJpZ2h0T3BlbiA9IGZhbHNlOw0KICAgICAgfSBlbHNlIGlmICh2YWwgPT0gIuehruadg+aDheWGtSIpIHsNCiAgICAgICAgY29uc29sZS5sb2coInRoaXMud29ya0xpc3RxcSIsIHRoaXMud29ya0xpc3RxcSk7DQogICAgICAgIHRoaXMud29ya0xpc3REYXRhID0gdGhpcy53b3JrTGlzdHFxOw0KICAgICAgICB0aGlzLnJpZ2h0T3BlbiA9IGZhbHNlOw0KICAgICAgfQ0KICAgIH0sDQoNCiAgICBzZWFyY2goZGF0YSkgew0KICAgICAgY29uc29sZS5sb2coImRhdGEiLCBkYXRhKTsNCiAgICAgIHRoaXMuVmlzaWJsZSA9IHRydWU7DQogICAgICB0aGlzLmJhc2ljSW5mb1Nob3cgPSBmYWxzZTsNCiAgICAgIHRoaXMucmlnaHRPcGVuID0gZmFsc2U7DQogICAgICB0aGlzLiRuZXh0VGljaygoKSA9PiB7DQogICAgICAgIC8v6L+Z6YeM55qEZGlhbG9n5LiO5LiK6Z2iZGlhbG9nLWNvbXBvbmVudOe7hOS7tumHjOmdoueahHJlZuWxnuaAp+WAvOaYr+S4gOiHtOeahA0KICAgICAgICAvL2luaXTosIPnlKjnmoTmmK9kaWFsb2ctY29tcG9uZW5057uE5Lu26YeM6Z2i55qEaW5pdOaWueazlQ0KICAgICAgICAvL2RhdGHmmK/kvKDpgJLnu5nlvLnnqpfpobXpnaLnmoTlgLwNCiAgICAgICAgdGhpcy4kcmVmcy5kaWFsb2cuaW5pdChkYXRhKTsNCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy/lhbPpl63mn6Xor6LlvLnmoYYNCiAgICBnZXRDbG9zZSgpIHsNCiAgICAgIHRoaXMuVmlzaWJsZSA9IGZhbHNlOw0KICAgICAgdGhpcy5yaWdodE9wZW4gPSB0cnVlOw0KICAgICAgdGhpcy5iYXNpY0luZm9TaG93ID0gdHJ1ZTsNCiAgICB9LA0KICAgIGdldGpkTmFtZSh2YWwpIHsNCiAgICAgIHRoaXMuamROYW1lTmV3ID0gdmFsOw0KICAgIH0sDQogICAgZ2V0amROYW1lQ2xpY2sodmFsKSB7DQogICAgICBjb25zb2xlLmxvZygidmFsIiwgdmFsKTsNCiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHsNCiAgICAgICAgbmFtZTogImxhbmRDaGlsZCIsDQogICAgICAgIHBhcmFtczogeyBpZDogdmFsLmpkLCB0eXBlOiB2YWwudHlwZSB9LA0KICAgICAgfSk7DQogICAgfSwNCiAgICBnb1BhZ2UodmFsKSB7DQogICAgICBpZiAodmFsID09IDApIHsNCiAgICAgICAgY29uc29sZS5sb2coIui/lOWbnuaIv+WcsOi1hOa6kC3kuLvlnLrmma8iKTsNCiAgICAgICAgLy8gdGhpcy4kcm91dGVyLnB1c2goIi9sYW5kIik7DQogICAgICAgIHRoaXMuJHJvdXRlci5wdXNoKCIvIik7DQogICAgICB9DQogICAgfSwNCiAgICBjYW5jZWxMb2FkaW5nKCkgew0KICAgICAgc2V0VGltZW91dCgoKSA9PiB7DQogICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlOw0KICAgICAgfSwgNTAwKTsNCiAgICB9LA0KICAgIC8qKg0KICAgICAqIOWKqOaAgeS8oOi+k+WfjuW4guWQjeensA0KICAgICAqIEBwYXJhbSBldmVudA0KICAgICAqLw0KICAgIC8vIGhhbmRsZU1lc3NhZ2UoZXZlbnQpIHsNCiAgICAvLyAgIC8vIOiOt+WPluS7jmlmcmFtZemhtemdouS4reS8oOi/h+adpeeahOWAvA0KICAgIC8vICAgLy8gdmFyIGNtZCA9IGV2ZW50LmRhdGEuY21kOw0KICAgIC8vICAgdGhpcy5jaXR5TmFtZSA9IGV2ZW50LmRhdGEucGFyYW1zOw0KICAgIC8vIH0sDQogICAgYnVpbGQoKSB7DQogICAgICB0aGlzLiRyb3V0ZXIucHVzaCgiL2J1aWxkIik7DQogICAgfSwNCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICB3aW5kb3dbInZ1ZURlZmluZWRNeVByb3AiXSA9IChidWlsZCkgPT4gew0KICAgICAgdGhpcy5idWlsZCgpOw0KICAgIH07DQogICAgd2luZG93LmdldEZyb21JZnJhbWUgPSB0aGlzLmdldEZyb21JZnJhbWU7DQogICAgd2luZG93LnNob3cgPSB0aGlzLnNob3c7DQogIH0sDQp9Ow0K"},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/views/land","sourcesContent":["<template>\r\n <div id=\"index\" ref=\"appRef\" style=\"overflow: hidden\">\r\n <!-- <div class=\"bg\" :style=\"{\r\n backgroundImage:\r\n 'url(' + require(`../../assets/${backgroundPic.index}.png`) + ')',\r\n }\"> -->\r\n\r\n <iframe\r\n name=\"myframe\"\r\n frameborder=\"0\"\r\n width=\"100%\"\r\n height=\"100%\"\r\n style=\"position: absolute;\"\r\n ref=\"iframe\"\r\n :src=\"videoUrl\"\r\n :key=\"videoUrl\"\r\n ></iframe>\r\n <div class=\"bg\" @contextmenu.prevent=\"show()\">\r\n <!-- <div class=\"body-left\" @contextmenu.prevent=\"show()\"></div>\r\n <div class=\"body-right\" @contextmenu.prevent=\"show()\"></div> -->\r\n <div class=\"body-bottom\" @contextmenu.prevent=\"show()\"></div>\r\n <dv-loading v-if=\"loading\">Loading...</dv-loading>\r\n\r\n <div v-else class=\"host-body\">\r\n <!-- <headerIndex :cdata=\"{ title: '房地资源', margin: '26px auto' }\" style=\"position: relative\" :isShow=\"false\"/> -->\r\n <headerIndex\r\n style=\"position: relative\"\r\n :searchShow=\"searchShow\"\r\n />\r\n <div class=\"main\" style=\"margin-top: -100px\">\r\n <div class=\"footer-nav\">\r\n <div class=\"baseBlock\" v-for=\"(item,index) in infodata\" :key=\"index\" @click=\"goPage(7)\">\r\n <div style=\"width:100%;display:flex;flex-flow:column nowrap;align-items: center;\">\r\n <img :src=\"item.pic\" alt=\"\" style=\"width:34px;height:34px\">\r\n <p style=\"width:100%;margin-top:5px;color:#ffffff;font-size:14px;text-align: center;\">{{item.text}}</p>\r\n </div>\r\n <div style=\"width:100%;display: flex;flex-wrap: wrap;justify-content: flex-end;\">\r\n <p style=\"width:100%;word-wrap:break-word; word-break:break-all;font-size: 25px;text-align: right;\">{{item.num}}</p>\r\n <p style=\"font-size:14px;top:10px;text-align: right;position: relative;\">{{item.unit}}</p>\r\n </div>\r\n \r\n \r\n </div>\r\n \r\n </div>\r\n\r\n <div class=\"rightModel\">\r\n <div class=\"search-middle\">\r\n <ul>\r\n <li>\r\n <img\r\n src=\"../../assets/green.png\"\r\n alt=\"\"\r\n style=\"vertical-align: middle\"\r\n /><span style=\"margin: 0 5%; color: #103a55\">正常</span>\r\n <div class=\"liBox\" style=\"background-color: green\">1</div>\r\n </li>\r\n <li>\r\n <img\r\n src=\"../../assets/orange.png\"\r\n alt=\"\"\r\n style=\"vertical-align: middle\"\r\n /><span style=\"margin: 0 5%; color: #103a55\">预警</span>\r\n <div class=\"liBox\" style=\"background-color: orange\">0</div>\r\n </li>\r\n <li>\r\n <img\r\n src=\"../../assets/red.png\"\r\n alt=\"\"\r\n style=\"vertical-align: middle\"\r\n /><span style=\"margin: 0 5%; color: #103a55\">故障</span>\r\n <div class=\"liBox\" style=\"background-color: red\">0</div>\r\n </li>\r\n </ul>\r\n </div>\r\n <!-- <div class=\"rightShow\" >\r\n <BasicBox5 class=\"basicInfo\" :title=\"tit\" :dataSource=\"workListData\" v-if=\"basicInfoShow\"></BasicBox5>\r\n <dialogComponent v-if=\"Visible\" @transfer=\"getClose\" @jdNameData=\"getjdName\" @jdNameDataClick=\"getjdNameClick\" ref=\"dialog\" class=\"dialogN\">\r\n \r\n </dialogComponent>\r\n </div> -->\r\n\r\n <!-- <BasicBox title=\"房地项目类型统计\" :dataSource=\"false\">\r\n <template slot=\"top\">\r\n <Chart />\r\n </template>\r\n\r\n </BasicBox> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport CustomDvScrollBoard from \"@/components/customDvScrollBoard\";\r\nimport CustomDvScrollBoard1 from \"@/components/customDvScrollBoard1\";\r\nimport drawMixin from \"@/utils/drawMixin\";\r\nimport headerIndex from \"@/components/layout/header\";\r\nimport BasicBox from \"@/components/BasicBox\";\r\nimport dialogComponent from \"@/components/dialog\";\r\nimport Chart from \"./chart.vue\";\r\n// import io from 'socket.io-client'\r\nimport BasicBox5 from \"@/components/BasicBox5\";\r\nimport axios from \"axios\";\r\nimport {getHomePageInfo} from \"@/api/api\";\r\nimport mqtt from 'mqtt'\r\n// let socketRefs = '';\r\n\r\nexport default {\r\n mixins: [drawMixin],\r\n data() {\r\n return {\r\n infodata:[\r\n {pic:require('@/assets/newimgs/客户总数.png'),num:'397',text:'客户总数',unit:'个',name:'totalCustomer'},\r\n {pic:require('@/assets/newimgs/变电站总数.png'),num:'447',text:\"变电站总数\",unit:'座',name:'totalSite'},\r\n {pic:require('@/assets/newimgs/主变总数.png'),num:'379',text:\"主变总数\",unit:'台',name:'totalTransformationSite'},\r\n {pic:require('@/assets/newimgs/主变总容量.png'),num:'493405',text:\"主变总容量\",unit:'kVA',name:'transformationCapacity'},\r\n {pic:require('@/assets/newimgs/变电站总数.png'),num:'28502 ',text:\"实时负荷\",unit:'kW',name:'realTimeLoad'},\r\n {pic:require('@/assets/newimgs/租日总电量.png'),num:'614730',text:\"昨日总电量\",unit:'kWh',name:'yesterdayTotalElectricity'},\r\n {pic:require('@/assets/newimgs/待办工单总数.png'),num:'0',text:\"代办工单总数\",unit:'条',name:'workOrder'},\r\n {pic:require('@/assets/newimgs/告警总数.png'),num:'0',text:\"告警总数\",unit:'条',name:'warningNum'},\r\n ],\r\n Visible: false,\r\n basicInfoShow: true,\r\n videoUrl: \"/land/landMap.html\",\r\n cityName: \"\",\r\n nanj: true,\r\n landC: false,\r\n backgroundPic: {\r\n index: \"landRes/BG\",\r\n },\r\n activeColor: -1,\r\n loading: false,\r\n imgListData: {},\r\n imgList: [],\r\n\r\n configData: {\r\n jiangsu: {\r\n // header:['规划用途', '全省数量', '全省占比'],\r\n data: [],\r\n },\r\n nanjing: {\r\n // header:['规划用途', '南京数量', '南京占比'],\r\n data: [],\r\n },\r\n zhengjiang: {\r\n header: [\"规划用途\", \"全省数量\", \"全省占比\"],\r\n data: [],\r\n },\r\n changzhou: {\r\n header: [],\r\n data: [],\r\n },\r\n },\r\n config: {\r\n // header:['规划用途', '全省数量', '全省占比'],\r\n data: [],\r\n },\r\n config1: {\r\n data: [],\r\n },\r\n levelConfigData: { nanjing: { data: [0] } },\r\n levelConfig: {\r\n data: [10],\r\n shape: \"round\",\r\n waveNum: 2,\r\n },\r\n levelConfig1: {\r\n data: [55],\r\n shape: \"round\",\r\n waveNum: 2,\r\n },\r\n resourcesListData: {\r\n nanjing: [\r\n {\r\n name: \"南京规划阶段\",\r\n count: 4,\r\n },\r\n {\r\n name: \"南京计划阶段\",\r\n count: 4,\r\n },\r\n {\r\n name: \"南京建设阶段\",\r\n count: 1,\r\n },\r\n {\r\n name: \"南京投运阶段\",\r\n count: 1,\r\n },\r\n ],\r\n zhengjiang: [\r\n {\r\n name: \"规划阶段\",\r\n count: 62,\r\n },\r\n {\r\n name: \"计划阶段\",\r\n count: 9,\r\n },\r\n {\r\n name: \"建设阶段\",\r\n count: 2,\r\n },\r\n {\r\n name: \"投运阶段\",\r\n count: 5,\r\n },\r\n ],\r\n },\r\n resourcesList: [],\r\n centerListData: {\r\n nanjing: [],\r\n zhengjiang: [],\r\n },\r\n centerList: [\r\n {\r\n title: \"不动产权证信息\",\r\n count: 0,\r\n imgUrl: require(\"@/assets/landRes/bdc.png\"),\r\n },\r\n {\r\n title: \"土地证信息\",\r\n count: \"无\",\r\n imgUrl: require(\"@/assets/landRes/tdz.png\"),\r\n },\r\n {\r\n title: \"房产证信息\",\r\n count: 0,\r\n imgUrl: require(\"@/assets/landRes/fdc.png\"),\r\n },\r\n {\r\n title: \"确权情况\",\r\n count: 0,\r\n imgUrl: require(\"@/assets/landRes/qq.png\"),\r\n },\r\n ],\r\n rankingConfig: {\r\n data: [\r\n {\r\n name: \"类别1\",\r\n value: 6,\r\n },\r\n {\r\n name: \"类别2\",\r\n value: 8,\r\n },\r\n {\r\n name: \"类别3\",\r\n value: 9,\r\n },\r\n {\r\n name: \"类别4\",\r\n value: 3,\r\n },\r\n {\r\n name: \"类别5\",\r\n value: 8,\r\n },\r\n {\r\n name: \"类别6\",\r\n value: 11,\r\n },\r\n {\r\n name: \"类别7\",\r\n value: 13,\r\n },\r\n {\r\n name: \"类别7\",\r\n value: 6,\r\n },\r\n ],\r\n rowNum: 7,\r\n waitTime: 99999999999999999,\r\n },\r\n // socketId:'',\r\n //默认数据\r\n workListData: [],\r\n workListDatafcz: [],\r\n //建筑物信息\r\n // workList:[\r\n // { key: \"建筑物名称\", value: \"\",name:\"jd\" },\r\n // { key: \"坐落地址\", value: \"\",name:\"tudi\" },\r\n // { key: \"不动产证号\", value: \"\" ,name:\"bdczh\"},\r\n // { key: \"权利人\", value: \"\",name:\"qlr\" },\r\n // { key: \"坐落\", value: \"\" ,name:\"zl\"},\r\n // ],\r\n workList: [],\r\n runOnce: true,\r\n //不动产权证信息\r\n workListBdc: [],\r\n //土地证\r\n workListNew: [],\r\n //房产证数据\r\n workListFCZ: [],\r\n workListqq: [{ key: \"确权信息\", value: \"\", name: \"qq\" }],\r\n tit: \"建筑物信息\",\r\n // socketData:'jiangsu',\r\n count: 1,\r\n params: {},\r\n leftOpen: true,\r\n rightOpen: true,\r\n jdNameNew: \"\",\r\n itemViewM: \"\",\r\n photoPathsM: [],\r\n searchShow:true\r\n };\r\n },\r\n\r\n components: {\r\n headerIndex,\r\n BasicBox,\r\n CustomDvScrollBoard,\r\n CustomDvScrollBoard1,\r\n dialogComponent,\r\n BasicBox5,\r\n Chart,\r\n },\r\n computed: {\r\n // query() {\r\n // return this.socketData\r\n // },\r\n // 'socketRefs': function(){\r\n // return this.firstname + '-' + this.lastname\r\n // }\r\n },\r\n\r\n mounted() {\r\n // this.getDataByMqtt(\r\n // \"ws://175.24.235.243:8083/mqtt\",\r\n // \"tra_topic\"\r\n // );\r\n this.cancelLoading();\r\n // this.initWebSocket();\r\n // window.addEventListener(\"message\", this.handleMessage);\r\n this.go(\"nanjing\");\r\n // this.type=this.params.type\r\n // this.getJdData(this.params.type)\r\n // this.workListData = this.workList\r\n let that = this;\r\n window.addEventListener('message', function (e) {\r\n var res = e.data;\r\n if (res.params != null) {\r\n that.searchShow = false\r\n }\r\n })\r\n // getHomePageInfo({\r\n // }).then((res)=>{\r\n // let realTimeLoad = res.data.data.realTimeLoad.toString();\r\n // let realData = realTimeLoad.substring(0,realTimeLoad.indexOf(\".\")+3)\r\n // for(var key in res.data.data){\r\n // for (let i = 0; i < this.infodata.length; i++) {\r\n // if (key == this.infodata[i].name) {\r\n // this.infodata[i].num = res.data.data[key]\r\n // this.infodata[4].num = realData\r\n // }\r\n // }\r\n // }\r\n // })\r\n \r\n window.setInterval(()=>{\r\n getHomePageInfo({\r\n }).then((res)=>{\r\n let realTimeLoad = res.data.data.realTimeLoad.toString();\r\n let realData = realTimeLoad.substring(0,realTimeLoad.indexOf(\".\")+3)\r\n for(var key in res.data.data){\r\n for (let i = 0; i < this.infodata.length; i++) {\r\n if (key == this.infodata[i].name) {\r\n this.infodata[i].num = res.data.data[key]\r\n this.infodata[4].num = realData\r\n }\r\n }\r\n }\r\n })\r\n },1000)\r\n \r\n },\r\n // sockets:{\r\n // connect(){\r\n // this.id = this.$socket.id;\r\n // //监听connect事件\r\n // },\r\n // message(data){ //监听message事件,方法是后台定义和提供的\r\n // console.log(data);\r\n // }\r\n // },\r\n beforeDestroy() {\r\n clearInterval(this.timing);\r\n },\r\n\r\n watch: {\r\n jdNameNew: {\r\n handler(newVal) {\r\n this.$refs.iframe.contentWindow.getMessageFromParent(newVal);\r\n },\r\n },\r\n },\r\n methods: {\r\n \r\n guid() {\r\n return 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n var r = Math.random() * 16 | 0,\r\n v = c == 'x' ? r : (r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n },\r\n // mqtt订阅(独立)\r\n getDataByMqtt(url, topic) {\r\n const clientId = this.guid(); // 用户名\r\n const host = url; // 一个测试用url,改成给的,ws://broker.emqx.io:8083/mqtt\r\n const options = {\r\n // 配置\r\n // 测试:订阅本机IP\r\n // host: host,\r\n // port: port,\r\n\r\n keepalive: 60, // 心跳时间,默认60s,设置为0禁用\r\n // username: 'test', // 用户名(可选)\r\n // password: 1234, // 密码(可选)\r\n clientId: clientId, // 客户端ID,默认随机生成\r\n protocolId: \"MQTT\",\r\n protocolVersion: 4,\r\n clean: true, // false在离线时接收QoS1和2的消息\r\n reconnectPeriod: 2000, // 重连间隔,默认1000毫秒\r\n connectTimeout: 30 * 1000, // 收到CONNACK之前的等待时间\r\n will: {\r\n // 遗嘱消息(客户端严重断开连接时Broker将自动发送的消息)\r\n topic: \"WillMsg\", // 要发布的主题\r\n payload: \"[MQTT-TEST] 遗嘱消息:连接异常断开!\", // 要发布的消息\r\n qos: 2, // QoS(Quality of Service),QoS0:只负责发,QoS1:保证消息至少送达1次,QoS2:保证消息到且仅到1次\r\n retain: false, // 保留标志\r\n },\r\n };\r\n if (this.mqttClient == undefined) {\r\n this.mqttClient = mqtt.connect(host, options); // 连接\r\n // const client = mqtt.connect(host, options); // 连接\r\n // const client = mqtt.connect(host) // 连接\r\n // 错误回调\r\n this.mqttClient.on(\"error\", (err) => {\r\n console.log(\"[MQTT-TEST] 连接错误……\");\r\n this.mqttClient.end();\r\n });\r\n // 重连回调\r\n this.mqttClient.on(\"reconnect\", () => {\r\n console.log(\"[MQTT-TEST] 重连中……\");\r\n });\r\n // 连接回调\r\n this.mqttClient.on(\"connect\", (e) => {\r\n // console.log(\r\n // );\r\n // 订阅\r\n this.mqttClient.subscribe(topic, { qos: 2});\r\n console.log(\"[MQTT-TEST] 连接回调....\");\r\n });\r\n // 接收回调\r\n this.mqttClient.on(\"message\", (topic, message, packet) => {\r\n console.log(\r\n `[MQTT-TEST] 从主题 \"${topic}\" 收到的内容: ${message.toString()}`\r\n );\r\n // 解析后端数据\r\n let dataReceived = JSON.parse(message.toString());\r\n // this.infodata[4].num = dataReceived.realTimeLoad\r\n console.log(dataReceived.realTimeLoad,'dataReceived');\r\n });\r\n }\r\n \r\n },\r\n go(val) {\r\n if (val == \"nanjing\") {\r\n this.nanj = false;\r\n this.landC = true;\r\n // console.log(\"\")\r\n this.imgList = this.imgListData.nanjing;\r\n // this.centerList = this.centerListData.nanjing\r\n this.config = this.configData.nanjing.data;\r\n this.resourcesList = this.resourcesListData.nanjing;\r\n this.levelConfig.data = this.levelConfigData.nanjing.data;\r\n // this.$forceUpdate();\r\n // this.cancelLoading();\r\n } else if (val == \"landChild\") {\r\n this.$router.push(\"/landChild\");\r\n this.landC = false;\r\n }\r\n },\r\n show: function () {\r\n this.leftOpen = true;\r\n this.rightOpen = true;\r\n this.basicInfoShow = true;\r\n },\r\n //获取基地数据\r\n getJdData(val) {\r\n axios\r\n .get(\"/json/qqData.json\")\r\n .then((result) => {\r\n for (var i = 0; i < result.data.length; i++) {\r\n if (result.data[i].jd == this.params.params) {\r\n this.workListqq[0].value = result.data[i].qq;\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n if (val == \"不动产\") {\r\n // this.tit=\"土地证信息\"\r\n this.workListData = [];\r\n axios\r\n .get(\"/json/jdData.json\")\r\n .then((result) => {\r\n console.log(\"getMenuData111\", result.data);\r\n for (var i = 0; i < result.data.length; i++) {\r\n if (result.data[i].jd == this.params.params) {\r\n console.log(\"result.data[i]\", result.data[i]);\r\n // this.workList.push(result.data[i])\r\n this.workListData.push(result.data[i]);\r\n this.changeWorkListBdc(result.data[i]);\r\n this.changeWorkList(result.data[i]);\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n } else if (val == \"土地证\") {\r\n // this.tit=\"土地证信息\"\r\n this.workListData = [];\r\n this.fczShow = true;\r\n axios\r\n .get(\"/json/tdData.json\")\r\n .then((result) => {\r\n console.log(\"getMenuData111\", result.data);\r\n console.log(\"this.params.params\", this.params.params);\r\n for (var i = 0; i < result.data.length; i++) {\r\n if (result.data[i].jd == this.params.params) {\r\n console.log(\"result.data[i]\", result.data[i]);\r\n this.workListData.push(result.data[i]);\r\n this.changeWorkListTd(result.data[i]);\r\n this.changeWorkList(result.data[i]);\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n this.workListDatafcz = [];\r\n axios\r\n .get(\"/json/fczData.json\")\r\n .then((result) => {\r\n console.log(\"getMenuData111\", result.data);\r\n for (var i = 0; i < result.data.length; i++) {\r\n if (result.data[i].jd == this.params.params) {\r\n console.log(\"result.data[i]\", result.data[i]);\r\n this.workListDatafcz.push(result.data[i]);\r\n this.changeWorkListfcz(result.data[i]);\r\n // this.changeWorkList(result.data[i])\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n } else {\r\n this.workListData = [];\r\n this.fczShow = true;\r\n axios\r\n .get(\"/json/jdData.json\")\r\n .then((result) => {\r\n console.log(\"getMenuData111\", result.data);\r\n for (var i = 0; i < result.data.length; i++) {\r\n if (result.data[i].jd == this.params.params) {\r\n this.changeWorkListBdc(result.data[i]);\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n axios\r\n .get(\"/json/tdData.json\")\r\n .then((result) => {\r\n console.log(\"getMenuData111\", result.data);\r\n console.log(\"this.params.params\", this.params.params);\r\n for (var i = 0; i < result.data.length; i++) {\r\n if (result.data[i].jd == this.params.params) {\r\n console.log(\"result.data[i]\", result.data[i]);\r\n this.workListData.push(result.data[i]);\r\n this.changeWorkListTd(result.data[i]);\r\n this.changeWorkList(result.data[i]);\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n this.workListDatafcz = [];\r\n axios\r\n .get(\"/json/fczData.json\")\r\n .then((result) => {\r\n console.log(\"getMenuData111\", result.data);\r\n for (var i = 0; i < result.data.length; i++) {\r\n if (result.data[i].jd == this.params.params) {\r\n console.log(\"result.data[i]\", result.data[i]);\r\n this.workListDatafcz.push(result.data[i]);\r\n this.changeWorkListfcz(result.data[i]);\r\n // this.changeWorkList(result.data[i])\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n }\r\n },\r\n getMain() {\r\n this.$router.push({\r\n name: \"landChild\",\r\n params: { id: this.params.params, type: this.params.type },\r\n });\r\n },\r\n //建筑物信息\r\n changeWorkList(data) {\r\n var entries = Object.entries(data);\r\n var list = entries.map(function (item) {\r\n return {\r\n value: item[1],\r\n name: item[0],\r\n };\r\n });\r\n for (var i = 0; i < list.length; i++) {\r\n for (var t = 0; t < this.workList.length; t++) {\r\n if (list[i].name == this.workList[t].name) {\r\n this.workList[t].value = list[i].value;\r\n }\r\n }\r\n }\r\n this.workListData = this.workList;\r\n },\r\n //不动产\r\n changeWorkListBdc(data) {\r\n // this.workListBdc=[]\r\n var entries = Object.entries(data);\r\n var list = entries.map(function (item) {\r\n return {\r\n value: item[1],\r\n name: item[0],\r\n };\r\n });\r\n for (var i = 0; i < list.length; i++) {\r\n for (var t = 0; t < this.workListBdc.length; t++) {\r\n if (list[i].name == this.workListBdc[t].name) {\r\n this.workListBdc[t].value = list[i].value;\r\n }\r\n }\r\n }\r\n // this.workListData = this.workListBdc\r\n },\r\n //土地证\r\n changeWorkListTd(data) {\r\n console.log(\"data\", data);\r\n var entries = Object.entries(data);\r\n var list = entries.map(function (item) {\r\n return {\r\n value: item[1],\r\n name: item[0],\r\n };\r\n });\r\n for (var i = 0; i < list.length; i++) {\r\n for (var t = 0; t < this.workListNew.length; t++) {\r\n if (list[i].name == this.workListNew[t].name) {\r\n this.workListNew[t].value = list[i].value;\r\n }\r\n }\r\n }\r\n this.workListData = this.workListNew;\r\n },\r\n //房产证\r\n changeWorkListfcz(data) {\r\n var entries = Object.entries(data);\r\n var list = entries.map(function (item) {\r\n return {\r\n value: item[1],\r\n name: item[0],\r\n };\r\n });\r\n for (var i = 0; i < list.length; i++) {\r\n for (var t = 0; t < this.workListFCZ.length; t++) {\r\n if (list[i].name == this.workListFCZ[t].name) {\r\n this.workListFCZ[t].value = list[i].value;\r\n }\r\n }\r\n }\r\n // this.workListData = this.workListFCZ\r\n },\r\n //获取地图参数\r\n getFromIframe(value) {\r\n this.tit = \"建筑物信息\";\r\n (this.workListBdc = [\r\n // { key: \"建筑物名称\", value: \"\",name:\"jd\" },\r\n // { key: \"坐落地址\", value: \"\",name:\"tudi\" },\r\n { key: \"不动产证号\", value: \"\", name: \"bdczh\" },\r\n { key: \"权力性质\", value: \"\", name: \"qlxz\" },\r\n { key: \"用途\", value: \"\", name: \"yt\" },\r\n { key: \"宗地面积\", value: \"\", name: \"zdmj\" },\r\n { key: \"建筑面积\", value: \"\", name: \"jzmj\" },\r\n { key: \"权利人\", value: \"\", name: \"qlr\" },\r\n // { key: \"共有情况\", value: \"\",name:\"gyqk\" },\r\n // { key: \"坐落\", value: \"\" ,name:\"zl\"},\r\n // { key: \"不动产单元号\", value: \"\" ,name:\"bdcdyh\"},\r\n // { key: \"权力类型\", value: \"\" ,name:\"qllx\"},\r\n // { key: \"使用期限\", value: \"\" ,name:\"syqx\"},\r\n // { key: \"房屋结构\", value: \"\" ,name:\"fwjg\"},\r\n // { key: \"房屋总层数\", value: \"\" ,name:\"fwzcs\"},\r\n // { key: \"所在层数\", value: \"\" ,name:\"szcs\"},\r\n // { key: \"丘权号\", value: \"\" ,name:\"qqh\"},\r\n // { key: \"来源\", value: \"\" ,name:\"ly\"},\r\n ]),\r\n (this.workListNew = [\r\n // { key: \"建筑物名称\", value: \"\",name:\"jd\" },\r\n // { key: \"坐落地址\", value: \"\",name:\"tudi\" },\r\n { key: \"土地证号\", value: \"\", name: \"tdzh\" },\r\n { key: \"权力性质\", value: \"\", name: \"syqlx\" },\r\n { key: \"土地用途\", value: \"\", name: \"dlyt\" },\r\n { key: \"土地面积\", value: \"\", name: \"tdmj\" },\r\n { key: \"权利人\", value: \"\", name: \"tdsyqr\" },\r\n // { key: \"共有情况\", value: \"\",name:\"gyqk\" },\r\n // { key: \"坐落\", value: \"\",name:\"zl\" },\r\n // { key: \"地号\", value: \"\" ,name:\"dh\"},\r\n\r\n // { key: \"图号\", value: \"\" ,name:\"th\"},\r\n\r\n // { key: \"使用权面积\", value: \"\",name:\"syqmj\" },\r\n // { key: \"终止日期\", value: \"\" ,name:\"zzrq\"},\r\n ]),\r\n (this.workListFCZ = [\r\n // { key: \"建筑物名称\", value: \"\",name:\"jd\" },\r\n // { key: \"坐落地址\", value: \"\",name:\"tudi\" },\r\n // { key: \"房产证号\", value: \"\" ,name:\"fczh\"},\r\n // { key: \"房产使用权人\", value: \"\",name:\"fwsyqr\" },\r\n // { key: \"坐落\", value: \"\",name:\"zl\" },\r\n // { key: \"房屋用途\", value: \"\" ,name:\"fwcb\"},\r\n // { key: \"结构\", value: \"\",name:\"jg\" },\r\n // { key: \"房屋总层数\", value: \"\",name:\"fwzcs\" },\r\n // { key: \"面积\", value: \"\" ,name:\"jzmj\"},\r\n // { key: \"面积\", value: \"\" ,name:\"cqly\"},\r\n { key: \"房产证号\", value: \"\", name: \"fczh\" },\r\n { key: \"房屋产别\", value: \"\", name: \"fwcb\" },\r\n { key: \"房屋用途\", value: \"\", name: \"fwyt\" },\r\n { key: \"房屋面积\", value: \"\", name: \"jzmj\" },\r\n { key: \"房产使用权人\", value: \"\", name: \"fwsyqr\" },\r\n ]),\r\n (this.activeColor = -1);\r\n this.workListqq = [{ key: \"确权信息\", value: \"\", name: \"qq\" }];\r\n this.params = value;\r\n if (this.params.type == \"不动产\") {\r\n this.centerList = [\r\n {\r\n title: \"不动产权证信息\",\r\n count: 0,\r\n imgUrl: require(\"@/assets/landRes/bdc.png\"),\r\n },\r\n {\r\n title: \"确权情况\",\r\n count: 0,\r\n imgUrl: require(\"@/assets/landRes/qq.png\"),\r\n },\r\n {\r\n title: \"证件查看\",\r\n count: 0,\r\n imgUrl: require(\"@/assets/landRes/fdc.png\"),\r\n },\r\n ];\r\n } else if (this.params.type == \"土地证\") {\r\n this.centerList = [\r\n {\r\n title: \"土地证信息\",\r\n count: \"无\",\r\n imgUrl: require(\"@/assets/landRes/tdz.png\"),\r\n },\r\n {\r\n title: \"房产证信息\",\r\n count: 0,\r\n imgUrl: require(\"@/assets/landRes/fdc.png\"),\r\n },\r\n {\r\n title: \"确权情况\",\r\n count: 0,\r\n imgUrl: require(\"@/assets/landRes/qq.png\"),\r\n },\r\n {\r\n title: \"证件查看\",\r\n count: 0,\r\n imgUrl: require(\"@/assets/landRes/bdc.png\"),\r\n },\r\n ];\r\n }\r\n this.getJdData(this.params.type);\r\n this.leftOpen = false;\r\n this.rightOpen = false;\r\n this.Visible = false;\r\n this.basicInfoShow = true;\r\n },\r\n\r\n //菜单跳转\r\n btn(val, index) {\r\n if (val != \"证件查看\") {\r\n this.tit = val;\r\n }\r\n\r\n this.Visible = false;\r\n this.basicInfoShow = true;\r\n this.activeColor = index;\r\n if (val == \"不动产权证信息\") {\r\n this.workListData = this.workListBdc;\r\n this.rightOpen = false;\r\n } else if (val == \"土地证信息\") {\r\n this.workListData = this.workListNew;\r\n this.rightOpen = false;\r\n } else if (val == \"房产证信息\") {\r\n this.workListData = this.workListFCZ;\r\n this.rightOpen = false;\r\n } else if (val == \"确权情况\") {\r\n console.log(\"this.workListqq\", this.workListqq);\r\n this.workListData = this.workListqq;\r\n this.rightOpen = false;\r\n }\r\n },\r\n\r\n search(data) {\r\n console.log(\"data\", data);\r\n this.Visible = true;\r\n this.basicInfoShow = false;\r\n this.rightOpen = false;\r\n this.$nextTick(() => {\r\n //这里的dialog与上面dialog-component组件里面的ref属性值是一致的\r\n //init调用的是dialog-component组件里面的init方法\r\n //data是传递给弹窗页面的值\r\n this.$refs.dialog.init(data);\r\n });\r\n },\r\n //关闭查询弹框\r\n getClose() {\r\n this.Visible = false;\r\n this.rightOpen = true;\r\n this.basicInfoShow = true;\r\n },\r\n getjdName(val) {\r\n this.jdNameNew = val;\r\n },\r\n getjdNameClick(val) {\r\n console.log(\"val\", val);\r\n this.$router.push({\r\n name: \"landChild\",\r\n params: { id: val.jd, type: val.type },\r\n });\r\n },\r\n goPage(val) {\r\n if (val == 0) {\r\n console.log(\"返回房地资源-主场景\");\r\n // this.$router.push(\"/land\");\r\n this.$router.push(\"/\");\r\n }\r\n },\r\n cancelLoading() {\r\n setTimeout(() => {\r\n this.loading = false;\r\n }, 500);\r\n },\r\n /**\r\n * 动态传输城市名称\r\n * @param event\r\n */\r\n // handleMessage(event) {\r\n // // 获取从iframe页面中传过来的值\r\n // // var cmd = event.data.cmd;\r\n // this.cityName = event.data.params;\r\n // },\r\n build() {\r\n this.$router.push(\"/build\");\r\n },\r\n },\r\n created() {\r\n window[\"vueDefinedMyProp\"] = (build) => {\r\n this.build();\r\n };\r\n window.getFromIframe = this.getFromIframe;\r\n window.show = this.show;\r\n },\r\n};\r\n</script>\r\n<style lang=\"scss\">\r\n.dv-scroll-ranking-board .ranking-info .rank {\r\n display: none;\r\n}\r\n</style>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"~@/common/var.scss\";\r\n\r\n/* 返回按钮 */\r\n.back-button a {\r\n position: absolute;\r\n right: 22px;\r\n top: 41px;\r\n width: 55px;\r\n height: 21px;\r\n background-color: transparent;\r\n border: 0;\r\n background-image: url(\"../../assets/bt-02.png\");\r\n cursor: pointer;\r\n}\r\n\r\n.back-button a:hover {\r\n background-image: url(\"../../assets/bt-002.png\");\r\n}\r\n.body-left {\r\n // width: 500px!important;\r\n // background: url('../../assets/left.png') no-repeat!important;\r\n}\r\n.body-right {\r\n // width: 500px!important;\r\n // background: url('../../assets/right.png') no-repeat!important;\r\n}\r\n\r\n.body-bottom {\r\n height: 130px !important;\r\n background: url(\"../../assets/down.png\") no-repeat !important;\r\n}\r\n\r\n.informationOverview {\r\n // width: 50%;\r\n width: 43%;\r\n display: inline-block;\r\n margin-bottom: 10px;\r\n padding: 20px 0 10px 0;\r\n\r\n .cont {\r\n height: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: space-evenly;\r\n padding-left: 15px;\r\n\r\n p {\r\n text-align: center;\r\n\r\n &:nth-child(1) {\r\n color: #53a0ca;\r\n font-weight: bolder;\r\n border-bottom: 1px solid #103a55;\r\n padding-bottom: 5px;\r\n }\r\n\r\n &:nth-child(2) {\r\n padding-top: 5px;\r\n font-weight: bolder;\r\n font-size: 24px;\r\n }\r\n }\r\n }\r\n\r\n img {\r\n float: left;\r\n padding-left: 30px;\r\n }\r\n}\r\n\r\n.left {\r\n height: 100%;\r\n // width: 26%;\r\n width: 24%;\r\n margin-left: 2%;\r\n padding-top: 15px;\r\n}\r\n\r\n.right {\r\n height: 100%;\r\n // width: 29%;\r\n // margin-right: 1%;\r\n width: 25%;\r\n margin-right: 3%;\r\n padding-top: 15px;\r\n\r\n .panelBox {\r\n display: flex;\r\n }\r\n\r\n .panel {\r\n // margin: 20px;\r\n position: relative;\r\n text-align: center;\r\n\r\n span {\r\n position: absolute;\r\n position: absolute;\r\n top: 41px;\r\n left: 42px;\r\n font-weight: bold;\r\n }\r\n\r\n div {\r\n color: $default-font-color;\r\n margin-top: 10px;\r\n font-weight: bold;\r\n }\r\n\r\n &:not(:last-child) {\r\n margin-right: 20px;\r\n text-align: center;\r\n }\r\n\r\n &_box {\r\n width: 98px;\r\n height: 98px;\r\n background-size: 100%;\r\n }\r\n\r\n // background-image: url(\"~@/assets/wisdom2/panel-blue.png\");\r\n background-repeat: no-repeat;\r\n background-position: top;\r\n\r\n // &:nth-child(2) {\r\n // background-image: url(\"~@/assets/wisdom2/panel-green.png\")\r\n // }\r\n\r\n // &:nth-child(3) {\r\n // background-image: url(\"~@/assets/wisdom2/panel-blue.png\")\r\n // }\r\n\r\n // &:nth-child(4) {\r\n // background-image: url(\"~@/assets/wisdom2/panel-green.png\")\r\n // }\r\n }\r\n}\r\n\r\n.center {\r\n width: 41%;\r\n height: 20%;\r\n padding: 0 10px;\r\n display: flex;\r\n flex-wrap: wrap;\r\n align-content: flex-start;\r\n position: relative;\r\n left: 30%;\r\n}\r\n\r\n.scaleDesign {\r\n /* display: inline-block; */\r\n width: 50%;\r\n text-align: center;\r\n /* line-height: 90px; */\r\n height: 100%;\r\n display: block;\r\n float: left;\r\n margin-top: 10px;\r\n\r\n &_item {\r\n height: 50%;\r\n height: 50%;\r\n display: flex;\r\n\r\n padding-left: 10px;\r\n justify-content: center;\r\n\r\n &:first-child {\r\n margin-bottom: 20px;\r\n }\r\n\r\n .dv-water-pond-level {\r\n display: -webkit-inline-box;\r\n }\r\n }\r\n}\r\n\r\n.scaleDesign2 {\r\n display: inline-block;\r\n\r\n width: 50%;\r\n text-align: center;\r\n\r\n &_item {\r\n margin-bottom: 15px;\r\n }\r\n}\r\n\r\n\r\n.leftModel {\r\n width: 24%;\r\n left: 1%;\r\n top: 35%;\r\n position: absolute;\r\n transition: left 0.5s linear 0s;\r\n .box {\r\n font-size: 14px;\r\n background: url(\"~@/assets/landRes/boxM.png\") no-repeat;\r\n // background-size: 100% 95%;\r\n width: 50%;\r\n margin: 1%;\r\n text-align: center;\r\n display: inline-block;\r\n p {\r\n color: #b4e9ff;\r\n font-size: 16px;\r\n font-weight: 700;\r\n padding: 15px 0;\r\n width: 75%;\r\n }\r\n img {\r\n float: left;\r\n padding-left: 10px;\r\n padding-top: 6px;\r\n }\r\n }\r\n .box:hover {\r\n background: url(\"~@/assets/landRes/boxX.png\") no-repeat;\r\n p {\r\n color: #00fcff;\r\n text-shadow: 0 0 5px #00fcff, 0 0 10px #00fcff, 0 0 15px #00fcff,\r\n 0 0 20px #00fcff;\r\n }\r\n }\r\n .boxActive {\r\n background: url(\"~@/assets/landRes/boxX.png\") no-repeat;\r\n width: 50%;\r\n margin: 1%;\r\n text-align: center;\r\n display: inline-block;\r\n font-size: 14px;\r\n p {\r\n color: #00fcff;\r\n text-shadow: 0 0 5px #00fcff, 0 0 10px #00fcff, 0 0 15px #00fcff,\r\n 0 0 20px #00fcff;\r\n font-size: 16px;\r\n font-weight: 700;\r\n padding: 15px 0;\r\n width: 75%;\r\n }\r\n img {\r\n float: left;\r\n padding-left: 10px;\r\n padding-top: 6px;\r\n }\r\n }\r\n}\r\n.leftClose {\r\n left: -350px;\r\n transition: left 0.5s linear 0s;\r\n}\r\n.rightModel {\r\n right: 1%;\r\n position: absolute;\r\n height: 100%;\r\n width: 10.5%;\r\n top: 25%;\r\n\r\n .search-middle {\r\n height: 15%;\r\n background: #fff;\r\n border: 2px solid #4cfc9ba1;\r\n // width: 80%;\r\n width: 100%;\r\n float: right;\r\n }\r\n .search-middle li {\r\n width: 100%;\r\n padding: 0px 10px;\r\n margin: 15px 0px;\r\n // text-align: center;\r\n .liBox {\r\n width: 30%;\r\n height: 30px;\r\n text-align: center;\r\n line-height: 30px;\r\n display: inline-block;\r\n color: #fff;\r\n }\r\n }\r\n .search-middle .search-container {\r\n position: relative;\r\n width: 100%;\r\n height: 100%;\r\n }\r\n .search-middle .search-container input:focus {\r\n outline: none;\r\n }\r\n .search-middle .search-container input::-webkit-input-placeholder {\r\n color: rgb(211, 245, 255);\r\n }\r\n .search-middle .search-container button {\r\n width: 80px;\r\n height: 100%;\r\n position: absolute;\r\n right: 0;\r\n top: 0;\r\n background-color: transparent;\r\n background: 10px 10px url(~@/assets/search-button.png) no-repeat;\r\n border: 0;\r\n border-radius: 0;\r\n text-align: center;\r\n line-height: 30px;\r\n cursor: pointer;\r\n padding-left: 20px;\r\n color: #b4e9ff;\r\n }\r\n .rightShow {\r\n top: 5%;\r\n position: absolute;\r\n right: 0px;\r\n width: 100%;\r\n transition: right 0.5s linear 0s;\r\n .basicInfo {\r\n margin-top: 20px;\r\n li {\r\n padding: 15px 0 !important;\r\n }\r\n }\r\n .dialogN {\r\n margin-top: 20px;\r\n }\r\n }\r\n\r\n .rightClose {\r\n right: -500px;\r\n transition: right 0.5s linear 0s;\r\n }\r\n}\r\n\r\n.d1 {\r\n // position: absolute;\r\n // left: 830px;\r\n // top: 395px;\r\n // left: 15px;\r\n // top: 395px;\r\n width: 154px;\r\n height: 53px;\r\n line-height: 35px;\r\n text-align: center;\r\n background: url(\"~@/assets/landRes/1-dialog.png\") no-repeat center;\r\n\r\n &:hover {\r\n background: url(\"~@/assets/landRes/1-dialog-highlight.png\") no-repeat center;\r\n cursor: pointer;\r\n color: #fff;\r\n }\r\n}\r\n.d2 {\r\n // position: absolute;\r\n // left: 1060px;\r\n // top: 485px;\r\n width: 182px;\r\n height: 53px;\r\n line-height: 35px;\r\n text-align: center;\r\n background: url(\"~@/assets/landRes/2-dialog.png\") no-repeat center;\r\n\r\n &:hover {\r\n background: url(\"~@/assets/landRes/2-dialog-highlight.png\") no-repeat center;\r\n cursor: pointer;\r\n color: #fff;\r\n }\r\n}\r\n\r\n.d3 {\r\n position: absolute;\r\n left: 520px;\r\n top: 515px;\r\n width: 234px;\r\n height: 53px;\r\n line-height: 35px;\r\n text-align: center;\r\n font-size: 14px;\r\n background: url(\"~@/assets/landRes/3-dialog.png\") no-repeat center;\r\n\r\n &:hover {\r\n background: url(\"~@/assets/landRes/3-dialog-highlight.png\") no-repeat center;\r\n cursor: pointer;\r\n color: #fff;\r\n }\r\n}\r\n.footer-nav {\r\n position: absolute;\r\n /* top: 220px; */\r\n top: 105px;\r\n left: 1%;\r\n margin: auto;\r\n /* transform: scale(1, 1) translate(-50%, -50%); */\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n width: 98%;\r\n}\r\n.baseBlock {\r\n cursor: pointer;\r\n width: 11.3%;\r\n height: 100px;\r\n background: url(\"../../assets/newimgs/zongshuKuang.png\") no-repeat;\r\n background-size: 100% 100%;\r\n display: flex;\r\n flex-flow: row nowrap;\r\n // justify-content: space-between;\r\n align-items: center;\r\n padding: 0 15px;\r\n box-sizing: border-box;\r\n}\r\n.baseBlock p {\r\n width: 40%;\r\n font-size: 22px;\r\n color: #fff;\r\n letter-spacing: 1px;\r\n text-align: left;\r\n}\r\n@import \"../../assets/scss/index.scss\";\r\n</style>\r\n"]}]} |