{"remainingRequest":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/vue-loader/lib/index.js??vue-loader-options!/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/@abi-software/flatmapvuer/src/components/FlatmapVuer.vue?vue&type=script&lang=js&","dependencies":[{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/@abi-software/flatmapvuer/src/components/FlatmapVuer.vue","mtime":499162500000},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/thread-loader/dist/cjs.js","mtime":499162500000},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/babel-loader/lib/index.js","mtime":456789000000},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ci8qIGVzbGludC1kaXNhYmxlIG5vLWFsZXJ0LCBuby1jb25zb2xlICovCmltcG9ydCBWdWUgZnJvbSAidnVlIjsKaW1wb3J0IFRvb2x0aXAgZnJvbSAiLi9Ub29sdGlwIjsKaW1wb3J0IFNlbGVjdGlvbnNHcm91cCBmcm9tICIuL1NlbGVjdGlvbnNHcm91cC52dWUiOwppbXBvcnQgeyBNYXBTdmdJY29uLCBNYXBTdmdTcHJpdGVDb2xvciB9IGZyb20gIkBhYmktc29mdHdhcmUvc3ZnLXNwcml0ZSI7CmltcG9ydCBTdmdMZWdlbmRzIGZyb20gIi4vbGVnZW5kcy9TdmdMZWdlbmRzIjsKaW1wb3J0IHsKICBDb2wsCiAgTG9hZGluZywKICBSYWRpbywKICBSYWRpb0dyb3VwLAogIFJvdwp9IGZyb20gImVsZW1lbnQtdWkiOwppbXBvcnQgbGFuZyBmcm9tICJlbGVtZW50LXVpL2xpYi9sb2NhbGUvbGFuZy9lbiI7CmltcG9ydCBsb2NhbGUgZnJvbSAiZWxlbWVudC11aS9saWIvbG9jYWxlIjsKaW1wb3J0IGZsYXRtYXBNYXJrZXIgZnJvbSAiLi4vaWNvbnMvZmxhdG1hcC1tYXJrZXIiOwppbXBvcnQge0ZsYXRtYXBRdWVyaWVzfSBmcm9tICIuLi9zZXJ2aWNlcy9mbGF0bWFwUXVlcmllcy5qcyI7Cgpsb2NhbGUudXNlKGxhbmcpOwpWdWUudXNlKENvbCk7ClZ1ZS51c2UoTG9hZGluZy5kaXJlY3RpdmUpOwpWdWUudXNlKFJhZGlvKTsKVnVlLnVzZShSYWRpb0dyb3VwKTsKVnVlLnVzZShSb3cpOwpjb25zdCBSZXNpemVTZW5zb3IgPSByZXF1aXJlKCJjc3MtZWxlbWVudC1xdWVyaWVzL3NyYy9SZXNpemVTZW5zb3IiKTsKCmNvbnN0IGNyZWF0ZVVuZmlsbGVkVG9vbHRpcERhdGEgPSBmdW5jdGlvbiAoKXsKICByZXR1cm4gewogICAgZGVzdGluYXRpb25zOiBbXSwKICAgIG9yaWdpbnM6IFtdLAogICAgY29tcG9uZW50czogW10sCiAgICBkZXN0aW5hdGlvbnNXaXRoRGF0YXNldHM6IFtdLAogICAgb3JpZ2luc1dpdGhEYXRhc2V0czogW10sCiAgICBjb21wb25lbnRzV2l0aERhdGFzZXRzOiBbXSwKICAgIHJlc291cmNlOiB1bmRlZmluZWQKICB9Cn0KCmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAiRmxhdG1hcFZ1ZXIiLAogIGNvbXBvbmVudHM6IHsKICAgIE1hcFN2Z0ljb24sCiAgICBNYXBTdmdTcHJpdGVDb2xvciwKICAgIFRvb2x0aXAsCiAgICBTZWxlY3Rpb25zR3JvdXAsCiAgICBTdmdMZWdlbmRzCiAgfSwKICBiZWZvcmVDcmVhdGU6IGZ1bmN0aW9uKCkgewogICAgdGhpcy5tYXBNYW5hZ2VyID0gdW5kZWZpbmVkOwogICAgdGhpcy5tYXBJbXAgPSB1bmRlZmluZWQ7CiAgICAvL1RoZSBzdGF0ZSB3YXRjaGVyIG1heSB0cmlnZ2VyZWQgYmVmb3JlCiAgICAvL2NyZWF0ZWQgY2F1c2luZyBpc3N1ZSwgVGhpcyBmbGFnIHdpbGwKICAgIC8vcmVzb2x2ZSB0aGlzIGlzc3VlLgogICAgdGhpcy5zZXRTdGF0ZVJlcXVpcmVkID0gZmFsc2U7CiAgfSwKICBtZXRob2RzOiB7CiAgICB2aWV3TGF0ZXN0TWFwOiBmdW5jdGlvbigpIHsKICAgICAgbGV0IGJpb2xvZ2ljYWxTZXggPSB0aGlzLmJpb2xvZ2ljYWxTZXggPyB0aGlzLmJpb2xvZ2ljYWxTZXggOiB1bmRlZmluZWQ7CiAgICAgIC8vSHVtYW4gcmVxdWlyZXMgc3BlY2lhbCBoYW5kbGluZwogICAgICBpZiAodGhpcy5lbnRyeSA9PT0gIk5DQklUYXhvbjo5NjA2IikgewogICAgICAgIGJpb2xvZ2ljYWxTZXggPSAiUEFUTzowMDAwMzg0IjsKICAgICAgfQogICAgICBjb25zdCBzdGF0ZSA9IHsKICAgICAgICBlbnRyeTogdGhpcy5lbnRyeSwKICAgICAgICBiaW9sb2dpY2FsU2V4LAogICAgICAgIHZpZXdwb3J0OiB0aGlzLm1hcEltcC5nZXRTdGF0ZSgpCiAgICAgIH07CiAgICAgIHRoaXMuJGVtaXQoInZpZXctbGF0ZXN0LW1hcCIsIHN0YXRlKTsKICAgIH0sCiAgICBiYWNrZ3JvdW5kQ2hhbmdlQ2FsbGJhY2s6IGZ1bmN0aW9uKGNvbG91cikgewogICAgICB0aGlzLmN1cnJlbnRCYWNrZ3JvdW5kID0gY29sb3VyOwogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICB0aGlzLm1hcEltcC5zZXRCYWNrZ3JvdW5kQ29sb3VyKHRoaXMuY3VycmVudEJhY2tncm91bmQsIDEpOwogICAgICB9CiAgICB9LAogICAgdG9nZ2xlRHJhd2VyOiBmdW5jdGlvbigpIHsKICAgICAgdGhpcy5kcmF3ZXJPcGVuID0gIXRoaXMuZHJhd2VyT3BlbjsKICAgIH0sCiAgICAvKioKICAgICAqIEZ1bmN0aW9uIHRvIHRvZ2dsZSBjb2xvdXIvZ3JleXNjYWxlIG9mIG9yZ2Fucy4KICAgICAqLwogICAgc2V0Q29sb3VyOiBmdW5jdGlvbihmbGFnKSB7CiAgICAgIHRoaXMuY29sb3VyUmFkaW8gPSBmbGFnOwogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICB0aGlzLm1hcEltcC5zZXRDb2xvdXIoeyBjb2xvdXI6IGZsYWcsIG91dGxpbmU6IHRoaXMub3V0bGluZXNSYWRpbyB9KTsKICAgICAgfQogICAgfSwKICAgIC8qKgogICAgICogRnVuY3Rpb24gdG8gdG9nZ2xlIG91dGxpbmVzIGYgb3JnYW5zLgogICAgICovCiAgICBzZXRPdXRsaW5lczogZnVuY3Rpb24oZmxhZykgewogICAgICB0aGlzLm91dGxpbmVSYWRpbyA9IGZsYWc7CiAgICAgIGlmICh0aGlzLm1hcEltcCkgewogICAgICAgIHRoaXMubWFwSW1wLnNldENvbG91cih7IGNvbG91cjogdGhpcy5jb2xvdXJSYWRpbywgb3V0bGluZTogZmxhZyB9KTsKICAgICAgfQogICAgfSwKICAgIC8qKgogICAgICogRnVuY3Rpb24gdG8gdG9nZ2xlIHBhdGhzIHRvIGRlZmF1bHQuCiAgICAgKiBBbHNvIGNhbGxlZCB3aGVuIHRoZSBhc3NvY2lhdGVkIGJ1dHRvbiBpcyBwcmVzc2VkLgogICAgICovCiAgICByZXNldFZpZXc6IGZ1bmN0aW9uKCkgewogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICB0aGlzLm1hcEltcC5yZXNldE1hcCgpOwogICAgICAgIGlmICh0aGlzLiRyZWZzLmNlbnRyZWxpbmVzU2VsZWN0aW9uKSB7CiAgICAgICAgICB0aGlzLiRyZWZzLmNlbnRyZWxpbmVzU2VsZWN0aW9uLnJlc2V0KCk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLiRyZWZzLnNrY2FuU2VsZWN0aW9uKSB7CiAgICAgICAgICB0aGlzLiRyZWZzLnNrY2FuU2VsZWN0aW9uLnJlc2V0KCk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLiRyZWZzLmxheWVyc1NlbGVjdGlvbikgewogICAgICAgICAgdGhpcy4kcmVmcy5sYXllcnNTZWxlY3Rpb24ucmVzZXQoKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuJHJlZnMuc3lzdGVtc1NlbGVjdGlvbikgewogICAgICAgICAgdGhpcy4kcmVmcy5wYXRod2F5c1NlbGVjdGlvbi5yZXNldCgpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy4kcmVmcy5wYXRod2F5c1NlbGVjdGlvbikgewogICAgICAgICAgdGhpcy4kcmVmcy5wYXRod2F5c1NlbGVjdGlvbi5yZXNldCgpOwogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgIC8qKgogICAgICogRnVuY3Rpb24gdG8gem9vbSBpbi4KICAgICAqIEFsc28gY2FsbGVkIHdoZW4gdGhlIGFzc29jaWF0ZWQgYnV0dG9uIGlzIHByZXNzZWQuCiAgICAgKi8KICAgIHpvb21JbjogZnVuY3Rpb24oKSB7CiAgICAgIGlmICh0aGlzLm1hcEltcCkgewogICAgICAgIHRoaXMubWFwSW1wLnpvb21JbigpOwogICAgICB9CiAgICB9LAogICAgLyoqCiAgICAgKiBGdW5jdGlvbiB0byB6b29tIG91dC4KICAgICAqIEFsc28gY2FsbGVkIHdoZW4gdGhlIGFzc29jaWF0ZWQgYnV0dG9uIGlzIHByZXNzZWQuCiAgICAgKi8KICAgIHpvb21PdXQ6IGZ1bmN0aW9uKCkgewogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICB0aGlzLm1hcEltcC56b29tT3V0KCk7CiAgICAgIH0KICAgIH0sCiAgICBjZW50cmVMaW5lc1NlbGVjdGVkOiBmdW5jdGlvbihwYXlsb2FkKSB7CiAgICAgIGlmICh0aGlzLm1hcEltcCkgewogICAgICAgIHRoaXMubWFwSW1wLmVuYWJsZUNlbnRyZWxpbmVzKHBheWxvYWQudmFsdWUpOwogICAgICB9CiAgICB9LAogICAgc2NrYW5TZWxlY3RlZDogZnVuY3Rpb24ocGF5bG9hZCkgewogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICB0aGlzLm1hcEltcC5lbmFibGVTY2thblBhdGgocGF5bG9hZC5rZXksIHBheWxvYWQudmFsdWUpOwogICAgICB9CiAgICB9LAogICAgY2hlY2tBbGxTQ0tBTjogZnVuY3Rpb24ocGF5bG9hZCkgewogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICBwYXlsb2FkLmtleXMuZm9yRWFjaChrZXkgPT4gdGhpcy5tYXBJbXAuZW5hYmxlU2NrYW5QYXRoKGtleSwgcGF5bG9hZC52YWx1ZSkpOwogICAgICB9CiAgICB9LAogICAgc3lzdGVtU2VsZWN0ZWQ6IGZ1bmN0aW9uKHBheWxvYWQpIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgdGhpcy5tYXBJbXAuZW5hYmxlU3lzdGVtKHBheWxvYWQua2V5LCBwYXlsb2FkLnZhbHVlKTsKICAgICAgfQogICAgfSwKICAgIGNoZWNrQWxsU3lzdGVtczogZnVuY3Rpb24ocGF5bG9hZCkgewogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICBwYXlsb2FkLmtleXMuZm9yRWFjaChrZXkgPT4gdGhpcy5tYXBJbXAuZW5hYmxlU3lzdGVtKGtleSwgcGF5bG9hZC52YWx1ZSkpOwogICAgICB9CiAgICB9LAogICAgbGF5ZXJzU2VsZWN0ZWQ6IGZ1bmN0aW9uKHBheWxvYWQpIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgdGhpcy5tYXBJbXAuZW5hYmxlTGF5ZXIocGF5bG9hZC5rZXksIHBheWxvYWQudmFsdWUpOwogICAgICB9CiAgICB9LAogICAgY2hlY2tBbGxMYXllcnM6IGZ1bmN0aW9uKHBheWxvYWQpIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgcGF5bG9hZC5rZXlzLmZvckVhY2goa2V5ID0+IHRoaXMubWFwSW1wLmVuYWJsZUxheWVyKGtleSwgcGF5bG9hZC52YWx1ZSkpOwogICAgICB9CiAgICB9LAogICAgcGF0aHdheXNTZWxlY3RlZDogZnVuY3Rpb24ocGF5bG9hZCkgewogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICB0aGlzLm1hcEltcC5lbmFibGVQYXRoKHBheWxvYWQua2V5LCBwYXlsb2FkLnZhbHVlKTsKICAgICAgfQogICAgfSwKICAgIGNoZWNrQWxsUGF0aHdheXM6IGZ1bmN0aW9uKHBheWxvYWQpIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgcGF5bG9hZC5rZXlzLmZvckVhY2goa2V5ID0+IHRoaXMubWFwSW1wLmVuYWJsZVBhdGgoa2V5LCBwYXlsb2FkLnZhbHVlKSk7CiAgICAgIH0KICAgIH0sCiAgICBlbmFibGVQYW5ab29tRXZlbnRzOiBmdW5jdGlvbihmbGFnKSB7CiAgICAgIHRoaXMubWFwSW1wLmVuYWJsZVBhblpvb21FdmVudHMoZmxhZyk7CiAgICB9LAogICAgZXZlbnRDYWxsYmFjazogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAoZXZlbnRUeXBlLCBkYXRhLCAuLi5hcmdzKSA9PiB7CiAgICAgICAgaWYgKGV2ZW50VHlwZSAhPT0gInBhbi16b29tIikgewogICAgICAgICAgY29uc3QgbGFiZWwgPSBkYXRhLmxhYmVsOwogICAgICAgICAgY29uc3QgcmVzb3VyY2UgPSBbZGF0YS5tb2RlbHNdOwogICAgICAgICAgY29uc3QgdGF4b25vbXkgPSB0aGlzLmVudHJ5OwogICAgICAgICAgY29uc3QgYmlvbG9naWNhbFNleCA9IHRoaXMuYmlvbG9naWNhbFNleDsKICAgICAgICAgIGNvbnN0IHBheWxvYWQgPSB7CiAgICAgICAgICAgIGRhdGFzZXQ6IGRhdGEuZGF0YXNldCwKICAgICAgICAgICAgYmlvbG9naWNhbFNleDogYmlvbG9naWNhbFNleCwKICAgICAgICAgICAgdGF4b25vbXk6IHRheG9ub215LAogICAgICAgICAgICByZXNvdXJjZTogcmVzb3VyY2UsCiAgICAgICAgICAgIGxhYmVsOiBsYWJlbCwKICAgICAgICAgICAgZmVhdHVyZTogZGF0YSwKICAgICAgICAgICAgdXNlckRhdGE6IGFyZ3MsCiAgICAgICAgICAgIGV2ZW50VHlwZTogZXZlbnRUeXBlCiAgICAgICAgICB9OwogICAgICAgICAgaWYgKGRhdGEgJiYgZGF0YS50eXBlICE9PSAibWFya2VyIiAmJiBldmVudFR5cGUgPT09ICJjbGljayIpewogICAgICAgICAgICB0aGlzLmNoZWNrQW5kQ3JlYXRlUG9wdXBzKHBheWxvYWQpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy4kZW1pdCgicmVzb3VyY2Utc2VsZWN0ZWQiLCBwYXlsb2FkKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy4kZW1pdCgicGFuLXpvb20tY2FsbGJhY2siLCBkYXRhKTsKICAgICAgICB9CiAgICAgIH07CiAgICB9LAogICAgLy8gY2hlY2tOZXVyb25DbGlja2VkIHNob3dzIGEgbmV1cm9uIHBhdGggcG9wIHVwIGlmIGEgcGF0aCB3YXMgcmVjZW50bHkgY2xpY2tlZAogICAgY2hlY2tBbmRDcmVhdGVQb3B1cHM6ICBhc3luYyBmdW5jdGlvbihkYXRhKSB7CiAgICAgIC8vIENhbGwgZmxhdG1hcCBkYXRhYmFzZSB0byBnZXQgdGhlIGNvbm5lY3Rpb24gZGF0YQogICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IHRoaXMuZmxhdG1hcFF1ZXJpZXMucmV0cmlldmVGbGF0bWFwS25vd2xlZGdlRm9yRXZlbnQoZGF0YSkKICAgICAgaWYoIXJlc3VsdHMpewogICAgICAgIGlmKGRhdGEuZmVhdHVyZS5oeXBlcmxpbmtzICYmIGRhdGEuZmVhdHVyZS5oeXBlcmxpbmtzLmxlbmd0aCA+IDApewogICAgICAgICAgdGhpcy5yZXNvdXJjZUZvclRvb2x0aXAgPSAgZGF0YS5yZXNvdXJjZVswXTsKICAgICAgICAgIHRoaXMuY3JlYXRlVG9vbHRpcEZyb21OZXVyb25DdXJhdGlvbihkYXRhKTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy5yZXNvdXJjZUZvclRvb2x0aXAgPSAgZGF0YS5yZXNvdXJjZVswXTsKICAgICAgICB0aGlzLmNyZWF0ZVRvb2x0aXBGcm9tTmV1cm9uQ3VyYXRpb24oZGF0YSk7CiAgICAgIH0KICAgIH0sCiAgICBwb3BVcENzc0hhY2tzOiBmdW5jdGlvbigpIHsKICAgICAgLy8gQmVsb3cgaXMgYSBoYWNrIHRvIHJlbW92ZSBmbGF0bWFwIHRvb2x0aXBzIHdoaWxlIHBvcHVwIGlzIG9wZW4KICAgICAgbGV0IGZ0b29sdGlwID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmZsYXRtYXAtdG9vbHRpcC1wb3B1cCIpOwogICAgICBpZiAoZnRvb2x0aXApIGZ0b29sdGlwLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7CiAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYXBsaWJyZWdsLXBvcHVwLWNsb3NlLWJ1dHRvbiIpLnN0eWxlLmRpc3BsYXkgPQogICAgICAgICJibG9jayI7CiAgICAgIHRoaXMuJHJlZnMudG9vbHRpcC4kZWwuc3R5bGUuZGlzcGxheSA9ICJmbGV4IjsKICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1hcGxpYnJlZ2wtcG9wdXAtY2xvc2UtYnV0dG9uIikub25jbGljayA9ICgpID0+IHsKICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuZmxhdG1hcC10b29sdGlwLXBvcHVwIikuc3R5bGUuZGlzcGxheSA9CiAgICAgICAgICAiYmxvY2siOwogICAgICB9OwogICAgfSwKICAgIHJlc291cmNlU2VsZWN0ZWQ6IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICB0aGlzLiRlbWl0KCJyZXNvdXJjZS1zZWxlY3RlZCIsIGFjdGlvbik7CiAgICB9LAogICAgY3JlYXRlVG9vbHRpcEZyb21OZXVyb25DdXJhdGlvbjogZnVuY3Rpb24oZGF0YSkgewogICAgICB0aGlzLnRvb2x0aXBFbnRyeSA9IHRoaXMuZmxhdG1hcFF1ZXJpZXMuY3JlYXRlVG9vbHRpcERhdGEoZGF0YSk7CiAgICAgIHRoaXMuZGlzcGxheVRvb2x0aXAoKTsKICAgIH0sCiAgICAvLyBLZWVwaW5nIHRoaXMgYXMgYW4gQVBJCiAgICBzaG93UG9wdXA6IGZ1bmN0aW9uKGZlYXR1cmVJZCwgbm9kZSwgb3B0aW9ucykgewogICAgICBsZXQgbXlPcHRpb25zID0gb3B0aW9uczsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgaWYgKG15T3B0aW9ucykgewogICAgICAgICAgaWYgKCFteU9wdGlvbnMuY2xhc3NOYW1lKSBteU9wdGlvbnMuY2xhc3NOYW1lID0gImN1c3RvbS1wb3B1cCI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIG15T3B0aW9ucyA9IHsgY2xhc3NOYW1lOiAiY3VzdG9tLXBvcHVwIiwgcG9zaXRpb25BdExhc3RDbGljazogdHJ1ZSB9OwogICAgICAgIH0KICAgICAgICB0aGlzLm1hcEltcC5zaG93UG9wdXAoZmVhdHVyZUlkLCBub2RlLCBteU9wdGlvbnMpOwogICAgICB9CiAgICB9LAogICAgc2hvd01hcmtlclBvcHVwOiBmdW5jdGlvbihmZWF0dXJlSWQsIG5vZGUsIG9wdGlvbnMpIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgdGhpcy5tYXBJbXAuc2hvd01hcmtlclBvcHVwKGZlYXR1cmVJZCwgbm9kZSwgb3B0aW9ucyk7CiAgICAgIH0KICAgIH0sCiAgICBjbG9zZU1pbmltYXA6IGZ1bmN0aW9uKCl7CiAgICAgIGxldCBtaW5pbWFwRWwgPSB0aGlzLiRyZWZzLmZsYXRtYXBDb250YWluZXIucXVlcnlTZWxlY3RvcignLm1hcGxpYnJlZ2wtY3RybC1taW5pbWFwJyk7IC8vIGZpbmQgbWluaW1hcAogICAgICBpZiAodGhpcy5taW5pbWFwU21hbGwpIHsgLy9zd2l0Y2ggdGhlIGNsYXNzZXMgb24gdGhlIG1pbmltYXAKICAgICAgICBtaW5pbWFwRWwuY2xhc3NMaXN0LmFkZCgnZW5sYXJnZScpOwogICAgICAgIG1pbmltYXBFbC5jbGFzc0xpc3QucmVtb3ZlKCdzaHJpbmsnKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBtaW5pbWFwRWwuY2xhc3NMaXN0LmFkZCgnc2hyaW5rJyk7CiAgICAgICAgbWluaW1hcEVsLmNsYXNzTGlzdC5yZW1vdmUoJ2VubGFyZ2UnKTsKICAgICAgfQogICAgICB0aGlzLm1pbmltYXBTbWFsbCA9ICF0aGlzLm1pbmltYXBTbWFsbDsKICAgIH0sCiAgICBhZGRSZXNpemVCdXR0b25Ub01pbmltYXA6IGZ1bmN0aW9uKCl7CiAgICAgIGxldCBtaW5pbWFwRWwgPSB0aGlzLiRyZWZzLmZsYXRtYXBDb250YWluZXIucXVlcnlTZWxlY3RvcignLm1hcGxpYnJlZ2wtY3RybC1taW5pbWFwJyk7CiAgICAgIGlmIChtaW5pbWFwRWwpewogICAgICAgIHRoaXMuJHJlZnMubWluaW1hcFJlc2l6ZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMuJHJlZnMubWluaW1hcFJlc2l6ZSk7CiAgICAgICAgbWluaW1hcEVsLmFwcGVuZENoaWxkKHRoaXMuJHJlZnMubWluaW1hcFJlc2l6ZSk7CiAgICAgICAgdGhpcy5taW5pbWFwUmVzaXplU2hvdyA9IHRydWU7CiAgICAgIH0KICAgIH0sCiAgICBzZXRIZWxwTW9kZTogZnVuY3Rpb24oaGVscE1vZGUpIHsKICAgICAgaWYgKGhlbHBNb2RlKSB7CiAgICAgICAgdGhpcy5pbkhlbHAgPSB0cnVlOwogICAgICAgIHRoaXMuaG92ZXJWaXNpYmlsaXRpZXMuZm9yRWFjaChpdGVtID0+IHsKICAgICAgICAgIGl0ZW0udmFsdWUgPSB0cnVlOwogICAgICAgIH0pOwogICAgICAgIHRoaXMub3BlbkZsYXRtYXBIZWxwUG9wdXAoKTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLmluSGVscCA9IGZhbHNlOwogICAgICAgIHRoaXMuaG92ZXJWaXNpYmlsaXRpZXMuZm9yRWFjaChpdGVtID0+IHsKICAgICAgICAgIGl0ZW0udmFsdWUgPSBmYWxzZTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLmNsb3NlRmxhdG1hcEhlbHBQb3B1cCgpOwogICAgICB9CiAgICB9LAogICAgc2hvd1Rvb2xpdGlwOiBmdW5jdGlvbih0b29sdGlwTnVtYmVyKSB7CiAgICAgIGlmICghdGhpcy5pbkhlbHApIHsKICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50b29sdGlwV2FpdFt0b29sdGlwTnVtYmVyXSk7CiAgICAgICAgdGhpcy50b29sdGlwV2FpdFt0b29sdGlwTnVtYmVyXSA9IHNldFRpbWVvdXQoKCkgPT4gewogICAgICAgICAgdGhpcy5ob3ZlclZpc2liaWxpdGllc1t0b29sdGlwTnVtYmVyXS52YWx1ZSA9IHRydWU7CiAgICAgICAgfSwgNTAwKTsKICAgICAgfQogICAgfSwKICAgIGhpZGVUb29saXRpcDogZnVuY3Rpb24odG9vbHRpcE51bWJlcikgewogICAgICBpZiAoIXRoaXMuaW5IZWxwKSB7CiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMudG9vbHRpcFdhaXRbdG9vbHRpcE51bWJlcl0pOwogICAgICAgIHRoaXMudG9vbHRpcFdhaXRbdG9vbHRpcE51bWJlcl0gPSBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgIHRoaXMuaG92ZXJWaXNpYmlsaXRpZXNbdG9vbHRpcE51bWJlcl0udmFsdWUgPSBmYWxzZTsKICAgICAgICB9LCA1MDApOwogICAgICB9CiAgICB9LAogICAgZGlzcGxheVRvb2x0aXA6IGZ1bmN0aW9uKCkgewogICAgICB0aGlzLm1hcEltcC5zaG93UG9wdXAoCiAgICAgICAgdGhpcy5tYXBJbXAubW9kZWxGZWF0dXJlSWRzKHRoaXMucmVzb3VyY2VGb3JUb29sdGlwKVswXSwKICAgICAgICB0aGlzLiRyZWZzLnRvb2x0aXAuJGVsLAogICAgICAgIHsgY2xhc3NOYW1lOiAiZmxhdG1hcHZ1ZXItcG9wb3ZlciIsIHBvc2l0aW9uQXRMYXN0Q2xpY2s6IHRydWUgfQogICAgICApOwogICAgICB0aGlzLnBvcFVwQ3NzSGFja3MoKTsKICAgIH0sCiAgICBvcGVuRmxhdG1hcEhlbHBQb3B1cDogZnVuY3Rpb24oKSB7CiAgICAgIGlmICh0aGlzLm1hcEltcCkgewogICAgICAgIGxldCBoZWFydElkID0gdGhpcy5tYXBJbXAuZmVhdHVyZUlkc0Zvck1vZGVsKCJVQkVST046MDAwMDk0OCIpWzBdOwogICAgICAgIGNvbnN0IGVsbSA9ICJDbGljayBmb3IgbW9yZSBpbmZvcm1hdGlvbiI7CiAgICAgICAgdGhpcy5tYXBJbXAuc2hvd1BvcHVwKGhlYXJ0SWQsIGVsbSwgewogICAgICAgICAgYW5jaG9yOiAidG9wIiwKICAgICAgICAgIGNsYXNzTmFtZTogImZsYXRtYXAtcG9wdXAtcG9wcGVyIgogICAgICAgIH0pOwogICAgICB9CiAgICB9LAogICAgY2xvc2VGbGF0bWFwSGVscFBvcHVwOiBmdW5jdGlvbigpIHsKICAgICAgdGhpcy4kZWwKICAgICAgICAucXVlcnlTZWxlY3RvckFsbCgiLm1hcGxpYnJlZ2wtcG9wdXAtY2xvc2UtYnV0dG9uIikKICAgICAgICAuZm9yRWFjaChpdGVtID0+IHsKICAgICAgICAgIGl0ZW0uY2xpY2soKTsKICAgICAgICB9KTsKICAgIH0sCiAgICBnZXRMYWJlbHM6IGZ1bmN0aW9uKCkgewogICAgICBsZXQgbGFiZWxzID0gW107CiAgICAgIGlmICh0aGlzLm1hcEltcCkgewogICAgICAgIGxldCBhbm5vdGF0aW9ucyA9IHRoaXMubWFwSW1wLmFubm90YXRpb25zOwogICAgICAgIGZvciAobGV0IHZhbHVlIG9mIGFubm90YXRpb25zLnZhbHVlcygpKSB7CiAgICAgICAgICBpZiAodmFsdWUubGFiZWwpIGxhYmVscy5wdXNoKHZhbHVlLmxhYmVsKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20obmV3IFNldChsYWJlbHMpKTsKICAgICAgfQogICAgfSwKICAgIGdldFN0YXRlOiBmdW5jdGlvbigpIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgbGV0IHN0YXRlID0gewogICAgICAgICAgZW50cnk6IHRoaXMuZW50cnksCiAgICAgICAgICB2aWV3cG9ydDogdGhpcy5tYXBJbXAuZ2V0U3RhdGUoKQogICAgICAgIH07CiAgICAgICAgY29uc3QgaWRlbnRpZmllciA9IHRoaXMubWFwSW1wLmdldElkZW50aWZpZXIoKTsKICAgICAgICBpZiAodGhpcy5iaW9sb2dpY2FsU2V4KQogICAgICAgICAgc3RhdGVbJ2Jpb2xvZ2ljYWxTZXgnXSA9IHRoaXMuYmlvbG9naWNhbFNleDsKICAgICAgICBlbHNlIGlmIChpZGVudGlmaWVyICYmIGlkZW50aWZpZXIuYmlvbG9naWNhbFNleCkKICAgICAgICAgIHN0YXRlWydiaW9sb2dpY2FsU2V4J10gPSBpZGVudGlmaWVyLmJpb2xvZ2ljYWxTZXg7CiAgICAgICAgaWYgKGlkZW50aWZpZXIgJiYgaWRlbnRpZmllci51dWlkKQogICAgICAgICAgc3RhdGVbJ3V1aWQnXSA9IGlkZW50aWZpZXIudXVpZDsKICAgICAgICByZXR1cm4gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIHVuZGVmaW5lZDsKICAgIH0sCiAgICBzZXRTdGF0ZTogZnVuY3Rpb24oc3RhdGUpIHsKICAgICAgaWYgKHN0YXRlKSB7CiAgICAgICAgaWYgKHRoaXMubWFwSW1wICYmIAogICAgICAgICAgKHN0YXRlLmVudHJ5ICYmICh0aGlzLmVudHJ5ID09IHN0YXRlLmVudHJ5KSkgJiYKICAgICAgICAgICghc3RhdGUuYmlvbG9naWNhbFNleCB8fCAoc3RhdGUuYmlvbG9naWNhbFNleCA9PT0gdGhpcy5iaW9sb2dpY2FsU2V4KSkpIAogICAgICAgIHsKICAgICAgICAgIGlmIChzdGF0ZS52aWV3cG9ydCkgewogICAgICAgICAgICB0aGlzLm1hcEltcC5zZXRTdGF0ZShzdGF0ZS52aWV3cG9ydCk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuY3JlYXRlRmxhdG1hcChzdGF0ZSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuc2V0U3RhdGVSZXF1aXJlZCA9IGZhbHNlOwogICAgICB9CiAgICB9LAogICAgcmVzdG9yZU1hcFN0YXRlOiBmdW5jdGlvbihzdGF0ZSkgewogICAgICBpZiAoc3RhdGUpIHsKICAgICAgICBpZiAoc3RhdGUudmlld3BvcnQpCiAgICAgICAgICB0aGlzLm1hcEltcC5zZXRTdGF0ZShzdGF0ZS52aWV3cG9ydCk7CiAgICAgICAgaWYgKHN0YXRlLnNlYXJjaFRlcm0pCiAgICAgICAgICB0aGlzLnNlYXJjaEFuZFNob3dSZXN1bHQoc3RhdGUuc2VhcmNoVGVybSwgdHJ1ZSk7CiAgICAgIH0KICAgIH0sCiAgICBjcmVhdGVGbGF0bWFwOiBmdW5jdGlvbihzdGF0ZSkgewogICAgICBpZiAoIXRoaXMubWFwSW1wICYmICF0aGlzLmxvYWRpbmcpIHsKICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlOwogICAgICAgIGxldCBtaW5pbWFwID0gZmFsc2U7CiAgICAgICAgaWYgKHRoaXMuZGlzcGxheU1pbmltYXApIHsKICAgICAgICAgIG1pbmltYXAgPSB7IHBvc2l0aW9uOiAidG9wLXJpZ2h0IiB9OwogICAgICAgIH0KCiAgICAgICAgLy9BcyBmb3IgZmxhdG1hcC12aWV3ZXJAMi4yLjcsIHNlZSBiZWxvdyBmb3IgdGhlIGRvY3VtZW50YXRpb24gCiAgICAgICAgLy9mb3IgdGhlIGlkZW50aWZpZXI6CgogICAgICAgIC8vQGFyZyBpZGVudGlmaWVyIHtzdHJpbmd8T2JqZWN0fQogICAgICAgIC8vIEEgc3RyaW5nIG9yIG9iamVjdCBpZGVudGlmeWluZyB0aGUgbWFwIHRvIGxvYWQuIElmIGEgc3RyaW5nIGl0cwogICAgICAgIC8vIHZhbHVlIGNhbiBiZSBlaXRoZXIgdGhlIG1hcCdzIGBgdXVpZGBgLCBhc3NpZ25lZCBhdCBnZW5lcmF0aW9uIHRpbWUsCiAgICAgICAgLy8gb3IgdGF4b24gYW5kIGJpb2xvZ2ljYWwgc2V4IGlkZW50aWZpZXJzIG9mIHRoZSBzcGVjaWVzIHRoYXQgdGhlIG1hcAogICAgICAgIC8vIHJlcHJlc2VudHMuIFRoZSBsYXRlc3QgdmVyc2lvbiBvZiBhIG1hcCBpcyBsb2FkZWQgdW5sZXNzIGl0IGhhcyBiZWVuCiAgICAgICAgLy8gaWRlbnRpZmllZCB1c2luZyBhIGBgdXVpZGBgIChzZWUgYmVsb3cpLgogICAgICAgIC8vIEBhcmcgaWRlbnRpZmllci50YXhvbiB7c3RyaW5nfSBUaGUgdGF4b24gaWRlbnRpZmllciBvZiB0aGUgc3BlY2llcyAKICAgICAgICAvLyAgcmVwcmVzZW50ZWQgYnkgdGhlIG1hcC4gVGhpcyBpcyBzcGVjaWZpZWQgYXMgbWV0YWRhdGEgaW4gdGhlIG1hcCdzIHNvdXJjZSBmaWxlLgogICAgICAgIC8vIEBhcmcgaWRlbnRpZmllci5iaW9sb2dpY2FsU2V4IHtzdHJpbmd9IFRoZSBiaW9sb2dpY2FsIHNleCBvZiB0aGUgc3BlY2llcwogICAgICAgIC8vIHJlcHJlc2VudGVkIGJ5IHRoZSBtYXAuIFRoaXMgaXMgc3BlY2lmaWVkIGFzIG1ldGFkYXRhaW4gdGhlIG1hcCdzIHNvdXJjZSBmaWxlLgogICAgICAgIC8vIEBhcmcgaWRlbnRpZmllci51dWlkIHtzdHJpbmd9IFRoZSB1bmlxdWUgdXVpZCB0aGUgZmxhdG1hcC4gSWYgZ2l2ZW4gdGhlbiB0aGlzIGV4YWN0IG1hcCB3aWxsCiAgICAgICAgLy8gIGJlIGxvYWRlZCwgb3ZlcnJpZGluZyBgYHRheG9uYGAgYW5kIGBgYmlvbG9naWNhbFNleGBgLgoKICAgICAgICBsZXQgaWRlbnRpZmllciA9IHsgdGF4b246IHRoaXMuZW50cnkgfTsKICAgICAgICAvL1RoaXMgbm93IGhhbmRsZSB0aGUgdXNlcyBvZiB1dWlkIHdoZW4gcmVzdW1pbmcgc3RhdGVzCiAgICAgICAgaWYgKHN0YXRlKSB7CiAgICAgICAgICBpZiAoc3RhdGUudXVpZCkgewogICAgICAgICAgICBpZGVudGlmaWVyID0geyB1dWlkOiBzdGF0ZS51dWlkIH07CiAgICAgICAgICB9IGVsc2UgaWYgKHN0YXRlLmVudHJ5KSB7CiAgICAgICAgICAgIGlkZW50aWZpZXIudGF4b24gPSBzdGF0ZS5lbnRyeTsKICAgICAgICAgICAgaWYgKHN0YXRlLmJpb2xvZ2ljYWxTZXgpIHsKICAgICAgICAgICAgICBpZGVudGlmaWVyWyJiaW9sb2dpY2FsU2V4Il0gPSBzdGF0ZS5iaW9sb2dpY2FsU2V4OwogICAgICAgICAgICB9IGVsc2UgaWYgKGlkZW50aWZpZXIudGF4b24gPT09ICJOQ0JJVGF4b246OTYwNiIpIHsKICAgICAgICAgICAgICAvL0ZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5CiAgICAgICAgICAgICAgaWRlbnRpZmllclsiYmlvbG9naWNhbFNleCJdID0iUEFUTzowMDAwMzg0IjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAvLyBTZXQgdGhlIGJpb2xvaWNhbFNleCBub3cgaWYgbWFwIGlzIG5vdCByZXN1bWVkIGZyb20KICAgICAgICAgIC8vIGEgc2F2ZWQgc3RhdGUKICAgICAgICAgIGlmICh0aGlzLmJpb2xvZ2ljYWxTZXgpIHsKICAgICAgICAgICAgaWRlbnRpZmllclsiYmlvbG9naWNhbFNleCJdID0gdGhpcy5iaW9sb2dpY2FsU2V4OwogICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgbGV0IHByb21pc2UxID0gdGhpcy5tYXBNYW5hZ2VyLmxvYWRNYXAoCiAgICAgICAgICBpZGVudGlmaWVyLAogICAgICAgICAgdGhpcy4kcmVmcy5kaXNwbGF5LAogICAgICAgICAgdGhpcy5ldmVudENhbGxiYWNrKCksCiAgICAgICAgICB7CiAgICAgICAgICAgIC8vZnVsbHNjcmVlbkNvbnRyb2w6IGZhbHNlLAogICAgICAgICAgICAvL2Fubm90YXRhYmxlOiBmYWxzZSwKICAgICAgICAgICAgLy9kZWJ1ZzogdHJ1ZSwKICAgICAgICAgICAgZmVhdHVyZUluZm86IHRoaXMuZmVhdHVyZUluZm8sCiAgICAgICAgICAgICJtaW4tem9vbSI6IHRoaXMubWluWm9vbSwKICAgICAgICAgICAgbGF5ZXJDb250cm9sOiB0cnVlLAogICAgICAgICAgICBwYXRoQ29udHJvbHM6IHRydWUsCiAgICAgICAgICAgIHNlYXJjaGFibGU6IHRoaXMuc2VhcmNoYWJsZSwKICAgICAgICAgICAgdG9vbHRpcHM6IHRoaXMudG9vbHRpcHMsCiAgICAgICAgICAgIG1pbmltYXA6IG1pbmltYXAKICAgICAgICAgIH0KICAgICAgICApOwogICAgICAgIHByb21pc2UxLnRoZW4ocmV0dXJuZWRPYmplY3QgPT4gewogICAgICAgICAgdGhpcy5tYXBJbXAgPSByZXR1cm5lZE9iamVjdDsKICAgICAgICAgIHRoaXMub25GbGF0bWFwUmVhZHkoKTsKICAgICAgICAgIGlmICh0aGlzLl9zdGF0ZVRvQmVTZXQpCiAgICAgICAgICAgIHRoaXMucmVzdG9yZU1hcFN0YXRlKHRoaXMuX3N0YXRlVG9CZVNldCk7CiAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgdGhpcy5yZXN0b3JlTWFwU3RhdGUoc3RhdGUpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9IGVsc2UgaWYgKHN0YXRlKSB7CiAgICAgICAgdGhpcy5fc3RhdGVUb0JlU2V0ID0geyB2aWV3cG9ydDogc3RhdGUudmlld3BvcnQsIHNlYXJjaFRlcm06IHN0YXRlLnNlYXJjaFRlcm0gfTsKICAgICAgICBpZiAodGhpcy5tYXBJbXAgJiYgIXRoaXMubG9hZGluZykKICAgICAgICAgIHRoaXMucmVzdG9yZU1hcFN0YXRlKHRoaXMuX3N0YXRlVG9CZVNldCk7CiAgICAgIH0KICAgIH0sCiAgICBjb21wdXRlUGF0aENvbnRyb2xzTWF4aW11bUhlaWdodCgpIHsKICAgICAgY29uc3QgZWxlbSA9IHRoaXMuJHJlZnMuZGlzcGxheTsKICAgICAgaWYgKGVsZW0pIHsKICAgICAgICBjb25zdCBjb21wdXRlZCA9IGdldENvbXB1dGVkU3R5bGUoZWxlbSk7CiAgICAgICAgY29uc3QgcGFkZGluZyA9IHBhcnNlSW50KGNvbXB1dGVkLnBhZGRpbmdUb3ApICsgcGFyc2VJbnQoY29tcHV0ZWQucGFkZGluZ0JvdHRvbSk7CiAgICAgICAgY29uc3QgaGVpZ2h0ID0gZWxlbS5jbGllbnRIZWlnaHQgLSBwYWRkaW5nOwogICAgICAgIHRoaXMucGF0aHdheXNNYXhIZWlnaHQgPSBoZWlnaHQgLSAxNzA7CiAgICAgIH0KICAgIH0sCiAgICBtYXBSZXNpemU6IGZ1bmN0aW9uKCkgewogICAgICB0cnkgewogICAgICAgIHRoaXMuY29tcHV0ZVBhdGhDb250cm9sc01heGltdW1IZWlnaHQoKTsKICAgICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICAgIHRoaXMubWFwSW1wLnJlc2l6ZSgpOwogICAgICAgICAgdGhpcy5zaG93TWluaW1hcCh0aGlzLmRpc3BsYXlNaW5pbWFwKTsKICAgICAgICAgIGlmICh0aGlzLm1hcEltcC5fbWluaW1hcCkgewogICAgICAgICAgICAgIHRoaXMubWFwSW1wLl9taW5pbWFwLnJlc2l6ZSgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSBjYXRjaCB7CiAgICAgICAgY29uc29sZS5lcnJvcigiTWFwIHJlc2l6ZSBlcnJvciIpOwogICAgICB9CiAgICB9LAogICAgb25GbGF0bWFwUmVhZHk6IGZ1bmN0aW9uKCl7CiAgICAgIC8vIG9uRmxhdG1hcFJlYWR5IGlzIHVzZWQgZm9yIGZ1bmN0aW9ucyB0aGF0IG5lZWQgdG8gcnVuIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBmbGF0bWFwIGlzIGxvYWRlZAogICAgICB0aGlzLnNlbnNvciA9IG5ldyBSZXNpemVTZW5zb3IoCiAgICAgICAgdGhpcy4kcmVmcy5kaXNwbGF5LAogICAgICAgIHRoaXMubWFwUmVzaXplCiAgICAgICk7CiAgICAgIGlmICh0aGlzLm1hcEltcC5vcHRpb25zICYmIHRoaXMubWFwSW1wLm9wdGlvbnMuc3R5bGUgPT09ICJmdW5jdGlvbmFsIikgewogICAgICAgIHRoaXMuaXNGQyA9IHRydWU7CiAgICAgIH0KICAgICAgdGhpcy5tYXBJbXAuc2V0QmFja2dyb3VuZE9wYWNpdHkoMSk7CiAgICAgIHRoaXMuYmFja2dyb3VuZENoYW5nZUNhbGxiYWNrKHRoaXMuY3VycmVudEJhY2tncm91bmQpOwogICAgICB0aGlzLnBhdGh3YXlzID0gdGhpcy5tYXBJbXAucGF0aFR5cGVzKCk7CiAgICAgIHRoaXMubWFwSW1wLmVuYWJsZUNlbnRyZWxpbmVzKGZhbHNlKTsKICAgICAgLy9EaXNhYmxlIGxheWVycyBmb3Igbm93CiAgICAgIC8vdGhpcy5sYXllcnMgPSB0aGlzLm1hcEltcC5nZXRMYXllcnMoKTsKICAgICAgdGhpcy5zeXN0ZW1zID0gdGhpcy5tYXBJbXAuZ2V0U3lzdGVtcygpOwogICAgICB0aGlzLmFkZFJlc2l6ZUJ1dHRvblRvTWluaW1hcCgpOwogICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsKICAgICAgdGhpcy5jb21wdXRlUGF0aENvbnRyb2xzTWF4aW11bUhlaWdodCgpOwogICAgICB0aGlzLmRyYXdlck9wZW4gPSB0cnVlOwogICAgICB0aGlzLm1hcFJlc2l6ZSgpOwogICAgICB0aGlzLiRlbWl0KCJyZWFkeSIsIHRoaXMpOwogICAgfSwKICAgIHNob3dNaW5pbWFwOiBmdW5jdGlvbihmbGFnKSB7CiAgICAgIGlmICh0aGlzLm1hcEltcCkKICAgICAgICB0aGlzLm1hcEltcC5zaG93TWluaW1hcChmbGFnKTsKICAgIH0sCiAgICBzaG93UGF0aHdheXNEcmF3ZXI6IGZ1bmN0aW9uKGZsYWcpIHsKICAgICAgdGhpcy5kcmF3ZXJPcGVuID0gZmxhZzsKICAgIH0sCiAgICAvKioKICAgICAqIEZ1bmN0aW9uIHRvIGRpc3BsYXkgZmVhdHVyZXMgd2l0aCBhbm5vdGF0aW9uIG1hdGNoaW5nIHRoZSBwcm92aWRlZCB0ZXJtLAogICAgICogd2l0aCB0aGUgb3B0aW9uIHRvIGRpc3BsYXkgdGhlIGxhYmVsIHVzaW5nIGRpc3BsYXlMYWJlbCBmbGFnLiAKICAgICAqLwogICAgc2VhcmNoQW5kU2hvd1Jlc3VsdDogZnVuY3Rpb24odGVybSwgZGlzcGxheUxhYmVsKSB7CiAgICAgIGlmICh0aGlzLm1hcEltcCkgewogICAgICAgIGlmICh0ZXJtID09PSB1bmRlZmluZWQgfHwgdGVybSA9PT0gIiIpIHsKICAgICAgICAgIHRoaXMubWFwSW1wLmNsZWFyU2VhcmNoUmVzdWx0cygpOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IHNlYXJjaFJlc3VsdHMgPSB0aGlzLm1hcEltcC5zZWFyY2godGVybSk7CiAgICAgICAgICBpZiAoc2VhcmNoUmVzdWx0cyAmJiBzZWFyY2hSZXN1bHRzLnJlc3VsdHMgJiYKICAgICAgICAgICAgc2VhcmNoUmVzdWx0cy5yZXN1bHRzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgdGhpcy5tYXBJbXAuc2hvd1NlYXJjaFJlc3VsdHMoc2VhcmNoUmVzdWx0cyk7CiAgICAgICAgICAgIGlmIChkaXNwbGF5TGFiZWwgJiYgCiAgICAgICAgICAgICAgc2VhcmNoUmVzdWx0cy5yZXN1bHRzWzBdLmZlYXR1cmVJZCAmJiAKICAgICAgICAgICAgICBzZWFyY2hSZXN1bHRzLnJlc3VsdHNbMF0udGV4dCkgewogICAgICAgICAgICAgIGNvbnN0IGFubm90YXRpb24gPSB0aGlzLm1hcEltcC5hbm5vdGF0aW9uKHNlYXJjaFJlc3VsdHMucmVzdWx0c1swXS5mZWF0dXJlSWQpOwogICAgICAgICAgICAgIHRoaXMubWFwSW1wLnNob3dQb3B1cCgKICAgICAgICAgICAgICAgIHNlYXJjaFJlc3VsdHMucmVzdWx0c1swXS5mZWF0dXJlSWQsCiAgICAgICAgICAgICAgICBhbm5vdGF0aW9uLmxhYmVsLAogICAgICAgICAgICAgICAgeyBjbGFzc05hbWU6ICJjdXN0b20tcG9wdXAiLCBwb3NpdGlvbkF0TGFzdENsaWNrOiBmYWxzZSwgcHJlc2VydmVTZWxlY3Rpb246IHRydWUgfQogICAgICAgICAgICAgICkKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhpcy5tYXBJbXAuY2xlYXJTZWFyY2hSZXN1bHRzKCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0sCiAgICAvKioKICAgICAqIEdldCB0aGUgbGlzdCBvZiBzdWdnZXN0ZWQgdGVybXMKICAgICAqLwogICAgc2VhcmNoU3VnZ2VzdGlvbnM6IGZ1bmN0aW9uKHRlcm0pIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKQogICAgICAgIHJldHVybiB0aGlzLm1hcEltcC5zZWFyY2godGVybSk7CiAgICAgIHJldHVybiBbXTsKICAgIH0sCiAgfSwKICBwcm9wczogewogICAgZW50cnk6IFN0cmluZywKICAgIGJpb2xvZ2ljYWxTZXg6IHsKICAgICAgdHlwZTogU3RyaW5nLAogICAgICBkZWZhdWx0OiAiIgogICAgfSwKICAgIGZlYXR1cmVJbmZvOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9LAogICAgbWluWm9vbTogewogICAgICB0eXBlOiBOdW1iZXIsCiAgICAgIGRlZmF1bHQ6IDQKICAgIH0sCiAgICBwYXRoQ29udHJvbHM6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogZmFsc2UKICAgIH0sCiAgICBzZWFyY2hhYmxlOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9LAogICAgbGF5ZXJDb250cm9sOiB7CiAgICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgICBkZWZhdWx0OiBmYWxzZQogICAgfSwKICAgIHRvb2x0aXBzOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IHRydWUKICAgIH0sCiAgICBoZWxwTW9kZTogewogICAgICB0eXBlOiBCb29sZWFuLAogICAgICBkZWZhdWx0OiBmYWxzZQogICAgfSwKICAgIHJlbmRlckF0TW91bnRlZDogewogICAgICB0eXBlOiBCb29sZWFuLAogICAgICBkZWZhdWx0OiB0cnVlCiAgICB9LAogICAgZGlzcGxheU1pbmltYXA6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogZmFsc2UKICAgIH0sCiAgICBkaXNwbGF5V2FybmluZzogewogICAgICB0eXBlOiBCb29sZWFuLAogICAgICBkZWZhdWx0OiBmYWxzZQogICAgfSwKICAgIGlzTGVnYWN5OiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9LAogICAgZGlzcGxheUxhdGVzdENoYW5nZXM6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogZmFsc2UsCiAgICB9LAogICAgbGF0ZXN0Q2hhbmdlc01lc3NhZ2U6IHsKICAgICAgdHlwZTogU3RyaW5nLAogICAgICBkZWZhdWx0OiAiU2VhcmNoIG5vdyBwcm92aWRlIHN1Z2dlc3RlZCB0ZXJtcy4gQWRkIG5ldyBsZWdlbmRzLiBOZXcgdGlsZXNldHMuIE5ldyBmZW1hbGUgbWFwLiBJbXByb3ZlIHVwc3RyZWFtIGRvd25zdHJlYW0gaW5mb3JtYXRpb24uIiwKICAgIH0sCiAgICAvKioKICAgICAqIFN0YXRlIGNvbnRhaW5pbmcgc3RhdGUgb2YgdGhlIGZsYXRtYXAuCiAgICAgKi8KICAgIHN0YXRlOiB7CiAgICAgIHR5cGU6IE9iamVjdCwKICAgICAgZGVmYXVsdDogdW5kZWZpbmVkCiAgICB9LAogICAgLyoqCiAgICAgKiBTcGVjaWZ5IHRoZSBlbmRwb2ludCBvZiB0aGUgZmxhdG1hcCBzZXJ2ZXIuCiAgICAgKi8KICAgIGZsYXRtYXBBUEk6IHsKICAgICAgdHlwZTogU3RyaW5nLAogICAgICBkZWZhdWx0OiAiaHR0cHM6Ly9tYXBjb3JlLWRlbW8ub3JnL2N1cnJlbnQvZmxhdG1hcC92My8iCiAgICB9LAogICAgc3BhcmNBUEk6IHsKICAgICAgdHlwZTogU3RyaW5nLAogICAgICBkZWZhdWx0OiAiaHR0cHM6Ly9hcGkuc3BhcmMuc2NpZW5jZS8iCiAgICB9LAogIH0sCiAgcHJvdmlkZSgpIHsKICAgIHJldHVybiB7CiAgICAgIHNwYXJjQVBJOiB0aGlzLnNwYXJjQVBJLAogICAgICBmbGF0bWFwQVBJOiB0aGlzLmZsYXRtYXBBUEkKICAgIH0KICB9LAogIGRhdGE6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIHsKICAgICAgbGF5ZXJzOiBbXSwKICAgICAgcGF0aHdheXM6IFtdLAogICAgICBzY2thbkRpc3BsYXk6IFsKICAgICAgICB7CiAgICAgICAgICBsYWJlbDogIkRpc3BsYXkgUGF0aCB3aXRoIFNDS0FOIiwKICAgICAgICAgIGtleTogIlZBTElEIiwKICAgICAgICB9LAogICAgICBdLAogICAgICBjZW50cmVMaW5lczogWwogICAgICAgIHsKICAgICAgICAgIGxhYmVsOiAiRGlzcGxheSBOZXJ2ZXMiLAogICAgICAgICAga2V5OiAiY2VudHJlbGluZXMiLAogICAgICAgICAgZW5hYmxlZDogZmFsc2UKICAgICAgICB9CiAgICAgIF0sCiAgICAgIHN5c3RlbXM6IFtdLAogICAgICBwYXRod2F5c01heEhlaWdodDogMTAwMCwKICAgICAgaG92ZXJWaXNpYmlsaXRpZXM6IFsKICAgICAgICB7IHZhbHVlOiBmYWxzZSB9LAogICAgICAgIHsgdmFsdWU6IGZhbHNlIH0sCiAgICAgICAgeyB2YWx1ZTogZmFsc2UgfSwKICAgICAgICB7IHZhbHVlOiBmYWxzZSB9LAogICAgICAgIHsgdmFsdWU6IGZhbHNlIH0sCiAgICAgICAgeyB2YWx1ZTogZmFsc2UgfSwKICAgICAgICB7IHZhbHVlOiBmYWxzZSB9LAogICAgICAgIHsgdmFsdWU6IGZhbHNlIH0KICAgICAgXSwKICAgICAgaXNGQzogZmFsc2UsCiAgICAgIGluSGVscDogZmFsc2UsCiAgICAgIGN1cnJlbnRCYWNrZ3JvdW5kOiAid2hpdGUiLAogICAgICBhdmFpbGFibGVCYWNrZ3JvdW5kOiBbIndoaXRlIiwgImxpZ2h0c2t5Ymx1ZSIsICJibGFjayJdLAogICAgICBsb2FkaW5nOiBmYWxzZSwKICAgICAgZmxhdG1hcE1hcmtlcjogZmxhdG1hcE1hcmtlciwKICAgICAgdG9vbHRpcEVudHJ5OiBjcmVhdGVVbmZpbGxlZFRvb2x0aXBEYXRhKCksCiAgICAgIGNvbm5lY3Rpdml0eVRvb2x0aXBWaXNpYmxlOiBmYWxzZSwKICAgICAgcmVzb3VyY2VGb3JUb29sdGlwOiB1bmRlZmluZWQsCiAgICAgIGRyYXdlck9wZW46IGZhbHNlLAogICAgICBjb2xvdXJSYWRpbzogdHJ1ZSwKICAgICAgb3V0bGluZXNSYWRpbzogdHJ1ZSwKICAgICAgbWluaW1hcFJlc2l6ZVNob3c6IGZhbHNlLAogICAgICBtaW5pbWFwU21hbGw6IGZhbHNlLAogICAgfTsKICB9LAogIHdhdGNoOiB7CiAgICBlbnRyeTogZnVuY3Rpb24oKSB7CiAgICAgIGlmICghdGhpcy5zdGF0ZSkgdGhpcy5jcmVhdGVGbGF0bWFwKCk7CiAgICB9LAogICAgaGVscE1vZGU6IGZ1bmN0aW9uKHZhbCkgewogICAgICB0aGlzLnNldEhlbHBNb2RlKHZhbCk7CiAgICB9LAogICAgc3RhdGU6IHsKICAgICAgaGFuZGxlcjogZnVuY3Rpb24oc3RhdGUpIHsKICAgICAgICBpZiAodGhpcy5tYXBNYW5hZ2VyKSB7CiAgICAgICAgICB0aGlzLnNldFN0YXRlKHN0YXRlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgLy90aGlzIGNvbXBvbmVudCBoYXMgbm90IGJlZW4gbW91bnRlZCB5ZXQKICAgICAgICAgIHRoaXMuc2V0U3RhdGVSZXF1aXJlZCA9IHRydWU7CiAgICAgICAgfQogICAgICB9LAogICAgICBpbW1lZGlhdGU6IHRydWUsCiAgICAgIGRlZXA6IHRydWUKICAgIH0KICB9LAogIG1vdW50ZWQ6IGZ1bmN0aW9uKCkgewogICAgY29uc3QgZmxhdG1hcCA9IHJlcXVpcmUoIkBhYmktc29mdHdhcmUvZmxhdG1hcC12aWV3ZXIiKTsKICAgIHRoaXMudG9vbHRpcFdhaXQgPSBbXTsKICAgIHRoaXMudG9vbHRpcFdhaXQubGVuZ3RoID0gdGhpcy5ob3ZlclZpc2liaWxpdGllcy5sZW5ndGg7CiAgICB0aGlzLm1hcE1hbmFnZXIgPSBuZXcgZmxhdG1hcC5NYXBNYW5hZ2VyKHRoaXMuZmxhdG1hcEFQSSk7CiAgICB0aGlzLmZsYXRtYXBRdWVyaWVzID0gbmV3IEZsYXRtYXBRdWVyaWVzKCk7CiAgICB0aGlzLmZsYXRtYXBRdWVyaWVzLmluaXRpYWxpc2UodGhpcy5zcGFyY0FQSSwgdGhpcy5mbGF0bWFwQVBJKTsKICAgIGlmICh0aGlzLnN0YXRlKSB7CiAgICAgIC8vU3RhdGUgaXMgc2V0IGFuZCByZXF1aXJlIHRvIHNldCB0aGUgc3RhdGUKICAgICAgaWYgKHRoaXMuc2V0U3RhdGVSZXF1aXJlZCkgewogICAgICAgIHRoaXMuc2V0U3RhdGUodGhpcy5zdGF0ZSk7CiAgICAgIH0KICAgIH0gZWxzZSBpZih0aGlzLnJlbmRlckF0TW91bnRlZCkgewogICAgICB0aGlzLmNyZWF0ZUZsYXRtYXAoKTsKICAgIH0KICB9Cn07Cg=="},{"version":3,"sources":["FlatmapVuer.vue"],"names":[],"mappings":";AAuTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;AAEA;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;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":"FlatmapVuer.vue","sourceRoot":"node_modules/@abi-software/flatmapvuer/src/components","sourcesContent":["\n\n\n\n\n\n\n"]}]}