suyiScreen/node_modules/.cache/vue-loader/2a14b0cc4529ca0029537623b41...

1 line
77 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"remainingRequest":"E:\\项目\\suyiScreen\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\项目\\suyiScreen\\src\\views\\land\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\项目\\suyiScreen\\src\\views\\land\\index.vue","mtime":1670664505818},{"path":"E:\\项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1670569853083},{"path":"E:\\项目\\suyiScreen\\node_modules\\babel-loader\\lib\\index.js","mtime":1670569850970},{"path":"E:\\项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1670569853083},{"path":"E:\\项目\\suyiScreen\\node_modules\\vue-loader\\lib\\index.js","mtime":1670569867456}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgQ3VzdG9tRHZTY3JvbGxCb2FyZCBmcm9tICJAL2NvbXBvbmVudHMvY3VzdG9tRHZTY3JvbGxCb2FyZCI7DQppbXBvcnQgQ3VzdG9tRHZTY3JvbGxCb2FyZDEgZnJvbSAiQC9jb21wb25lbnRzL2N1c3RvbUR2U2Nyb2xsQm9hcmQxIjsNCmltcG9ydCBkcmF3TWl4aW4gZnJvbSAiQC91dGlscy9kcmF3TWl4aW4iOw0KaW1wb3J0IGhlYWRlckluZGV4IGZyb20gIkAvY29tcG9uZW50cy9sYXlvdXQvaGVhZGVyIjsNCmltcG9ydCBCYXNpY0JveCBmcm9tICJAL2NvbXBvbmVudHMvQmFzaWNCb3giOw0KaW1wb3J0IGRpYWxvZ0NvbXBvbmVudCBmcm9tICJAL2NvbXBvbmVudHMvZGlhbG9nIjsNCmltcG9ydCBDaGFydCBmcm9tICIuL2NoYXJ0LnZ1ZSI7DQovLyBpbXBvcnQgaW8gZnJvbSAnc29ja2V0LmlvLWNsaWVudCcNCmltcG9ydCBCYXNpY0JveDUgZnJvbSAiQC9jb21wb25lbnRzL0Jhc2ljQm94NSI7DQppbXBvcnQgYXhpb3MgZnJvbSAiYXhpb3MiOw0KaW1wb3J0IHtnZXRIb21lUGFnZUluZm99IGZyb20gIkAvYXBpL2FwaSI7DQppbXBvcnQgbXF0dCBmcm9tICdtcXR0Jw0KLy8gbGV0IHNvY2tldFJlZnMgPSAnJzsNCg0KZXhwb3J0IGRlZmF1bHQgew0KICBtaXhpbnM6IFtkcmF3TWl4aW5dLA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBpbmZvZGF0YTpbDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/lrqLmiLfmgLvmlbAucG5nJyksbnVtOiczOTcnLHRleHQ6J+WuouaIt+aAu+aVsCcsdW5pdDon5LiqJ30sDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/lj5jnlLXnq5nmgLvmlbAucG5nJyksbnVtOic0NDcnLHRleHQ6IuWPmOeUteermeaAu+aVsCIsdW5pdDon5bqnJ30sDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/kuLvlj5jmgLvmlbAucG5nJyksbnVtOiczNzknLHRleHQ6IuS4u+WPmOaAu+aVsCIsdW5pdDon5Y+wJ30sDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/kuLvlj5jmgLvlrrnph48ucG5nJyksbnVtOic0OTM0MDUnLHRleHQ6IuS4u+WPmOaAu+WuuemHjyIsdW5pdDona1ZBJ30sDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/lj5jnlLXnq5nmgLvmlbAucG5nJyksbnVtOicyODUwMiAnLHRleHQ6IuWunuaXtui0n+iNtyIsdW5pdDona1cnfSwNCiAgICAgICAge3BpYzpyZXF1aXJlKCdAL2Fzc2V0cy9uZXdpbWdzL+enn+aXpeaAu+eUtemHjy5wbmcnKSxudW06JzYxNDczMCcsdGV4dDoi5pio5pel5oC755S16YePIix1bml0OidrV2gnfSwNCiAgICAgICAge3BpYzpyZXF1aXJlKCdAL2Fzc2V0cy9uZXdpbWdzL+W+heWKnuW3peWNleaAu+aVsC5wbmcnKSxudW06JzAnLHRleHQ6IuS7o+WKnuW3peWNleaAu+aVsCIsdW5pdDon5p2hJ30sDQogICAgICAgIHtwaWM6cmVxdWlyZSgnQC9hc3NldHMvbmV3aW1ncy/lkYrorabmgLvmlbAucG5nJyksbnVtOicwJyx0ZXh0OiLlkYrorabmgLvmlbAiLHVuaXQ6J+adoSd9LA0KICAgICAgXSwNCiAgICAgIFZpc2libGU6IGZhbHNlLA0KICAgICAgYmFzaWNJbmZvU2hvdzogdHJ1ZSwNCiAgICAgIHZpZGVvVXJsOiAiL2xhbmQvbGFuZE1hcC5odG1sIiwNCiAgICAgIGNpdHlOYW1lOiAiIiwNCiAgICAgIG5hbmo6IHRydWUsDQogICAgICBsYW5kQzogZmFsc2UsDQogICAgICBiYWNrZ3JvdW5kUGljOiB7DQogICAgICAgIGluZGV4OiAibGFuZFJlcy9CRyIsDQogICAgICB9LA0KICAgICAgYWN0aXZlQ29sb3I6IC0xLA0KICAgICAgbG9hZGluZzogZmFsc2UsDQogICAgICBpbWdMaXN0RGF0YToge30sDQogICAgICBpbWdMaXN0OiBbXSwNCg0KICAgICAgY29uZmlnRGF0YTogew0KICAgICAgICBqaWFuZ3N1OiB7DQogICAgICAgICAgLy8gaGVhZGVyOlsn6KeE5YiS55So6YCUJywgJ+WFqOecgeaVsOmHjycsICflhajnnIHljaDmr5QnXSwNCiAgICAgICAgICBkYXRhOiBbXSwNCiAgICAgICAgfSwNCiAgICAgICAgbmFuamluZzogew0KICAgICAgICAgIC8vIGhlYWRlcjpbJ+inhOWIkueUqOmAlCcsICfljZfkuqzmlbDph48nLCAn5Y2X5Lqs5Y2g5q+UJ10sDQogICAgICAgICAgZGF0YTogW10sDQogICAgICAgIH0sDQogICAgICAgIHpoZW5namlhbmc6IHsNCiAgICAgICAgICBoZWFkZXI6IFsi6KeE5YiS55So6YCUIiwgIuWFqOecgeaVsOmHjyIsICLlhajnnIHljaDmr5QiXSwNCiAgICAgICAgICBkYXRhOiBbXSwNCiAgICAgICAgfSwNCiAgICAgICAgY2hhbmd6aG91OiB7DQogICAgICAgICAgaGVhZGVyOiBbXSwNCiAgICAgICAgICBkYXRhOiBbXSwNCiAgICAgICAgfSwNCiAgICAgIH0sDQogICAgICBjb25maWc6IHsNCiAgICAgICAgLy8gaGVhZGVyOlsn6KeE5YiS55So6YCUJywgJ+WFqOecgeaVsOmHjycsICflhajnnIHljaDmr5QnXSwNCiAgICAgICAgZGF0YTogW10sDQogICAgICB9LA0KICAgICAgY29uZmlnMTogew0KICAgICAgICBkYXRhOiBbXSwNCiAgICAgIH0sDQogICAgICBsZXZlbENvbmZpZ0RhdGE6IHsgbmFuamluZzogeyBkYXRhOiBbMF0gfSB9LA0KICAgICAgbGV2ZWxDb25maWc6IHsNCiAgICAgICAgZGF0YTogWzEwXSwNCiAgICAgICAgc2hhcGU6ICJyb3VuZCIsDQogICAgICAgIHdhdmVOdW06IDIsDQogICAgICB9LA0KICAgICAgbGV2ZWxDb25maWcxOiB7DQogICAgICAgIGRhdGE6IFs1NV0sDQogICAgICAgIHNoYXBlOiAicm91bmQiLA0KICAgICAgICB3YXZlTnVtOiAyLA0KICAgICAgfSwNCiAgICAgIHJlc291cmNlc0xpc3REYXRhOiB7DQogICAgICAgIG5hbmppbmc6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi5Y2X5Lqs6KeE5YiS6Zi25q61IiwNCiAgICAgICAgICAgIGNvdW50OiA0LA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuWNl+S6rOiuoeWIkumYtuautSIsDQogICAgICAgICAgICBjb3VudDogNCwNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIG5hbWU6ICLljZfkuqzlu7rorr7pmLbmrrUiLA0KICAgICAgICAgICAgY291bnQ6IDEsDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi5Y2X5Lqs5oqV6L+Q6Zi25q61IiwNCiAgICAgICAgICAgIGNvdW50OiAxLA0KICAgICAgICAgIH0sDQogICAgICAgIF0sDQogICAgICAgIHpoZW5namlhbmc6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi6KeE5YiS6Zi25q61IiwNCiAgICAgICAgICAgIGNvdW50OiA2MiwNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIG5hbWU6ICLorqHliJLpmLbmrrUiLA0KICAgICAgICAgICAgY291bnQ6IDksDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi5bu66K6+6Zi25q61IiwNCiAgICAgICAgICAgIGNvdW50OiAyLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuaKlei/kOmYtuautSIsDQogICAgICAgICAgICBjb3VudDogNSwNCiAgICAgICAgICB9LA0KICAgICAgICBdLA0KICAgICAgfSwNCiAgICAgIHJlc291cmNlc0xpc3Q6IFtdLA0KICAgICAgY2VudGVyTGlzdERhdGE6IHsNCiAgICAgICAgbmFuamluZzogW10sDQogICAgICAgIHpoZW5namlhbmc6IFtdLA0KICAgICAgfSwNCiAgICAgIGNlbnRlckxpc3Q6IFsNCiAgICAgICAgew0KICAgICAgICAgIHRpdGxlOiAi5LiN5Yqo5Lqn5p2D6K+B5L+h5oGvIiwNCiAgICAgICAgICBjb3VudDogMCwNCiAgICAgICAgICBpbWdVcmw6IHJlcXVpcmUoIkAvYXNzZXRzL2xhbmRSZXMvYmRjLnBuZyIpLA0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgdGl0bGU6ICLlnJ/lnLDor4Hkv6Hmga8iLA0KICAgICAgICAgIGNvdW50OiAi5pegIiwNCiAgICAgICAgICBpbWdVcmw6IHJlcXVpcmUoIkAvYXNzZXRzL2xhbmRSZXMvdGR6LnBuZyIpLA0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgdGl0bGU6ICLmiL/kuqfor4Hkv6Hmga8iLA0KICAgICAgICAgIGNvdW50OiAwLA0KICAgICAgICAgIGltZ1VybDogcmVxdWlyZSgiQC9hc3NldHMvbGFuZFJlcy9mZGMucG5nIiksDQogICAgICAgIH0sDQogICAgICAgIHsNCiAgICAgICAgICB0aXRsZTogIuehruadg+aDheWGtSIsDQogICAgICAgICAgY291bnQ6IDAsDQogICAgICAgICAgaW1nVXJsOiByZXF1aXJlKCJAL2Fzc2V0cy9sYW5kUmVzL3FxLnBuZyIpLA0KICAgICAgICB9LA0KICAgICAgXSwNCiAgICAgIHJhbmtpbmdDb25maWc6IHsNCiAgICAgICAgZGF0YTogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIG5hbWU6ICLnsbvliKsxIiwNCiAgICAgICAgICAgIHZhbHVlOiA2LA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuexu+WIqzIiLA0KICAgICAgICAgICAgdmFsdWU6IDgsDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi57G75YirMyIsDQogICAgICAgICAgICB2YWx1ZTogOSwNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIG5hbWU6ICLnsbvliKs0IiwNCiAgICAgICAgICAgIHZhbHVlOiAzLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgbmFtZTogIuexu+WIqzUiLA0KICAgICAgICAgICAgdmFsdWU6IDgsDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi57G75YirNiIsDQogICAgICAgICAgICB2YWx1ZTogMTEsDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi57G75YirNyIsDQogICAgICAgICAgICB2YWx1ZTogMTMsDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICBuYW1lOiAi57G75YirNyIsDQogICAgICAgICAgICB2YWx1ZTogNiwNCiAgICAgICAgICB9LA0KICAgICAgICBdLA0KICAgICAgICByb3dOdW06IDcsDQogICAgICAgIHdhaXRUaW1lOiA5OTk5OTk5OTk5OTk5OTk5OSwNCiAgICAgIH0sDQogICAgICAvLyAgIHNvY2tldElkOicnLA0KICAgICAgLy/pu5jorqTmlbDmja4NCiAgICAgIHdvcmtMaXN0RGF0YTogW10sDQogICAgICB3b3JrTGlzdERhdGFmY3o6IFtdLA0KICAgICAgLy/lu7rnrZHniankv6Hmga8NCiAgICAgIC8vICAgd29ya0xpc3Q6Ww0KICAgICAgLy8gICAgICB7IGtleTogIuW7uuetkeeJqeWQjeensCIsIHZhbHVlOiAiIixuYW1lOiJqZCIgfSwNCiAgICAgIC8vICAgICB7IGtleTogIuWdkOiQveWcsOWdgCIsIHZhbHVlOiAiIixuYW1lOiJ0dWRpIiB9LA0KICAgICAgLy8gICAgIHsga2V5OiAi5LiN5Yqo5Lqn6K+B5Y+3IiwgdmFsdWU6ICIiICxuYW1lOiJiZGN6aCJ9LA0KICAgICAgLy8gICAgIHsga2V5OiAi5p2D5Yip5Lq6IiwgdmFsdWU6ICIiLG5hbWU6InFsciIgfSwNCiAgICAgIC8vICAgICB7IGtleTogIuWdkOiQvSIsIHZhbHVlOiAiIiAsbmFtZToiemwifSwNCiAgICAgIC8vICAgXSwNCiAgICAgIHdvcmtMaXN0OiBbXSwNCiAgICAgIHJ1bk9uY2U6IHRydWUsDQogICAgICAvL+S4jeWKqOS6p+adg+ivgeS/oeaBrw0KICAgICAgd29ya0xpc3RCZGM6IFtdLA0KICAgICAgLy/lnJ/lnLDor4ENCiAgICAgIHdvcmtMaXN0TmV3OiBbXSwNCiAgICAgIC8v5oi/5Lqn6K+B5pWw5o2uDQogICAgICB3b3JrTGlzdEZDWjogW10sDQogICAgICB3b3JrTGlzdHFxOiBbeyBrZXk6ICLnoa7mnYPkv6Hmga8iLCB2YWx1ZTogIiIsIG5hbWU6ICJxcSIgfV0sDQogICAgICB0aXQ6ICLlu7rnrZHniankv6Hmga8iLA0KICAgICAgLy8gICBzb2NrZXREYXRhOidqaWFuZ3N1JywNCiAgICAgIGNvdW50OiAxLA0KICAgICAgcGFyYW1zOiB7fSwNCiAgICAgIGxlZnRPcGVuOiB0cnVlLA0KICAgICAgcmlnaHRPcGVuOiB0cnVlLA0KICAgICAgamROYW1lTmV3OiAiIiwNCiAgICAgIGl0ZW1WaWV3TTogIiIsDQogICAgICBwaG90b1BhdGhzTTogW10sDQogICAgICBzZWFyY2hTaG93OnRydWUNCiAgICB9Ow0KICB9LA0KDQogIGNvbXBvbmVudHM6IHsNCiAgICBoZWFkZXJJbmRleCwNCiAgICBCYXNpY0JveCwNCiAgICBDdXN0b21EdlNjcm9sbEJvYXJkLA0KICAgIEN1c3RvbUR2U2Nyb2xsQm9hcmQxLA0KICAgIGRpYWxvZ0NvbXBvbmVudCwNCiAgICBCYXNpY0JveDUsDQogICAgQ2hhcnQsDQogIH0sDQogIGNvbXB1dGVkOiB7DQogICAgLy8gcXVlcnkoKSB7DQogICAgLy8gICByZXR1cm4gdGhpcy5zb2NrZXREYXRhDQogICAgLy8gfSwNCiAgICAvLyAgJ3NvY2tldFJlZnMnOiBmdW5jdGlvbigpew0KICAgIC8vICAgICAgIHJldHVybiB0aGlzLmZpcnN0bmFtZSArICctJyArIHRoaXMubGFzdG5hbWUNCiAgICAvLyAgIH0NCiAgfSwNCg0KICBtb3VudGVkKCkgew0KICAgIHRoaXMuZ2V0RGF0YUJ5TXF0dCgNCiAgICAgICAgICAid3M6Ly8xNzUuMjQuMjM1LjI0Mzo4MDgzL21xdHQiLA0KICAgICAgICAgICJ0cmFfdG9waWMiDQogICAgKTsNCiAgICB0aGlzLmNhbmNlbExvYWRpbmcoKTsNCiAgICAvLyB0aGlzLmluaXRXZWJTb2NrZXQoKTsNCiAgICAvLyB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsIHRoaXMuaGFuZGxlTWVzc2FnZSk7DQogICAgdGhpcy5nbygibmFuamluZyIpOw0KICAgIC8vIHRoaXMudHlwZT10aGlzLnBhcmFtcy50eXBlDQogICAgLy8gdGhpcy5nZXRKZERhdGEodGhpcy5wYXJhbXMudHlwZSkNCiAgICAvLyB0aGlzLndvcmtMaXN0RGF0YSA9IHRoaXMud29ya0xpc3QNCiAgICBsZXQgdGhhdCA9IHRoaXM7DQogICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgICB2YXIgcmVzID0gZS5kYXRhOw0KICAgICAgICAgIGlmIChyZXMucGFyYW1zICE9IG51bGwpIHsNCiAgICAgICAgICAgIHRoYXQuc2VhcmNoU2hvdyA9IGZhbHNlDQogICAgICAgICAgfQ0KICAgIH0pDQogICAgZ2V0SG9tZVBhZ2VJbmZvKHsNCiAgICB9KS50aGVuKChyZXMpPT57DQogICAgfSkNCiAgICANCiAgfSwNCiAgLy8gICBzb2NrZXRzOnsNCiAgLy8gICAgIGNvbm5lY3QoKXsNCiAgLy8gICAgICAgdGhpcy5pZCA9IHRoaXMuJHNvY2tldC5pZDsNCiAgLy8gICAgICAgLy/nm5HlkKxjb25uZWN05LqL5Lu2DQogIC8vICAgICB9LA0KICAvLyAgICAgbWVzc2FnZShkYXRhKXsgIC8v55uR5ZCsbWVzc2FnZeS6i+S7tu+8jOaWueazleaYr+WQjuWPsOWumuS5ieWSjOaPkOS+m+eahA0KICAvLyAgICAgICBjb25zb2xlLmxvZyhkYXRhKTsNCiAgLy8gICAgIH0NCiAgLy8gICB9LA0KICBiZWZvcmVEZXN0cm95KCkgew0KICAgIGNsZWFySW50ZXJ2YWwodGhpcy50aW1pbmcpOw0KICB9LA0KDQogIHdhdGNoOiB7DQogICAgamROYW1lTmV3OiB7DQogICAgICBoYW5kbGVyKG5ld1ZhbCkgew0KICAgICAgICB0aGlzLiRyZWZzLmlmcmFtZS5jb250ZW50V2luZG93LmdldE1lc3NhZ2VGcm9tUGFyZW50KG5ld1ZhbCk7DQogICAgICB9LA0KICAgIH0sDQogIH0sDQogIG1ldGhvZHM6IHsNCiAgICBndWlkKCkgew0KICAgICAgICByZXR1cm4gJ3h4eHh4eHh4eHh4eDR4eHh5eHh4eHh4eHh4eHh4eHh4Jy5yZXBsYWNlKC9beHldL2csIGZ1bmN0aW9uIChjKSB7DQogICAgICAgICAgICB2YXIgciA9IE1hdGgucmFuZG9tKCkgKiAxNiB8IDAsDQogICAgICAgICAgICAgICAgdiA9IGMgPT0gJ3gnID8gciA6IChyICYgMHgzIHwgMHg4KTsNCiAgICAgICAgICAgIHJldHVybiB2LnRvU3RyaW5nKDE2KTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICAgLy8gbXF0dOiuoumYhe+8iOeLrOeri++8iQ0KICAgIGdldERhdGFCeU1xdHQodXJsLCB0b3BpYykgew0KICAgICAgY29uc3QgY2xpZW50SWQgPSB0aGlzLmd1aWQoKTsgLy8g55So5oi35ZCNDQogICAgICBjb25zdCBob3N0ID0gdXJsOyAvLyDkuIDkuKrmtYvor5XnlKh1cmzvvIzmlLnmiJDnu5nnmoTvvIx3czovL2Jyb2tlci5lbXF4LmlvOjgwODMvbXF0dA0KICAgICAgY29uc3Qgb3B0aW9ucyA9IHsNCiAgICAgICAgLy8g6YWN572uDQogICAgICAgIC8vIOa1i+ivle+8muiuoumYheacrOacuklQDQogICAgICAgIC8vIGhvc3Q6IGhvc3QsDQogICAgICAgIC8vIHBvcnQ6IHBvcnQsDQoNCiAgICAgICAga2VlcGFsaXZlOiA2MCwgLy8g5b+D6Lez5pe26Ze077yM6buY6K6kNjBz77yM6K6+572u5Li6MOemgeeUqA0KICAgICAgICAvLyB1c2VybmFtZTogJ3Rlc3QnLCAgLy8g55So5oi35ZCN77yI5Y+v6YCJ77yJDQogICAgICAgIC8vIHBhc3N3b3JkOiAxMjM0LCAgLy8g5a+G56CB77yI5Y+v6YCJ77yJDQogICAgICAgIGNsaWVudElkOiBjbGllbnRJZCwgLy8g5a6i5oi356uvSUTvvIzpu5jorqTpmo/mnLrnlJ/miJANCiAgICAgICAgcHJvdG9jb2xJZDogIk1RVFQiLA0KICAgICAgICBwcm90b2NvbFZlcnNpb246IDQsDQogICAgICAgIGNsZWFuOiB0cnVlLCAvLyBmYWxzZeWcqOemu+e6v+aXtuaOpeaUtlFvUzHlkowy55qE5raI5oGvDQogICAgICAgIHJlY29ubmVjdFBlcmlvZDogMjAwMCwgLy8g6YeN6L+e6Ze06ZqU77yM6buY6K6kMTAwMOavq+enkg0KICAgICAgICBjb25uZWN0VGltZW91dDogMzAgKiAxMDAwLCAvLyDmlLbliLBDT05OQUNL5LmL5YmN55qE562J5b6F5pe26Ze0DQogICAgICAgIHdpbGw6IHsNCiAgICAgICAgICAvLyDpgZflmLHmtojmga/vvIjlrqLmiLfnq6/kuKXph43mlq3lvIDov57mjqXml7ZCcm9rZXLlsIboh6rliqjlj5HpgIHnmoTmtojmga/vvIkNCiAgICAgICAgICB0b3BpYzogIldpbGxNc2ciLCAvLyDopoHlj5HluIPnmoTkuLvpopgNCiAgICAgICAgICBwYXlsb2FkOiAiW01RVFQtVEVTVF0g6YGX5Zix5raI5oGv77ya6L+e5o6l5byC5bi45pat5byA77yBIiwgLy8g6KaB5Y+R5biD55qE5raI5oGvDQogICAgICAgICAgcW9zOiAyLCAvLyBRb1MoUXVhbGl0eSBvZiBTZXJ2aWNlKe+8jFFvUzDvvJrlj6rotJ/otKPlj5HvvIxRb1Mx77ya5L+d6K+B5raI5oGv6Iez5bCR6YCB6L6+Measoe+8jFFvUzLvvJrkv53or4Hmtojmga/liLDkuJTku4XliLAx5qyhDQogICAgICAgICAgcmV0YWluOiBmYWxzZSwgLy8g5L+d55WZ5qCH5b+XDQogICAgICAgIH0sDQogICAgICB9Ow0KICAgICAgaWYgKHRoaXMubXF0dENsaWVudCA9PSB1bmRlZmluZWQpIHsNCiAgICAgICAgdGhpcy5tcXR0Q2xpZW50ID0gbXF0dC5jb25uZWN0KGhvc3QsIG9wdGlvbnMpOyAvLyDov57mjqUNCiAgICAgICAgLy8gY29uc3QgY2xpZW50ID0gbXF0dC5jb25uZWN0KGhvc3QsIG9wdGlvbnMpOyAvLyDov57mjqUNCiAgICAgICAgLy8gY29uc3QgY2xpZW50ID0gbXF0dC5jb25uZWN0KGhvc3QpICAvLyDov57mjqUNCiAgICAgICAgLy8g6ZSZ6K+v5Zue6LCDDQogICAgICAgIHRoaXMubXF0dENsaWVudC5vbigiZXJyb3IiLCAoZXJyKSA9PiB7DQogICAgICAgICAgY29uc29sZS5sb2coIltNUVRULVRFU1RdIOi/nuaOpemUmeivr+KApuKApiIpOw0KICAgICAgICAgIHRoaXMubXF0dENsaWVudC5lbmQoKTsNCiAgICAgICAgfSk7DQogICAgICAgIC8vIOmHjei/nuWbnuiwgw0KICAgICAgICB0aGlzLm1xdHRDbGllbnQub24oInJlY29ubmVjdCIsICgpID0+IHsNCiAgICAgICAgICBjb25zb2xlLmxvZygiW01RVFQtVEVTVF0g6YeN6L+e5Lit4oCm4oCmIik7DQogICAgICAgIH0pOw0KICAgICAgICAvLyDov57mjqXlm57osIMNCiAgICAgICAgdGhpcy5tcXR0Q2xpZW50Lm9uKCJjb25uZWN0IiwgKGUpID0+IHsNCiAgICAgICAgICAvLyBjb25zb2xlLmxvZygNCiAgICAgICAgICAvLyApOw0KICAgICAgICAgIC8vIOiuoumYhQ0KICAgICAgICAgIHRoaXMubXF0dENsaWVudC5zdWJzY3JpYmUodG9waWMsIHsgcW9zOiAyfSk7DQogICAgICAgICAgIGNvbnNvbGUubG9nKCJbTVFUVC1URVNUXSDov57mjqXlm57osIMuLi4uIik7DQogICAgICAgIH0pOw0KICAgICAgICAvLyDmjqXmlLblm57osIMNCiAgICAgICAgdGhpcy5tcXR0Q2xpZW50Lm9uKCJtZXNzYWdlIiwgKHRvcGljLCBtZXNzYWdlLCBwYWNrZXQpID0+IHsNCiAgICAgICAgICBjb25zb2xlLmxvZygNCiAgICAgICAgICAgIGBbTVFUVC1URVNUXSDku47kuLvpopggIiR7dG9waWN9IiDmlLbliLDnmoTlhoXlrrk6ICR7bWVzc2FnZS50b1N0cmluZygpfWANCiAgICAgICAgICApOw0KICAgICAgICAgIC8vIOino+aekOWQjuerr+aVsOaNrg0KICAgICAgICAgIGxldCBkYXRhUmVjZWl2ZWQgPSBKU09OLnBhcnNlKG1lc3NhZ2UudG9TdHJpbmcoKSk7DQogICAgICAgICAgdGhpcy5pbmZvZGF0YVs0XS5udW0gPSAgZGF0YVJlY2VpdmVkLnJlYWxUaW1lTG9hZA0KICAgICAgICAgIGNvbnNvbGUubG9nKGRhdGFSZWNlaXZlZC5yZWFsVGltZUxvYWQsJ2RhdGFSZWNlaXZlZCcpOw0KICAgICAgICB9KTsNCiAgICAgIH0NCiAgICAgIA0KICAgIH0sDQogICAgZ28odmFsKSB7DQogICAgICBpZiAodmFsID09ICJuYW5qaW5nIikgew0KICAgICAgICB0aGlzLm5hbmogPSBmYWxzZTsNCiAgICAgICAgdGhpcy5sYW5kQyA9IHRydWU7DQogICAgICAgIC8vIGNvbnNvbGUubG9nKCIiKQ0KICAgICAgICB0aGlzLmltZ0xpc3QgPSB0aGlzLmltZ0xpc3REYXRhLm5hbmppbmc7DQogICAgICAgIC8vIHRoaXMuY2VudGVyTGlzdCA9ICB0aGlzLmNlbnRlckxpc3REYXRhLm5hbmppbmcNCiAgICAgICAgdGhpcy5jb25maWcgPSB0aGlzLmNvbmZpZ0RhdGEubmFuamluZy5kYXRhOw0KICAgICAgICB0aGlzLnJlc291cmNlc0xpc3QgPSB0aGlzLnJlc291cmNlc0xpc3REYXRhLm5hbmppbmc7DQogICAgICAgIHRoaXMubGV2ZWxDb25maWcuZGF0YSA9IHRoaXMubGV2ZWxDb25maWdEYXRhLm5hbmppbmcuZGF0YTsNCiAgICAgICAgLy8gdGhpcy4kZm9yY2VVcGRhdGUoKTsNCiAgICAgICAgLy8gIHRoaXMuY2FuY2VsTG9hZGluZygpOw0KICAgICAgfSBlbHNlIGlmICh2YWwgPT0gImxhbmRDaGlsZCIpIHsNCiAgICAgICAgdGhpcy4kcm91dGVyLnB1c2goIi9sYW5kQ2hpbGQiKTsNCiAgICAgICAgdGhpcy5sYW5kQyA9IGZhbHNlOw0KICAgICAgfQ0KICAgIH0sDQogICAgc2hvdzogZnVuY3Rpb24gKCkgew0KICAgICAgdGhpcy5sZWZ0T3BlbiA9IHRydWU7DQogICAgICB0aGlzLnJpZ2h0T3BlbiA9IHRydWU7DQogICAgICB0aGlzLmJhc2ljSW5mb1Nob3cgPSB0cnVlOw0KICAgIH0sDQogICAgLy/ojrflj5bln7rlnLDmlbDmja4NCiAgICBnZXRKZERhdGEodmFsKSB7DQogICAgICBheGlvcw0KICAgICAgICAuZ2V0KCIvanNvbi9xcURhdGEuanNvbiIpDQogICAgICAgIC50aGVuKChyZXN1bHQpID0+IHsNCiAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJlc3VsdC5kYXRhLmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgICBpZiAocmVzdWx0LmRhdGFbaV0uamQgPT0gdGhpcy5wYXJhbXMucGFyYW1zKSB7DQogICAgICAgICAgICAgIHRoaXMud29ya0xpc3RxcVswXS52YWx1ZSA9IHJlc3VsdC5kYXRhW2ldLnFxOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0NCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gew0KICAgICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTsNCiAgICAgICAgfSk7DQogICAgICBpZiAodmFsID09ICLkuI3liqjkuqciKSB7DQogICAgICAgIC8vICAgdGhpcy50aXQ9IuWcn+WcsOivgeS/oeaBryINCiAgICAgICAgdGhpcy53b3JrTGlzdERhdGEgPSBbXTsNCiAgICAgICAgYXhpb3MNCiAgICAgICAgICAuZ2V0KCIvanNvbi9qZERhdGEuanNvbiIpDQogICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coImdldE1lbnVEYXRhMTExIiwgcmVzdWx0LmRhdGEpOw0KICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZXN1bHQuZGF0YS5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICBpZiAocmVzdWx0LmRhdGFbaV0uamQgPT0gdGhpcy5wYXJhbXMucGFyYW1zKSB7DQogICAgICAgICAgICAgICAgY29uc29sZS5sb2coInJlc3VsdC5kYXRhW2ldIiwgcmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIC8vIHRoaXMud29ya0xpc3QucHVzaChyZXN1bHQuZGF0YVtpXSkNCiAgICAgICAgICAgICAgICB0aGlzLndvcmtMaXN0RGF0YS5wdXNoKHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVdvcmtMaXN0QmRjKHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVdvcmtMaXN0KHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0pDQogICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpOw0KICAgICAgICAgIH0pOw0KICAgICAgfSBlbHNlIGlmICh2YWwgPT0gIuWcn+WcsOivgSIpIHsNCiAgICAgICAgLy8gdGhpcy50aXQ9IuWcn+WcsOivgeS/oeaBryINCiAgICAgICAgdGhpcy53b3JrTGlzdERhdGEgPSBbXTsNCiAgICAgICAgdGhpcy5mY3pTaG93ID0gdHJ1ZTsNCiAgICAgICAgYXhpb3MNCiAgICAgICAgICAuZ2V0KCIvanNvbi90ZERhdGEuanNvbiIpDQogICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coImdldE1lbnVEYXRhMTExIiwgcmVzdWx0LmRhdGEpOw0KICAgICAgICAgICAgY29uc29sZS5sb2coInRoaXMucGFyYW1zLnBhcmFtcyIsIHRoaXMucGFyYW1zLnBhcmFtcyk7DQogICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJlc3VsdC5kYXRhLmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgICAgIGlmIChyZXN1bHQuZGF0YVtpXS5qZCA9PSB0aGlzLnBhcmFtcy5wYXJhbXMpIHsNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygicmVzdWx0LmRhdGFbaV0iLCByZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgdGhpcy53b3JrTGlzdERhdGEucHVzaChyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VXb3JrTGlzdFRkKHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVdvcmtMaXN0KHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0pDQogICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpOw0KICAgICAgICAgIH0pOw0KICAgICAgICB0aGlzLndvcmtMaXN0RGF0YWZjeiA9IFtdOw0KICAgICAgICBheGlvcw0KICAgICAgICAgIC5nZXQoIi9qc29uL2ZjekRhdGEuanNvbiIpDQogICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coImdldE1lbnVEYXRhMTExIiwgcmVzdWx0LmRhdGEpOw0KICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZXN1bHQuZGF0YS5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICBpZiAocmVzdWx0LmRhdGFbaV0uamQgPT0gdGhpcy5wYXJhbXMucGFyYW1zKSB7DQogICAgICAgICAgICAgICAgY29uc29sZS5sb2coInJlc3VsdC5kYXRhW2ldIiwgcmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIHRoaXMud29ya0xpc3REYXRhZmN6LnB1c2gocmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlV29ya0xpc3RmY3oocmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIC8vICB0aGlzLmNoYW5nZVdvcmtMaXN0KHJlc3VsdC5kYXRhW2ldKQ0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgfSkNCiAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7DQogICAgICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7DQogICAgICAgICAgfSk7DQogICAgICB9IGVsc2Ugew0KICAgICAgICB0aGlzLndvcmtMaXN0RGF0YSA9IFtdOw0KICAgICAgICB0aGlzLmZjelNob3cgPSB0cnVlOw0KICAgICAgICBheGlvcw0KICAgICAgICAgIC5nZXQoIi9qc29uL2pkRGF0YS5qc29uIikNCiAgICAgICAgICAudGhlbigocmVzdWx0KSA9PiB7DQogICAgICAgICAgICBjb25zb2xlLmxvZygiZ2V0TWVudURhdGExMTEiLCByZXN1bHQuZGF0YSk7DQogICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJlc3VsdC5kYXRhLmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgICAgIGlmIChyZXN1bHQuZGF0YVtpXS5qZCA9PSB0aGlzLnBhcmFtcy5wYXJhbXMpIHsNCiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVdvcmtMaXN0QmRjKHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0pDQogICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gew0KICAgICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpOw0KICAgICAgICAgIH0pOw0KICAgICAgICBheGlvcw0KICAgICAgICAgIC5nZXQoIi9qc29uL3RkRGF0YS5qc29uIikNCiAgICAgICAgICAudGhlbigocmVzdWx0KSA9PiB7DQogICAgICAgICAgICBjb25zb2xlLmxvZygiZ2V0TWVudURhdGExMTEiLCByZXN1bHQuZGF0YSk7DQogICAgICAgICAgICBjb25zb2xlLmxvZygidGhpcy5wYXJhbXMucGFyYW1zIiwgdGhpcy5wYXJhbXMucGFyYW1zKTsNCiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcmVzdWx0LmRhdGEubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgICAgICAgaWYgKHJlc3VsdC5kYXRhW2ldLmpkID09IHRoaXMucGFyYW1zLnBhcmFtcykgew0KICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCJyZXN1bHQuZGF0YVtpXSIsIHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICB0aGlzLndvcmtMaXN0RGF0YS5wdXNoKHJlc3VsdC5kYXRhW2ldKTsNCiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVdvcmtMaXN0VGQocmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlV29ya0xpc3QocmVzdWx0LmRhdGFbaV0pOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgfSkNCiAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7DQogICAgICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7DQogICAgICAgICAgfSk7DQogICAgICAgIHRoaXMud29ya0xpc3REYXRhZmN6ID0gW107DQogICAgICAgIGF4aW9zDQogICAgICAgICAgLmdldCgiL2pzb24vZmN6RGF0YS5qc29uIikNCiAgICAgICAgICAudGhlbigocmVzdWx0KSA9PiB7DQogICAgICAgICAgICBjb25zb2xlLmxvZygiZ2V0TWVudURhdGExMTEiLCByZXN1bHQuZGF0YSk7DQogICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJlc3VsdC5kYXRhLmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgICAgIGlmIChyZXN1bHQuZGF0YVtpXS5qZCA9PSB0aGlzLnBhcmFtcy5wYXJhbXMpIHsNCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygicmVzdWx0LmRhdGFbaV0iLCByZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgdGhpcy53b3JrTGlzdERhdGFmY3oucHVzaChyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VXb3JrTGlzdGZjeihyZXN1bHQuZGF0YVtpXSk7DQogICAgICAgICAgICAgICAgLy8gIHRoaXMuY2hhbmdlV29ya0xpc3QocmVzdWx0LmRhdGFbaV0pDQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9KQ0KICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTsNCiAgICAgICAgICB9KTsNCiAgICAgIH0NCiAgICB9LA0KICAgIGdldE1haW4oKSB7DQogICAgICB0aGlzLiRyb3V0ZXIucHVzaCh7DQogICAgICAgIG5hbWU6ICJsYW5kQ2hpbGQiLA0KICAgICAgICBwYXJhbXM6IHsgaWQ6IHRoaXMucGFyYW1zLnBhcmFtcywgdHlwZTogdGhpcy5wYXJhbXMudHlwZSB9LA0KICAgICAgfSk7DQogICAgfSwNCiAgICAvL+W7uuetkeeJqeS/oeaBrw0KICAgIGNoYW5nZVdvcmtMaXN0KGRhdGEpIHsNCiAgICAgIHZhciBlbnRyaWVzID0gT2JqZWN0LmVudHJpZXMoZGF0YSk7DQogICAgICB2YXIgbGlzdCA9IGVudHJpZXMubWFwKGZ1bmN0aW9uIChpdGVtKSB7DQogICAgICAgIHJldHVybiB7DQogICAgICAgICAgdmFsdWU6IGl0ZW1bMV0sDQogICAgICAgICAgbmFtZTogaXRlbVswXSwNCiAgICAgICAgfTsNCiAgICAgIH0pOw0KICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7DQogICAgICAgIGZvciAodmFyIHQgPSAwOyB0IDwgdGhpcy53b3JrTGlzdC5sZW5ndGg7IHQrKykgew0KICAgICAgICAgIGlmIChsaXN0W2ldLm5hbWUgPT0gdGhpcy53b3JrTGlzdFt0XS5uYW1lKSB7DQogICAgICAgICAgICB0aGlzLndvcmtMaXN0W3RdLnZhbHVlID0gbGlzdFtpXS52YWx1ZTsNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgIHRoaXMud29ya0xpc3REYXRhID0gdGhpcy53b3JrTGlzdDsNCiAgICB9LA0KICAgIC8v5LiN5Yqo5LqnDQogICAgY2hhbmdlV29ya0xpc3RCZGMoZGF0YSkgew0KICAgICAgLy8gdGhpcy53b3JrTGlzdEJkYz1bXQ0KICAgICAgdmFyIGVudHJpZXMgPSBPYmplY3QuZW50cmllcyhkYXRhKTsNCiAgICAgIHZhciBsaXN0ID0gZW50cmllcy5tYXAoZnVuY3Rpb24gKGl0ZW0pIHsNCiAgICAgICAgcmV0dXJuIHsNCiAgICAgICAgICB2YWx1ZTogaXRlbVsxXSwNCiAgICAgICAgICBuYW1lOiBpdGVtWzBdLA0KICAgICAgICB9Ow0KICAgICAgfSk7DQogICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgZm9yICh2YXIgdCA9IDA7IHQgPCB0aGlzLndvcmtMaXN0QmRjLmxlbmd0aDsgdCsrKSB7DQogICAgICAgICAgaWYgKGxpc3RbaV0ubmFtZSA9PSB0aGlzLndvcmtMaXN0QmRjW3RdLm5hbWUpIHsNCiAgICAgICAgICAgIHRoaXMud29ya0xpc3RCZGNbdF0udmFsdWUgPSBsaXN0W2ldLnZhbHVlOw0KICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgfQ0KICAgICAgLy8gIHRoaXMud29ya0xpc3REYXRhID0gdGhpcy53b3JrTGlzdEJkYw0KICAgIH0sDQogICAgLy/lnJ/lnLDor4ENCiAgICBjaGFuZ2VXb3JrTGlzdFRkKGRhdGEpIHsNCiAgICAgIGNvbnNvbGUubG9nKCJkYXRhIiwgZGF0YSk7DQogICAgICB2YXIgZW50cmllcyA9IE9iamVjdC5lbnRyaWVzKGRhdGEpOw0KICAgICAgdmFyIGxpc3QgPSBlbnRyaWVzLm1hcChmdW5jdGlvbiAoaXRlbSkgew0KICAgICAgICByZXR1cm4gew0KICAgICAgICAgIHZhbHVlOiBpdGVtWzFdLA0KICAgICAgICAgIG5hbWU6IGl0ZW1bMF0sDQogICAgICAgIH07DQogICAgICB9KTsNCiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykgew0KICAgICAgICBmb3IgKHZhciB0ID0gMDsgdCA8IHRoaXMud29ya0xpc3ROZXcubGVuZ3RoOyB0KyspIHsNCiAgICAgICAgICBpZiAobGlzdFtpXS5uYW1lID09IHRoaXMud29ya0xpc3ROZXdbdF0ubmFtZSkgew0KICAgICAgICAgICAgdGhpcy53b3JrTGlzdE5ld1t0XS52YWx1ZSA9IGxpc3RbaV0udmFsdWU7DQogICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICB9DQogICAgICB0aGlzLndvcmtMaXN0RGF0YSA9IHRoaXMud29ya0xpc3ROZXc7DQogICAgfSwNCiAgICAvL+aIv+S6p+ivgQ0KICAgIGNoYW5nZVdvcmtMaXN0ZmN6KGRhdGEpIHsNCiAgICAgIHZhciBlbnRyaWVzID0gT2JqZWN0LmVudHJpZXMoZGF0YSk7DQogICAgICB2YXIgbGlzdCA9IGVudHJpZXMubWFwKGZ1bmN0aW9uIChpdGVtKSB7DQogICAgICAgIHJldHVybiB7DQogICAgICAgICAgdmFsdWU6IGl0ZW1bMV0sDQogICAgICAgICAgbmFtZTogaXRlbVswXSwNCiAgICAgICAgfTsNCiAgICAgIH0pOw0KICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7DQogICAgICAgIGZvciAodmFyIHQgPSAwOyB0IDwgdGhpcy53b3JrTGlzdEZDWi5sZW5ndGg7IHQrKykgew0KICAgICAgICAgIGlmIChsaXN0W2ldLm5hbWUgPT0gdGhpcy53b3JrTGlzdEZDWlt0XS5uYW1lKSB7DQogICAgICAgICAgICB0aGlzLndvcmtMaXN0RkNaW3RdLnZhbHVlID0gbGlzdFtpXS52YWx1ZTsNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgIC8vICB0aGlzLndvcmtMaXN0RGF0YSA9IHRoaXMud29ya0xpc3RGQ1oNCiAgICB9LA0KICAgIC8v6I635Y+W5Zyw5Zu+5Y+C5pWwDQogICAgZ2V0RnJvbUlmcmFtZSh2YWx1ZSkgew0KICAgICAgdGhpcy50aXQgPSAi5bu6562R54mp5L+h5oGvIjsNCiAgICAgICh0aGlzLndvcmtMaXN0QmRjID0gWw0KICAgICAgICAvLyB7IGtleTogIuW7uuetkeeJqeWQjeensCIsIHZhbHVlOiAiIixuYW1lOiJqZCIgfSwNCiAgICAgICAgLy8geyBrZXk6ICLlnZDokL3lnLDlnYAiLCB2YWx1ZTogIiIsbmFtZToidHVkaSIgfSwNCiAgICAgICAgeyBrZXk6ICLkuI3liqjkuqfor4Hlj7ciLCB2YWx1ZTogIiIsIG5hbWU6ICJiZGN6aCIgfSwNCiAgICAgICAgeyBrZXk6ICLmnYPlipvmgKfotKgiLCB2YWx1ZTogIiIsIG5hbWU6ICJxbHh6IiB9LA0KICAgICAgICB7IGtleTogIueUqOmAlCIsIHZhbHVlOiAiIiwgbmFtZTogInl0IiB9LA0KICAgICAgICB7IGtleTogIuWul+WcsOmdouenryIsIHZhbHVlOiAiIiwgbmFtZTogInpkbWoiIH0sDQogICAgICAgIHsga2V5OiAi5bu6562R6Z2i56evIiwgdmFsdWU6ICIiLCBuYW1lOiAianptaiIgfSwNCiAgICAgICAgeyBrZXk6ICLmnYPliKnkuroiLCB2YWx1ZTogIiIsIG5hbWU6ICJxbHIiIH0sDQogICAgICAgIC8vIHsga2V5OiAi5YWx5pyJ5oOF5Ya1IiwgdmFsdWU6ICIiLG5hbWU6Imd5cWsiIH0sDQogICAgICAgIC8vIHsga2V5OiAi5Z2Q6JC9IiwgdmFsdWU6ICIiICxuYW1lOiJ6bCJ9LA0KICAgICAgICAvLyB7IGtleTogIuS4jeWKqOS6p+WNleWFg+WPtyIsIHZhbHVlOiAiIiAsbmFtZToiYmRjZHloIn0sDQogICAgICAgIC8vIHsga2V5OiAi5p2D5Yqb57G75Z6LIiwgdmFsdWU6ICIiICxuYW1lOiJxbGx4In0sDQogICAgICAgIC8vIHsga2V5OiAi5L2/55So5pyf6ZmQIiwgdmFsdWU6ICIiICxuYW1lOiJzeXF4In0sDQogICAgICAgIC8vIHsga2V5OiAi5oi/5bGL57uT5p6EIiwgdmFsdWU6ICIiICxuYW1lOiJmd2pnIn0sDQogICAgICAgIC8vIHsga2V5OiAi5oi/5bGL5oC75bGC5pWwIiwgdmFsdWU6ICIiICxuYW1lOiJmd3pjcyJ9LA0KICAgICAgICAvLyB7IGtleTogIuaJgOWcqOWxguaVsCIsIHZhbHVlOiAiIiAsbmFtZToic3pjcyJ9LA0KICAgICAgICAvLyB7IGtleTogIuS4mOadg+WPtyIsIHZhbHVlOiAiIiAsbmFtZToicXFoIn0sDQogICAgICAgIC8vIHsga2V5OiAi5p2l5rqQIiwgdmFsdWU6ICIiICxuYW1lOiJseSJ9LA0KICAgICAgXSksDQogICAgICAgICh0aGlzLndvcmtMaXN0TmV3ID0gWw0KICAgICAgICAgIC8vIHsga2V5OiAi5bu6562R54mp5ZCN56ewIiwgdmFsdWU6ICIiLG5hbWU6ImpkIiB9LA0KICAgICAgICAgIC8vIHsga2V5OiAi5Z2Q6JC95Zyw5Z2AIiwgdmFsdWU6ICIiLG5hbWU6InR1ZGkiIH0sDQogICAgICAgICAgeyBrZXk6ICLlnJ/lnLDor4Hlj7ciLCB2YWx1ZTogIiIsIG5hbWU6ICJ0ZHpoIiB9LA0KICAgICAgICAgIHsga2V5OiAi5p2D5Yqb5oCn6LSoIiwgdmFsdWU6ICIiLCBuYW1lOiAic3lxbHgiIH0sDQogICAgICAgICAgeyBrZXk6ICLlnJ/lnLDnlKjpgJQiLCB2YWx1ZTogIiIsIG5hbWU6ICJkbHl0IiB9LA0KICAgICAgICAgIHsga2V5OiAi5Zyf5Zyw6Z2i56evIiwgdmFsdWU6ICIiLCBuYW1lOiAidGRtaiIgfSwNCiAgICAgICAgICB7IGtleTogIuadg+WIqeS6uiIsIHZhbHVlOiAiIiwgbmFtZTogInRkc3lxciIgfSwNCiAgICAgICAgICAvLyAgeyBrZXk6ICLlhbHmnInmg4XlhrUiLCB2YWx1ZTogIiIsbmFtZToiZ3lxayIgfSwNCiAgICAgICAgICAvLyB7IGtleTogIuWdkOiQvSIsIHZhbHVlOiAiIixuYW1lOiJ6bCIgfSwNCiAgICAgICAgICAvLyB7IGtleTogIuWcsOWPtyIsIHZhbHVlOiAiIiAsbmFtZToiZGgifSwNCg0KICAgICAgICAgIC8vIHsga2V5OiAi5Zu+5Y+3IiwgdmFsdWU6ICIiICxuYW1lOiJ0aCJ9LA0KDQogICAgICAgICAgLy8geyBrZXk6ICLkvb/nlKjmnYPpnaLnp68iLCB2YWx1ZTogIiIsbmFtZToic3lxbWoiIH0sDQogICAgICAgICAgLy8geyBrZXk6ICLnu4jmraLml6XmnJ8iLCB2YWx1ZTogIiIgLG5hbWU6Inp6cnEifSwNCiAgICAgICAgXSksDQogICAgICAgICh0aGlzLndvcmtMaXN0RkNaID0gWw0KICAgICAgICAgIC8vIHsga2V5OiAi5bu6562R54mp5ZCN56ewIiwgdmFsdWU6ICIiLG5hbWU6ImpkIiB9LA0KICAgICAgICAgIC8vIHsga2V5OiAi5Z2Q6JC95Zyw5Z2AIiwgdmFsdWU6ICIiLG5hbWU6InR1ZGkiIH0sDQogICAgICAgICAgLy8geyBrZXk6ICLmiL/kuqfor4Hlj7ciLCB2YWx1ZTogIiIgLG5hbWU6ImZjemgifSwNCiAgICAgICAgICAvLyB7IGtleTogIuaIv+S6p+S9v+eUqOadg+S6uiIsIHZhbHVlOiAiIixuYW1lOiJmd3N5cXIiIH0sDQogICAgICAgICAgLy8geyBrZXk6ICLlnZDokL0iLCB2YWx1ZTogIiIsbmFtZToiemwiIH0sDQogICAgICAgICAgLy8geyBrZXk6ICLmiL/lsYvnlKjpgJQiLCB2YWx1ZTogIiIgLG5hbWU6ImZ3Y2IifSwNCiAgICAgICAgICAvLyB7IGtleTogIue7k+aehCIsIHZhbHVlOiAiIixuYW1lOiJqZyIgfSwNCiAgICAgICAgICAvLyB7IGtleTogIuaIv+Wxi+aAu+WxguaVsCIsIHZhbHVlOiAiIixuYW1lOiJmd3pjcyIgfSwNCiAgICAgICAgICAvLyB7IGtleTogIumdouenryIsIHZhbHVlOiAiIiAsbmFtZToianptaiJ9LA0KICAgICAgICAgIC8vICB7IGtleTogIumdouenryIsIHZhbHVlOiAiIiAsbmFtZToiY3FseSJ9LA0KICAgICAgICAgIHsga2V5OiAi5oi/5Lqn6K+B5Y+3IiwgdmFsdWU6ICIiLCBuYW1lOiAiZmN6aCIgfSwNCiAgICAgICAgICB7IGtleTogIuaIv+Wxi+S6p+WIqyIsIHZhbHVlOiAiIiwgbmFtZTogImZ3Y2IiIH0sDQogICAgICAgICAgeyBrZXk6ICLmiL/lsYvnlKjpgJQiLCB2YWx1ZTogIiIsIG5hbWU6ICJmd3l0IiB9LA0KICAgICAgICAgIHsga2V5OiAi5oi/5bGL6Z2i56evIiwgdmFsdWU6ICIiLCBuYW1lOiAianptaiIgfSwNCiAgICAgICAgICB7IGtleTogIuaIv+S6p+S9v+eUqOadg+S6uiIsIHZhbHVlOiAiIiwgbmFtZTogImZ3c3lxciIgfSwNCiAgICAgICAgXSksDQogICAgICAgICh0aGlzLmFjdGl2ZUNvbG9yID0gLTEpOw0KICAgICAgdGhpcy53b3JrTGlzdHFxID0gW3sga2V5OiAi56Gu5p2D5L+h5oGvIiwgdmFsdWU6ICIiLCBuYW1lOiAicXEiIH1dOw0KICAgICAgdGhpcy5wYXJhbXMgPSB2YWx1ZTsNCiAgICAgIGlmICh0aGlzLnBhcmFtcy50eXBlID09ICLkuI3liqjkuqciKSB7DQogICAgICAgIHRoaXMuY2VudGVyTGlzdCA9IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICB0aXRsZTogIuS4jeWKqOS6p+adg+ivgeS/oeaBryIsDQogICAgICAgICAgICBjb3VudDogMCwNCiAgICAgICAgICAgIGltZ1VybDogcmVxdWlyZSgiQC9hc3NldHMvbGFuZFJlcy9iZGMucG5nIiksDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICB0aXRsZTogIuehruadg+aDheWGtSIsDQogICAgICAgICAgICBjb3VudDogMCwNCiAgICAgICAgICAgIGltZ1VybDogcmVxdWlyZSgiQC9hc3NldHMvbGFuZFJlcy9xcS5wbmciKSwNCiAgICAgICAgICB9LA0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHRpdGxlOiAi6K+B5Lu25p+l55yLIiwNCiAgICAgICAgICAgIGNvdW50OiAwLA0KICAgICAgICAgICAgaW1nVXJsOiByZXF1aXJlKCJAL2Fzc2V0cy9sYW5kUmVzL2ZkYy5wbmciKSwNCiAgICAgICAgICB9LA0KICAgICAgICBdOw0KICAgICAgfSBlbHNlIGlmICh0aGlzLnBhcmFtcy50eXBlID09ICLlnJ/lnLDor4EiKSB7DQogICAgICAgIHRoaXMuY2VudGVyTGlzdCA9IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICB0aXRsZTogIuWcn+WcsOivgeS/oeaBryIsDQogICAgICAgICAgICBjb3VudDogIuaXoCIsDQogICAgICAgICAgICBpbWdVcmw6IHJlcXVpcmUoIkAvYXNzZXRzL2xhbmRSZXMvdGR6LnBuZyIpLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgdGl0bGU6ICLmiL/kuqfor4Hkv6Hmga8iLA0KICAgICAgICAgICAgY291bnQ6IDAsDQogICAgICAgICAgICBpbWdVcmw6IHJlcXVpcmUoIkAvYXNzZXRzL2xhbmRSZXMvZmRjLnBuZyIpLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgdGl0bGU6ICLnoa7mnYPmg4XlhrUiLA0KICAgICAgICAgICAgY291bnQ6IDAsDQogICAgICAgICAgICBpbWdVcmw6IHJlcXVpcmUoIkAvYXNzZXRzL2xhbmRSZXMvcXEucG5nIiksDQogICAgICAgICAgfSwNCiAgICAgICAgICB7DQogICAgICAgICAgICB0aXRsZTogIuivgeS7tuafpeeciyIsDQogICAgICAgICAgICBjb3VudDogMCwNCiAgICAgICAgICAgIGltZ1VybDogcmVxdWlyZSgiQC9hc3NldHMvbGFuZFJlcy9iZGMucG5nIiksDQogICAgICAgICAgfSwNCiAgICAgICAgXTsNCiAgICAgIH0NCiAgICAgIHRoaXMuZ2V0SmREYXRhKHRoaXMucGFyYW1zLnR5cGUpOw0KICAgICAgdGhpcy5sZWZ0T3BlbiA9IGZhbHNlOw0KICAgICAgdGhpcy5yaWdodE9wZW4gPSBmYWxzZTsNCiAgICAgIHRoaXMuVmlzaWJsZSA9IGZhbHNlOw0KICAgICAgdGhpcy5iYXNpY0luZm9TaG93ID0gdHJ1ZTsNCiAgICB9LA0KDQogICAgLy/oj5zljZXot7PovawNCiAgICBidG4odmFsLCBpbmRleCkgew0KICAgICAgaWYgKHZhbCAhPSAi6K+B5Lu25p+l55yLIikgew0KICAgICAgICB0aGlzLnRpdCA9IHZhbDsNCiAgICAgIH0NCg0KICAgICAgdGhpcy5WaXNpYmxlID0gZmFsc2U7DQogICAgICB0aGlzLmJhc2ljSW5mb1Nob3cgPSB0cnVlOw0KICAgICAgdGhpcy5hY3RpdmVDb2xvciA9IGluZGV4Ow0KICAgICAgaWYgKHZhbCA9PSAi5LiN5Yqo5Lqn5p2D6K+B5L+h5oGvIikgew0KICAgICAgICB0aGlzLndvcmtMaXN0RGF0YSA9IHRoaXMud29ya0xpc3RCZGM7DQogICAgICAgIHRoaXMucmlnaHRPcGVuID0gZmFsc2U7DQogICAgICB9IGVsc2UgaWYgKHZhbCA9PSAi5Zyf5Zyw6K+B5L+h5oGvIikgew0KICAgICAgICB0aGlzLndvcmtMaXN0RGF0YSA9IHRoaXMud29ya0xpc3ROZXc7DQogICAgICAgIHRoaXMucmlnaHRPcGVuID0gZmFsc2U7DQogICAgICB9IGVsc2UgaWYgKHZhbCA9PSAi5oi/5Lqn6K+B5L+h5oGvIikgew0KICAgICAgICB0aGlzLndvcmtMaXN0RGF0YSA9IHRoaXMud29ya0xpc3RGQ1o7DQogICAgICAgIHRoaXMucmlnaHRPcGVuID0gZmFsc2U7DQogICAgICB9IGVsc2UgaWYgKHZhbCA9PSAi56Gu5p2D5oOF5Ya1Iikgew0KICAgICAgICBjb25zb2xlLmxvZygidGhpcy53b3JrTGlzdHFxIiwgdGhpcy53b3JrTGlzdHFxKTsNCiAgICAgICAgdGhpcy53b3JrTGlzdERhdGEgPSB0aGlzLndvcmtMaXN0cXE7DQogICAgICAgIHRoaXMucmlnaHRPcGVuID0gZmFsc2U7DQogICAgICB9DQogICAgfSwNCg0KICAgIHNlYXJjaChkYXRhKSB7DQogICAgICBjb25zb2xlLmxvZygiZGF0YSIsIGRhdGEpOw0KICAgICAgdGhpcy5WaXNpYmxlID0gdHJ1ZTsNCiAgICAgIHRoaXMuYmFzaWNJbmZvU2hvdyA9IGZhbHNlOw0KICAgICAgdGhpcy5yaWdodE9wZW4gPSBmYWxzZTsNCiAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHsNCiAgICAgICAgLy/ov5nph4znmoRkaWFsb2fkuI7kuIrpnaJkaWFsb2ctY29tcG9uZW5057uE5Lu26YeM6Z2i55qEcmVm5bGe5oCn5YC85piv5LiA6Ie055qEDQogICAgICAgIC8vaW5pdOiwg+eUqOeahOaYr2RpYWxvZy1jb21wb25lbnTnu4Tku7bph4zpnaLnmoRpbml05pa55rOVDQogICAgICAgIC8vZGF0YeaYr+S8oOmAkue7meW8ueeql+mhtemdoueahOWAvA0KICAgICAgICB0aGlzLiRyZWZzLmRpYWxvZy5pbml0KGRhdGEpOw0KICAgICAgfSk7DQogICAgfSwNCiAgICAvL+WFs+mXreafpeivouW8ueahhg0KICAgIGdldENsb3NlKCkgew0KICAgICAgdGhpcy5WaXNpYmxlID0gZmFsc2U7DQogICAgICB0aGlzLnJpZ2h0T3BlbiA9IHRydWU7DQogICAgICB0aGlzLmJhc2ljSW5mb1Nob3cgPSB0cnVlOw0KICAgIH0sDQogICAgZ2V0amROYW1lKHZhbCkgew0KICAgICAgdGhpcy5qZE5hbWVOZXcgPSB2YWw7DQogICAgfSwNCiAgICBnZXRqZE5hbWVDbGljayh2YWwpIHsNCiAgICAgIGNvbnNvbGUubG9nKCJ2YWwiLCB2YWwpOw0KICAgICAgdGhpcy4kcm91dGVyLnB1c2goew0KICAgICAgICBuYW1lOiAibGFuZENoaWxkIiwNCiAgICAgICAgcGFyYW1zOiB7IGlkOiB2YWwuamQsIHR5cGU6IHZhbC50eXBlIH0sDQogICAgICB9KTsNCiAgICB9LA0KICAgIGdvUGFnZSh2YWwpIHsNCiAgICAgIGlmICh2YWwgPT0gMCkgew0KICAgICAgICBjb25zb2xlLmxvZygi6L+U5Zue5oi/5Zyw6LWE5rqQLeS4u+WcuuaZryIpOw0KICAgICAgICAvLyB0aGlzLiRyb3V0ZXIucHVzaCgiL2xhbmQiKTsNCiAgICAgICAgdGhpcy4kcm91dGVyLnB1c2goIi8iKTsNCiAgICAgIH0NCiAgICB9LA0KICAgIGNhbmNlbExvYWRpbmcoKSB7DQogICAgICBzZXRUaW1lb3V0KCgpID0+IHsNCiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7DQogICAgICB9LCA1MDApOw0KICAgIH0sDQogICAgLyoqDQogICAgICog5Yqo5oCB5Lyg6L6T5Z+O5biC5ZCN56ewDQogICAgICogQHBhcmFtIGV2ZW50DQogICAgICovDQogICAgLy8gaGFuZGxlTWVzc2FnZShldmVudCkgew0KICAgIC8vICAgLy8g6I635Y+W5LuOaWZyYW1l6aG16Z2i5Lit5Lyg6L+H5p2l55qE5YC8DQogICAgLy8gICAvLyB2YXIgY21kID0gZXZlbnQuZGF0YS5jbWQ7DQogICAgLy8gICB0aGlzLmNpdHlOYW1lID0gZXZlbnQuZGF0YS5wYXJhbXM7DQogICAgLy8gfSwNCiAgICBidWlsZCgpIHsNCiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKCIvYnVpbGQiKTsNCiAgICB9LA0KICB9LA0KICBjcmVhdGVkKCkgew0KICAgIHdpbmRvd1sidnVlRGVmaW5lZE15UHJvcCJdID0gKGJ1aWxkKSA9PiB7DQogICAgICB0aGlzLmJ1aWxkKCk7DQogICAgfTsNCiAgICB3aW5kb3cuZ2V0RnJvbUlmcmFtZSA9IHRoaXMuZ2V0RnJvbUlmcmFtZTsNCiAgICB3aW5kb3cuc2hvdyA9IHRoaXMuc2hvdzsNCiAgfSwNCn07DQo="},{"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;;AAEA;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;;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:'个'},\r\n {pic:require('@/assets/newimgs/变电站总数.png'),num:'447',text:\"变电站总数\",unit:'座'},\r\n {pic:require('@/assets/newimgs/主变总数.png'),num:'379',text:\"主变总数\",unit:'台'},\r\n {pic:require('@/assets/newimgs/主变总容量.png'),num:'493405',text:\"主变总容量\",unit:'kVA'},\r\n {pic:require('@/assets/newimgs/变电站总数.png'),num:'28502 ',text:\"实时负荷\",unit:'kW'},\r\n {pic:require('@/assets/newimgs/租日总电量.png'),num:'614730',text:\"昨日总电量\",unit:'kWh'},\r\n {pic:require('@/assets/newimgs/待办工单总数.png'),num:'0',text:\"代办工单总数\",unit:'条'},\r\n {pic:require('@/assets/newimgs/告警总数.png'),num:'0',text:\"告警总数\",unit:'条'},\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 })\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 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/总数-框.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"]}]}