{"remainingRequest":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Manage\\duty\\CmgtDutyWorkarrangeManage.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Manage\\duty\\CmgtDutyWorkarrangeManage.vue","mtime":1731062409034},{"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:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgQ21ndER1dHlXb3JrYXJyYW5nZUFwaSBmcm9tICdAL3ZpZXdzL01hbmFnZS9kdXR5L2FwaS9DbWd0RHV0eVdvcmthcnJhbmdlQXBpJw0KaW1wb3J0IENtZ3REdXR5V29ya2FycmFuZ2VGb3JtRGlhbG9nIGZyb20gJ0Avdmlld3MvTWFuYWdlL2R1dHkvY29tcG9uZW50cy9DbWd0RHV0eVdvcmthcnJhbmdlRm9ybURpYWxvZycNCmltcG9ydCBkaWN0Q29udHJhY3RzIGZyb20gJ0AvY29tcG9uZW50cy9kaWN0L0RpY3RTZWxlY3RVdGlscy5qcycNCmltcG9ydCBJZnJhbWUgZnJvbSAnQC92aWV3cy9NYW5hZ2UvY29tcG9uZW50cy9JZnJhbWUudnVlJw0KaW1wb3J0IENvbW1vbkFwaSBmcm9tICdAL3ZpZXdzL01hbmFnZS9Db21tb25BcGkuanMnDQppbXBvcnQgU2VsZWN0VHJlZSBmcm9tICdAL3ZpZXdzL01hbmFnZS9jb21wb25lbnRzL1NlbGVjdFRyZWUnDQppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnDQppbXBvcnQgeyBkaWN0aW9uYXJ5RXNjYXBlIH0gZnJvbSAnQC91dGlscy9kaWN0aW9uYXJ5Jw0KaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnDQoNCmV4cG9ydCBkZWZhdWx0IHsNCiAgbmFtZTogJ0NtZ3REdXR5V29ya2FycmFuZ2VNYW5hZ2UnLA0KICBjb21wb25lbnRzOiB7DQogICAgQ21ndER1dHlXb3JrYXJyYW5nZUZvcm1EaWFsb2csDQogICAgSWZyYW1lLA0KICAgIFNlbGVjdFRyZWUNCiAgfSwNCiAgZGF0YSgpIHsNCiAgICByZXR1cm4gew0KICAgICAgdGFibGVEYXRhOiBbXSwNCiAgICAgIFN0c2hvd0Zvcm1EaWFzOiBmYWxzZSwNCiAgICAgIHRlYW1zOiBbXSwNCiAgICAgIGNsYXNzSW5mb3M6IFtdLA0KICAgICAgbWVtYmVyczogW10sDQogICAgICB0aW1lVmFsdWU6IG5ldyBEYXRlKCksDQogICAgICBzZWFyY2hEYXRlOiBudWxsLA0KICAgICAgbG9hZGluZzogZmFsc2UsDQogICAgICBwb3N0czogW10sDQogICAgICBvcmdBcnJhbmdlTGlzdDogW10sDQogICAgICBvcmc6IHsgdmFsdWU6ICcnLCBsYWJlbDogJycsIHRlbXBsYXRlOiAnJyB9LA0KICAgICAgb3JnSWQ6ICcnLA0KICAgICAgdGVhbUlkOiAnJywNCiAgICAgIHdvcmtjbGFzc0lkOiAnJywNCiAgICAgIG9yZ05hbWU6ICcnLA0KICAgICAgdGVtcGxhdGVOYW1lOiAnJywNCiAgICAgIGFjdGl2ZU5hbWU6ICcxJywNCiAgICAgIHJlcG9ydEJhc2VVcmw6DQogICAgICAgICdodHRwOi8vMTgzLjIzMC4xNzYuMTI1OjM3Nzk5L3dlYnJvb3QvZGVjaXNpb24vdmlldy9yZXBvcnQnLA0KICAgICAgc3JjMTogJycsDQogICAgICBzcmMyOiAnJywNCiAgICAgIG9yZ0xpc3Q6IFtdLA0KICAgICAgYWN0aW9uVXJsOiAnJywNCiAgICAgIHBvc3RPcHQ6IFsNCiAgICAgICAgeyBuYW1lOiAn6LSf6LSj5Lq6JywgdmFsdWU6ICcxJyB9LA0KICAgICAgICB7IG5hbWU6ICfpmJ/plb8nLCB2YWx1ZTogJzInIH0sDQogICAgICAgIHsgbmFtZTogJ+e7hOmVvycsIHZhbHVlOiAnMycgfSwNCiAgICAgICAgeyBuYW1lOiAn6Zif5ZGYJywgdmFsdWU6ICc0JyB9LA0KICAgICAgICB7IG5hbWU6ICflhoXli6QnLCB2YWx1ZTogJzUnIH0sDQogICAgICAgIHsgbmFtZTogJ+WNj+WKqeWIhueuoScsIHZhbHVlOiAnNicgfSwNCiAgICAgIF0NCiAgICB9DQogIH0sDQogIGNvbXB1dGVkOiBtYXBTdGF0ZSh7DQogICAgdXNlckluZm86IChzdGF0ZSkgPT4gew0KICAgICAgcmV0dXJuIHN0YXRlLnVzZXINCiAgICB9LA0KICAgIGhlYWRlcjogKHN0YXRlKSA9PiB7DQogICAgICByZXR1cm4gew0KICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7c3RhdGUubG9naW4uY3VycmVudFVzZXIudG9rZW59YA0KICAgICAgfQ0KICAgIH0NCiAgfSksDQogIGNyZWF0ZWQoKSB7DQogICAgdGhpcy5hY3Rpb25VcmwgPSB3aW5kb3cuY29udGV4dC5wb3J0YWwNCiAgICB0aGlzLnBvc3RzID0gZGljdENvbnRyYWN0cy5nZXREaWN0SXRlbXNGcm9tQ2FjaGUoJ2NtZ3RfcG9zdCcpDQogICAgdGhpcy4kbmV4dFRpY2soKCkgPT4gew0KICAgICAgLy8g54K55Ye75YmN5LiA5Liq5pyIDQogICAgICBjb25zdCBwcmV2QnRuID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigNCiAgICAgICAgJy5lbC1jYWxlbmRhcl9fYnV0dG9uLWdyb3VwIC5lbC1idXR0b24tZ3JvdXA+YnV0dG9uOm50aC1jaGlsZCgxKScNCiAgICAgICkNCiAgICAgIHByZXZCdG4uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZSkgPT4gew0KICAgICAgICBjb25zdCBkID0gbmV3IERhdGUodGhpcy50aW1lVmFsdWUpDQogICAgICAgIGNvbnN0IHJlc0RhdGUgPQ0KICAgICAgICAgIGQuZ2V0RnVsbFllYXIoKSArICctJyArIHRoaXMuaGFuZGxlVGltZShkLmdldE1vbnRoKCkgKyAxKQ0KICAgICAgICAvLyAyMDIwLTA4DQogICAgICAgIHRoaXMuc2VhcmNoRGF0ZSA9IHJlc0RhdGUNCiAgICAgICAgdGhpcy5sb2FkRGF0YSgpDQogICAgICAgIHRoaXMucmVsb2FkSWZyYW1lKCkNCiAgICAgIH0pDQogICAgICAvLyDngrnlh7vkuIvkuIDkuKrmnIgNCiAgICAgIGNvbnN0IG5leHRCdG4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKA0KICAgICAgICAnLmVsLWNhbGVuZGFyX19idXR0b24tZ3JvdXAgLmVsLWJ1dHRvbi1ncm91cD5idXR0b246bnRoLWNoaWxkKDMpJw0KICAgICAgKQ0KICAgICAgbmV4dEJ0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChlKSA9PiB7DQogICAgICAgIGNvbnN0IGQgPSBuZXcgRGF0ZSh0aGlzLnRpbWVWYWx1ZSkNCiAgICAgICAgY29uc3QgcmVzRGF0ZSA9DQogICAgICAgICAgZC5nZXRGdWxsWWVhcigpICsgJy0nICsgdGhpcy5oYW5kbGVUaW1lKGQuZ2V0TW9udGgoKSArIDEpDQogICAgICAgIC8vIDIwMjAtMTANCiAgICAgICAgdGhpcy5zZWFyY2hEYXRlID0gcmVzRGF0ZQ0KICAgICAgICB0aGlzLmxvYWREYXRhKCkNCiAgICAgICAgdGhpcy5yZWxvYWRJZnJhbWUoKQ0KICAgICAgfSkNCiAgICAgIC8vIOeCueWHu+S7iuWkqQ0KICAgICAgY29uc3QgdG9kYXlCdG4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKA0KICAgICAgICAnLmVsLWNhbGVuZGFyX19idXR0b24tZ3JvdXAgLmVsLWJ1dHRvbi1ncm91cD5idXR0b246bnRoLWNoaWxkKDIpJw0KICAgICAgKQ0KICAgICAgdG9kYXlCdG4uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZSkgPT4gew0KICAgICAgICBjb25zdCBkID0gbmV3IERhdGUodGhpcy50aW1lVmFsdWUpDQogICAgICAgIGNvbnN0IHJlc0RhdGUgPQ0KICAgICAgICAgIGQuZ2V0RnVsbFllYXIoKSArICctJyArIHRoaXMuaGFuZGxlVGltZShkLmdldE1vbnRoKCkgKyAxKQ0KICAgICAgICAvLyAyMDIwLTA5DQogICAgICAgIHRoaXMuc2VhcmNoRGF0ZSA9IHJlc0RhdGUNCiAgICAgICAgdGhpcy5sb2FkRGF0YSgpDQogICAgICAgIHRoaXMucmVsb2FkSWZyYW1lKCkNCiAgICAgIH0pDQogICAgfSkNCiAgfSwNCiAgbW91bnRlZCgpIHsNCiAgICBzZXRUaW1lb3V0KCgpID0+IHsNCiAgICAgIHRoaXMub3JnSWQgPSB0aGlzLnVzZXJJbmZvLmN1cnJlbnRVc2VyRGV0YWlsPy5vcmdbMF0/Lm9yZ0lkIHx8ICcnDQogICAgICBDbWd0RHV0eVdvcmthcnJhbmdlQXBpLmdldFVzZXJPcmdhbml6YXRpb24oDQogICAgICAgIHRoaXMudXNlckluZm8uY3VycmVudFVzZXJEZXRhaWw/LnVzZXIudXNlcklkIHx8ICcnLA0KICAgICAgICAocmVzKSA9PiB7DQogICAgICAgICAgbGV0IGluZm8gPSByZXNbMF0ucGF0aC5zcGxpdCgnLicpLnNsaWNlKDEsIC0xKQ0KICAgICAgICAgIHRoaXMub3JnID0gaW5mbw0KICAgICAgICAgIHRoaXMuc2VsZWN0Q2hhbmdlKCkNCiAgICAgICAgfQ0KICAgICAgKQ0KICAgIH0sIDEwMDApDQoNCiAgICAvLyDojrflj5bmiYDmnInpg6jpl6jmjpLnj63kv6Hmga8NCiAgICAvLyBDbWd0RHV0eVdvcmthcnJhbmdlQXBpLmZpbmRBbGxPcmdBcnJhbmdlKHJlcyA9PiB7DQogICAgLy8gICAgIGNvbnNvbGUubG9nKCI9PT09PT09PT1maW5kQWxsT3JnQXJyYW5nZT09PT09PT09PT09PSIscmVzKQ0KICAgIC8vICAgdGhpcy5vcmdBcnJhbmdlTGlzdCA9IHJlcy5kYXRhDQogICAgLy8gfSkNCiAgICBDb21tb25BcGkubG9hZFNlbGVjdE9wdGlvbnMoDQogICAgICB7IG5hbWU6ICdtYW5hZ2VDb21tb25TZXJ2aWNlLmZpbmRaR0pPcmcnIH0sDQogICAgICAocmVzKSA9PiB7DQogICAgICAgIHRoaXMub3JnQXJyYW5nZUxpc3QgPSByZXMNCiAgICAgIH0NCiAgICApDQoNCiAgICBDb21tb25BcGkuZ2V0QWxsT3JnVHJlZSgocmVzKSA9PiB7DQogICAgICB0aGlzLnNldExlYWYocmVzLmRhdGEpDQogICAgICB0aGlzLm9yZ0xpc3QgPSByZXMuZGF0YQ0KICAgIH0pDQogICAgdmFyIGQgPSBuZXcgRGF0ZSgpDQogICAgdGhpcy5zZWFyY2hEYXRlID0gZC5nZXRGdWxsWWVhcigpICsgJy0nICsgKGQuZ2V0TW9udGgoKSArIDEpDQogIH0sDQogIG1ldGhvZHM6IHsNCiAgICBkaWN0aW9uYXJ5RXNjYXBlLA0KDQogICAgZG93bkZpbGUoKSB7DQogICAgICBsZXQgZGF0ZSA9IG1vbWVudCh0aGlzLnRpbWVWYWx1ZSkuZm9ybWF0KCdZWVlZLU1NLTAxJykNCiAgICAgIC8vIGNvbnNvbGUubG9nKGRhdGUsICdkYXRlJykNCiAgICAgIENtZ3REdXR5V29ya2FycmFuZ2VBcGkud29ya0NsYXNzRXhwb3J0QWxsKA0KICAgICAgICB7DQogICAgICAgICAgZGF0ZSwNCiAgICAgICAgICBvcmdJZDogdGhpcy5vcmdJZA0KICAgICAgICB9LA0KICAgICAgICAoKSA9PiB7DQogICAgICAgIH0NCiAgICAgICkNCiAgICB9LA0KICAgIGZpbmRUZWFtKG9yZ0lkKSB7DQogICAgICB0aGlzLmN1cnJlbnRPcmdJZCA9IG9yZ0lkLnF1ZXJ5c1swXS52YWx1ZQ0KICAgICAgQ21ndER1dHlXb3JrYXJyYW5nZUFwaS5maW5kVGVhbShvcmdJZCwgKHJlcykgPT4gew0KICAgICAgICBpZiAocmVzLnN0YXRlKSB7DQogICAgICAgICAgdGhpcy50ZWFtcyA9IHJlcy52YWx1ZQ0KICAgICAgICAgIC8vIGlmICh0aGlzLnRlYW1zLmxlbmd0aCA9PT0gMCkgew0KICAgICAgICAgIC8vICAgICB0aGlzLnNlbGVjdGVkVGVhbShudWxsKQ0KICAgICAgICAgIC8vIH0NCiAgICAgICAgICAvLyB0aGlzLmxvYWRpbmcgPSBmYWxzZQ0KICAgICAgICB9DQogICAgICB9KQ0KICAgIH0sDQogICAgZmluZENsYXNzKG9yZ0lkKSB7DQogICAgICB0aGlzLndvcmtjbGFzc0lkID0gJycNCiAgICAgIENtZ3REdXR5V29ya2FycmFuZ2VBcGkuZmluZENsYXNzKG9yZ0lkLCAocmVzKSA9PiB7DQogICAgICAgIGlmIChyZXMuc3RhdGUpIHsNCiAgICAgICAgICB0aGlzLmNsYXNzSW5mb3MgPSByZXMudmFsdWUgfHwgW10NCiAgICAgICAgICBpZiAodGhpcy5jbGFzc0luZm9zLmxlbmd0aCkgew0KICAgICAgICAgICAgdGhpcy53b3JrY2xhc3NJZCA9IHRoaXMuY2xhc3NJbmZvc1swXS5pZA0KICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgfSkNCiAgICB9LA0KICAgIHNldExlYWYob3Jncykgew0KICAgICAgY29uc3QgY291bnQgPSBvcmdzLmxlbmd0aA0KICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7DQogICAgICAgIHZhciBvcmcgPSBvcmdzW2ldDQogICAgICAgIGlmIChvcmcuY2hpbGRyZW4gJiYgb3JnLmNoaWxkcmVuLmxlbmd0aCA+IDApIHsNCiAgICAgICAgICBvcmcubGVhZiA9IGZhbHNlDQogICAgICAgICAgdGhpcy5zZXRMZWFmKG9yZy5jaGlsZHJlbikNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICBvcmcubGVhZiA9IHRydWUNCiAgICAgICAgICBvcmcuY2hpbGRyZW4gPSBudWxsDQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9LA0KICAgIHRhYkNsaWNrKHQpIHsNCiAgICAgIGlmICh0aGlzLmFjdGl2ZU5hbWUgPT09ICcyJykgew0KICAgICAgICAvLyBfX3BpX189ZmFsc2Ug6ZqQ6JeP5Y+C5pWw6Z2i5p2/77yM55u05o6l6I635Y+W5o6S54+t55qE5py65p6E44CB5pe26Ze05Y+C5pWw6LWL5YC857uZ5Y+C5pWw6Z2i5p2/5Lit55qE57uE5Lu2DQogICAgICAgIHRoaXMuc3JjMSA9DQogICAgICAgICAgdGhpcy5yZXBvcnRCYXNlVXJsICsNCiAgICAgICAgICAnP3ZpZXdsZXQ9ZHV0eWFycmFuZ2VfdDEuY3B0Jm9wPXZpZXcmX19waV9fPWZhbHNlJnN0YXJ0RGF0ZT0nICsNCiAgICAgICAgICB0aGlzLnNlYXJjaERhdGUgKw0KICAgICAgICAgICctMDEmZW5kRGF0ZT0nICsNCiAgICAgICAgICB0aGlzLnNlYXJjaERhdGUgKw0KICAgICAgICAgIHRoaXMuZ2V0TW9udGhMYXN0RGF5KCkgKw0KICAgICAgICAgICcmb3JnSWQ9JyArDQogICAgICAgICAgdGhpcy5vcmdJZA0KICAgICAgfQ0KICAgICAgaWYgKHRoaXMuYWN0aXZlTmFtZSA9PT0gJzMnKSB7DQogICAgICAgIC8vIF9fcGlfXz1mYWxzZSDpmpDol4/lj4LmlbDpnaLmnb/vvIznm7TmjqXojrflj5bmjpLnj63nmoTmnLrmnoTjgIHml7bpl7Tlj4LmlbDotYvlgLznu5nlj4LmlbDpnaLmnb/kuK3nmoTnu4Tku7YNCiAgICAgICAgdGhpcy5zcmMyID0NCiAgICAgICAgICB0aGlzLnJlcG9ydEJhc2VVcmwgKw0KICAgICAgICAgICc/dmlld2xldD1kdXR5YXJyYW5nZV90Mi5jcHQmb3A9dmlldyZfX3BpX189ZmFsc2Umc3RhcnREYXRlPScgKw0KICAgICAgICAgIHRoaXMuc2VhcmNoRGF0ZSArDQogICAgICAgICAgJy0wMSZlbmREYXRlPScgKw0KICAgICAgICAgIHRoaXMuc2VhcmNoRGF0ZSArDQogICAgICAgICAgdGhpcy5nZXRNb250aExhc3REYXkoKSArDQogICAgICAgICAgJyZvcmdJZD0nICsNCiAgICAgICAgICB0aGlzLm9yZ0lkDQogICAgICB9DQogICAgfSwNCiAgICAvLyDkv67mlLkNCiAgICB1cGRhdGVBcnJhbmdlKGl0ZW0pIHsNCiAgICAgIHRoaXMuJHJlZnMuZm9ybU1vZGFsLlVwZGF0ZShpdGVtKQ0KICAgIH0sDQogICAgY2xvc2VTdHNob3dGb3JtKCkgew0KICAgICAgdGhpcy5TdHNob3dGb3JtRGlhcyA9IGZhbHNlDQogICAgfSwNCiAgICBsb2FkRGF0YSgpIHsNCiAgICAgIC8vIOiOt+WPluW9k+aciOaOkuePreS/oeaBrw0KICAgICAgLy8gaWYgKG9yZ0lkID09IG51bGwgfHwgb3JnSWQgPT0gdW5kZWZpbmVkKSB7DQogICAgICAvLyAgICAgb3JnSWQgPSAnbnVsbCcNCiAgICAgIC8vIH0NCiAgICAgIHRoaXMubG9hZGluZyA9IHRydWUNCiAgICAgIENtZ3REdXR5V29ya2FycmFuZ2VBcGkuZmluZE1vbnRoQXJyYW5nZUluZm8oDQogICAgICAgIHsNCiAgICAgICAgICBkYXRlOiB0aGlzLnNlYXJjaERhdGUgKyAnLTAxJywNCiAgICAgICAgICBvcmdJZDogdGhpcy5vcmdJZCwNCiAgICAgICAgICB3b3JrY2xhc3NJZDogdGhpcy53b3JrY2xhc3NJZA0KICAgICAgICAgIC8vIHRlYW1JZDogdGhpcy50ZWFtSWQNCiAgICAgICAgfSwNCiAgICAgICAgKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMudGFibGVEYXRhID0gcmVzLnZhbHVlDQogICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2UNCiAgICAgICAgfQ0KICAgICAgKQ0KICAgIH0sDQogICAgc2VsZWN0Q2hhbmdlKCkgew0KICAgICAgdmFyIHYgPSB7IHZhbHVlOiB0aGlzLm9yZ1t0aGlzLm9yZy5sZW5ndGggLSAxXSB9DQogICAgICAvLyBjb25zb2xlLmxvZygndnZ2dnZ2dnZ2dnZ2dnZ2PT09PT09PT09PScsIHYpDQoNCiAgICAgIC8vIHRoaXMub3JnID0gdg0KICAgICAgdGhpcy5vcmdJZCA9IHYudmFsdWUNCiAgICAgIC8vIHRoaXMub3JnTmFtZSA9IHYubGFiZWwNCiAgICAgIHRoaXMudGVtcGxhdGVOYW1lID0gdi50ZW1wbGF0ZQ0KICAgICAgLy8g6YCJ5oup6YOo6Zeo5o6S54+t6KGo5ZCO77yM6I635Y+W6K+l6YOo6Zeo55qE5bCP57uE5ZKM6Zif5ZGY5L+h5oGvDQogICAgICB2YXIgcXVlcnkgPSB7DQogICAgICAgIHF1ZXJ5czogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIGdyb3VwOiAnbWFpbicsDQogICAgICAgICAgICBvcGVyYXRpb246ICdFUVVBTCcsDQogICAgICAgICAgICBwYXJlbnRHcm91cDogJycsDQogICAgICAgICAgICBwcm9wZXJ0eTogJ29yZ19pZF8nLA0KICAgICAgICAgICAgcmVsYXRpb246ICdBTkQnLA0KICAgICAgICAgICAgdmFsdWU6IHYudmFsdWUNCiAgICAgICAgICB9DQogICAgICAgIF0NCiAgICAgIH0NCiAgICAgIHRoaXMuJHJlZnMuZm9ybU1vZGFsLnNlbGVjdGVkVGVhbSh0aGlzLm9yZ0lkKQ0KICAgICAgLy8gdGhpcy5maW5kVGVhbSh7DQogICAgICAvLyAgIC4uLnF1ZXJ5LA0KICAgICAgLy8gICBzb3J0ZXI6IFt7ZGlyZWN0aW9uOiAnQVNDJywgcHJvcGVydHk6ICdzbl8nfV0NCiAgICAgIC8vIH0pDQogICAgICB0aGlzLmZpbmRDbGFzcyhxdWVyeSkNCiAgICAgIGlmICh0aGlzLmFjdGl2ZU5hbWUgIT09ICcxJykgew0KICAgICAgICB0aGlzLnRhYkNsaWNrKHt9KQ0KICAgICAgfQ0KICAgICAgLy8gdGhpcy5yZWxvYWRJZnJhbWUoKQ0KICAgIH0sDQogICAgYWRkQXJyYW5nZShkYXRhKSB7DQogICAgICBjb25zdCB7IHdvcmtjbGFzc0lkLCB0ZWFtSWQsIG9yZ0lkIH0gPSB0aGlzDQogICAgICAvLyDlop7liqDmjpLnj63kv6Hmga8NCiAgICAgIHRoaXMuJHJlZnMuZm9ybU1vZGFsLmFkZCh7DQogICAgICAgIGFycmFuZ2VEYXRlOiBkYXRhLmRheSwNCiAgICAgICAgd29ya2NsYXNzSWQsDQogICAgICAgIG9yZ0lkLA0KICAgICAgICB0ZWFtSWQNCiAgICAgIH0pDQogICAgfSwNCiAgICAvLyDlpITnkIbml7bpl7QNCiAgICBoYW5kbGVUaW1lKHMpIHsNCiAgICAgIHJldHVybiBzIDwgMTAgPyAnMCcgKyBzIDogcw0KICAgIH0sDQogICAgaGFuZGxlVGFnQ2xvc2UoaXRlbSkgew0KICAgICAgdmFyIGl0ZW1fID0gaXRlbQ0KICAgICAgdmFyIGlkcyA9IFtpdGVtLmFycklkXQ0KICAgICAgdGhpcy4kY29uZmlybSgn5q2k5pON5L2c5bCG5rC45LmF5Yig6Zmk6K+l5L+h5oGvLCDmmK/lkKbnu6fnu60/JywgJ+aPkOekuicsIHsNCiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7lrponLA0KICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAn5Y+W5raIJywNCiAgICAgICAgdHlwZTogJ3dhcm5pbmcnLA0KICAgICAgICBjZW50ZXI6IHRydWUNCiAgICAgIH0pDQogICAgICAgIC50aGVuKCgpID0+IHsNCiAgICAgICAgICBDbWd0RHV0eVdvcmthcnJhbmdlQXBpLmRlbGV0ZUNtZ3REdXR5V29ya2FycmFuZ2UoDQogICAgICAgICAgICBpZHMsDQogICAgICAgICAgICAocmVzKSA9PiB7DQogICAgICAgICAgICAgIHRoaXMudGFibGVEYXRhLnNwbGljZSgNCiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlRGF0YS5pbmRleE9mKGl0ZW1fKSwNCiAgICAgICAgICAgICAgICAxDQogICAgICAgICAgICAgICkNCiAgICAgICAgICAgICAgdGhpcy4kbWVzc2FnZSh7DQogICAgICAgICAgICAgICAgdHlwZTogJ3N1Y2Nlc3MnLA0KICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICfliKDpmaTmiJDlip8hJw0KICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICkNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKCgpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlKHsNCiAgICAgICAgICAgIHR5cGU6ICdpbmZvJywNCiAgICAgICAgICAgIG1lc3NhZ2U6ICflt7Llj5bmtojliKDpmaQnDQogICAgICAgICAgfSkNCiAgICAgICAgfSkNCiAgICB9LA0KICAgIGlzQ3VycmVudE1vbnRoKGRheSkgew0KICAgICAgaWYgKCF0aGlzLm9yZ0lkKSB7DQogICAgICAgIHJldHVybiBmYWxzZQ0KICAgICAgfQ0KICAgICAgaWYgKGRheS5zdWJzdHJpbmcoMCwgNykgIT09IHRoaXMudGltZVZhbHVlLmZvcm1hdCgneXl5eS1NTScpKSB7DQogICAgICAgIHJldHVybiBmYWxzZQ0KICAgICAgfQ0KICAgICAgcmV0dXJuIHRydWUNCiAgICB9LA0KICAgIGRheU5vdEV4aXN0KGRheSkgew0KICAgICAgdmFyIGZsYWcgPSB0cnVlDQogICAgICB0aGlzLnRhYmxlRGF0YS5mb3JFYWNoKChpdGVtKSA9PiB7DQogICAgICAgIGlmIChpdGVtLmFycmFuZ2VEYXRlID09PSBkYXkpIHsNCiAgICAgICAgICBmbGFnID0gZmFsc2UNCiAgICAgICAgfQ0KICAgICAgfSkNCiAgICAgIHJldHVybiBmbGFnDQogICAgfSwNCiAgICBwb3N0Zm9ybWF0dGVyKHZhbHVlKSB7DQogICAgICB2YXIgbmFtZSA9ICcnDQogICAgICB0aGlzLnBvc3RzLmZvckVhY2goKGl0ZW0pID0+IHsNCiAgICAgICAgaWYgKGl0ZW0udmFsdWUgPT09IHZhbHVlKSB7DQogICAgICAgICAgbmFtZSA9IGl0ZW0ubmFtZQ0KICAgICAgICB9DQogICAgICB9KQ0KICAgICAgcmV0dXJuIG5hbWUNCiAgICB9LA0KICAgIGZhc3RXb3JrQXJyYW5nZSgpIHsNCiAgICAgIGlmICh0aGlzLm9yZ0lkID09IG51bGwgfHwgdGhpcy5vcmdJZCA9PT0gJycpIHsNCiAgICAgICAgdGhpcy4kbWVzc2FnZSh7DQogICAgICAgICAgdHlwZTogJ3dhcm5pbmcnLA0KICAgICAgICAgIG1lc3NhZ2U6ICfor7fpgInmi6npg6jpl6jkv6Hmga/vvIEnDQogICAgICAgIH0pDQogICAgICAgIHJldHVybg0KICAgICAgfQ0KICAgICAgaWYgKHRoaXMuc2VhcmNoRGF0ZSA9PSBudWxsIHx8IHRoaXMuc2VhcmNoRGF0ZSA9PT0gJycpIHsNCiAgICAgICAgdGhpcy4kbWVzc2FnZSh7DQogICAgICAgICAgdHlwZTogJ3dhcm5pbmcnLA0KICAgICAgICAgIG1lc3NhZ2U6ICfor7fpgInmi6nmjpLnj63ml7bpl7TvvIEnDQogICAgICAgIH0pDQogICAgICAgIHJldHVybg0KICAgICAgfQ0KICAgICAgLy92YXIgb3JnTmFtZSA9IHRoaXMuJHJlZnMub3JnU2VsZWN0LnNlbGVjdGVkLmxhYmVsDQogICAgICB0aGlzLiRjb25maXJtKA0KICAgICAgICAn56Gu6K6k5LiA6ZSu5o6S54+tJyArDQogICAgICAgIHRoaXMuc2VhcmNoRGF0ZSArDQogICAgICAgICfmnIjmjpLnj63kv6Hmga8s5q2k5pON5L2c5Lya6KaG55uW6K+l5pyI5o6S54+t5L+h5oGvLOivt+ehruiupOaYr+WQpuaOkuePrT8nLA0KICAgICAgICAn5o+Q56S6JywNCiAgICAgICAgew0KICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu5a6aJywNCiAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAn5Y+W5raIJywNCiAgICAgICAgICB0eXBlOiAnd2FybmluZycsDQogICAgICAgICAgY2VudGVyOiB0cnVlDQogICAgICAgIH0NCiAgICAgICkNCiAgICAgICAgLnRoZW4oKCkgPT4gew0KICAgICAgICAgIC8vIHZhciB0aGlzXyA9IHRoaXMNCiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlDQoNCiAgICAgICAgICBjb25zdCBsb2FkaW5nID0gdGhpcy4kbG9hZGluZyh7DQogICAgICAgICAgICBsb2NrOiB0cnVlLA0KICAgICAgICAgICAgdGV4dDogJ+aOkuePreWkhOeQhuS4rS4uLicsDQogICAgICAgICAgICBzcGlubmVyOiAnZWwtaWNvbi1sb2FkaW5nJywNCiAgICAgICAgICAgIGJhY2tncm91bmQ6ICdyZ2JhKDAsIDAsIDAsIDAuNyknDQogICAgICAgICAgfSkNCg0KICAgICAgICAgIENtZ3REdXR5V29ya2FycmFuZ2VBcGkuZmFzdFdvcmtBcnJhbmdlKA0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICBkYXRlOiB0aGlzLnNlYXJjaERhdGUsDQogICAgICAgICAgICAgIG9yZ0lkOiB0aGlzLm9yZ0lkDQogICAgICAgICAgICB9LA0KICAgICAgICAgICAgKHJlcykgPT4gew0KICAgICAgICAgICAgICBsb2FkaW5nLmNsb3NlKCkNCiAgICAgICAgICAgICAgdGhpcy5sb2FkRGF0YSgpDQogICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlDQogICAgICAgICAgICB9DQogICAgICAgICAgKQ0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKCkgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uoew0KICAgICAgICAgICAgdHlwZTogJ2luZm8nLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+W3suWPlua2iOS4gOmUruaOkuePrScNCiAgICAgICAgICB9KQ0KICAgICAgICB9KQ0KICAgIH0sDQoNCiAgICByZWxvYWRJZnJhbWUoKSB7DQogICAgICBpZiAodGhpcy50ZW1wbGF0ZU5hbWUgPT0gbnVsbCB8fCB0aGlzLnRlbXBsYXRlTmFtZSA9PSAnJykgew0KICAgICAgICB0aGlzLnNyYyA9ICcnDQogICAgICB9IGVsc2Ugew0KICAgICAgICAvLyBfX3BpX189ZmFsc2Ug6ZqQ6JeP5Y+C5pWw6Z2i5p2/77yM55u05o6l6I635Y+W5o6S54+t55qE5py65p6E44CB5pe26Ze05Y+C5pWw6LWL5YC857uZ5Y+C5pWw6Z2i5p2/5Lit55qE57uE5Lu2DQogICAgICAgIHRoaXMuc3JjID0NCiAgICAgICAgICB0aGlzLnJlcG9ydEJhc2VVcmwgKw0KICAgICAgICAgICc/dmlld2xldD0nICsNCiAgICAgICAgICB0aGlzLnRlbXBsYXRlTmFtZSArDQogICAgICAgICAgJy5jcHQmb3A9dmlldyZfX3BpX189ZmFsc2Umc3RhcnRkYXRlPScgKw0KICAgICAgICAgIHRoaXMuc2VhcmNoRGF0ZSArDQogICAgICAgICAgJy0wMSZlbmRkYXRlPScgKw0KICAgICAgICAgIHRoaXMuc2VhcmNoRGF0ZSArDQogICAgICAgICAgdGhpcy5nZXRNb250aExhc3REYXkoKSArDQogICAgICAgICAgJyZvcmdpZD0nICsNCiAgICAgICAgICB0aGlzLm9yZ0lkDQogICAgICB9DQogICAgfSwNCiAgICBnZXRNb250aExhc3REYXkoKSB7DQogICAgICB2YXIgbW9udGggPSB0aGlzLnRpbWVWYWx1ZS5nZXRNb250aCgpICsgMQ0KICAgICAgaWYgKA0KICAgICAgICBtb250aCA9PSAxIHx8DQogICAgICAgIG1vbnRoID09IDMgfHwNCiAgICAgICAgbW9udGggPT0gNSB8fA0KICAgICAgICBtb250aCA9PSA3IHx8DQogICAgICAgIG1vbnRoID09IDggfHwNCiAgICAgICAgbW9udGggPT0gMTAgfHwNCiAgICAgICAgbW9udGggPT0gMTINCiAgICAgICkgew0KICAgICAgICByZXR1cm4gJy0zMScNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHJldHVybiAnLTMwJw0KICAgICAgfQ0KICAgIH0sDQogICAgc2VsZWN0ZWRUZWFtKHZhbHVlKSB7DQogICAgICB0aGlzLnNlbGVjdENoYW5nZSgpDQogICAgICB0aGlzLiRyZWZzLmZvcm1Nb2RhbC5zZWxlY3RlZFRlYW0odmFsdWUpDQogICAgfSwNCiAgICAvL+S4iuS8oOaIkOWKnw0KICAgIGhhbmRsZUF2YXRhclN1Y2Nlc3MocmVzLCBmaWxlKSB7DQogICAgICAvL+aPkOekug0KICAgICAgdGhpcy4kbm90aWZ5KHsNCiAgICAgICAgdHlwZTogJ3N1Y2Nlc3MnLA0KICAgICAgICBtZXNzYWdlOiB0aGlzLiR0KCflr7zlhaXmiJDlip8hJyksDQogICAgICAgIGR1cmF0aW9uOiAyMDAwDQogICAgICB9KQ0KICAgICAgdGhpcy5sb2FkRGF0YSgpIC8v6LCD55So55So6aG16Z2i5p+l6K+i5o6l5Y+j77yM5Yi35paw5pWw5o2uDQogICAgICB0aGlzLnJlbG9hZElmcmFtZSgpDQogICAgfSwNCiAgICAvL+S4iuS8oOWksei0pQ0KICAgIGhhbmRsZUF2YXRhckVycm9yKGVyciwgZmlsZSwgZmlsZUxpc3QpIHsNCiAgICAgIGNvbnNvbGUubG9nKCk7DQogICAgICBsZXQgZGF0YSA9IEpTT04ucGFyc2UoZXJyLm1lc3NhZ2UpDQogICAgICBsZXQgbXNnID0gZGF0YS5tZXNzYWdlID8gZGF0YS5tZXNzYWdlIDogJ+WvvOWFpeWksei0pe+8gScNCiAgICAgIC8v5o+Q56S6DQogICAgICB0aGlzLiRub3RpZnkoew0KICAgICAgICB0eXBlOiAnZXJyb3InLA0KICAgICAgICBtZXNzYWdlOiB0aGlzLiR0KG1zZyksDQogICAgICAgIGR1cmF0aW9uOiAyMDAwDQogICAgICB9KQ0KICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2UNCiAgICB9LA0KICAgIC8vIOaooeadv+S4i+i9vQ0KICAgIGRvd25Nb2RlbCgpIHsNCiAgICAgIHdpbmRvdy5vcGVuKA0KICAgICAgICB0aGlzLmFjdGlvblVybCArICcvbWFuYWdlci9jbWd0RHV0eVdvcmthcnJhbmdlL2Rvd25Nb2RlbCcsDQogICAgICAgICdfYmxhbmsnDQogICAgICApDQogICAgfSwNCiAgICAvLyDmlofku7bkuIrkvKDliY0NCiAgICBiZWZvcmVVcGxvYWQoKSB7DQogICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlDQogICAgfQ0KICB9DQp9DQo="},null]}