{"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+IHRoaXMubWFwSW1wLmVuYWJsZVBhdGgoa2V5LCBwYXlsb2FkLnZhbHVlKSk7CiAgICAgIH0KICAgIH0sCiAgICBlbmFibGVQYW5ab29tRXZlbnRzOiBmdW5jdGlvbihmbGFnKSB7CiAgICAgIHRoaXMubWFwSW1wLmVuYWJsZVBhblpvb21FdmVudHMoZmxhZyk7CiAgICB9LAogICAgZXZlbnRDYWxsYmFjazogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAoZXZlbnRUeXBlLCBkYXRhLCAuLi5hcmdzKSA9PiB7CiAgICAgICAgaWYgKGV2ZW50VHlwZSAhPT0gInBhbi16b29tIikgewogICAgICAgICAgY29uc3QgbGFiZWwgPSBkYXRhLmxhYmVsOwogICAgICAgICAgY29uc3QgcmVzb3VyY2UgPSBbZGF0YS5tb2RlbHNdOwogICAgICAgICAgY29uc3QgdGF4b25vbXkgPSB0aGlzLmVudHJ5OwogICAgICAgICAgY29uc3QgYmlvbG9naWNhbFNleCA9IHRoaXMuYmlvbG9naWNhbFNleDsKICAgICAgICAgIGNvbnN0IHBheWxvYWQgPSB7CiAgICAgICAgICAgIGRhdGFzZXQ6IGRhdGEuZGF0YXNldCwKICAgICAgICAgICAgYmlvbG9naWNhbFNleDogYmlvbG9naWNhbFNleCwKICAgICAgICAgICAgdGF4b25vbXk6IHRheG9ub215LAogICAgICAgICAgICByZXNvdXJjZTogcmVzb3VyY2UsCiAgICAgICAgICAgIGxhYmVsOiBsYWJlbCwKICAgICAgICAgICAgZmVhdHVyZTogZGF0YSwKICAgICAgICAgICAgdXNlckRhdGE6IGFyZ3MsCiAgICAgICAgICAgIGV2ZW50VHlwZTogZXZlbnRUeXBlCiAgICAgICAgICB9OwogICAgICAgICAgaWYgKGRhdGEgJiYgZGF0YS50eXBlICE9PSAibWFya2VyIiAmJiBldmVudFR5cGUgPT09ICJjbGljayIpewogICAgICAgICAgICB0aGlzLmNoZWNrQW5kQ3JlYXRlUG9wdXBzKHBheWxvYWQpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy4kZW1pdCgicmVzb3VyY2Utc2VsZWN0ZWQiLCBwYXlsb2FkKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy4kZW1pdCgicGFuLXpvb20tY2FsbGJhY2siLCBkYXRhKTsKICAgICAgICB9CiAgICAgIH07CiAgICB9LAogICAgLy8gY2hlY2tOZXVyb25DbGlja2VkIHNob3dzIGEgbmV1cm9uIHBhdGggcG9wIHVwIGlmIGEgcGF0aCB3YXMgcmVjZW50bHkgY2xpY2tlZAogICAgY2hlY2tBbmRDcmVhdGVQb3B1cHM6ICBhc3luYyBmdW5jdGlvbihkYXRhKSB7CiAgICAgIC8vIENhbGwgZmxhdG1hcCBkYXRhYmFzZSB0byBnZXQgdGhlIGNvbm5lY3Rpb24gZGF0YQogICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IHRoaXMuZmxhdG1hcFF1ZXJpZXMucmV0cmlldmVGbGF0bWFwS25vd2xlZGdlRm9yRXZlbnQoZGF0YSkKICAgICAgLy8gVGhlIGxpbmUgYmVsb3cgb25seSBjcmVhdGVzIHRoZSB0b29sdGlwIGlmIHNvbWUgZGF0YSB3YXMgZm91bmQgb24gdGhlIHBhdGggCiAgICAgIC8vIHJlc3VsdCAwIGlzIHRoZSBjb25uZWN0aW9uLCByZXN1bHQgMSBpcyB0aGUgcHVibWVkIHJlc3VsdHMgZnJvbSBmbGF0bWFwCiAgICAgIGlmKHJlc3VsdHNbMF0gfHwgcmVzdWx0c1sxXSB8fCggZGF0YS5mZWF0dXJlLmh5cGVybGlua3MgJiYgZGF0YS5mZWF0dXJlLmh5cGVybGlua3MubGVuZ3RoID4gMCkpewogICAgICAgIHRoaXMucmVzb3VyY2VGb3JUb29sdGlwID0gIGRhdGEucmVzb3VyY2VbMF07CiAgICAgICAgdGhpcy5jcmVhdGVUb29sdGlwRnJvbU5ldXJvbkN1cmF0aW9uKGRhdGEpOwogICAgICB9IAogICAgfSwKICAgIHBvcFVwQ3NzSGFja3M6IGZ1bmN0aW9uKCkgewogICAgICAvLyBCZWxvdyBpcyBhIGhhY2sgdG8gcmVtb3ZlIGZsYXRtYXAgdG9vbHRpcHMgd2hpbGUgcG9wdXAgaXMgb3BlbgogICAgICBsZXQgZnRvb2x0aXAgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuZmxhdG1hcC10b29sdGlwLXBvcHVwIik7CiAgICAgIGlmIChmdG9vbHRpcCkgZnRvb2x0aXAuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1hcGxpYnJlZ2wtcG9wdXAtY2xvc2UtYnV0dG9uIikuc3R5bGUuZGlzcGxheSA9CiAgICAgICAgImJsb2NrIjsKICAgICAgdGhpcy4kcmVmcy50b29sdGlwLiRlbC5zdHlsZS5kaXNwbGF5ID0gImZsZXgiOwogICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIubWFwbGlicmVnbC1wb3B1cC1jbG9zZS1idXR0b24iKS5vbmNsaWNrID0gKCkgPT4gewogICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5mbGF0bWFwLXRvb2x0aXAtcG9wdXAiKS5zdHlsZS5kaXNwbGF5ID0KICAgICAgICAgICJibG9jayI7CiAgICAgIH07CiAgICB9LAogICAgcmVzb3VyY2VTZWxlY3RlZDogZnVuY3Rpb24oYWN0aW9uKSB7CiAgICAgIHRoaXMuJGVtaXQoInJlc291cmNlLXNlbGVjdGVkIiwgYWN0aW9uKTsKICAgIH0sCiAgICBjcmVhdGVUb29sdGlwRnJvbU5ldXJvbkN1cmF0aW9uOiBmdW5jdGlvbihkYXRhKSB7CiAgICAgIHRoaXMudG9vbHRpcEVudHJ5ID0gdGhpcy5mbGF0bWFwUXVlcmllcy5jcmVhdGVUb29sdGlwRGF0YShkYXRhKTsKICAgICAgdGhpcy5kaXNwbGF5VG9vbHRpcCgpOwogICAgfSwKICAgIC8vIEtlZXBpbmcgdGhpcyBhcyBhbiBBUEkKICAgIHNob3dQb3B1cDogZnVuY3Rpb24oZmVhdHVyZUlkLCBub2RlLCBvcHRpb25zKSB7CiAgICAgIGxldCBteU9wdGlvbnMgPSBvcHRpb25zOwogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICBpZiAobXlPcHRpb25zKSB7CiAgICAgICAgICBpZiAoIW15T3B0aW9ucy5jbGFzc05hbWUpIG15T3B0aW9ucy5jbGFzc05hbWUgPSAiY3VzdG9tLXBvcHVwIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbXlPcHRpb25zID0geyBjbGFzc05hbWU6ICJjdXN0b20tcG9wdXAiLCBwb3NpdGlvbkF0TGFzdENsaWNrOiB0cnVlIH07CiAgICAgICAgfQogICAgICAgIHRoaXMubWFwSW1wLnNob3dQb3B1cChmZWF0dXJlSWQsIG5vZGUsIG15T3B0aW9ucyk7CiAgICAgIH0KICAgIH0sCiAgICBzaG93TWFya2VyUG9wdXA6IGZ1bmN0aW9uKGZlYXR1cmVJZCwgbm9kZSwgb3B0aW9ucykgewogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICB0aGlzLm1hcEltcC5zaG93TWFya2VyUG9wdXAoZmVhdHVyZUlkLCBub2RlLCBvcHRpb25zKTsKICAgICAgfQogICAgfSwKICAgIGNsb3NlTWluaW1hcDogZnVuY3Rpb24oKXsKICAgICAgbGV0IG1pbmltYXBFbCA9IHRoaXMuJHJlZnMuZmxhdG1hcENvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCcubWFwbGlicmVnbC1jdHJsLW1pbmltYXAnKTsgLy8gZmluZCBtaW5pbWFwCiAgICAgIGlmICh0aGlzLm1pbmltYXBTbWFsbCkgeyAvL3N3aXRjaCB0aGUgY2xhc3NlcyBvbiB0aGUgbWluaW1hcAogICAgICAgIG1pbmltYXBFbC5jbGFzc0xpc3QuYWRkKCdlbmxhcmdlJyk7CiAgICAgICAgbWluaW1hcEVsLmNsYXNzTGlzdC5yZW1vdmUoJ3NocmluaycpOwogICAgICB9IGVsc2UgewogICAgICAgIG1pbmltYXBFbC5jbGFzc0xpc3QuYWRkKCdzaHJpbmsnKTsKICAgICAgICBtaW5pbWFwRWwuY2xhc3NMaXN0LnJlbW92ZSgnZW5sYXJnZScpOwogICAgICB9CiAgICAgIHRoaXMubWluaW1hcFNtYWxsID0gIXRoaXMubWluaW1hcFNtYWxsOwogICAgfSwKICAgIGFkZFJlc2l6ZUJ1dHRvblRvTWluaW1hcDogZnVuY3Rpb24oKXsKICAgICAgbGV0IG1pbmltYXBFbCA9IHRoaXMuJHJlZnMuZmxhdG1hcENvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCcubWFwbGlicmVnbC1jdHJsLW1pbmltYXAnKTsKICAgICAgaWYgKG1pbmltYXBFbCl7CiAgICAgICAgdGhpcy4kcmVmcy5taW5pbWFwUmVzaXplLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy4kcmVmcy5taW5pbWFwUmVzaXplKTsKICAgICAgICBtaW5pbWFwRWwuYXBwZW5kQ2hpbGQodGhpcy4kcmVmcy5taW5pbWFwUmVzaXplKTsKICAgICAgICB0aGlzLm1pbmltYXBSZXNpemVTaG93ID0gdHJ1ZTsKICAgICAgfQogICAgfSwKICAgIHNldEhlbHBNb2RlOiBmdW5jdGlvbihoZWxwTW9kZSkgewogICAgICBpZiAoaGVscE1vZGUpIHsKICAgICAgICB0aGlzLmluSGVscCA9IHRydWU7CiAgICAgICAgdGhpcy5ob3ZlclZpc2liaWxpdGllcy5mb3JFYWNoKGl0ZW0gPT4gewogICAgICAgICAgaXRlbS52YWx1ZSA9IHRydWU7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5vcGVuRmxhdG1hcEhlbHBQb3B1cCgpOwogICAgICB9IGVsc2UgewogICAgICAgIHRoaXMuaW5IZWxwID0gZmFsc2U7CiAgICAgICAgdGhpcy5ob3ZlclZpc2liaWxpdGllcy5mb3JFYWNoKGl0ZW0gPT4gewogICAgICAgICAgaXRlbS52YWx1ZSA9IGZhbHNlOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuY2xvc2VGbGF0bWFwSGVscFBvcHVwKCk7CiAgICAgIH0KICAgIH0sCiAgICBzaG93VG9vbGl0aXA6IGZ1bmN0aW9uKHRvb2x0aXBOdW1iZXIpIHsKICAgICAgaWYgKCF0aGlzLmluSGVscCkgewogICAgICAgIGNsZWFyVGltZW91dCh0aGlzLnRvb2x0aXBXYWl0W3Rvb2x0aXBOdW1iZXJdKTsKICAgICAgICB0aGlzLnRvb2x0aXBXYWl0W3Rvb2x0aXBOdW1iZXJdID0gc2V0VGltZW91dCgoKSA9PiB7CiAgICAgICAgICB0aGlzLmhvdmVyVmlzaWJpbGl0aWVzW3Rvb2x0aXBOdW1iZXJdLnZhbHVlID0gdHJ1ZTsKICAgICAgICB9LCA1MDApOwogICAgICB9CiAgICB9LAogICAgaGlkZVRvb2xpdGlwOiBmdW5jdGlvbih0b29sdGlwTnVtYmVyKSB7CiAgICAgIGlmICghdGhpcy5pbkhlbHApIHsKICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50b29sdGlwV2FpdFt0b29sdGlwTnVtYmVyXSk7CiAgICAgICAgdGhpcy50b29sdGlwV2FpdFt0b29sdGlwTnVtYmVyXSA9IHNldFRpbWVvdXQoKCkgPT4gewogICAgICAgICAgdGhpcy5ob3ZlclZpc2liaWxpdGllc1t0b29sdGlwTnVtYmVyXS52YWx1ZSA9IGZhbHNlOwogICAgICAgIH0sIDUwMCk7CiAgICAgIH0KICAgIH0sCiAgICBkaXNwbGF5VG9vbHRpcDogZnVuY3Rpb24oKSB7CiAgICAgIHRoaXMubWFwSW1wLnNob3dQb3B1cCgKICAgICAgICB0aGlzLm1hcEltcC5tb2RlbEZlYXR1cmVJZHModGhpcy5yZXNvdXJjZUZvclRvb2x0aXApWzBdLAogICAgICAgIHRoaXMuJHJlZnMudG9vbHRpcC4kZWwsCiAgICAgICAgeyBjbGFzc05hbWU6ICJmbGF0bWFwdnVlci1wb3BvdmVyIiwgcG9zaXRpb25BdExhc3RDbGljazogdHJ1ZSB9CiAgICAgICk7CiAgICAgIHRoaXMucG9wVXBDc3NIYWNrcygpOwogICAgfSwKICAgIG9wZW5GbGF0bWFwSGVscFBvcHVwOiBmdW5jdGlvbigpIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgbGV0IGhlYXJ0SWQgPSB0aGlzLm1hcEltcC5mZWF0dXJlSWRzRm9yTW9kZWwoIlVCRVJPTjowMDAwOTQ4IilbMF07CiAgICAgICAgY29uc3QgZWxtID0gIkNsaWNrIGZvciBtb3JlIGluZm9ybWF0aW9uIjsKICAgICAgICB0aGlzLm1hcEltcC5zaG93UG9wdXAoaGVhcnRJZCwgZWxtLCB7CiAgICAgICAgICBhbmNob3I6ICJ0b3AiLAogICAgICAgICAgY2xhc3NOYW1lOiAiZmxhdG1hcC1wb3B1cC1wb3BwZXIiCiAgICAgICAgfSk7CiAgICAgIH0KICAgIH0sCiAgICBjbG9zZUZsYXRtYXBIZWxwUG9wdXA6IGZ1bmN0aW9uKCkgewogICAgICB0aGlzLiRlbAogICAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKCIubWFwbGlicmVnbC1wb3B1cC1jbG9zZS1idXR0b24iKQogICAgICAgIC5mb3JFYWNoKGl0ZW0gPT4gewogICAgICAgICAgaXRlbS5jbGljaygpOwogICAgICAgIH0pOwogICAgfSwKICAgIGdldExhYmVsczogZnVuY3Rpb24oKSB7CiAgICAgIGxldCBsYWJlbHMgPSBbXTsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgbGV0IGFubm90YXRpb25zID0gdGhpcy5tYXBJbXAuYW5ub3RhdGlvbnM7CiAgICAgICAgZm9yIChsZXQgdmFsdWUgb2YgYW5ub3RhdGlvbnMudmFsdWVzKCkpIHsKICAgICAgICAgIGlmICh2YWx1ZS5sYWJlbCkgbGFiZWxzLnB1c2godmFsdWUubGFiZWwpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShuZXcgU2V0KGxhYmVscykpOwogICAgICB9CiAgICB9LAogICAgZ2V0U3RhdGU6IGZ1bmN0aW9uKCkgewogICAgICBpZiAodGhpcy5tYXBJbXApIHsKICAgICAgICBsZXQgc3RhdGUgPSB7CiAgICAgICAgICBlbnRyeTogdGhpcy5lbnRyeSwKICAgICAgICAgIHZpZXdwb3J0OiB0aGlzLm1hcEltcC5nZXRTdGF0ZSgpCiAgICAgICAgfTsKICAgICAgICBjb25zdCBpZGVudGlmaWVyID0gdGhpcy5tYXBJbXAuZ2V0SWRlbnRpZmllcigpOwogICAgICAgIGlmICh0aGlzLmJpb2xvZ2ljYWxTZXgpCiAgICAgICAgICBzdGF0ZVsnYmlvbG9naWNhbFNleCddID0gdGhpcy5iaW9sb2dpY2FsU2V4OwogICAgICAgIGVsc2UgaWYgKGlkZW50aWZpZXIgJiYgaWRlbnRpZmllci5iaW9sb2dpY2FsU2V4KQogICAgICAgICAgc3RhdGVbJ2Jpb2xvZ2ljYWxTZXgnXSA9IGlkZW50aWZpZXIuYmlvbG9naWNhbFNleDsKICAgICAgICBpZiAoaWRlbnRpZmllciAmJiBpZGVudGlmaWVyLnV1aWQpCiAgICAgICAgICBzdGF0ZVsndXVpZCddID0gaWRlbnRpZmllci51dWlkOwogICAgICAgIHJldHVybiBzdGF0ZTsKICAgICAgfQogICAgICByZXR1cm4gdW5kZWZpbmVkOwogICAgfSwKICAgIHNldFN0YXRlOiBmdW5jdGlvbihzdGF0ZSkgewogICAgICBpZiAoc3RhdGUpIHsKICAgICAgICBpZiAodGhpcy5tYXBJbXAgJiYgCiAgICAgICAgICAoc3RhdGUuZW50cnkgJiYgKHRoaXMuZW50cnkgPT0gc3RhdGUuZW50cnkpKSAmJgogICAgICAgICAgKCFzdGF0ZS5iaW9sb2dpY2FsU2V4IHx8IChzdGF0ZS5iaW9sb2dpY2FsU2V4ID09PSB0aGlzLmJpb2xvZ2ljYWxTZXgpKSkgCiAgICAgICAgewogICAgICAgICAgaWYgKHN0YXRlLnZpZXdwb3J0KSB7CiAgICAgICAgICAgIHRoaXMubWFwSW1wLnNldFN0YXRlKHN0YXRlLnZpZXdwb3J0KTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jcmVhdGVGbGF0bWFwKHN0YXRlKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5zZXRTdGF0ZVJlcXVpcmVkID0gZmFsc2U7CiAgICAgIH0KICAgIH0sCiAgICByZXN0b3JlTWFwU3RhdGU6IGZ1bmN0aW9uKHN0YXRlKSB7CiAgICAgIGlmIChzdGF0ZSkgewogICAgICAgIGlmIChzdGF0ZS52aWV3cG9ydCkKICAgICAgICAgIHRoaXMubWFwSW1wLnNldFN0YXRlKHN0YXRlLnZpZXdwb3J0KTsKICAgICAgICBpZiAoc3RhdGUuc2VhcmNoVGVybSkKICAgICAgICAgIHRoaXMuc2VhcmNoQW5kU2hvd1Jlc3VsdChzdGF0ZS5zZWFyY2hUZXJtLCB0cnVlKTsKICAgICAgfQogICAgfSwKICAgIGNyZWF0ZUZsYXRtYXA6IGZ1bmN0aW9uKHN0YXRlKSB7CiAgICAgIGlmICghdGhpcy5tYXBJbXAgJiYgIXRoaXMubG9hZGluZykgewogICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7CiAgICAgICAgbGV0IG1pbmltYXAgPSBmYWxzZTsKICAgICAgICBpZiAodGhpcy5kaXNwbGF5TWluaW1hcCkgewogICAgICAgICAgbWluaW1hcCA9IHsgcG9zaXRpb246ICJ0b3AtcmlnaHQiIH07CiAgICAgICAgfQoKICAgICAgICAvL0FzIGZvciBmbGF0bWFwLXZpZXdlckAyLjIuNywgc2VlIGJlbG93IGZvciB0aGUgZG9jdW1lbnRhdGlvbiAKICAgICAgICAvL2ZvciB0aGUgaWRlbnRpZmllcjoKCiAgICAgICAgLy9AYXJnIGlkZW50aWZpZXIge3N0cmluZ3xPYmplY3R9CiAgICAgICAgLy8gQSBzdHJpbmcgb3Igb2JqZWN0IGlkZW50aWZ5aW5nIHRoZSBtYXAgdG8gbG9hZC4gSWYgYSBzdHJpbmcgaXRzCiAgICAgICAgLy8gdmFsdWUgY2FuIGJlIGVpdGhlciB0aGUgbWFwJ3MgYGB1dWlkYGAsIGFzc2lnbmVkIGF0IGdlbmVyYXRpb24gdGltZSwKICAgICAgICAvLyBvciB0YXhvbiBhbmQgYmlvbG9naWNhbCBzZXggaWRlbnRpZmllcnMgb2YgdGhlIHNwZWNpZXMgdGhhdCB0aGUgbWFwCiAgICAgICAgLy8gcmVwcmVzZW50cy4gVGhlIGxhdGVzdCB2ZXJzaW9uIG9mIGEgbWFwIGlzIGxvYWRlZCB1bmxlc3MgaXQgaGFzIGJlZW4KICAgICAgICAvLyBpZGVudGlmaWVkIHVzaW5nIGEgYGB1dWlkYGAgKHNlZSBiZWxvdykuCiAgICAgICAgLy8gQGFyZyBpZGVudGlmaWVyLnRheG9uIHtzdHJpbmd9IFRoZSB0YXhvbiBpZGVudGlmaWVyIG9mIHRoZSBzcGVjaWVzIAogICAgICAgIC8vICByZXByZXNlbnRlZCBieSB0aGUgbWFwLiBUaGlzIGlzIHNwZWNpZmllZCBhcyBtZXRhZGF0YSBpbiB0aGUgbWFwJ3Mgc291cmNlIGZpbGUuCiAgICAgICAgLy8gQGFyZyBpZGVudGlmaWVyLmJpb2xvZ2ljYWxTZXgge3N0cmluZ30gVGhlIGJpb2xvZ2ljYWwgc2V4IG9mIHRoZSBzcGVjaWVzCiAgICAgICAgLy8gcmVwcmVzZW50ZWQgYnkgdGhlIG1hcC4gVGhpcyBpcyBzcGVjaWZpZWQgYXMgbWV0YWRhdGFpbiB0aGUgbWFwJ3Mgc291cmNlIGZpbGUuCiAgICAgICAgLy8gQGFyZyBpZGVudGlmaWVyLnV1aWQge3N0cmluZ30gVGhlIHVuaXF1ZSB1dWlkIHRoZSBmbGF0bWFwLiBJZiBnaXZlbiB0aGVuIHRoaXMgZXhhY3QgbWFwIHdpbGwKICAgICAgICAvLyAgYmUgbG9hZGVkLCBvdmVycmlkaW5nIGBgdGF4b25gYCBhbmQgYGBiaW9sb2dpY2FsU2V4YGAuCgogICAgICAgIGxldCBpZGVudGlmaWVyID0geyB0YXhvbjogdGhpcy5lbnRyeSB9OwogICAgICAgIC8vVGhpcyBub3cgaGFuZGxlIHRoZSB1c2VzIG9mIHV1aWQgd2hlbiByZXN1bWluZyBzdGF0ZXMKICAgICAgICBpZiAoc3RhdGUpIHsKICAgICAgICAgIGlmIChzdGF0ZS51dWlkKSB7CiAgICAgICAgICAgIGlkZW50aWZpZXIgPSB7IHV1aWQ6IHN0YXRlLnV1aWQgfTsKICAgICAgICAgIH0gZWxzZSBpZiAoc3RhdGUuZW50cnkpIHsKICAgICAgICAgICAgaWRlbnRpZmllci50YXhvbiA9IHN0YXRlLmVudHJ5OwogICAgICAgICAgICBpZiAoc3RhdGUuYmlvbG9naWNhbFNleCkgewogICAgICAgICAgICAgIGlkZW50aWZpZXJbImJpb2xvZ2ljYWxTZXgiXSA9IHN0YXRlLmJpb2xvZ2ljYWxTZXg7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoaWRlbnRpZmllci50YXhvbiA9PT0gIk5DQklUYXhvbjo5NjA2IikgewogICAgICAgICAgICAgIC8vRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkKICAgICAgICAgICAgICBpZGVudGlmaWVyWyJiaW9sb2dpY2FsU2V4Il0gPSJQQVRPOjAwMDAzODQiOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIC8vIFNldCB0aGUgYmlvbG9pY2FsU2V4IG5vdyBpZiBtYXAgaXMgbm90IHJlc3VtZWQgZnJvbQogICAgICAgICAgLy8gYSBzYXZlZCBzdGF0ZQogICAgICAgICAgaWYgKHRoaXMuYmlvbG9naWNhbFNleCkgewogICAgICAgICAgICBpZGVudGlmaWVyWyJiaW9sb2dpY2FsU2V4Il0gPSB0aGlzLmJpb2xvZ2ljYWxTZXg7CiAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBsZXQgcHJvbWlzZTEgPSB0aGlzLm1hcE1hbmFnZXIubG9hZE1hcCgKICAgICAgICAgIGlkZW50aWZpZXIsCiAgICAgICAgICB0aGlzLiRyZWZzLmRpc3BsYXksCiAgICAgICAgICB0aGlzLmV2ZW50Q2FsbGJhY2soKSwKICAgICAgICAgIHsKICAgICAgICAgICAgLy9mdWxsc2NyZWVuQ29udHJvbDogZmFsc2UsCiAgICAgICAgICAgIC8vYW5ub3RhdGFibGU6IGZhbHNlLAogICAgICAgICAgICAvL2RlYnVnOiB0cnVlLAogICAgICAgICAgICBmZWF0dXJlSW5mbzogdGhpcy5mZWF0dXJlSW5mbywKICAgICAgICAgICAgIm1pbi16b29tIjogdGhpcy5taW5ab29tLAogICAgICAgICAgICBsYXllckNvbnRyb2w6IHRydWUsCiAgICAgICAgICAgIHBhdGhDb250cm9sczogdHJ1ZSwKICAgICAgICAgICAgc2VhcmNoYWJsZTogdGhpcy5zZWFyY2hhYmxlLAogICAgICAgICAgICB0b29sdGlwczogdGhpcy50b29sdGlwcywKICAgICAgICAgICAgbWluaW1hcDogbWluaW1hcAogICAgICAgICAgfQogICAgICAgICk7CiAgICAgICAgcHJvbWlzZTEudGhlbihyZXR1cm5lZE9iamVjdCA9PiB7CiAgICAgICAgICB0aGlzLm1hcEltcCA9IHJldHVybmVkT2JqZWN0OwogICAgICAgICAgdGhpcy5vbkZsYXRtYXBSZWFkeSgpOwogICAgICAgICAgaWYgKHRoaXMuX3N0YXRlVG9CZVNldCkKICAgICAgICAgICAgdGhpcy5yZXN0b3JlTWFwU3RhdGUodGhpcy5fc3RhdGVUb0JlU2V0KTsKICAgICAgICAgIGVsc2UgewogICAgICAgICAgICB0aGlzLnJlc3RvcmVNYXBTdGF0ZShzdGF0ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0gZWxzZSBpZiAoc3RhdGUpIHsKICAgICAgICB0aGlzLl9zdGF0ZVRvQmVTZXQgPSB7IHZpZXdwb3J0OiBzdGF0ZS52aWV3cG9ydCwgc2VhcmNoVGVybTogc3RhdGUuc2VhcmNoVGVybSB9OwogICAgICAgIGlmICh0aGlzLm1hcEltcCAmJiAhdGhpcy5sb2FkaW5nKQogICAgICAgICAgdGhpcy5yZXN0b3JlTWFwU3RhdGUodGhpcy5fc3RhdGVUb0JlU2V0KTsKICAgICAgfQogICAgfSwKICAgIGNvbXB1dGVQYXRoQ29udHJvbHNNYXhpbXVtSGVpZ2h0KCkgewogICAgICBjb25zdCBlbGVtID0gdGhpcy4kcmVmcy5kaXNwbGF5OwogICAgICBpZiAoZWxlbSkgewogICAgICAgIGNvbnN0IGNvbXB1dGVkID0gZ2V0Q29tcHV0ZWRTdHlsZShlbGVtKTsKICAgICAgICBjb25zdCBwYWRkaW5nID0gcGFyc2VJbnQoY29tcHV0ZWQucGFkZGluZ1RvcCkgKyBwYXJzZUludChjb21wdXRlZC5wYWRkaW5nQm90dG9tKTsKICAgICAgICBjb25zdCBoZWlnaHQgPSBlbGVtLmNsaWVudEhlaWdodCAtIHBhZGRpbmc7CiAgICAgICAgdGhpcy5wYXRod2F5c01heEhlaWdodCA9IGhlaWdodCAtIDE3MDsKICAgICAgfQogICAgfSwKICAgIG1hcFJlc2l6ZTogZnVuY3Rpb24oKSB7CiAgICAgIHRyeSB7CiAgICAgICAgdGhpcy5jb21wdXRlUGF0aENvbnRyb2xzTWF4aW11bUhlaWdodCgpOwogICAgICAgIGlmICh0aGlzLm1hcEltcCkgewogICAgICAgICAgdGhpcy5tYXBJbXAucmVzaXplKCk7CiAgICAgICAgICB0aGlzLnNob3dNaW5pbWFwKHRoaXMuZGlzcGxheU1pbmltYXApOwogICAgICAgICAgaWYgKHRoaXMubWFwSW1wLl9taW5pbWFwKSB7CiAgICAgICAgICAgICAgdGhpcy5tYXBJbXAuX21pbmltYXAucmVzaXplKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9IGNhdGNoIHsKICAgICAgICBjb25zb2xlLmVycm9yKCJNYXAgcmVzaXplIGVycm9yIik7CiAgICAgIH0KICAgIH0sCiAgICBvbkZsYXRtYXBSZWFkeTogZnVuY3Rpb24oKXsKICAgICAgLy8gb25GbGF0bWFwUmVhZHkgaXMgdXNlZCBmb3IgZnVuY3Rpb25zIHRoYXQgbmVlZCB0byBydW4gaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIGZsYXRtYXAgaXMgbG9hZGVkCiAgICAgIHRoaXMuc2Vuc29yID0gbmV3IFJlc2l6ZVNlbnNvcigKICAgICAgICB0aGlzLiRyZWZzLmRpc3BsYXksCiAgICAgICAgdGhpcy5tYXBSZXNpemUKICAgICAgKTsKICAgICAgaWYgKHRoaXMubWFwSW1wLm9wdGlvbnMgJiYgdGhpcy5tYXBJbXAub3B0aW9ucy5zdHlsZSA9PT0gImZ1bmN0aW9uYWwiKSB7CiAgICAgICAgdGhpcy5pc0ZDID0gdHJ1ZTsKICAgICAgfQogICAgICB0aGlzLm1hcEltcC5zZXRCYWNrZ3JvdW5kT3BhY2l0eSgxKTsKICAgICAgdGhpcy5iYWNrZ3JvdW5kQ2hhbmdlQ2FsbGJhY2sodGhpcy5jdXJyZW50QmFja2dyb3VuZCk7CiAgICAgIHRoaXMucGF0aHdheXMgPSB0aGlzLm1hcEltcC5wYXRoVHlwZXMoKTsKICAgICAgdGhpcy5tYXBJbXAuZW5hYmxlQ2VudHJlbGluZXMoZmFsc2UpOwogICAgICAvL0Rpc2FibGUgbGF5ZXJzIGZvciBub3cKICAgICAgLy90aGlzLmxheWVycyA9IHRoaXMubWFwSW1wLmdldExheWVycygpOwogICAgICB0aGlzLnN5c3RlbXMgPSB0aGlzLm1hcEltcC5nZXRTeXN0ZW1zKCk7CiAgICAgIHRoaXMuYWRkUmVzaXplQnV0dG9uVG9NaW5pbWFwKCk7CiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICB0aGlzLmNvbXB1dGVQYXRoQ29udHJvbHNNYXhpbXVtSGVpZ2h0KCk7CiAgICAgIHRoaXMuZHJhd2VyT3BlbiA9IHRydWU7CiAgICAgIHRoaXMubWFwUmVzaXplKCk7CiAgICAgIHRoaXMuJGVtaXQoInJlYWR5IiwgdGhpcyk7CiAgICB9LAogICAgc2hvd01pbmltYXA6IGZ1bmN0aW9uKGZsYWcpIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKQogICAgICAgIHRoaXMubWFwSW1wLnNob3dNaW5pbWFwKGZsYWcpOwogICAgfSwKICAgIHNob3dQYXRod2F5c0RyYXdlcjogZnVuY3Rpb24oZmxhZykgewogICAgICB0aGlzLmRyYXdlck9wZW4gPSBmbGFnOwogICAgfSwKICAgIC8qKgogICAgICogRnVuY3Rpb24gdG8gZGlzcGxheSBmZWF0dXJlcyB3aXRoIGFubm90YXRpb24gbWF0Y2hpbmcgdGhlIHByb3ZpZGVkIHRlcm0sCiAgICAgKiB3aXRoIHRoZSBvcHRpb24gdG8gZGlzcGxheSB0aGUgbGFiZWwgdXNpbmcgZGlzcGxheUxhYmVsIGZsYWcuIAogICAgICovCiAgICBzZWFyY2hBbmRTaG93UmVzdWx0OiBmdW5jdGlvbih0ZXJtLCBkaXNwbGF5TGFiZWwpIHsKICAgICAgaWYgKHRoaXMubWFwSW1wKSB7CiAgICAgICAgaWYgKHRlcm0gPT09IHVuZGVmaW5lZCB8fCB0ZXJtID09PSAiIikgewogICAgICAgICAgdGhpcy5tYXBJbXAuY2xlYXJTZWFyY2hSZXN1bHRzKCk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3Qgc2VhcmNoUmVzdWx0cyA9IHRoaXMubWFwSW1wLnNlYXJjaCh0ZXJtKTsKICAgICAgICAgIGlmIChzZWFyY2hSZXN1bHRzICYmIHNlYXJjaFJlc3VsdHMucmVzdWx0cyAmJgogICAgICAgICAgICBzZWFyY2hSZXN1bHRzLnJlc3VsdHMubGVuZ3RoID4gMCkgewogICAgICAgICAgICB0aGlzLm1hcEltcC5zaG93U2VhcmNoUmVzdWx0cyhzZWFyY2hSZXN1bHRzKTsKICAgICAgICAgICAgaWYgKGRpc3BsYXlMYWJlbCAmJiAKICAgICAgICAgICAgICBzZWFyY2hSZXN1bHRzLnJlc3VsdHNbMF0uZmVhdHVyZUlkICYmIAogICAgICAgICAgICAgIHNlYXJjaFJlc3VsdHMucmVzdWx0c1swXS50ZXh0KSB7CiAgICAgICAgICAgICAgY29uc3QgYW5ub3RhdGlvbiA9IHRoaXMubWFwSW1wLmFubm90YXRpb24oc2VhcmNoUmVzdWx0cy5yZXN1bHRzWzBdLmZlYXR1cmVJZCk7CiAgICAgICAgICAgICAgdGhpcy5tYXBJbXAuc2hvd1BvcHVwKAogICAgICAgICAgICAgICAgc2VhcmNoUmVzdWx0cy5yZXN1bHRzWzBdLmZlYXR1cmVJZCwKICAgICAgICAgICAgICAgIGFubm90YXRpb24ubGFiZWwsCiAgICAgICAgICAgICAgICB7IGNsYXNzTmFtZTogImN1c3RvbS1wb3B1cCIsIHBvc2l0aW9uQXRMYXN0Q2xpY2s6IGZhbHNlLCBwcmVzZXJ2ZVNlbGVjdGlvbjogdHJ1ZSB9CiAgICAgICAgICAgICAgKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgZWxzZQogICAgICAgICAgICB0aGlzLm1hcEltcC5jbGVhclNlYXJjaFJlc3VsdHMoKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfSwKICAgIC8qKgogICAgICogR2V0IHRoZSBsaXN0IG9mIHN1Z2dlc3RlZCB0ZXJtcwogICAgICovCiAgICBzZWFyY2hTdWdnZXN0aW9uczogZnVuY3Rpb24odGVybSkgewogICAgICBpZiAodGhpcy5tYXBJbXApCiAgICAgICAgcmV0dXJuIHRoaXMubWFwSW1wLnNlYXJjaCh0ZXJtKTsKICAgICAgcmV0dXJuIFtdOwogICAgfSwKICB9LAogIHByb3BzOiB7CiAgICBlbnRyeTogU3RyaW5nLAogICAgYmlvbG9naWNhbFNleDogewogICAgICB0eXBlOiBTdHJpbmcsCiAgICAgIGRlZmF1bHQ6ICIiCiAgICB9LAogICAgZmVhdHVyZUluZm86IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogZmFsc2UKICAgIH0sCiAgICBtaW5ab29tOiB7CiAgICAgIHR5cGU6IE51bWJlciwKICAgICAgZGVmYXVsdDogNAogICAgfSwKICAgIHBhdGhDb250cm9sczogewogICAgICB0eXBlOiBCb29sZWFuLAogICAgICBkZWZhdWx0OiBmYWxzZQogICAgfSwKICAgIHNlYXJjaGFibGU6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogZmFsc2UKICAgIH0sCiAgICBsYXllckNvbnRyb2w6IHsKICAgICAgICB0eXBlOiBCb29sZWFuLAogICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9LAogICAgdG9vbHRpcHM6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogdHJ1ZQogICAgfSwKICAgIGhlbHBNb2RlOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9LAogICAgcmVuZGVyQXRNb3VudGVkOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IHRydWUKICAgIH0sCiAgICBkaXNwbGF5TWluaW1hcDogewogICAgICB0eXBlOiBCb29sZWFuLAogICAgICBkZWZhdWx0OiBmYWxzZQogICAgfSwKICAgIGRpc3BsYXlXYXJuaW5nOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9LAogICAgaXNMZWdhY3k6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogZmFsc2UKICAgIH0sCiAgICBkaXNwbGF5TGF0ZXN0Q2hhbmdlczogewogICAgICB0eXBlOiBCb29sZWFuLAogICAgICBkZWZhdWx0OiBmYWxzZSwKICAgIH0sCiAgICBsYXRlc3RDaGFuZ2VzTWVzc2FnZTogewogICAgICB0eXBlOiBTdHJpbmcsCiAgICAgIGRlZmF1bHQ6ICJTZWFyY2ggbm93IHByb3ZpZGUgc3VnZ2VzdGVkIHRlcm1zLiBBZGQgbmV3IGxlZ2VuZHMuIE5ldyB0aWxlc2V0cy4gTmV3IGZlbWFsZSBtYXAuIEltcHJvdmUgdXBzdHJlYW0gZG93bnN0cmVhbSBpbmZvcm1hdGlvbi4iLAogICAgfSwKICAgIC8qKgogICAgICogU3RhdGUgY29udGFpbmluZyBzdGF0ZSBvZiB0aGUgZmxhdG1hcC4KICAgICAqLwogICAgc3RhdGU6IHsKICAgICAgdHlwZTogT2JqZWN0LAogICAgICBkZWZhdWx0OiB1bmRlZmluZWQKICAgIH0sCiAgICAvKioKICAgICAqIFNwZWNpZnkgdGhlIGVuZHBvaW50IG9mIHRoZSBmbGF0bWFwIHNlcnZlci4KICAgICAqLwogICAgZmxhdG1hcEFQSTogewogICAgICB0eXBlOiBTdHJpbmcsCiAgICAgIGRlZmF1bHQ6ICJodHRwczovL21hcGNvcmUtZGVtby5vcmcvY3VycmVudC9mbGF0bWFwL3YzLyIKICAgIH0sCiAgICBzcGFyY0FQSTogewogICAgICB0eXBlOiBTdHJpbmcsCiAgICAgIGRlZmF1bHQ6ICJodHRwczovL2FwaS5zcGFyYy5zY2llbmNlLyIKICAgIH0sCiAgfSwKICBwcm92aWRlKCkgewogICAgcmV0dXJuIHsKICAgICAgc3BhcmNBUEk6IHRoaXMuc3BhcmNBUEksCiAgICAgIGZsYXRtYXBBUEk6IHRoaXMuZmxhdG1hcEFQSQogICAgfQogIH0sCiAgZGF0YTogZnVuY3Rpb24oKSB7CiAgICByZXR1cm4gewogICAgICBsYXllcnM6IFtdLAogICAgICBwYXRod2F5czogW10sCiAgICAgIHNja2FuRGlzcGxheTogWwogICAgICAgIHsKICAgICAgICAgIGxhYmVsOiAiRGlzcGxheSBQYXRoIHdpdGggU0NLQU4iLAogICAgICAgICAga2V5OiAiVkFMSUQiLAogICAgICAgIH0sCiAgICAgIF0sCiAgICAgIGNlbnRyZUxpbmVzOiBbCiAgICAgICAgewogICAgICAgICAgbGFiZWw6ICJEaXNwbGF5IE5lcnZlcyIsCiAgICAgICAgICBrZXk6ICJjZW50cmVsaW5lcyIsCiAgICAgICAgICBlbmFibGVkOiBmYWxzZQogICAgICAgIH0KICAgICAgXSwKICAgICAgc3lzdGVtczogW10sCiAgICAgIHBhdGh3YXlzTWF4SGVpZ2h0OiAxMDAwLAogICAgICBob3ZlclZpc2liaWxpdGllczogWwogICAgICAgIHsgdmFsdWU6IGZhbHNlIH0sCiAgICAgICAgeyB2YWx1ZTogZmFsc2UgfSwKICAgICAgICB7IHZhbHVlOiBmYWxzZSB9LAogICAgICAgIHsgdmFsdWU6IGZhbHNlIH0sCiAgICAgICAgeyB2YWx1ZTogZmFsc2UgfSwKICAgICAgICB7IHZhbHVlOiBmYWxzZSB9LAogICAgICAgIHsgdmFsdWU6IGZhbHNlIH0sCiAgICAgICAgeyB2YWx1ZTogZmFsc2UgfQogICAgICBdLAogICAgICBpc0ZDOiBmYWxzZSwKICAgICAgaW5IZWxwOiBmYWxzZSwKICAgICAgY3VycmVudEJhY2tncm91bmQ6ICJ3aGl0ZSIsCiAgICAgIGF2YWlsYWJsZUJhY2tncm91bmQ6IFsid2hpdGUiLCAibGlnaHRza3libHVlIiwgImJsYWNrIl0sCiAgICAgIGxvYWRpbmc6IGZhbHNlLAogICAgICBmbGF0bWFwTWFya2VyOiBmbGF0bWFwTWFya2VyLAogICAgICB0b29sdGlwRW50cnk6IGNyZWF0ZVVuZmlsbGVkVG9vbHRpcERhdGEoKSwKICAgICAgY29ubmVjdGl2aXR5VG9vbHRpcFZpc2libGU6IGZhbHNlLAogICAgICByZXNvdXJjZUZvclRvb2x0aXA6IHVuZGVmaW5lZCwKICAgICAgZHJhd2VyT3BlbjogZmFsc2UsCiAgICAgIGNvbG91clJhZGlvOiB0cnVlLAogICAgICBvdXRsaW5lc1JhZGlvOiB0cnVlLAogICAgICBtaW5pbWFwUmVzaXplU2hvdzogZmFsc2UsCiAgICAgIG1pbmltYXBTbWFsbDogZmFsc2UsCiAgICB9OwogIH0sCiAgd2F0Y2g6IHsKICAgIGVudHJ5OiBmdW5jdGlvbigpIHsKICAgICAgaWYgKCF0aGlzLnN0YXRlKSB0aGlzLmNyZWF0ZUZsYXRtYXAoKTsKICAgIH0sCiAgICBoZWxwTW9kZTogZnVuY3Rpb24odmFsKSB7CiAgICAgIHRoaXMuc2V0SGVscE1vZGUodmFsKTsKICAgIH0sCiAgICBzdGF0ZTogewogICAgICBoYW5kbGVyOiBmdW5jdGlvbihzdGF0ZSkgewogICAgICAgIGlmICh0aGlzLm1hcE1hbmFnZXIpIHsKICAgICAgICAgIHRoaXMuc2V0U3RhdGUoc3RhdGUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAvL3RoaXMgY29tcG9uZW50IGhhcyBub3QgYmVlbiBtb3VudGVkIHlldAogICAgICAgICAgdGhpcy5zZXRTdGF0ZVJlcXVpcmVkID0gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0sCiAgICAgIGltbWVkaWF0ZTogdHJ1ZSwKICAgICAgZGVlcDogdHJ1ZQogICAgfQogIH0sCiAgbW91bnRlZDogZnVuY3Rpb24oKSB7CiAgICBjb25zdCBmbGF0bWFwID0gcmVxdWlyZSgiQGFiaS1zb2Z0d2FyZS9mbGF0bWFwLXZpZXdlciIpOwogICAgdGhpcy50b29sdGlwV2FpdCA9IFtdOwogICAgdGhpcy50b29sdGlwV2FpdC5sZW5ndGggPSB0aGlzLmhvdmVyVmlzaWJpbGl0aWVzLmxlbmd0aDsKICAgIHRoaXMubWFwTWFuYWdlciA9IG5ldyBmbGF0bWFwLk1hcE1hbmFnZXIodGhpcy5mbGF0bWFwQVBJKTsKICAgIHRoaXMuZmxhdG1hcFF1ZXJpZXMgPSBuZXcgRmxhdG1hcFF1ZXJpZXMoKTsKICAgIHRoaXMuZmxhdG1hcFF1ZXJpZXMuaW5pdGlhbGlzZSh0aGlzLmZsYXRtYXBBUEkpOwogICAgaWYgKHRoaXMuc3RhdGUpIHsKICAgICAgLy9TdGF0ZSBpcyBzZXQgYW5kIHJlcXVpcmUgdG8gc2V0IHRoZSBzdGF0ZQogICAgICBpZiAodGhpcy5zZXRTdGF0ZVJlcXVpcmVkKSB7CiAgICAgICAgdGhpcy5zZXRTdGF0ZSh0aGlzLnN0YXRlKTsKICAgICAgfQogICAgfSBlbHNlIGlmKHRoaXMucmVuZGVyQXRNb3VudGVkKSB7CiAgICAgIHRoaXMuY3JlYXRlRmxhdG1hcCgpOwogICAgfQogIH0KfTsK"},{"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;;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"]}]}