{"remainingRequest":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Manage\\material\\CMGTMaterialAnalysisManager.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Manage\\material\\CMGTMaterialAnalysisManager.vue","mtime":1731062409144},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgeyBkcmFnQ29udHJvbGxlckRpdiB9IGZyb20gJy4vYXBpL2RyYWdDb250cm9sbGVyRGl2Jw0KaW1wb3J0IHF1YW50aXR5TWFuYWdlIGZyb20gJ0Avdmlld3MvTWFuYWdlL21hdGVyaWFsL2FwaS9tYXRlcmlhbFF1YW50aXR5TWFuYWdlLmpzJw0KaW1wb3J0IHsgVGFibGVNaXhpbiB9IGZyb20gJ0AvbWl4aW5zL3RhYmxlTWl4aW4nDQppbXBvcnQgZGljdENvbnRyYWN0cyBmcm9tICdAL2NvbXBvbmVudHMvZGljdC9EaWN0U2VsZWN0VXRpbHMuanMnDQppbXBvcnQgZWJzVHJlZVNlbGVjdCBmcm9tICdAL3ZpZXdzL01hbmFnZS9jb21wb25lbnRzL1NlbGVjdFRyZWUudnVlJw0KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICdNYXRlcmlhbEFjY291dE1hbmFnZScsDQogIGNvbXBvbmVudHM6IHsNCiAgICBlYnNUcmVlU2VsZWN0DQogIH0sDQogIG1peGluczogW1RhYmxlTWl4aW5dLA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBmbG93RGF0YTogew0KICAgICAgICBwYWdlQmVhbjogew0KICAgICAgICAgIHBhZ2U6IDEsDQogICAgICAgICAgcGFnZVNpemU6IDEwLA0KICAgICAgICAgIHNob3dUb3RhbDogdHJ1ZQ0KICAgICAgICB9LA0KICAgICAgICAvLyBxdWVyeXM6IFtdLA0KICAgICAgICBzb3J0ZXI6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICBkaXJlY3Rpb246ICdBU0MnLA0KICAgICAgICAgICAgcHJvcGVydHk6ICdmb3JUaGVEYXRlJw0KICAgICAgICAgIH0NCiAgICAgICAgXQ0KICAgICAgfSwNCiAgICAgIGZsb3dUb3RhbDogJycsDQogICAgICBnZXRRdWFudGl0eUlEOiAnJywNCiAgICAgIHRpdGxlczogJycsDQogICAgICBzZWFyY2g6ICcnLA0KICAgICAgdGFibGVEYXRhOiBbXSwNCiAgICAgIGRldGFpbHNEYXRhOiBbXSwNCiAgICAgIGRldGFpbERpYWxvZ1Zpc2libGU6IGZhbHNlLA0KICAgICAgc2hvd0Zvcm1EaWFzOiBmYWxzZSwNCiAgICAgIHRyZWVEYXRhOiBbDQogICAgICAgIHsgY29kZTogJzAnLCBpZDogMCwgbmFtZTogJ+eJqei1hOWIhuexu+S/oeaBrycsIHBhcmVudElkOiAwLCBjaGlsZHJlbjogW10gfQ0KICAgICAgXSwNCiAgICAgIGRlZmF1bHRQcm9wczogew0KICAgICAgICB2YWx1ZTogJ2lkJywNCiAgICAgICAgbGFiZWw6ICduYW1lJywNCiAgICAgICAgcGFyZW50SWQ6ICdwYXJlbnRJZCcsDQogICAgICAgIGNvZGU6ICdjb2RlJywNCiAgICAgICAgY2hpbGRyZW46ICdjaGlsZHJlbicNCiAgICAgIH0sDQogICAgICBkYXRhOiBbXSwNCiAgICAgIHRyZWVOb2RlOiB7DQogICAgICAgIGNvZGU6ICcwJywNCiAgICAgICAgaWQ6IDAsDQogICAgICAgIG5hbWU6ICfnianotYTliIbnsbvkv6Hmga8nLA0KICAgICAgICBwYXJlbnRJZDogMCwNCiAgICAgICAgY2hpbGRyZW46IFtdDQogICAgICB9LA0KICAgICAgdXBkYXRlVHJlZU5vZGU6IG51bGwsDQogICAgICB1cmw6IHt9LA0KICAgICAgZmxvd1F1ZXJ5czogWw0KICAgICAgICB7DQogICAgICAgICAgZ3JvdXA6ICdtYWluJywNCiAgICAgICAgICBvcGVyYXRpb246ICdCRVRXRUVOJywNCiAgICAgICAgICBwYXJlbnRHcm91cDogJycsDQogICAgICAgICAgcHJvcGVydHk6ICdmb3JUaGVEYXRlJywNCiAgICAgICAgICByZWxhdGlvbjogJ0FORCcsDQogICAgICAgICAgdmFsdWU6ICcnDQogICAgICAgIH0sDQogICAgICAgIHsNCiAgICAgICAgICBncm91cDogJ21haW4nLA0KICAgICAgICAgIG9wZXJhdGlvbjogJ0xJS0UnLA0KICAgICAgICAgIHBhcmVudEdyb3VwOiAnJywNCiAgICAgICAgICBwcm9wZXJ0eTogJ2lub3V0TmFtZScsDQogICAgICAgICAgcmVsYXRpb246ICdBTkQnLA0KICAgICAgICAgIHZhbHVlOiAnJw0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgZ3JvdXA6ICdtYWluJywNCiAgICAgICAgICBvcGVyYXRpb246ICdFUVVBTCcsDQogICAgICAgICAgcGFyZW50R3JvdXA6ICcnLA0KICAgICAgICAgIHByb3BlcnR5OiAnaW5vdXRUeXBlJywNCiAgICAgICAgICByZWxhdGlvbjogJ0FORCcsDQogICAgICAgICAgdmFsdWU6ICcnDQogICAgICAgIH0NCiAgICAgIF0sDQogICAgICBxdWVyeXM6IFsNCiAgICAgICAgew0KICAgICAgICAgIGdyb3VwOiAnbWFpbicsDQogICAgICAgICAgb3BlcmF0aW9uOiAnTElLRScsDQogICAgICAgICAgcGFyZW50R3JvdXA6ICcnLA0KICAgICAgICAgIHByb3BlcnR5OiAnbC5tYXRlcmlhbF9uYW1lXycsDQogICAgICAgICAgcmVsYXRpb246ICdBTkQnLA0KICAgICAgICAgIHZhbHVlOiAnJw0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgZ3JvdXA6ICdtYWluJywNCiAgICAgICAgICBvcGVyYXRpb246ICdCRVRXRUVOJywNCiAgICAgICAgICBwYXJlbnRHcm91cDogJycsDQogICAgICAgICAgcHJvcGVydHk6ICdxdWVyeU1vbnRoJywNCiAgICAgICAgICByZWxhdGlvbjogJ0FORCcsDQogICAgICAgICAgdmFsdWU6ICcnDQogICAgICAgIH0sDQogICAgICAgIHsNCiAgICAgICAgICBncm91cDogJ21haW4nLA0KICAgICAgICAgIG9wZXJhdGlvbjogJ0xJS0UnLA0KICAgICAgICAgIHBhcmVudEdyb3VwOiAnJywNCiAgICAgICAgICBwcm9wZXJ0eTogJ21hbnVmYWN0dXJlcl8nLA0KICAgICAgICAgIHJlbGF0aW9uOiAnQU5EJywNCiAgICAgICAgICB2YWx1ZTogJycNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIGdyb3VwOiAnbWFpbicsDQogICAgICAgICAgb3BlcmF0aW9uOiAnRVFVQUwnLA0KICAgICAgICAgIHBhcmVudEdyb3VwOiAnJywNCiAgICAgICAgICBwcm9wZXJ0eTogJ20uY2xhc3NfaWRfJywNCiAgICAgICAgICByZWxhdGlvbjogJ0FORCcsDQogICAgICAgICAgdmFsdWU6ICcnDQogICAgICAgIH0NCiAgICAgIF0sDQogICAgICB3YXJlaG91c2VzOiBbXQ0KICAgIH0NCiAgfSwNCiAgd2F0Y2g6IHsNCiAgICBmaWx0ZXJUZXh0KHZhbCkgew0KICAgICAgLy8gY29uc29sZS5sb2codmFsKQ0KICAgICAgdGhpcy4kcmVmcy50cmVlLmZpbHRlcih2YWwpDQogICAgfQ0KICB9LA0KICBjcmVhdGVkKCkgew0KICAgIHRoaXMud2FyZWhvdXNlcyA9IGRpY3RDb250cmFjdHMuZ2V0RGljdEl0ZW1zRnJvbUNhY2hlKCdjbWd0X2NrbWMnKQ0KICAgIC8vIHRoaXMuZGVmYXVsdERhdGUoKQ0KICB9LA0KICBtb3VudGVkKCkgew0KICAgIGRyYWdDb250cm9sbGVyRGl2KCkNCiAgICB0aGlzLiRyZWZzWyd0cmVlJ10uc2V0Q3VycmVudEtleSgn54mp6LWE5YiG57G75L+h5oGvJykNCiAgICB0aGlzLmdldFRyZWVuKCkNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIC8vIGRlZmF1bHREYXRlKCkgew0KICAgIC8vICAgLy/ojrflj5bmlrDnmoTml7bpl7QNCiAgICAvLyAgIGxldCBkYXRlID0gbmV3IERhdGUoKQ0KICAgIC8vICAgLy/ojrflj5blvZPliY3ml7bpl7TnmoTlubTku73ovazkuLrlrZfnrKbkuLINCiAgICAvLyAgIGxldCB5ZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKCkNCiAgICAvLyAgIC8v6I635Y+W5pyI5Lu977yM55Sx5LqO5pyI5Lu95LuOMOW8gOWni++8jOatpOWkhOimgeWKoDHvvIzliKTmlq3mmK/lkKblsI/kuo4xMO+8jOWmguaenOaYr+WcqOWtl+espuS4suWJjemdouaLvOaOpScwJw0KICAgIC8vICAgbGV0IG1vbnRoID0NCiAgICAvLyAgICAgZGF0ZS5nZXRNb250aCgpICsgMSA8IDEwDQogICAgLy8gICAgICAgPyAnMCcgKyAoZGF0ZS5nZXRNb250aCgpICsgMSkudG9TdHJpbmcoKQ0KICAgIC8vICAgICAgIDogKGRhdGUuZ2V0TW9udGgoKSArIDEpLnRvU3RyaW5nKCkNCiAgICAvLyAgIC8v6I635Y+W5aSp77yM5Yik5pat5piv5ZCm5bCP5LqOMTDvvIzlpoLmnpzmmK/lnKjlrZfnrKbkuLLliY3pnaLmi7zmjqUnMCcNCiAgICAvLyAgIC8vIGxldCBkYSA9DQogICAgLy8gICAvLyAgIGRhdGUuZ2V0RGF0ZSgpIDwgMTANCiAgICAvLyAgIC8vICAgICA/ICcwJyArIGRhdGUuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkNCiAgICAvLyAgIC8vICAgICA6IGRhdGUuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkNCiAgICAvLyAgIC8v5a2X56ym5Liy5ou85o6l77yM5byA5aeL5pe26Ze077yM57uT5p2f5pe26Ze0DQogICAgLy8gICBsZXQgZW5kID0geWVhciArICctJyArIG1vbnRoIC8v5b2T5aSpDQogICAgLy8gICBsZXQgYmVnID0geWVhciArICctJyArICcwJyArIChOdW1iZXIobW9udGgpIC0gMSkudG9TdHJpbmcoKSAvL+W9k+aciOesrOS4gOWkqQ0KICAgIC8vICAgdGhpcy5xdWVyeXNbMV0udmFsdWUgPSBbYmVnLCBlbmRdIC8v5bCG5YC86K6+572u57uZ5o+S5Lu257uR5a6a55qE5pWw5o2uDQogICAgLy8gfSwNCiAgICBmbG93aGFuZGxlU2l6ZUNoYW5nZSh2YWwpIHsNCiAgICAgIHRoaXMuZmxvd0RhdGEucGFnZUJlYW4ucGFnZVNpemUgPSB2YWwNCiAgICAgIHRoaXMuZ2V0UXVhbnRpdHlMaXN0KCkNCiAgICB9LA0KICAgIGZsb3doYW5kbGVDdXJyZW50Q2hhbmdlKHZhbCkgew0KICAgICAgdGhpcy5mbG93RGF0YS5wYWdlQmVhbi5wYWdlID0gdmFsDQogICAgICB0aGlzLmdldFF1YW50aXR5TGlzdCgpDQogICAgfSwNCiAgICAvL+WHuuWFpeW6k+aYjue7humHjee9rg0KICAgIGZsb3dSZXNldCgpIHsNCiAgICAgIHRoaXMuZmxvd1F1ZXJ5c1swXS52YWx1ZSA9ICcnDQogICAgICB0aGlzLmZsb3dRdWVyeXNbMV0udmFsdWUgPSAnJw0KICAgICAgdGhpcy5mbG93UXVlcnlzWzJdLnZhbHVlID0gJycNCiAgICAgIC8vIHRoaXMuJHJlZnMuZ2V0UXVhbnRpdHlCdG4uJGVsLmNsaWNrKCkNCiAgICAgIHRoaXMuZ2V0UXVhbnRpdHlMaXN0KCkNCiAgICB9LA0KICAgIC8v5Ye65YWl5bqT5piO57uG5pCc57SiDQogICAgZmxvd1NlYXJjaCgpIHsNCiAgICAgIC8vIHRoaXMuJHJlZnMuZ2V0UXVhbnRpdHlCdG4uJGVsLmNsaWNrKCkNCiAgICAgIHRoaXMuZ2V0UXVhbnRpdHlMaXN0KCkNCiAgICB9LA0KDQogICAgaGFuZGxlQ2xvc2UoKSB7DQogICAgICB0aGlzLmRldGFpbERpYWxvZ1Zpc2libGUgPSBmYWxzZQ0KICAgIH0sDQogICAgLy8g5qCR5p+l6K+iDQogICAgZ2V0VHJlZW4oKSB7DQogICAgICBxdWFudGl0eU1hbmFnZS5sb2FkQWxsQ2xhc3Moe30sIHJlcyA9PiB7DQogICAgICAgIGNvbnNvbGUubG9nKHJlcykNCiAgICAgICAgdGhpcy50cmVlRGF0YVswXS5jaGlsZHJlbiA9IHJlcy52YWx1ZQ0KICAgICAgICB0aGlzLiRzZXQodGhpcy50cmVlRGF0YSkNCiAgICAgIH0pDQogICAgfSwNCiAgICByZWxvYWQoKSB7DQogICAgICB0aGlzLnRyZWVEYXRhID0gWw0KICAgICAgICB7IGNvZGU6ICcnLCBpZDogMCwgbmFtZTogJ+eJqei1hOeuoeeQhicsIHBhcmVudElkOiAwLCBjaGlsZHJlbjogW10gfQ0KICAgICAgXQ0KICAgICAgdGhpcy4kc2V0KHRoaXMudHJlZURhdGEpDQogICAgICB0aGlzLmdldFRyZWVuKCkNCiAgICAgIHRoaXMubG9hZERhdGEoKQ0KICAgIH0sDQogICAgLy8g6YeN572uDQogICAgY2xlYXJRdWVyeXMoKSB7DQogICAgICB0aGlzLnF1ZXJ5c1swXS52YWx1ZSA9ICcnDQogICAgICAvLyB0aGlzLnF1ZXJ5c1sxXS52YWx1ZSA9ICcnDQogICAgICB0aGlzLnF1ZXJ5c1syXS52YWx1ZSA9ICcnDQogICAgfSwNCiAgICAvLyDliIbpobXmn6Xor6LnianotYTkv6Hmga8NCiAgICBsb2FkRGF0YShwYWdlKSB7DQogICAgICBpZiAocGFnZSkgew0KICAgICAgICB0aGlzLnF1ZXJ5UGFyYW0ucGFnZUJlYW4ucGFnZSA9IHBhZ2UNCiAgICAgIH0NCiAgICAgIHRoaXMubG9hZGluZyA9IHRydWUNCiAgICAgIHRoaXMudGFibGVEYXRhID0gW10NCiAgICAgIHRoaXMucXVlcnlQYXJhbS5xdWVyeXMgPSBbXQ0KICAgICAgLy8gdGhpcy5xdWVyeVBhcmFtLnNvcnRlciA9IFsNCiAgICAgIC8vICAgew0KICAgICAgLy8gICAgIGRpcmVjdGlvbjogJ0FTQycsDQogICAgICAvLyAgICAgcHJvcGVydHk6ICdzbicNCiAgICAgIC8vICAgfQ0KICAgICAgLy8gXQ0KICAgICAgaWYgKHRoaXMucXVlcnlzWzBdLnZhbHVlKSB7DQogICAgICAgIHRoaXMucXVlcnlQYXJhbS5xdWVyeXMucHVzaCh0aGlzLnF1ZXJ5c1swXSkNCiAgICAgIH0NCiAgICAgIC8vIGlmICh0aGlzLnF1ZXJ5c1sxXS52YWx1ZSkgew0KICAgICAgLy8gICB0aGlzLnF1ZXJ5UGFyYW0ucXVlcnlzLnB1c2godGhpcy5xdWVyeXNbMV0pDQogICAgICAvLyB9DQogICAgICBpZiAodGhpcy5xdWVyeXNbMl0udmFsdWUpIHsNCiAgICAgICAgdGhpcy5xdWVyeVBhcmFtLnF1ZXJ5cy5wdXNoKHRoaXMucXVlcnlzWzJdKQ0KICAgICAgfQ0KICAgICAgaWYgKHRoaXMucXVlcnlzWzNdLnZhbHVlKSB7DQogICAgICAgIHRoaXMucXVlcnlQYXJhbS5xdWVyeXMucHVzaCh0aGlzLnF1ZXJ5c1szXSkNCiAgICAgIH0NCiAgICAgIHF1YW50aXR5TWFuYWdlLmludmVudG9yeVF1ZXJ5KHRoaXMucXVlcnlQYXJhbSwgcmVzID0+IHsNCiAgICAgICAgY29uc29sZS5sb2coJz09PT09PT1tYXRlcmlhbFF1YW50aXR5UXVlcnk9PT09PT09PT09JywgcmVzKQ0KICAgICAgICB0aGlzLnRvdGFsID0gcmVzLnRvdGFsDQogICAgICAgIHRoaXMudGFibGVEYXRhID0gcmVzLnJvd3MNCiAgICAgICAgdGhpcy4kc2V0KHRoaXMudGFibGVEYXRhKQ0KICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZQ0KICAgICAgfSkNCiAgICB9LA0KICAgIGhhbmRsZU5vZGVDbGljayhkYXRhKSB7DQogICAgICAvLyDngrnlh7vliIbnsbvmoJHoioLngrkNCiAgICAgIHRoaXMudHJlZU5vZGUgPSBkYXRhDQogICAgICBpZiAoZGF0YS5pZCA9PSAnMCcpIHsNCiAgICAgICAgdGhpcy5xdWVyeXNbM10udmFsdWUgPSB0aGlzLnRyZWVOb2RlLmlkDQogICAgICAgIHRoaXMubG9hZERhdGEoMSkNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRoaXMucXVlcnlzWzNdLnZhbHVlID0gdGhpcy50cmVlTm9kZS5pZA0KICAgICAgICB0aGlzLmxvYWREYXRhKDEpDQogICAgICB9DQogICAgfSwNCiAgICBmb3JtYXJ0V2FyZWhvdXNlTmFtZShyb3csIGNvbHVtbiwgY2VsbFZhbHVlLCBpbmRleCkgew0KICAgICAgdmFyIG9iaiA9IHRoaXMud2FyZWhvdXNlcy5maW5kKGZ1bmN0aW9uIChpdGVtKSB7DQogICAgICAgIGlmIChpdGVtLnZhbHVlID09PSByb3cud2FyZWhvdXNlKSB7DQogICAgICAgICAgcmV0dXJuIGl0ZW0NCiAgICAgICAgfQ0KICAgICAgfSkNCiAgICAgIGlmIChvYmogIT09IHVuZGVmaW5lZCkgew0KICAgICAgICByZXR1cm4gb2JqLm5hbWUNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHJldHVybiAnJw0KICAgICAgfQ0KICAgIH0sDQogICAgZ2V0UXVhbnRpdHlMaXN0KCkgew0KICAgICAgdGhpcy5mbG93RGF0YS5xdWVyeXMgPSBbDQogICAgICAgIHsNCiAgICAgICAgICBncm91cDogJ21haW4nLA0KICAgICAgICAgIG9wZXJhdGlvbjogJ0xJS0UnLA0KICAgICAgICAgIHBhcmVudEdyb3VwOiAnJywNCiAgICAgICAgICBwcm9wZXJ0eTogJ21hdGVyaWFsSWQnLA0KICAgICAgICAgIHJlbGF0aW9uOiAnQU5EJywNCiAgICAgICAgICB2YWx1ZTogdGhpcy5nZXRRdWFudGl0eUlEDQogICAgICAgIH0NCiAgICAgIF0NCiAgICAgIGlmICh0aGlzLmZsb3dRdWVyeXNbMF0udmFsdWUpIHsNCiAgICAgICAgdGhpcy5mbG93RGF0YS5xdWVyeXMucHVzaCh0aGlzLmZsb3dRdWVyeXNbMF0pDQogICAgICB9DQogICAgICBpZiAodGhpcy5mbG93UXVlcnlzWzFdLnZhbHVlKSB7DQogICAgICAgIHRoaXMuZmxvd0RhdGEucXVlcnlzLnB1c2godGhpcy5mbG93UXVlcnlzWzFdKQ0KICAgICAgfQ0KICAgICAgaWYgKHRoaXMuZmxvd1F1ZXJ5c1syXS52YWx1ZSkgew0KICAgICAgICB0aGlzLmZsb3dEYXRhLnF1ZXJ5cy5wdXNoKHRoaXMuZmxvd1F1ZXJ5c1syXSkNCiAgICAgIH0NCiAgICAgIC8vIGNvbnNvbGUubG9nKGZsb3dEYXRhKQ0KICAgICAgcXVhbnRpdHlNYW5hZ2UuZmxvd0xvZ1F1ZXJ5KHRoaXMuZmxvd0RhdGEsIHJlcyA9PiB7DQogICAgICAgIGNvbnNvbGUubG9nKHJlcykNCiAgICAgICAgLy8gcmVzLnJvd3MubWFwKGl0ZW0gPT4gew0KICAgICAgICAvLyAgIGl0ZW0uaW5vdXRUeXBlID0gaXRlbS5pbm91dFR5cGUgPT0gJzEnID8gJ+etvuaUtuWFpeW6kycgOiAn5Ye65bqT6aKG55SoJw0KICAgICAgICAvLyB9KQ0KICAgICAgICB0aGlzLmZsb3dUb3RhbCA9IHJlcy50b3RhbA0KICAgICAgICB0aGlzLmRldGFpbHNEYXRhID0gcmVzLnJvd3MNCiAgICAgICAgdGhpcy4kc2V0KHRoaXMuZGV0YWlsc0RhdGEpDQogICAgICAgIHRoaXMuZGV0YWlsRGlhbG9nVmlzaWJsZSA9IHRydWUNCiAgICAgIH0pDQogICAgfSwNCiAgICBnZXRRdWFudGl0eURldGFpbChyb3cpIHsNCiAgICAgIGNvbnNvbGUubG9nKHJvdykNCiAgICAgIHRoaXMuZ2V0UXVhbnRpdHlJRCA9IHJvdy5pZA0KICAgICAgdGhpcy5nZXRRdWFudGl0eUxpc3QoKQ0KICAgIH0sDQogICAgLy8gZm9ybWF0dGVyVHlwZU5hbWUocm93LCBjb2x1bW4sIGNlbGxWYWx1ZSwgaW5kZXgpIHsNCiAgICAvLyAgIGlmIChyb3cudHlwZSA9PSAnMCcpIHsNCiAgICAvLyAgICAgcmV0dXJuICflhaXlupMnDQogICAgLy8gICB9DQogICAgLy8gICBpZiAocm93LnR5cGUgPT0gJzEnKSB7DQogICAgLy8gICAgIHJldHVybiAn6aKG55SoJw0KICAgIC8vICAgfQ0KICAgIC8vIH0sDQogICAgZm9ybWF0dGVyRGF0ZShyb3csIGNvbHVtbiwgY2VsbFZhbHVlLCBpbmRleCkgew0KICAgICAgdmFyIGRhdGUgPSBuZXcgRGF0ZShyb3cuaW5vdXREYXRlKQ0KICAgICAgdmFyIG1vbnRoID0NCiAgICAgICAgZGF0ZS5nZXRNb250aCgpICsgMSA8IDEwDQogICAgICAgICAgPyAnMCcgKyAoZGF0ZS5nZXRNb250aCgpICsgMSkNCiAgICAgICAgICA6IGRhdGUuZ2V0TW9udGgoKSArIDENCiAgICAgIHZhciBjdXJyZW50RGF0ZSA9DQogICAgICAgIGRhdGUuZ2V0RGF0ZSgpIDwgMTAgPyAnMCcgKyBkYXRlLmdldERhdGUoKSA6IGRhdGUuZ2V0RGF0ZSgpDQogICAgICByZXR1cm4gZGF0ZS5nZXRGdWxsWWVhcigpICsgJy0nICsgbW9udGggKyAnLScgKyBjdXJyZW50RGF0ZQ0KICAgIH0sDQogICAgZ2V0U3VtbWFyaWVzKHBhcmFtKSB7DQogICAgICBjb25zdCB7IGNvbHVtbnMsIGRhdGEgfSA9IHBhcmFtDQogICAgICBjb25zdCBzdW1zID0gW10NCiAgICAgIGNvbHVtbnMuZm9yRWFjaCgoY29sdW1uLCBpbmRleCkgPT4gew0KICAgICAgICBpZiAoaW5kZXggPT09IDApIHsNCiAgICAgICAgICBzdW1zW2luZGV4XSA9ICfmgLvorqEnDQogICAgICAgICAgcmV0dXJuDQogICAgICAgIH0NCiAgICAgICAgaWYgKGluZGV4ID09PSAxIHx8IGluZGV4ID09PSAyIHx8IGluZGV4ID09PSAzIHx8IGluZGV4ID09PSA2KSB7DQogICAgICAgICAgc3Vtc1tpbmRleF0gPSAnJw0KICAgICAgICAgIHJldHVybg0KICAgICAgICB9DQoNCiAgICAgICAgY29uc3QgdmFsdWVzID0gZGF0YS5tYXAoaXRlbSA9PiB7DQogICAgICAgICAgaWYgKGluZGV4ID09PSA0ICYmIGl0ZW0udHlwZSA9PT0gJzAnKSB7DQogICAgICAgICAgICByZXR1cm4gTnVtYmVyKGl0ZW1bY29sdW1uLnByb3BlcnR5XSkNCiAgICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID09PSA1ICYmIGl0ZW0udHlwZSA9PT0gJzEnKSB7DQogICAgICAgICAgICByZXR1cm4gTnVtYmVyKGl0ZW1bY29sdW1uLnByb3BlcnR5XSkNCiAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuIDANCiAgICAgICAgICB9DQogICAgICAgIH0pDQogICAgICAgIGlmICghdmFsdWVzLmV2ZXJ5KHZhbHVlID0+IGlzTmFOKHZhbHVlKSkpIHsNCiAgICAgICAgICBzdW1zW2luZGV4XSA9IHZhbHVlcy5yZWR1Y2UoKHByZXYsIGN1cnIpID0+IHsNCiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gTnVtYmVyKGN1cnIpDQogICAgICAgICAgICBpZiAoIWlzTmFOKHZhbHVlKSkgew0KICAgICAgICAgICAgICByZXR1cm4gcHJldiArIGN1cnINCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgIHJldHVybiBwcmV2DQogICAgICAgICAgICB9DQogICAgICAgICAgfSwgMCkNCiAgICAgICAgICBzdW1zW2luZGV4XSArPSAnJw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgIHN1bXNbaW5kZXhdID0gJ04vQScNCiAgICAgICAgfQ0KICAgICAgfSkNCiAgICAgIHJldHVybiBzdW1zDQogICAgfQ0KICB9DQp9DQo="},null]}