diff --git a/.babelrc b/.babelrc index 261cfd2..4af2848 100644 --- a/.babelrc +++ b/.babelrc @@ -1,11 +1,13 @@ { "presets": [ [ - "env", + "@babel/preset-env", { "modules": false } - ], - "stage-0" + ] + ], + "plugins": [ + "@babel/plugin-proposal-function-bind" ] -} +} \ No newline at end of file diff --git a/build/rollup.config.base.js b/build/rollup.config.base.js index 6ae64d1..6c94191 100644 --- a/build/rollup.config.base.js +++ b/build/rollup.config.base.js @@ -1,8 +1,8 @@ import babel from 'rollup-plugin-babel' -import resolve from 'rollup-plugin-node-resolve' +import resolve from '@rollup/plugin-node-resolve' import vue from 'rollup-plugin-vue' -import cjs from 'rollup-plugin-commonjs' -import replace from 'rollup-plugin-replace' +import cjs from '@rollup/plugin-commonjs' +import replace from '@rollup/plugin-replace' import fs from 'fs' import CleanCSS from 'clean-css' @@ -10,14 +10,16 @@ const config = require('../package.json') export default { input: 'src/index.js', - name: 'vue-googlemaps', plugins: [ resolve({ - jsnext: true, - main: true, - browser: true, + mainFields: ['jsnext', 'main', 'browser'], + }), + cjs({ + namedExports: { + 'vue-resize': ['ResizeObserver'], + 'vue-observe-visibility': ['ObserveVisibility'], + }, }), - cjs(), vue({ css (style) { fs.writeFileSync('dist/vue-googlemaps.css', new CleanCSS().minify(style).styles) @@ -25,9 +27,9 @@ export default { }), babel({ exclude: 'node_modules/**', - 'plugins': [ - 'external-helpers', - ], + // 'plugins': [ + // '@babel/plugin-external-helpers', + // ], }), replace({ VERSION: JSON.stringify(config.version), diff --git a/build/rollup.config.browser.js b/build/rollup.config.browser.js index d36e65f..381c33c 100644 --- a/build/rollup.config.browser.js +++ b/build/rollup.config.browser.js @@ -1,16 +1,16 @@ import base from './rollup.config.base' -import uglify from 'rollup-plugin-uglify' -import { minify } from 'uglify-es' +import { terser } from 'rollup-plugin-terser' +import { minify } from 'terser' const config = Object.assign({}, base, { - exports: 'named', output: { + name: 'VueGoogleMaps', + exports: 'named', // TODO: move to base file: 'dist/vue-googlemaps.min.js', format: 'iife', }, - name: 'VueGoogleMaps', }) -config.plugins.push(uglify({}, minify)) +config.plugins.push(terser({}, minify)) export default config diff --git a/build/rollup.config.es.js b/build/rollup.config.es.js index 6159313..e876bc6 100644 --- a/build/rollup.config.es.js +++ b/build/rollup.config.es.js @@ -2,6 +2,7 @@ import base from './rollup.config.base' const config = Object.assign({}, base, { output: { + name: 'vue-googlemaps', // TODO: move to base file: 'dist/vue-googlemaps.esm.js', format: 'es', }, diff --git a/build/rollup.config.umd.js b/build/rollup.config.umd.js index 80e3f0f..0c7d0e5 100644 --- a/build/rollup.config.umd.js +++ b/build/rollup.config.umd.js @@ -1,8 +1,9 @@ import base from './rollup.config.base' const config = Object.assign({}, base, { - exports: 'name', output: { + name: 'vue-googlemaps', // TODO: move to base + exports: 'named', // TODO: move to base file: 'dist/vue-googlemaps.umd.js', format: 'umd', }, diff --git a/demo-src/.babelrc b/demo-src/.babelrc index 54316ed..5b4a946 100644 --- a/demo-src/.babelrc +++ b/demo-src/.babelrc @@ -1,7 +1,39 @@ { "presets": [ - ["env", { "modules": false }], - "stage-0", + [ + "@babel/preset-env", + { + "modules": false + } + ], "vue" + ], + "plugins": [ + "@babel/plugin-syntax-dynamic-import", + "@babel/plugin-syntax-import-meta", + "@babel/plugin-proposal-class-properties", + "@babel/plugin-proposal-json-strings", + [ + "@babel/plugin-proposal-decorators", + { + "legacy": true + } + ], + "@babel/plugin-proposal-function-sent", + "@babel/plugin-proposal-export-namespace-from", + "@babel/plugin-proposal-numeric-separator", + "@babel/plugin-proposal-throw-expressions", + "@babel/plugin-proposal-export-default-from", + "@babel/plugin-proposal-logical-assignment-operators", + "@babel/plugin-proposal-optional-chaining", + [ + "@babel/plugin-proposal-pipeline-operator", + { + "proposal": "minimal" + } + ], + "@babel/plugin-proposal-nullish-coalescing-operator", + "@babel/plugin-proposal-do-expressions", + "@babel/plugin-proposal-function-bind" ] } diff --git a/demo-src/package.json b/demo-src/package.json index 0bda2f4..75b95a2 100644 --- a/demo-src/package.json +++ b/demo-src/package.json @@ -15,11 +15,26 @@ "vuex": "^2.4.1" }, "devDependencies": { - "babel-core": "^6.0.0", - "babel-loader": "^6.0.0", - "babel-preset-env": "^1.5.1", - "babel-preset-stage-0": "^6.24.1", - "babel-preset-vue": "^1.2.1", + "@babel/core": "^7.0.0", + "@babel/plugin-proposal-class-properties": "^7.0.0", + "@babel/plugin-proposal-decorators": "^7.0.0", + "@babel/plugin-proposal-do-expressions": "^7.0.0", + "@babel/plugin-proposal-export-default-from": "^7.0.0", + "@babel/plugin-proposal-export-namespace-from": "^7.0.0", + "@babel/plugin-proposal-function-bind": "^7.0.0", + "@babel/plugin-proposal-function-sent": "^7.0.0", + "@babel/plugin-proposal-json-strings": "^7.0.0", + "@babel/plugin-proposal-logical-assignment-operators": "^7.0.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0", + "@babel/plugin-proposal-numeric-separator": "^7.0.0", + "@babel/plugin-proposal-optional-chaining": "^7.0.0", + "@babel/plugin-proposal-pipeline-operator": "^7.0.0", + "@babel/plugin-proposal-throw-expressions": "^7.0.0", + "@babel/plugin-syntax-dynamic-import": "^7.0.0", + "@babel/plugin-syntax-import-meta": "^7.0.0", + "@babel/preset-env": "^7.0.0", + "babel-loader": "^8.0.0", + "babel-preset-vue": "^2.0.2", "cross-env": "^3.0.0", "css-loader": "^0.25.0", "file-loader": "^0.9.0", diff --git a/demo-src/src/components/App.vue b/demo-src/src/components/App.vue index 166e3a2..af471f3 100644 --- a/demo-src/src/components/App.vue +++ b/demo-src/src/components/App.vue @@ -27,6 +27,9 @@ Place details + + Directions + diff --git a/demo-src/src/components/Directions.vue b/demo-src/src/components/Directions.vue new file mode 100644 index 0000000..c68beaf --- /dev/null +++ b/demo-src/src/components/Directions.vue @@ -0,0 +1,121 @@ + + + + + menu + + + Directions + + + + + + + + + + + add + + + + + {{ node }} + + + + + + + + + + diff --git a/demo-src/src/router.js b/demo-src/src/router.js index f2db377..db2b34f 100644 --- a/demo-src/src/router.js +++ b/demo-src/src/router.js @@ -5,6 +5,7 @@ import SimpleMap from './components/SimpleMap.vue' import NearbyPlaces from './components/NearbyPlaces.vue' import LocationGeocoder from './components/LocationGeocoder.vue' import PlaceDetails from './components/PlaceDetails.vue' +import Directions from './components/Directions.vue' const router = new VueRouter({ mode: 'hash', @@ -13,6 +14,7 @@ const router = new VueRouter({ { path: '/nearby', name: 'nearby', component: NearbyPlaces }, { path: '/geocoder', name: 'geocoder', component: LocationGeocoder }, { path: '/place-details', name: 'place-details', component: PlaceDetails }, + { path: '/directions', name: 'directions', component: Directions }, ], }) diff --git a/dist/vue-googlemaps.esm.js b/dist/vue-googlemaps.esm.js index 98d5aba..897b3d3 100644 --- a/dist/vue-googlemaps.esm.js +++ b/dist/vue-googlemaps.esm.js @@ -1,3 +1,9 @@ +var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {}; + +function unwrapExports (x) { + return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x; +} + function createCommonjsModule(fn, module) { return module = { exports: {} }, fn(module, module.exports), module.exports; } @@ -11,20 +17,17 @@ var runtime = createCommonjsModule(function (module) { */ !(function(global) { - "use strict"; var Op = Object.prototype; var hasOwn = Op.hasOwnProperty; - var undefined; // More compressible than void 0. + var undefined$1; // More compressible than void 0. var $Symbol = typeof Symbol === "function" ? Symbol : {}; var iteratorSymbol = $Symbol.iterator || "@@iterator"; var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator"; var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; - - var inModule = 'object' === "object"; var runtime = global.regeneratorRuntime; if (runtime) { - if (inModule) { + { // If regeneratorRuntime is defined globally and we're in a module, // make the exports object identical to regeneratorRuntime. module.exports = runtime; @@ -36,7 +39,7 @@ var runtime = createCommonjsModule(function (module) { // Define the runtime globally (as expected by generated code) as either // module.exports (if we're in a module) or a new, empty object. - runtime = global.regeneratorRuntime = inModule ? module.exports : {}; + runtime = global.regeneratorRuntime = module.exports ; function wrap(innerFn, outerFn, self, tryLocsList) { // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator. @@ -332,7 +335,7 @@ var runtime = createCommonjsModule(function (module) { // setting context.delegate to null, and returning the ContinueSentinel. function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; - if (method === undefined) { + if (method === undefined$1) { // A .throw or .return when the delegate iterator has no .throw // method always terminates the yield* loop. context.delegate = null; @@ -342,7 +345,7 @@ var runtime = createCommonjsModule(function (module) { // If the delegate iterator has a return method, give it a // chance to clean up. context.method = "return"; - context.arg = undefined; + context.arg = undefined$1; maybeInvokeDelegate(delegate, context); if (context.method === "throw") { @@ -394,7 +397,7 @@ var runtime = createCommonjsModule(function (module) { // outer generator. if (context.method !== "return") { context.method = "next"; - context.arg = undefined; + context.arg = undefined$1; } } else { @@ -506,7 +509,7 @@ var runtime = createCommonjsModule(function (module) { } } - next.value = undefined; + next.value = undefined$1; next.done = true; return next; @@ -522,7 +525,7 @@ var runtime = createCommonjsModule(function (module) { runtime.values = values; function doneResult() { - return { value: undefined, done: true }; + return { value: undefined$1, done: true }; } Context.prototype = { @@ -533,12 +536,12 @@ var runtime = createCommonjsModule(function (module) { this.next = 0; // Resetting context._sent for legacy support of Babel's // function.sent implementation. - this.sent = this._sent = undefined; + this.sent = this._sent = undefined$1; this.done = false; this.delegate = null; this.method = "next"; - this.arg = undefined; + this.arg = undefined$1; this.tryEntries.forEach(resetTryEntry); @@ -548,7 +551,7 @@ var runtime = createCommonjsModule(function (module) { if (name.charAt(0) === "t" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) { - this[name] = undefined; + this[name] = undefined$1; } } } @@ -581,7 +584,7 @@ var runtime = createCommonjsModule(function (module) { // If the dispatched exception was caught by a catch block, // then let that catch block handle the exception normally. context.method = "next"; - context.arg = undefined; + context.arg = undefined$1; } return !! caught; @@ -718,7 +721,7 @@ var runtime = createCommonjsModule(function (module) { if (this.method === "next") { // Deliberately forget the last sent value so that we don't // accidentally pass it on to the delegate. - this.arg = undefined; + this.arg = undefined$1; } return ContinueSentinel; @@ -732,887 +735,803 @@ var runtime = createCommonjsModule(function (module) { ); }); -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { - return typeof obj; -} : function (obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; -}; - - - - - -var asyncGenerator = function () { - function AwaitValue(value) { - this.value = value; +function _typeof(obj) { + if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { + _typeof = function (obj) { + return typeof obj; + }; + } else { + _typeof = function (obj) { + return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; + }; } - function AsyncGenerator(gen) { - var front, back; - - function send(key, arg) { - return new Promise(function (resolve, reject) { - var request = { - key: key, - arg: arg, - resolve: resolve, - reject: reject, - next: null - }; - - if (back) { - back = back.next = request; - } else { - front = back = request; - resume(key, arg); - } - }); - } - - function resume(key, arg) { - try { - var result = gen[key](arg); - var value = result.value; - - if (value instanceof AwaitValue) { - Promise.resolve(value.value).then(function (arg) { - resume("next", arg); - }, function (arg) { - resume("throw", arg); - }); - } else { - settle(result.done ? "return" : "normal", result.value); - } - } catch (err) { - settle("throw", err); - } - } - - function settle(type, value) { - switch (type) { - case "return": - front.resolve({ - value: value, - done: true - }); - break; - - case "throw": - front.reject(value); - break; - - default: - front.resolve({ - value: value, - done: false - }); - break; - } - - front = front.next; - - if (front) { - resume(front.key, front.arg); - } else { - back = null; - } - } - - this._invoke = send; + return _typeof(obj); +} - if (typeof gen.return !== "function") { - this.return = undefined; - } +function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { + try { + var info = gen[key](arg); + var value = info.value; + } catch (error) { + reject(error); + return; } - if (typeof Symbol === "function" && Symbol.asyncIterator) { - AsyncGenerator.prototype[Symbol.asyncIterator] = function () { - return this; - }; + if (info.done) { + resolve(value); + } else { + Promise.resolve(value).then(_next, _throw); } +} - AsyncGenerator.prototype.next = function (arg) { - return this._invoke("next", arg); - }; - - AsyncGenerator.prototype.throw = function (arg) { - return this._invoke("throw", arg); - }; - - AsyncGenerator.prototype.return = function (arg) { - return this._invoke("return", arg); - }; - - return { - wrap: function (fn) { - return function () { - return new AsyncGenerator(fn.apply(this, arguments)); - }; - }, - await: function (value) { - return new AwaitValue(value); - } - }; -}(); - - - -var asyncToGenerator = function (fn) { +function _asyncToGenerator(fn) { return function () { - var gen = fn.apply(this, arguments); + var self = this, + args = arguments; return new Promise(function (resolve, reject) { - function step(key, arg) { - try { - var info = gen[key](arg); - var value = info.value; - } catch (error) { - reject(error); - return; - } + var gen = fn.apply(self, args); - if (info.done) { - resolve(value); - } else { - return Promise.resolve(value).then(function (value) { - step("next", value); - }, function (err) { - step("throw", err); - }); - } + function _next(value) { + asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); + } + + function _throw(err) { + asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } - return step("next"); + _next(undefined); }); }; -}; - - - - - +} +function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + return obj; +} +function ownKeys(object, enumerableOnly) { + var keys = Object.keys(object); + if (Object.getOwnPropertySymbols) { + var symbols = Object.getOwnPropertySymbols(object); + if (enumerableOnly) symbols = symbols.filter(function (sym) { + return Object.getOwnPropertyDescriptor(object, sym).enumerable; + }); + keys.push.apply(keys, symbols); + } + return keys; +} -var _extends = Object.assign || function (target) { +function _objectSpread2(target) { for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; + var source = arguments[i] != null ? arguments[i] : {}; - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } + if (i % 2) { + ownKeys(Object(source), true).forEach(function (key) { + _defineProperty(target, key, source[key]); + }); + } else if (Object.getOwnPropertyDescriptors) { + Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); + } else { + ownKeys(Object(source)).forEach(function (key) { + Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); + }); } } return target; -}; +} var loader = { - loaded: false, - readyPromises: [], - - /** - * @param apiKey API Key, or object with the URL parameters. For example - * to use Google Maps Premium API, pass - * `{ client: }`. - * You may pass the libraries and/or version (as `v`) parameter into - * this parameter and skip the next two parameters - * @param version Google for Maps version - * @param libraries Libraries to load (@see - * https://developers.google.com/maps/documentation/javascript/libraries) - * @param loadCn Boolean. If set to true, the map will be loaded form goole maps China - * (@see https://developers.google.com/maps/documentation/javascript/basics#GoogleMapsChina) - */ - load: function load(_ref) { - var apiKey = _ref.apiKey, - version = _ref.version, - libraries = _ref.libraries, - loadCn = _ref.loadCn, - _ref$useNewFeatures = _ref.useNewFeatures, - useNewFeatures = _ref$useNewFeatures === undefined ? true : _ref$useNewFeatures; - - if (typeof window === 'undefined') { - // Do nothing if run from server-side - return Promise.resolve(); - } - if (!this.loaded && (!window.google || !window.google.maps)) { - var googleMapScript = document.createElement('SCRIPT'); - - // Allow apiKey to be an object. - // This is to support more esoteric means of loading Google Maps, - // such as Google for business - // https://developers.google.com/maps/documentation/javascript/get-api-key#premium-auth - var options = {}; - if (typeof apiKey === 'string') { - options.key = apiKey; - } else if ((typeof apiKey === 'undefined' ? 'undefined' : _typeof(apiKey)) === 'object') { - for (var k in apiKey) { - // transfer values in apiKey to options - options[k] = apiKey[k]; - } - } else { - throw new Error('`apiKey` should either be a string or an object'); - } + loaded: false, + readyPromises: [], + + /** + * @param apiKey API Key, or object with the URL parameters. For example + * to use Google Maps Premium API, pass + * `{ client: }`. + * You may pass the libraries and/or version (as `v`) parameter into + * this parameter and skip the next two parameters + * @param version Google for Maps version + * @param libraries Libraries to load (@see + * https://developers.google.com/maps/documentation/javascript/libraries) + * @param loadCn Boolean. If set to true, the map will be loaded form goole maps China + * (@see https://developers.google.com/maps/documentation/javascript/basics#GoogleMapsChina) + */ + load: function load(_ref) { + var apiKey = _ref.apiKey, + version = _ref.version, + libraries = _ref.libraries, + loadCn = _ref.loadCn, + _ref$useNewFeatures = _ref.useNewFeatures, + useNewFeatures = _ref$useNewFeatures === void 0 ? true : _ref$useNewFeatures; + + if (typeof window === 'undefined') { + // Do nothing if run from server-side + return Promise.resolve(); + } - // libraries - var librariesPath = ''; - if (libraries && libraries.length > 0) { - librariesPath = libraries.join(','); - options['libraries'] = librariesPath; - } else if (Array.prototype.isPrototypeOf(options.libraries)) { - options.libraries = options.libraries.join(','); - } - options['callback'] = 'VueGoogleMapsLoaded'; + if (!this.loaded && (!window.google || !window.google.maps)) { + var googleMapScript = document.createElement('SCRIPT'); // Allow apiKey to be an object. + // This is to support more esoteric means of loading Google Maps, + // such as Google for business + // https://developers.google.com/maps/documentation/javascript/get-api-key#premium-auth - var baseUrl = typeof loadCn === 'boolean' && loadCn === true ? 'http://maps.google.cn' : 'https://maps.googleapis.com'; + var options = {}; - var urlParams = Object.keys(options).map(function (key) { - return encodeURIComponent(key) + '=' + encodeURIComponent(options[key]); - }).join('&'); + if (typeof apiKey === 'string') { + options.key = apiKey; + } else if (_typeof(apiKey) === 'object') { + for (var k in apiKey) { + // transfer values in apiKey to options + options[k] = apiKey[k]; + } + } else { + throw new Error('`apiKey` should either be a string or an object'); + } // libraries - var url = baseUrl + '/maps/api/js?' + urlParams; - // Override version if they do not want to use the new renderer/base map - if (!useNewFeatures) { - version = '3.31'; - } + var librariesPath = ''; - if (version) { - url = url + '&v=' + version; - } + if (libraries && libraries.length > 0) { + librariesPath = libraries.join(','); + options['libraries'] = librariesPath; + } else if (Array.prototype.isPrototypeOf(options.libraries)) { + options.libraries = options.libraries.join(','); + } - googleMapScript.setAttribute('src', url); - googleMapScript.setAttribute('async', ''); - googleMapScript.setAttribute('defer', ''); - document.body.appendChild(googleMapScript); + options['callback'] = 'VueGoogleMapsLoaded'; + var baseUrl = typeof loadCn === 'boolean' && loadCn === true ? 'http://maps.google.cn' : 'https://maps.googleapis.com'; + var urlParams = Object.keys(options).map(function (key) { + return "".concat(encodeURIComponent(key), "=").concat(encodeURIComponent(options[key])); + }).join('&'); + var url = "".concat(baseUrl, "/maps/api/js?").concat(urlParams); // Override version if they do not want to use the new renderer/base map - window.VueGoogleMapsLoaded = this._setLoaded.bind(this); - } else { - console.warn('The Google Maps library is already loaded'); - this._setLoaded(); - } - }, - ensureReady: function ensureReady() { - var _this = this; + if (!useNewFeatures) { + version = '3.31'; + } - if (this.loaded) { - return Promise.resolve(); - } else { - var promise = new Promise(function (resolve) { - _this.readyPromises.push(resolve); - }); - return promise; - } - }, - _setLoaded: function _setLoaded() { - this.loaded = true; - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; + if (version) { + url = "".concat(url, "&v=").concat(version); + } - try { - for (var _iterator = this.readyPromises[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var resolve = _step.value; + googleMapScript.setAttribute('src', url); + googleMapScript.setAttribute('async', ''); + googleMapScript.setAttribute('defer', ''); + document.body.appendChild(googleMapScript); + window.VueGoogleMapsLoaded = this._setLoaded.bind(this); + } else { + console.warn('The Google Maps library is already loaded'); - resolve(); - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } + this._setLoaded(); + } + }, + ensureReady: function ensureReady() { + var _this = this; - this.readyPromises = []; - } + if (this.loaded) { + return Promise.resolve(); + } else { + var promise = new Promise(function (resolve) { + _this.readyPromises.push(resolve); + }); + return promise; + } + }, + _setLoaded: function _setLoaded() { + this.loaded = true; + var _iteratorNormalCompletion = true; + var _didIteratorError = false; + var _iteratorError = undefined; + + try { + for (var _iterator = this.readyPromises[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { + var resolve = _step.value; + resolve(); + } + } catch (err) { + _didIteratorError = true; + _iteratorError = err; + } finally { + try { + if (!_iteratorNormalCompletion && _iterator["return"] != null) { + _iterator["return"](); + } + } finally { + if (_didIteratorError) { + throw _iteratorError; + } + } + } + + this.readyPromises = []; + } }; function optionMergeStrategies(Vue) { - var strats = Vue.config.optionMergeStrategies; - - strats.googleMapsReady = strats.created; - strats.googleMapsPrepare = strats.created; + var strats = Vue.config.optionMergeStrategies; + strats.googleMapsReady = strats.created; + strats.googleMapsPrepare = strats.created; } -var config = void 0; - +var config; function initErrorHandling(Vue) { - config = Vue.config; + config = Vue.config; } - function handleError(e, vm, info) { - if (config.errorHandler) { - config.errorHandler(e, vm, info); - } else { - if (typeof console !== 'undefined') { - console.error(e); - } else { - throw e; - } - } + if (config.errorHandler) { + config.errorHandler(e, vm, info); + } else { + if (typeof console !== 'undefined') { + console.error(e); + } else { + throw e; + } + } } function autoCall(value) { - return typeof value === 'function' ? value() : value; + return typeof value === 'function' ? value() : value; } - function capitalize(text) { - return text.charAt(0).toUpperCase() + text.slice(1); + return text.charAt(0).toUpperCase() + text.slice(1); } function bindProp(_ref) { - var vm = _ref.vm, - name = _ref.name, - targetPropName = _ref.targetPropName, - target = _ref.target, - watcher = _ref.watcher, - identity = _ref.identity, - applier = _ref.applier, - retriever = _ref.retriever, - readOnly = _ref.readOnly, - event = _ref.event, - changeEvent = _ref.changeEvent; - - if (!targetPropName) { - targetPropName = name; - } - if (!changeEvent) { - changeEvent = targetPropName.toLowerCase() + '_changed'; - } + var vm = _ref.vm, + name = _ref.name, + targetPropName = _ref.targetPropName, + target = _ref.target, + watcher = _ref.watcher, + identity = _ref.identity, + applier = _ref.applier, + retriever = _ref.retriever, + readOnly = _ref.readOnly, + event = _ref.event, + changeEvent = _ref.changeEvent; + + if (!targetPropName) { + targetPropName = name; + } - var setValue = void 0; - var capitalizedName = capitalize(name); - var getter = function getter() { - return target && target['get' + capitalizedName](); - }; - var setter = function setter(value) { - setValue = value; - target && target['set' + capitalizedName](value); - }; - - if (!watcher) { - watcher = function watcher(value) { - return value; - }; - } - if (!identity) { - identity = function identity(a, b) { - return a === b; - }; - } - if (!applier) { - applier = function applier(value, oldValue, set) { - if (!identity(value, oldValue)) { - set(value); - } - }; - } - if (!retriever) { - retriever = function retriever(value) { - return value; - }; - } - if (!event) { - event = 'update:' + name; - } + if (!changeEvent) { + changeEvent = "".concat(targetPropName.toLowerCase(), "_changed"); + } - vm.$watch(function () { - return watcher(vm[name]); - }, function (value, oldValue) { - if (!identity(value, setValue)) { - applier(value, oldValue, setter); - } - setValue = value; - }); - - var listener = target.addListener(changeEvent, function () { - var value = retriever(getter()); - if (!identity(value, setValue)) { - vm.$emit(event, value); - setValue = value; - } - }); + var setValue; + var capitalizedName = capitalize(name); - return function () { - listener.remove(); - }; -} + var getter = function getter() { + return target && target["get".concat(capitalizedName)](); + }; -var BoundProps = { - beforeDestroy: function beforeDestroy() { - this.unbindProps(); - }, + var setter = function setter(value) { + setValue = value; + target && target["set".concat(capitalizedName)](value); + }; + if (!watcher) { + watcher = function watcher(value) { + return value; + }; + } - methods: { - bindProps: function bindProps(target, props) { - this.unbindProps(); - this.$_boundsProps = []; - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var prop = _step.value; - - var options = { - vm: this, - target: target - }; - if (typeof prop === 'string') { - options.name = prop; - } else { - Object.assign(options, prop); - } - this.$_boundsProps.push(bindProp(options)); - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - }, - unbindProps: function unbindProps() { - if (this.$_boundsProps) { - this.$_boundsProps.forEach(function (unbind) { - return unbind(); - }); - } - } - } -}; + if (!identity) { + identity = function identity(a, b) { + return a === b; + }; + } -var Events = { - beforeCreate: function beforeCreate() { - this.$_googleListeners = []; - }, - beforeDestroy: function beforeDestroy() { - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; + if (!applier) { + applier = function applier(value, oldValue, set) { + if (!identity(value, oldValue)) { + set(value); + } + }; + } - try { - for (var _iterator = this.$_googleListeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var listener = _step.value; + if (!retriever) { + retriever = function retriever(value) { + return value; + }; + } - listener.remove(); - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - }, + if (!event) { + event = "update:".concat(name); + } + vm.$watch(function () { + return watcher(vm[name]); + }, function (value, oldValue) { + if (!identity(value, setValue)) { + applier(value, oldValue, setter); + } - methods: { - listen: function listen(target, event, handler) { - this.$_googleListeners.push(target.addListener(event, handler)); - }, - redirectEvents: function redirectEvents(target, events) { - var _this = this; + setValue = value; + }); + var listener = target.addListener(changeEvent, function () { + var value = retriever(getter()); - var _loop = function _loop(e) { - _this.listen(target, e, function () { - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } + if (!identity(value, setValue)) { + vm.$emit(event, value); + setValue = value; + } + }); + return function () { + listener.remove(); + }; +} - _this.$emit.apply(_this, [e].concat(args)); - }); - }; +var BoundProps = { + beforeDestroy: function beforeDestroy() { + this.unbindProps(); + }, + methods: { + bindProps: function bindProps(target, props) { + this.unbindProps(); + this.$_boundsProps = []; + var _iteratorNormalCompletion = true; + var _didIteratorError = false; + var _iteratorError = undefined; - var _iteratorNormalCompletion2 = true; - var _didIteratorError2 = false; - var _iteratorError2 = undefined; + try { + for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { + var prop = _step.value; + var options = { + vm: this, + target: target + }; - try { - for (var _iterator2 = events[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { - var e = _step2.value; + if (typeof prop === 'string') { + options.name = prop; + } else { + Object.assign(options, prop); + } - _loop(e); - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - } - } + this.$_boundsProps.push(bindProp(options)); + } + } catch (err) { + _didIteratorError = true; + _iteratorError = err; + } finally { + try { + if (!_iteratorNormalCompletion && _iterator["return"] != null) { + _iterator["return"](); + } + } finally { + if (_didIteratorError) { + throw _iteratorError; + } + } + } + }, + unbindProps: function unbindProps() { + if (this.$_boundsProps) { + this.$_boundsProps.forEach(function (unbind) { + return unbind(); + }); + } + } + } }; -var Ready = { - data: function data() { - return { - googleMapsReady: false - }; - }, - mounted: function mounted() { - var _this = this; - - return asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var handlers, promises, i, result, _handlers, _i; - - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _context.next = 2; - return loader.ensureReady(); - - case 2: - handlers = _this.$options.googleMapsPrepare; - - if (!handlers) { - _context.next = 8; - break; - } - - promises = []; - - for (i = 0; i < handlers.length; i++) { - try { - result = handlers[i].call(_this); - - if (typeof result.then === 'function') { - promises.push(result); - } - } catch (e) { - handleError(e, _this, 'googleMapsPrepare hook'); - } - } - _context.next = 8; - return Promise.all(promises); - - case 8: - - // Ready - _this.googleMapsReady = true; - _handlers = _this.$options.googleMapsReady; - - if (_handlers) { - for (_i = 0; _i < _handlers.length; _i++) { - try { - _handlers[_i].call(_this); - } catch (e) { - handleError(e, _this, 'googleMapsReady hook'); - } - } - } - - _this.$emit('ready'); - - case 12: - case 'end': - return _context.stop(); - } - } - }, _callee, _this); - }))(); - } -}; +var Events = { + beforeCreate: function beforeCreate() { + this.$_googleListeners = []; + }, + beforeDestroy: function beforeDestroy() { + var _iteratorNormalCompletion = true; + var _didIteratorError = false; + var _iteratorError = undefined; -var FindAncestor = { - methods: { - $_findAncestor: function $_findAncestor(condition) { - var search = this.$parent; + try { + for (var _iterator = this.$_googleListeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { + var listener = _step.value; + listener.remove(); + } + } catch (err) { + _didIteratorError = true; + _iteratorError = err; + } finally { + try { + if (!_iteratorNormalCompletion && _iterator["return"] != null) { + _iterator["return"](); + } + } finally { + if (_didIteratorError) { + throw _iteratorError; + } + } + } + }, + methods: { + listen: function listen(target, event, handler) { + this.$_googleListeners.push(target.addListener(event, handler)); + }, + redirectEvents: function redirectEvents(target, events) { + var _this = this; - while (search) { - if (condition(search)) { - return search; - } - search = search.$parent; - } + var _iteratorNormalCompletion2 = true; + var _didIteratorError2 = false; + var _iteratorError2 = undefined; - return null; - } - } -}; + try { + var _loop = function _loop() { + var e = _step2.value; -var MapElement = { - mixins: [BoundProps, Events, FindAncestor, Ready], + _this.listen(target, e, function () { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } - created: function created() { - var mapAncestor = this.$_findAncestor(function (a) { - return a.$options.name === 'GoogleMapsMap'; - }); + _this.$emit.apply(_this, [e].concat(args)); + }); + }; - if (!mapAncestor) { - throw new Error(this.constructor.name + ' component must be used within a component.'); - } + for (var _iterator2 = events[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { + _loop(); + } + } catch (err) { + _didIteratorError2 = true; + _iteratorError2 = err; + } finally { + try { + if (!_iteratorNormalCompletion2 && _iterator2["return"] != null) { + _iterator2["return"](); + } + } finally { + if (_didIteratorError2) { + throw _iteratorError2; + } + } + } + } + } +}; - this.$_mapAncestor = mapAncestor; - }, - googleMapsPrepare: function googleMapsPrepare() { - var _this = this; - - return asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var mapComp; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - mapComp = _this.$_mapAncestor; - _context.next = 3; - return mapComp.$_getMap(); - - case 3: - _this.$_map = _context.sent; - - case 4: - case 'end': - return _context.stop(); - } - } - }, _callee, _this); - }))(); - } -}; - -var boundProps = ['center', 'draggable', 'editable', 'radius', 'visible', 'options']; - -var redirectedEvents = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; - -var Circle = { - name: 'GoogleMapsCircle', +var Ready = { + data: function data() { + return { + googleMapsReady: false + }; + }, + mounted: function () { + var _mounted = _asyncToGenerator( + /*#__PURE__*/ + regeneratorRuntime.mark(function _callee() { + var handlers, promises, i, result, _handlers, _i; + + return regeneratorRuntime.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + _context.next = 2; + return loader.ensureReady(); + + case 2: + handlers = this.$options.googleMapsPrepare; + + if (!handlers) { + _context.next = 8; + break; + } + + promises = []; + + for (i = 0; i < handlers.length; i++) { + try { + result = handlers[i].call(this); + + if (typeof result.then === 'function') { + promises.push(result); + } + } catch (e) { + handleError(e, this, "googleMapsPrepare hook"); + } + } + + _context.next = 8; + return Promise.all(promises); + + case 8: + // Ready + this.googleMapsReady = true; + _handlers = this.$options.googleMapsReady; + + if (_handlers) { + for (_i = 0; _i < _handlers.length; _i++) { + try { + _handlers[_i].call(this); + } catch (e) { + handleError(e, this, "googleMapsReady hook"); + } + } + } + + this.$emit('ready'); + + case 12: + case "end": + return _context.stop(); + } + } + }, _callee, this); + })); - mixins: [MapElement], + function mounted() { + return _mounted.apply(this, arguments); + } - props: { - center: { - type: Object, - required: true - }, - clickable: { - type: Boolean, - default: true - }, - draggable: { - type: Boolean, - default: false - }, - editable: { - type: Boolean, - default: false - }, - options: { - type: Object, - default: function _default() { - return {}; - } - }, - radius: { - type: Number, - required: true - }, - visible: { - default: true - }, - zIndex: { - type: Number - } - }, + return mounted; + }() +}; - watch: { - options: 'updateOptions', - clickable: 'updateOptions', - zIndex: 'updateOptions' - }, +var FindAncestor = { + methods: { + $_findAncestor: function $_findAncestor(condition) { + var search = this.$parent; - methods: { - updateOptions: function updateOptions(options) { - this.$_circle && this.$_circle.setOptions(options || this.$props); - } - }, + while (search) { + if (condition(search)) { + return search; + } - render: function render(h) { - return ''; - }, - googleMapsReady: function googleMapsReady() { - var options = Object.assign({}, this.$props); - options.map = this.$_map; + search = search.$parent; + } - this.$_circle = new window.google.maps.Circle(options); - this.bindProps(this.$_circle, boundProps); - this.redirectEvents(this.$_circle, redirectedEvents); - }, - beforeDestroy: function beforeDestroy() { - if (this.$_circle) { - this.$_circle.setMap(null); - } - } + return null; + } + } }; -var Service = { - mixins: [Ready], - - props: { - filter: { - type: Function, - default: null - }, - request: { - type: Object, - default: null - }, - tag: { - type: String, - default: 'div' - } - }, - - data: function data() { - return { - loading: false, - results: null, - status: null - }; - }, +var MapElement = { + mixins: [BoundProps, Events, FindAncestor, Ready], + created: function created() { + var mapAncestor = this.$_findAncestor(function (a) { + return a.$options.name === 'GoogleMapsMap'; + }); + if (!mapAncestor) { + throw new Error("".concat(this.constructor.name, " component must be used within a component.")); + } - computed: { - filteredResults: function filteredResults() { - if (this.results && this.filter) { - return this.results.filter(this.filter); - } else { - return this.results; - } - }, - finalResults: function finalResults() { - var results = this.filteredResults; - return results && (!Array.isArray(results) || results.length) ? results : null; - } - }, + this.$_mapAncestor = mapAncestor; + }, + googleMapsPrepare: function () { + var _googleMapsPrepare = _asyncToGenerator( + /*#__PURE__*/ + regeneratorRuntime.mark(function _callee() { + var mapComp; + return regeneratorRuntime.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + mapComp = this.$_mapAncestor; + _context.next = 3; + return mapComp.$_getMap(); + + case 3: + this.$_map = _context.sent; + + case 4: + case "end": + return _context.stop(); + } + } + }, _callee, this); + })); - watch: { - request: { - handler: function handler(value) { - value && this.update(); - }, + function googleMapsPrepare() { + return _googleMapsPrepare.apply(this, arguments); + } - deep: true - }, - finalResults: function finalResults(value) { - this.$emit('results', value); - } - }, + return googleMapsPrepare; + }() +}; - methods: { - createServices: function createServices() { - // Override this in components - }, - getScope: function getScope() { - // Override this in components - return { - loading: this.loading, - results: this.finalResults, - status: this.status - }; - }, - setResults: function setResults(results, status) { - this.results = results; - this.status = status; - }, - update: function update() { - // Override this in components - } - }, +var boundProps = ['center', 'draggable', 'editable', 'radius', 'visible', 'options']; +var redirectedEvents = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; +var Circle = { + name: 'GoogleMapsCircle', + mixins: [MapElement], + props: { + center: { + type: Object, + required: true + }, + clickable: { + type: Boolean, + "default": true + }, + draggable: { + type: Boolean, + "default": false + }, + editable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + radius: { + type: Number, + required: true + }, + visible: { + "default": true + }, + zIndex: { + type: Number + } + }, + watch: { + options: 'updateOptions', + clickable: 'updateOptions', + zIndex: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_circle && this.$_circle.setOptions(options || this.$props); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_circle = new window.google.maps.Circle(options); + this.bindProps(this.$_circle, boundProps); + this.redirectEvents(this.$_circle, redirectedEvents); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_circle) { + this.$_circle.setMap(null); + } + } +}; - googleMapsReady: function googleMapsReady() { - this.createServices(); - this.request && this.update(); - }, - render: function render(h) { - return h(this.tag, [this.$scopedSlots.default && this.$scopedSlots.default(this.getScope()), h('span', { - ref: 'attributions' - })]); - } +var Service = { + mixins: [Ready], + props: { + filter: { + type: Function, + "default": null + }, + request: { + type: Object, + "default": null + }, + tag: { + type: String, + "default": 'div' + } + }, + data: function data() { + return { + loading: false, + results: null, + status: null + }; + }, + computed: { + filteredResults: function filteredResults() { + if (this.results && this.filter) { + return this.results.filter(this.filter); + } else { + return this.results; + } + }, + finalResults: function finalResults() { + var results = this.filteredResults; + return results && (!Array.isArray(results) || results.length) ? results : null; + } + }, + watch: { + request: { + handler: function handler(value) { + value && this.update(); + }, + deep: true + }, + finalResults: function finalResults(value) { + this.$emit('results', value); + } + }, + methods: { + createServices: function createServices() {// Override this in components + }, + getScope: function getScope() { + // Override this in components + return { + loading: this.loading, + results: this.finalResults, + status: this.status + }; + }, + setResults: function setResults(results, status) { + this.results = results; + this.status = status; + }, + update: function update() {// Override this in components + } + }, + googleMapsReady: function googleMapsReady() { + this.createServices(); + this.request && this.update(); + }, + render: function render(h) { + return h(this.tag, [this.$scopedSlots["default"] && this.$scopedSlots["default"](this.getScope()), h('span', { + ref: 'attributions' + })]); + } }; var Geocoder = { - name: 'GoogleMapsGeocoder', - - mixins: [Service], + name: 'GoogleMapsGeocoder', + mixins: [Service], + props: { + disablePlaceDetails: { + type: Boolean, + "default": false + } + }, + methods: { + createServices: function createServices() { + this.$_geocoder = new window.google.maps.Geocoder(); + this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); + }, + getPlaceDetails: function getPlaceDetails(result) { + result.placeDetails = {}; + + if (result.place_id) { + result.placeDetails.loading = true; + this.$_placeService.getDetails({ + placeId: result.place_id + }, function (details, status) { + result.placeDetails = details; + }); + } + }, + update: function update() { + var _this = this; + + if (this.googleMapsReady) { + this.loading = true; + this.$_geocoder.geocode(this.request, function (results, status) { + if (results) { + !_this.disablePlaceDetails && results.forEach(_this.getPlaceDetails); + } - props: { - disablePlaceDetails: { - type: Boolean, - default: false - } - }, + _this.setResults(results, status); - methods: { - createServices: function createServices() { - this.$_geocoder = new window.google.maps.Geocoder(); - this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); - }, - getPlaceDetails: function getPlaceDetails(result) { - result.placeDetails = {}; - if (result.place_id) { - result.placeDetails.loading = true; - this.$_placeService.getDetails({ - placeId: result.place_id - }, function (details, status) { - result.placeDetails = details; - }); - } - }, - update: function update() { - var _this = this; - - if (this.googleMapsReady) { - this.loading = true; - this.$_geocoder.geocode(this.request, function (results, status) { - if (results) { - !_this.disablePlaceDetails && results.forEach(_this.getPlaceDetails); - } - _this.setResults(results, status); - _this.loading = false; - }); - } - } - } + _this.loading = false; + }); + } + } + } }; +var vueResize_umd = createCommonjsModule(function (module, exports) { +(function (global, factory) { + factory(exports) ; +}(commonjsGlobal, (function (exports) { function getInternetExplorerVersion() { var ua = window.navigator.userAgent; @@ -1709,23 +1628,39 @@ function install(Vue) { } // Plugin -var plugin$2 = { +var plugin = { // eslint-disable-next-line no-undef version: "0.4.5", install: install }; // Auto-install -var GlobalVue$1 = null; +var GlobalVue = null; if (typeof window !== 'undefined') { - GlobalVue$1 = window.Vue; -} else if (typeof global !== 'undefined') { - GlobalVue$1 = global.Vue; + GlobalVue = window.Vue; +} else if (typeof commonjsGlobal !== 'undefined') { + GlobalVue = commonjsGlobal.Vue; } -if (GlobalVue$1) { - GlobalVue$1.use(plugin$2); +if (GlobalVue) { + GlobalVue.use(plugin); } +exports.install = install; +exports.ResizeObserver = ResizeObserver; +exports['default'] = plugin; + +Object.defineProperty(exports, '__esModule', { value: true }); + +}))); +}); + +unwrapExports(vueResize_umd); +var vueResize_umd_1 = vueResize_umd.ResizeObserver; + +var vueObserveVisibility_umd = createCommonjsModule(function (module, exports) { +(function (global, factory) { + factory(exports) ; +}(commonjsGlobal, (function (exports) { function throwValueError(value) { if (value !== null && typeof value !== 'function') { throw new Error('observe-visibility directive expects a function as the value'); @@ -1769,7 +1704,7 @@ var ObserveVisibility = { }; // Install the components -function install$1(Vue) { +function install(Vue) { Vue.directive('observe-visibility', ObserveVisibility); /* -- Add more components here -- */ } @@ -1778,718 +1713,1097 @@ function install$1(Vue) { /* You shouldn't have to modify the code below */ // Plugin -var plugin$4 = { +var plugin = { // eslint-disable-next-line no-undef version: "0.3.1", - install: install$1 + install: install }; // Auto-install -var GlobalVue$2 = null; +var GlobalVue = null; if (typeof window !== 'undefined') { - GlobalVue$2 = window.Vue; -} else if (typeof global !== 'undefined') { - GlobalVue$2 = global.Vue; + GlobalVue = window.Vue; +} else if (typeof commonjsGlobal !== 'undefined') { + GlobalVue = commonjsGlobal.Vue; } -if (GlobalVue$2) { - GlobalVue$2.use(plugin$4); +if (GlobalVue) { + GlobalVue.use(plugin); } +exports.install = install; +exports.ObserveVisibility = ObserveVisibility; +exports['default'] = plugin; + +Object.defineProperty(exports, '__esModule', { value: true }); + +}))); +}); + +unwrapExports(vueObserveVisibility_umd); +var vueObserveVisibility_umd_1 = vueObserveVisibility_umd.ObserveVisibility; + function redirectMethods(_ref) { - var target = _ref.target, - names = _ref.names; - - return names.reduce(function (obj, name) { - obj[name] = function () { - var t = target.call(this); - if (t) { - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } + var target = _ref.target, + names = _ref.names; + return names.reduce(function (obj, name) { + obj[name] = function () { + var t = target.call(this); + + if (t) { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } - return t[name].apply(t, args); - } - }; - return obj; - }, {}); + return t[name].apply(t, args); + } + }; + + return obj; + }, {}); } var boundProps$1 = [{ - name: 'center', - watcher: function watcher(value) { - return { - lat: autoCall(value.lat), - lng: autoCall(value.lng) - }; - }, - identity: function identity(a, b) { - if (a && b) { - if (typeof a.equals !== 'function') { - a = new window.google.maps.LatLng(a); - } - if (typeof b.equals !== 'function') { - b = new window.google.maps.LatLng(b); - } - return a.equals(b); - } - }, - retriever: function retriever(value) { - return { - lat: value.lat(), - lng: value.lng() - }; - } -}, 'heading', 'mapTypeId', 'tilt', 'zoom', 'options']; + name: 'center', + watcher: function watcher(value) { + return { + lat: autoCall(value.lat), + lng: autoCall(value.lng) + }; + }, + identity: function identity(a, b) { + if (a && b) { + if (typeof a.equals !== 'function') { + a = new window.google.maps.LatLng(a); + } -var redirectedMethods = ['panBy', 'panTo', 'panToBounds', 'fitBounds', 'getBounds']; + if (typeof b.equals !== 'function') { + b = new window.google.maps.LatLng(b); + } + return a.equals(b); + } + }, + retriever: function retriever(value) { + return { + lat: value.lat(), + lng: value.lng() + }; + } +}, 'heading', 'mapTypeId', 'tilt', 'zoom', 'options']; +var redirectedMethods = ['panBy', 'panTo', 'panToBounds', 'fitBounds', 'getBounds']; var redirectedEvents$1 = ['click', 'dblclick', 'drag', 'dragend', 'dragstart', 'mousedown', 'mouseup', 'mousemove', 'mouseout', 'mouseover', 'resize', 'rightclick', 'tilesloaded']; +var script = { + name: 'GoogleMapsMap', + mixins: [Ready, BoundProps, Events], + components: { + ResizeObserver: vueResize_umd_1 + }, + directives: { + ObserveVisibility: vueObserveVisibility_umd_1 + }, + props: { + center: { + required: true, + type: Object + }, + heading: { + type: Number + }, + mapTypeId: { + type: String + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + tilt: { + type: Number + }, + zoom: { + required: true, + type: Number + } + }, + beforeCreate: function beforeCreate() { + this.$_mapPromises = []; + }, + googleMapsReady: function googleMapsReady() { + var _this = this; + + var element = this.$refs.map; + + var options = _objectSpread2({ + center: this.center, + heading: this.heading, + mapTypeId: this.mapTypeId, + tilt: this.tilt, + zoom: this.zoom + }, this.options); + + this.$_map = new window.google.maps.Map(element, options); + this.bindProps(this.$_map, boundProps$1); + this.listen(this.$_map, 'bounds_changed', function () { + _this.$emit('update:bounds', _this.$_map.getBounds()); + }); + this.listen(this.$_map, 'idle', function () { + _this.$emit('idle', _this); -var Map = { render: function render() { - var _vm = this;var _h = _vm.$createElement;var _c = _vm._self._c || _h;return _c('div', { directives: [{ name: "observe-visibility", rawName: "v-observe-visibility", value: _vm.visibilityChanged, expression: "visibilityChanged" }], staticClass: "vue-google-map" }, [_c('div', { ref: "map", staticClass: "map-view" }), _vm._v(" "), _c('div', { staticClass: "hidden-content" }, [_vm._t("default")], 2), _vm._v(" "), _vm._t("visible"), _vm._v(" "), _c('resize-observer', { on: { "notify": _vm.resize } })], 2); - }, staticRenderFns: [], _scopeId: 'data-v-3074bd5c', - name: 'GoogleMapsMap', - - mixins: [Ready, BoundProps, Events], + _this.lastCenter = _this.$_map.getCenter(); + }); + this.lastCenter = this.$_map.getCenter(); + this.redirectEvents(this.$_map, redirectedEvents$1); // Code that awaits `$_getMap()` - components: { - ResizeObserver: ResizeObserver - }, + this.$_mapPromises.forEach(function (resolve) { + return resolve(_this.$_map); + }); + }, + watch: { + options: { + handler: 'updateOptions', + deep: true + } + }, + methods: _objectSpread2({}, redirectMethods({ + target: function target() { + return this.$_map; + }, + names: redirectedMethods + }), { + resize: function resize() { + var preserveCenter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; + + if (this.$_map) { + // let center + // preserveCenter && (center = this.$_map.getCenter()) + window.google.maps.event.trigger(this.$_map, 'resize'); + preserveCenter && this.$_map.setCenter(this.lastCenter); + } + }, + visibilityChanged: function visibilityChanged(isVisible) { + if (isVisible) { + this.$nextTick(this.resize); + } + }, + $_getMap: function $_getMap() { + var _this2 = this; - directives: { - ObserveVisibility: ObserveVisibility - }, + if (this.$_map) { + return Promise.resolve(this.$_map); + } else { + return new Promise(function (resolve) { + _this2.$_mapPromises.push(resolve); + }); + } + }, + updateOptions: function updateOptions(options) { + this.$_map && this.$_map.setOptions(options || this.$props); + } + }) +}; - props: { - center: { - required: true, - type: Object - }, - heading: { - type: Number - }, - mapTypeId: { - type: String - }, - options: { - type: Object, - default: function _default() { - return {}; - } - }, - tilt: { - type: Number - }, - zoom: { - required: true, - type: Number - } - }, +function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) { + if (typeof shadowMode !== 'boolean') { + createInjectorSSR = createInjector; + createInjector = shadowMode; + shadowMode = false; + } + // Vue.extend constructor export interop. + const options = typeof script === 'function' ? script.options : script; + // render functions + if (template && template.render) { + options.render = template.render; + options.staticRenderFns = template.staticRenderFns; + options._compiled = true; + // functional template + if (isFunctionalTemplate) { + options.functional = true; + } + } + // scopedId + if (scopeId) { + options._scopeId = scopeId; + } + let hook; + if (moduleIdentifier) { + // server build + hook = function (context) { + // 2.3 injection + context = + context || // cached call + (this.$vnode && this.$vnode.ssrContext) || // stateful + (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional + // 2.2 with runInNewContext: true + if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { + context = __VUE_SSR_CONTEXT__; + } + // inject component styles + if (style) { + style.call(this, createInjectorSSR(context)); + } + // register component module identifier for async chunk inference + if (context && context._registeredComponents) { + context._registeredComponents.add(moduleIdentifier); + } + }; + // used by ssr in case component is cached and beforeCreate + // never gets called + options._ssrRegister = hook; + } + else if (style) { + hook = shadowMode + ? function (context) { + style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot)); + } + : function (context) { + style.call(this, createInjector(context)); + }; + } + if (hook) { + if (options.functional) { + // register for functional component in vue file + const originalRender = options.render; + options.render = function renderWithStyleInjection(h, context) { + hook.call(context); + return originalRender(h, context); + }; + } + else { + // inject component registration as beforeCreate hook + const existing = options.beforeCreate; + options.beforeCreate = existing ? [].concat(existing, hook) : [hook]; + } + } + return script; +} - beforeCreate: function beforeCreate() { - this.$_mapPromises = []; - }, - googleMapsReady: function googleMapsReady() { - var _this = this; +const isOldIE = typeof navigator !== 'undefined' && + /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase()); +function createInjector(context) { + return (id, style) => addStyle(id, style); +} +let HEAD; +const styles = {}; +function addStyle(id, css) { + const group = isOldIE ? css.media || 'default' : id; + const style = styles[group] || (styles[group] = { ids: new Set(), styles: [] }); + if (!style.ids.has(id)) { + style.ids.add(id); + let code = css.source; + if (css.map) { + // https://developer.chrome.com/devtools/docs/javascript-debugging + // this makes source maps inside style tags work properly in Chrome + code += '\n/*# sourceURL=' + css.map.sources[0] + ' */'; + // http://stackoverflow.com/a/26603875 + code += + '\n/*# sourceMappingURL=data:application/json;base64,' + + btoa(unescape(encodeURIComponent(JSON.stringify(css.map)))) + + ' */'; + } + if (!style.element) { + style.element = document.createElement('style'); + style.element.type = 'text/css'; + if (css.media) + style.element.setAttribute('media', css.media); + if (HEAD === undefined) { + HEAD = document.head || document.getElementsByTagName('head')[0]; + } + HEAD.appendChild(style.element); + } + if ('styleSheet' in style.element) { + style.styles.push(code); + style.element.styleSheet.cssText = style.styles + .filter(Boolean) + .join('\n'); + } + else { + const index = style.ids.size - 1; + const textNode = document.createTextNode(code); + const nodes = style.element.childNodes; + if (nodes[index]) + style.element.removeChild(nodes[index]); + if (nodes.length) + style.element.insertBefore(textNode, nodes[index]); + else + style.element.appendChild(textNode); + } + } +} - var element = this.$refs.map; +/* script */ +const __vue_script__ = script; + +/* template */ +var __vue_render__ = function() { + var _vm = this; + var _h = _vm.$createElement; + var _c = _vm._self._c || _h; + return _c( + "div", + { + directives: [ + { + name: "observe-visibility", + rawName: "v-observe-visibility", + value: _vm.visibilityChanged, + expression: "visibilityChanged" + } + ], + staticClass: "vue-google-map" + }, + [ + _c("div", { ref: "map", staticClass: "map-view" }), + _vm._v(" "), + _c("div", { staticClass: "hidden-content" }, [_vm._t("default")], 2), + _vm._v(" "), + _vm._t("visible"), + _vm._v(" "), + _c("resize-observer", { on: { notify: _vm.resize } }) + ], + 2 + ) +}; +var __vue_staticRenderFns__ = []; +__vue_render__._withStripped = true; - var options = _extends({ - center: this.center, - heading: this.heading, - mapTypeId: this.mapTypeId, - tilt: this.tilt, - zoom: this.zoom - }, this.options); + /* style */ + const __vue_inject_styles__ = function (inject) { + if (!inject) return + inject("data-v-29eb3fb3_0", { source: "@import '../../node_modules/vue-resize/dist/vue-resize.css';\n", map: {"version":3,"sources":["C:\\Users\\Mike\\source\\repos\\vue-googlemaps\\src\\components\\Map.vue"],"names":[],"mappings":"AAwMA,2DAAA","file":"Map.vue","sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n"]}, media: undefined }) +,inject("data-v-29eb3fb3_1", { source: ".vue-google-map[data-v-29eb3fb3] {\n position: relative;\n}\n.vue-google-map .map-view[data-v-29eb3fb3] {\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n position: absolute;\n}\n.vue-google-map .hidden-content[data-v-29eb3fb3] {\n display: none;\n}\n", map: {"version":3,"sources":["C:\\Users\\Mike\\source\\repos\\vue-googlemaps\\src\\components\\Map.vue","Map.vue"],"names":[],"mappings":"AA4MA;EACA,kBAAA;AC3MA;AD6MA;EACA,OAAA;EACA,QAAA;EACA,MAAA;EACA,SAAA;EACA,kBAAA;AC3MA;AD8MA;EACA,aAAA;AC5MA","file":"Map.vue","sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",".vue-google-map {\n position: relative;\n}\n.vue-google-map .map-view {\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n position: absolute;\n}\n.vue-google-map .hidden-content {\n display: none;\n}\n"]}, media: undefined }); - this.$_map = new window.google.maps.Map(element, options); + }; + /* scoped */ + const __vue_scope_id__ = "data-v-29eb3fb3"; + /* module identifier */ + const __vue_module_identifier__ = undefined; + /* functional template */ + const __vue_is_functional_template__ = false; + /* style inject SSR */ + + /* style inject shadow dom */ + + + + const __vue_component__ = normalizeComponent( + { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ }, + __vue_inject_styles__, + __vue_script__, + __vue_scope_id__, + __vue_is_functional_template__, + __vue_module_identifier__, + false, + createInjector, + undefined, + undefined + ); - this.bindProps(this.$_map, boundProps$1); +var boundProps$2 = ['animation', 'clickable', 'cursor', 'draggable', 'icon', 'label', 'opacity', 'place', 'position', 'shape', 'title', 'visible', 'zIndex']; +var redirectedEvents$2 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; +var Marker = { + name: 'GoogleMapsMarker', + mixins: [MapElement], + props: { + animation: { + type: Number + }, + clickable: { + type: Boolean, + "default": true + }, + cursor: { + type: String + }, + draggable: { + type: Boolean, + "default": false + }, + icon: {}, + label: {}, + opacity: { + type: Number, + "default": 1 + }, + place: { + type: Object + }, + position: { + type: Object + }, + shape: { + type: Object + }, + title: { + type: String + }, + visible: { + "default": true + }, + zIndex: { + type: Number + } + }, + render: function render(h) { + if (!this.$slots["default"] || this.$slots["default"].length === 0) { + return ''; + } else if (this.$slots["default"].length === 1) { + // So that infowindows can have a marker parent + return this.$slots["default"][0]; + } else { + return h('div', this.$slots["default"]); + } + }, + googleMapsReady: function googleMapsReady() { + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_marker = new window.google.maps.Marker(options); + this.bindProps(this.$_marker, boundProps$2); + this.redirectEvents(this.$_marker, redirectedEvents$2); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_marker) { + this.$_marker.setMap(null); + } + } +}; - this.listen(this.$_map, 'bounds_changed', function () { - _this.$emit('update:bounds', _this.$_map.getBounds()); - }); +var NearbyPlaces = { + name: 'GoogleMapsNearbyPlaces', + mixins: [Service], + methods: { + createServices: function createServices() { + this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); + }, + update: function update() { + var _this = this; - this.listen(this.$_map, 'idle', function () { - _this.$emit('idle', _this); - _this.lastCenter = _this.$_map.getCenter(); - }); + this.loading = true; + this.$_placeService.nearbySearch(this.request, function (results, status) { + _this.setResults(results, status); - this.lastCenter = this.$_map.getCenter(); - - this.redirectEvents(this.$_map, redirectedEvents$1); - - // Code that awaits `$_getMap()` - this.$_mapPromises.forEach(function (resolve) { - return resolve(_this.$_map); - }); - }, - - - watch: { - options: { - handler: 'updateOptions', - deep: true - } - }, - - methods: _extends({}, redirectMethods({ - target: function target() { - return this.$_map; - }, - - names: redirectedMethods - }), { - resize: function resize() { - var preserveCenter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; - - if (this.$_map) { - // let center - // preserveCenter && (center = this.$_map.getCenter()) - window.google.maps.event.trigger(this.$_map, 'resize'); - preserveCenter && this.$_map.setCenter(this.lastCenter); - } - }, - visibilityChanged: function visibilityChanged(isVisible) { - if (isVisible) { - this.$nextTick(this.resize); - } - }, - $_getMap: function $_getMap() { - var _this2 = this; - - if (this.$_map) { - return Promise.resolve(this.$_map); - } else { - return new Promise(function (resolve) { - _this2.$_mapPromises.push(resolve); - }); - } - }, - updateOptions: function updateOptions(options) { - this.$_map && this.$_map.setOptions(options || this.$props); - } - }) -}; - -var boundProps$2 = ['animation', 'clickable', 'cursor', 'draggable', 'icon', 'label', 'opacity', 'place', 'position', 'shape', 'title', 'visible', 'zIndex']; - -var redirectedEvents$2 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; - -var Marker = { - name: 'GoogleMapsMarker', - - mixins: [MapElement], - - props: { - animation: { - type: Number - }, - clickable: { - type: Boolean, - default: true - }, - cursor: { - type: String - }, - draggable: { - type: Boolean, - default: false - }, - icon: {}, - label: {}, - opacity: { - type: Number, - default: 1 - }, - place: { - type: Object - }, - position: { - type: Object - }, - shape: { - type: Object - }, - title: { - type: String - }, - visible: { - default: true - }, - zIndex: { - type: Number - } - }, - - render: function render(h) { - if (!this.$slots.default || this.$slots.default.length === 0) { - return ''; - } else if (this.$slots.default.length === 1) { - // So that infowindows can have a marker parent - return this.$slots.default[0]; - } else { - return h('div', this.$slots.default); - } - }, - googleMapsReady: function googleMapsReady() { - var options = Object.assign({}, this.$props); - options.map = this.$_map; - - this.$_marker = new window.google.maps.Marker(options); - this.bindProps(this.$_marker, boundProps$2); - this.redirectEvents(this.$_marker, redirectedEvents$2); - }, - beforeDestroy: function beforeDestroy() { - if (this.$_marker) { - this.$_marker.setMap(null); - } - } -}; - -var NearbyPlaces = { - name: 'GoogleMapsNearbyPlaces', - - mixins: [Service], - - methods: { - createServices: function createServices() { - this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); - }, - update: function update() { - var _this = this; - - this.loading = true; - this.$_placeService.nearbySearch(this.request, function (results, status) { - _this.setResults(results, status); - _this.loading = false; - }); - } - } + _this.loading = false; + }); + } + } }; var PlaceDetails = { - name: 'GoogleMapsPlaceDetails', + name: 'GoogleMapsPlaceDetails', + mixins: [Service], + methods: { + createServices: function createServices() { + this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); + }, + update: function update() { + var _this = this; - mixins: [Service], + this.loading = true; + this.$_placeService.getDetails(this.request, function (results, status) { + _this.setResults(results, status); - methods: { - createServices: function createServices() { - this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); - }, - update: function update() { - var _this = this; - - this.loading = true; - this.$_placeService.getDetails(this.request, function (results, status) { - _this.setResults(results, status); - _this.loading = false; - }); - } - } + _this.loading = false; + }); + } + } }; -var defaultPositionStyle = void 0; +var defaultPositionStyle; var defaultAccuracyStyle = { - strokeColor: '#4285F4', - strokeOpacity: 0.25, - fillColor: '#4285F4', - fillOpacity: 0.2, - strokeWeight: 1 + strokeColor: '#4285F4', + strokeOpacity: 0.25, + fillColor: '#4285F4', + fillOpacity: 0.2, + strokeWeight: 1 }; - var UserPosition = { - name: 'GoogleMapsUserPosition', - - mixins: [Ready], - - props: { - accuracy: { - default: 0 - }, - accuracyStyle: { - type: Object, - default: null - }, - disableWatch: { - type: Boolean, - default: false - }, - hideAccuracy: { - type: Boolean, - default: false - }, - minimumAccuracy: { - default: 1000 - }, - position: { - type: Object - }, - positionStyle: { - type: Object, - default: null - }, - positionOptions: { - type: Object, - default: function _default() { - return { - enableHighAccuracy: true, - maximumAge: 1000 - }; - } - } - }, - - data: function data() { - return { - currentPosition: null, - currentAccuracy: null - }; - }, - - - watch: { - position: function position(value) { - this.currentPosition = value; - }, - accuracy: function accuracy(value) { - this.currentAccuracy = value; - }, - disableWatch: function disableWatch(value, oldValue) { - if (value !== oldValue) { - if (value) { - this.stopWatch(); - } else { - this.startWatch(); - } - } - }, - positionOptions: function positionOptions(value) { - if (!this.disableWatch) { - this.stopWatch(); - this.startWatch(); - } - } - }, - - methods: { - startWatch: function startWatch() { - if (navigator.geolocation) { - this.$_watchId = navigator.geolocation.watchPosition(this.updatePosition, this.onWatchError, this.positionOptions); - } else { - console.warn('GoogleMapsUserPosition: navigator.geolocation not supported'); - this.$emit('error', new Error('unsupported')); - } - }, - stopWatch: function stopWatch() { - if (navigator.geolocation) { - navigator.geolocation.clearWatch(this.$_watchId); - } - }, - updatePosition: function updatePosition(position) { - this.currentPosition = { - lat: position.coords.latitude, - lng: position.coords.longitude - }; - this.$emit('update:position', this.currentPosition); - this.currentAccuracy = position.coords.accuracy; - this.$emit('update:accuracy', this.currentAccuracy); - }, - onWatchError: function onWatchError(e) { - this.$emit('error', e); - } - }, + name: 'GoogleMapsUserPosition', + mixins: [Ready], + props: { + accuracy: { + "default": 0 + }, + accuracyStyle: { + type: Object, + "default": null + }, + disableWatch: { + type: Boolean, + "default": false + }, + hideAccuracy: { + type: Boolean, + "default": false + }, + minimumAccuracy: { + "default": 1000 + }, + position: { + type: Object + }, + positionStyle: { + type: Object, + "default": null + }, + positionOptions: { + type: Object, + "default": function _default() { + return { + enableHighAccuracy: true, + maximumAge: 1000 + }; + } + } + }, + data: function data() { + return { + currentPosition: null, + currentAccuracy: null + }; + }, + watch: { + position: function position(value) { + this.currentPosition = value; + }, + accuracy: function accuracy(value) { + this.currentAccuracy = value; + }, + disableWatch: function disableWatch(value, oldValue) { + if (value !== oldValue) { + if (value) { + this.stopWatch(); + } else { + this.startWatch(); + } + } + }, + positionOptions: function positionOptions(value) { + if (!this.disableWatch) { + this.stopWatch(); + this.startWatch(); + } + } + }, + methods: { + startWatch: function startWatch() { + if (navigator.geolocation) { + this.$_watchId = navigator.geolocation.watchPosition(this.updatePosition, this.onWatchError, this.positionOptions); + } else { + console.warn('GoogleMapsUserPosition: navigator.geolocation not supported'); + this.$emit('error', new Error('unsupported')); + } + }, + stopWatch: function stopWatch() { + if (navigator.geolocation) { + navigator.geolocation.clearWatch(this.$_watchId); + } + }, + updatePosition: function updatePosition(position) { + this.currentPosition = { + lat: position.coords.latitude, + lng: position.coords.longitude + }; + this.$emit('update:position', this.currentPosition); + this.currentAccuracy = position.coords.accuracy; + this.$emit('update:accuracy', this.currentAccuracy); + }, + onWatchError: function onWatchError(e) { + this.$emit('error', e); + } + }, + render: function render(h) { + var markers = []; + + if (this.googleMapsReady && this.currentPosition && (this.minimumAccuracy === null || this.currentAccuracy <= this.minimumAccuracy)) { + markers.push(h(Marker, { + props: { + clickable: false, + icon: this.positionStyle || defaultPositionStyle, + optimized: false, + position: this.currentPosition, + zIndex: 3 + } + })); + + if (!this.hideAccuracy) { + markers.push(h(Circle, { + props: { + clickable: false, + radius: this.currentAccuracy, + options: this.accuracyStyle || defaultAccuracyStyle, + center: this.currentPosition, + zIndex: 1 + } + })); + } + } - render: function render(h) { - var markers = []; - if (this.googleMapsReady && this.currentPosition && (this.minimumAccuracy === null || this.currentAccuracy <= this.minimumAccuracy)) { - markers.push(h(Marker, { - props: { - clickable: false, - icon: this.positionStyle || defaultPositionStyle, - optimized: false, - position: this.currentPosition, - zIndex: 3 - } - })); - if (!this.hideAccuracy) { - markers.push(h(Circle, { - props: { - clickable: false, - radius: this.currentAccuracy, - options: this.accuracyStyle || defaultAccuracyStyle, - center: this.currentPosition, - zIndex: 1 - } - })); - } - } + return h('div', markers); + }, + googleMapsReady: function googleMapsReady() { + defaultPositionStyle = { + path: window.google.maps.SymbolPath.CIRCLE, + fillColor: '#4285F4', + fillOpacity: 1, + scale: 6, + strokeColor: 'white', + strokeWeight: 2 + }; - return h('div', markers); - }, - googleMapsReady: function googleMapsReady() { - defaultPositionStyle = { - path: window.google.maps.SymbolPath.CIRCLE, - fillColor: '#4285F4', - fillOpacity: 1, - scale: 6, - strokeColor: 'white', - strokeWeight: 2 - }; - - if (!this.disableWatch) { - this.startWatch(); - } - }, - beforeDestroy: function beforeDestroy() { - this.stopWatch(); - } + if (!this.disableWatch) { + this.startWatch(); + } + }, + beforeDestroy: function beforeDestroy() { + this.stopWatch(); + } }; var boundProps$3 = ['draggable', 'editable', 'options', 'path']; - var redirectedEvents$3 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; - var Polyline = { - name: 'GoogleMapsPolyline', - - mixins: [MapElement], - - props: { - editable: { - type: Boolean, - default: false - }, - draggable: { - type: Boolean, - default: false - }, - options: { - type: Object, - default: function _default() { - return {}; - } - }, - path: { - type: Array - } - }, - - watch: { - options: 'updateOptions' - }, - - methods: { - updateOptions: function updateOptions(options) { - this.$_polyline && this.$_polyline.setOptions(options || this.$props); - } - }, - - render: function render(h) { - return ''; - }, - googleMapsReady: function googleMapsReady() { - var _this = this; - - var options = Object.assign({}, this.$props); - options.map = this.$_map; - - this.$_polyline = new window.google.maps.Polyline(options); - this.bindProps(this.$_polyline, boundProps$3); - this.redirectEvents(this.$_polyline, redirectedEvents$3); - this.listen(this.$_polyline, 'drag', function () { - _this.$emit('path_changed', _this.$_polyline.getPath()); - }); - }, - beforeDestroy: function beforeDestroy() { - if (this.$_polyline) { - this.$_polyline.setMap(null); - } - } + name: 'GoogleMapsPolyline', + mixins: [MapElement], + props: { + editable: { + type: Boolean, + "default": false + }, + draggable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + path: { + type: Array + } + }, + watch: { + options: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_polyline && this.$_polyline.setOptions(options || this.$props); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var _this = this; + + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_polyline = new window.google.maps.Polyline(options); + this.bindProps(this.$_polyline, boundProps$3); + this.redirectEvents(this.$_polyline, redirectedEvents$3); + this.listen(this.$_polyline, 'drag', function () { + _this.$emit('path_changed', _this.$_polyline.getPath()); + }); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_polyline) { + this.$_polyline.setMap(null); + } + } }; var boundProps$4 = ['bounds', 'draggable', 'editable', 'visible', 'options']; - var redirectedEvents$4 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; - var Rectangle = { - name: 'GoogleMapsRectangle', - - mixins: [MapElement], - - props: { - bounds: { - type: Object, - required: true - }, - clickable: { - type: Boolean, - default: true - }, - draggable: { - type: Boolean, - default: false - }, - editable: { - type: Boolean, - default: false - }, - options: { - type: Object, - default: function _default() { - return {}; - } - }, - visible: { - default: true - }, - zIndex: { - type: Number - } - }, - - watch: { - bounds: 'updateBounds', - options: 'updateOptions', - clickable: 'updateOptions', - zIndex: 'updateOptions' - }, - - methods: { - updateOptions: function updateOptions(options) { - this.$_rectangle && this.$_rectangle.setOptions(options || this.$props); - }, - updateBounds: function updateBounds(bounds) { - this.$_rectangle && this.$_rectangle.setBounds(bounds); - } - }, - - render: function render(h) { - return ''; - }, - googleMapsReady: function googleMapsReady() { - var options = Object.assign({}, this.$props); - options.map = this.$_map; - - this.$_rectangle = new window.google.maps.Rectangle(options); - this.bindProps(this.$_rectangle, boundProps$4); - this.redirectEvents(this.$_rectangle, redirectedEvents$4); - }, - beforeDestroy: function beforeDestroy() { - if (this.$_rectangle) { - this.$_rectangle.setMap(null); - } - } + name: 'GoogleMapsRectangle', + mixins: [MapElement], + props: { + bounds: { + type: Object, + required: true + }, + clickable: { + type: Boolean, + "default": true + }, + draggable: { + type: Boolean, + "default": false + }, + editable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + visible: { + "default": true + }, + zIndex: { + type: Number + } + }, + watch: { + bounds: 'updateBounds', + options: 'updateOptions', + clickable: 'updateOptions', + zIndex: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_rectangle && this.$_rectangle.setOptions(options || this.$props); + }, + updateBounds: function updateBounds(bounds) { + this.$_rectangle && this.$_rectangle.setBounds(bounds); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_rectangle = new window.google.maps.Rectangle(options); + this.bindProps(this.$_rectangle, boundProps$4); + this.redirectEvents(this.$_rectangle, redirectedEvents$4); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_rectangle) { + this.$_rectangle.setMap(null); + } + } }; var boundProps$5 = ['draggable', 'editable', 'options', 'paths']; - var redirectedEvents$5 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; - var Polygon = { - name: 'GoogleMapsPolygon', - - mixins: [MapElement], - - props: { - editable: { - type: Boolean, - default: false - }, - draggable: { - type: Boolean, - default: false - }, - options: { - type: Object, - default: function _default() { - return {}; - } - }, - paths: { - type: Array - } - }, + name: 'GoogleMapsPolygon', + mixins: [MapElement], + props: { + editable: { + type: Boolean, + "default": false + }, + draggable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + paths: { + type: Array + } + }, + watch: { + paths: 'updateOptions', + options: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_polygon && this.$_polygon.setOptions(options || this.$props); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var _this = this; + + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_polygon = new window.google.maps.Polygon(options); + this.bindProps(this.$_polygon, boundProps$5); + this.redirectEvents(this.$_polygon, redirectedEvents$5); + this.listen(this.$_polygon, 'drag', function () { + _this.$emit('path_changed', _this.$_polygon.getPath()); + }); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_polygon) { + this.$_polygon.setMap(null); + } + } +}; - watch: { - paths: 'updateOptions', - options: 'updateOptions' - }, +var boundProps$6 = []; +var redirectedEvents$6 = []; +var DirectionsRenderer = { + name: 'GoogleMapsDirectionsRenderer', + mixins: [MapElement], + props: { + options: { + type: Object, + "default": function _default() { + return {}; + } + } + }, + watch: { + options: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_directionsRenderer && this.$_directionsRenderer.setOptions(options || this.$props); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var options = Object.assign({}, this.$props); + options.map = this.$_map; + console.log(options); + this.$_directionsRenderer = new window.google.maps.DirectionsRenderer(options); + this.bindProps(this.$_polyline, boundProps$6); + this.redirectEvents(this.$_polyline, redirectedEvents$6); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_directionsRenderer) { + this.$_directionsRenderer.setMap(null); + } + } +}; - methods: { - updateOptions: function updateOptions(options) { - this.$_polygon && this.$_polygon.setOptions(options || this.$props); - } - }, +var DirectionsService = { + name: 'GoogleMapsDirectionsService', + mixins: [Service], + methods: { + createServices: function createServices() { + this.$_directionsService = new window.google.maps.DirectionsService(this.$refs.attributions); + }, + update: function update() { + var _this = this; - render: function render(h) { - return ''; - }, - googleMapsReady: function googleMapsReady() { - var _this = this; + this.loading = true; + this.$_directionsService.route(this.request, function (results, status) { + _this.setResults(results, status); - var options = Object.assign({}, this.$props); - options.map = this.$_map; + _this.loading = false; + }); + } + } +}; - this.$_polygon = new window.google.maps.Polygon(options); - this.bindProps(this.$_polygon, boundProps$5); - this.redirectEvents(this.$_polygon, redirectedEvents$5); - this.listen(this.$_polygon, 'drag', function () { - _this.$emit('path_changed', _this.$_polygon.getPath()); - }); - }, - beforeDestroy: function beforeDestroy() { - if (this.$_polygon) { - this.$_polygon.setMap(null); - } - } +var Directions = { + name: 'GoogleMapsDirections', + data: function data() { + return { + directions: null + }; + }, + props: { + //#region DirectionsService + origin: { + type: String | Object, + required: true + }, + destination: { + type: String | Object, + required: true + }, + travelMode: { + type: String, + "default": "DRIVING" + }, + transitOptions: { + type: Object, + "default": null + }, + unitSystem: { + type: Array, + "default": null + }, + waypoints: { + type: String | Object, + "default": null + }, + optimizeWaypoints: { + type: Boolean, + "default": null + }, + provideRouteAlternatives: { + type: Boolean, + "default": null + }, + avoidFerries: { + type: Boolean, + "default": null + }, + avoidHighways: { + type: Boolean, + "default": null + }, + avoidTolls: { + type: Boolean, + "default": null + }, + region: { + type: String, + "default": null + }, + //#endregion + //#region DirectionsRenderer + draggable: { + type: Boolean, + "default": null + }, + hideRouteList: { + type: Boolean, + "default": null + }, + infoWindow: { + type: Object, + "default": null + }, + markerOptions: { + type: Object, + "default": null + }, + panel: { + type: Node, + "default": null + }, + polylineOptions: { + type: Object, + "default": null + }, + preserveViewport: { + type: Boolean, + "default": null + }, + routeIndex: { + type: Number, + "default": null + }, + supressBicycleLayer: { + type: Boolean, + "default": null + }, + suppressInfoWindows: { + type: Boolean, + "default": null + }, + suppressMarkers: { + type: Boolean, + "default": null + }, + suppressPolylines: { + type: Boolean, + "default": null + } //#endregion + + }, + computed: { + directionsRequest: function directionsRequest() { + return { + origin: this.origin, + destination: this.destination, + travelMode: this.travelMode, + transitOptions: this.transitOptions, + unitSystem: this.unitSystem, + waypoints: this.waypoints, + optimizeWaypoints: this.optimizeWaypoints, + provideRouteAlternatives: this.provideRouteAlternatives, + avoidFerries: this.avoidFerries, + avoidHighways: this.avoidHighways, + avoidTolls: this.avoidTolls, + region: this.region + }; + }, + directionsRendererOptions: function directionsRendererOptions() { + return { + options: _objectSpread2({}, this.directions && { + directions: this.directions + }, { + draggable: this.draggable, + hideRouteList: this.hideRouteList, + infoWindow: this.infoWindow, + markerOptions: this.markerOptions, + panel: this.panel, + polylineOptions: this.polylineOptions, + preserveViewport: this.preserveViewport, + routeIndex: this.routeIndex, + supressBicycleLayer: this.supressBicycleLayer, + suppressInfoWindows: this.suppressInfoWindows, + suppressMarkers: this.suppressMarkers, + suppressPolylines: this.suppressPolylines + }) + }; + } + }, + render: function render(h) { + var _this = this; + + return h('div', {}, [h(DirectionsService, { + props: { + request: this.directionsRequest + }, + on: { + results: function results($event) { + _this.directions = $event; + } + } + }), h(DirectionsRenderer, { + props: this.directionsRendererOptions + })]); + } }; function registerComponents(Vue, prefix) { - Vue.component(prefix + 'circle', Circle); - Vue.component(prefix + 'rectangle', Rectangle); - Vue.component(prefix + 'geocoder', Geocoder); - Vue.component(prefix + 'map', Map); - Vue.component(prefix + 'marker', Marker); - Vue.component(prefix + 'nearby-places', NearbyPlaces); - Vue.component(prefix + 'place-details', PlaceDetails); - Vue.component(prefix + 'user-position', UserPosition); - Vue.component(prefix + 'polyline', Polyline); - Vue.component(prefix + 'polygon', Polygon); + Vue.component("".concat(prefix, "circle"), Circle); + Vue.component("".concat(prefix, "rectangle"), Rectangle); + Vue.component("".concat(prefix, "geocoder"), Geocoder); + Vue.component("".concat(prefix, "map"), __vue_component__); + Vue.component("".concat(prefix, "marker"), Marker); + Vue.component("".concat(prefix, "nearby-places"), NearbyPlaces); + Vue.component("".concat(prefix, "place-details"), PlaceDetails); + Vue.component("".concat(prefix, "user-position"), UserPosition); + Vue.component("".concat(prefix, "polyline"), Polyline); + Vue.component("".concat(prefix, "polygon"), Polygon); + Vue.component("".concat(prefix, "directions"), Directions); } var plugin = { - // eslint-disable-next-line no-undef - version: "0.1.2", - install: function install(Vue, options) { - var finalOptions = Object.assign({}, { - installComponents: true, - componentsPrefix: 'googlemaps-' - }, options); - - optionMergeStrategies(Vue); - initErrorHandling(Vue); - - if (finalOptions.installComponents) { - registerComponents(Vue, finalOptions.componentsPrefix); - } + // eslint-disable-next-line no-undef + version: "0.1.3-alpha1", + install: function install(Vue, options) { + var finalOptions = Object.assign({}, { + installComponents: true, + componentsPrefix: 'googlemaps-' + }, options); + optionMergeStrategies(Vue); + initErrorHandling(Vue); + + if (finalOptions.installComponents) { + registerComponents(Vue, finalOptions.componentsPrefix); + } - if (finalOptions.load) { - loader.load(finalOptions.load); - } - } + if (finalOptions.load) { + loader.load(finalOptions.load); + } + } }; -// Auto-install var GlobalVue = null; + if (typeof window !== 'undefined') { - GlobalVue = window.Vue; + GlobalVue = window.Vue; } else if (typeof global !== 'undefined') { - GlobalVue = global.Vue; + GlobalVue = global.Vue; } + if (GlobalVue) { - GlobalVue.use(plugin); + GlobalVue.use(plugin); } -export { Circle, Rectangle, Geocoder, Map, Marker, NearbyPlaces, PlaceDetails, UserPosition, MapElement, Polyline, Polygon }; export default plugin; +export { Circle, Directions, Geocoder, __vue_component__ as Map, MapElement, Marker, NearbyPlaces, PlaceDetails, Polygon, Polyline, Rectangle, UserPosition }; diff --git a/dist/vue-googlemaps.min.js b/dist/vue-googlemaps.min.js index 31e2975..a9078ca 100644 --- a/dist/vue-googlemaps.min.js +++ b/dist/vue-googlemaps.min.js @@ -1 +1 @@ -var VueGoogleMaps=function(e){"use strict";(function(e){!function(t){var n,i=Object.prototype,o=i.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},s=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",c=r.toStringTag||"@@toStringTag",l=t.regeneratorRuntime;if(l)e.exports=l;else{(l=t.regeneratorRuntime=e.exports).wrap=b;var u="suspendedStart",p="suspendedYield",h="executing",d="completed",f={},g={};g[s]=function(){return this};var y=Object.getPrototypeOf,m=y&&y(y(S([])));m&&m!==i&&o.call(m,s)&&(g=m);var v=O.prototype=_.prototype=Object.create(g);$.prototype=v.constructor=O,O.constructor=$,O[c]=$.displayName="GeneratorFunction",l.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===$||"GeneratorFunction"===(t.displayName||t.name))},l.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,O):(e.__proto__=O,c in e||(e[c]="GeneratorFunction")),e.prototype=Object.create(v),e},l.awrap=function(e){return{__await:e}},x(P.prototype),P.prototype[a]=function(){return this},l.AsyncIterator=P,l.async=function(e,t,n,i){var o=new P(b(e,t,n,i));return l.isGeneratorFunction(t)?o:o.next().then(function(e){return e.done?e.value:o.next()})},x(v),v[c]="Generator",v[s]=function(){return this},v.toString=function(){return"[object Generator]"},l.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var i=t.pop();if(i in e)return n.value=i,n.done=!1,n}return n.done=!0,n}},l.values=S,E.prototype={constructor:E,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=n,this.done=!1,this.delegate=null,this.method="next",this.arg=n,this.tryEntries.forEach(M),!e)for(var t in this)"t"===t.charAt(0)&&o.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=n)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function i(i,o){return a.type="throw",a.arg=e,t.next=i,o&&(t.method="next",t.arg=n),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var s=this.tryEntries[r],a=s.completion;if("root"===s.tryLoc)return i("end");if(s.tryLoc<=this.prev){var c=o.call(s,"catchLoc"),l=o.call(s,"finallyLoc");if(c&&l){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&o.call(i,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),M(n),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var i=n.completion;if("throw"===i.type){var o=i.arg;M(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,i){return this.delegate={iterator:S(e),resultName:t,nextLoc:i},"next"===this.method&&(this.arg=n),f}}}function b(e,t,n,i){var o=t&&t.prototype instanceof _?t:_,r=Object.create(o.prototype),s=new E(i||[]);return r._invoke=function(e,t,n){var i=u;return function(o,r){if(i===h)throw new Error("Generator is already running");if(i===d){if("throw"===o)throw r;return R()}for(n.method=o,n.arg=r;;){var s=n.delegate;if(s){var a=k(s,n);if(a){if(a===f)continue;return a}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(i===u)throw i=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);i=h;var c=w(e,t,n);if("normal"===c.type){if(i=n.done?d:p,c.arg===f)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(i=d,n.method="throw",n.arg=c.arg)}}}(e,n,s),r}function w(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function _(){}function $(){}function O(){}function x(e){["next","throw","return"].forEach(function(t){e[t]=function(e){return this._invoke(t,e)}})}function P(e){var t;this._invoke=function(n,i){function r(){return new Promise(function(t,r){!function t(n,i,r,s){var a=w(e[n],e,i);if("throw"!==a.type){var c=a.arg,l=c.value;return l&&"object"==typeof l&&o.call(l,"__await")?Promise.resolve(l.__await).then(function(e){t("next",e,r,s)},function(e){t("throw",e,r,s)}):Promise.resolve(l).then(function(e){c.value=e,r(c)},s)}s(a.arg)}(n,i,t,r)})}return t=t?t.then(r,r):r()}}function k(e,t){var i=e.iterator[t.method];if(i===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=n,k(e,t),"throw"===t.method))return f;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var o=w(i,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,f;var r=o.arg;return r?r.done?(t[e.resultName]=r.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=n),t.delegate=null,f):r:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function j(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function M(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function E(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(j,this),this.reset(!0)}function S(e){if(e){var t=e[s];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var i=-1,r=function t(){for(;++i0?(p=o.join(","),l.libraries=p):Array.prototype.isPrototypeOf(l.libraries)&&(l.libraries=l.libraries.join(",")),l.callback="VueGoogleMapsLoaded";var h=("boolean"==typeof r&&!0===r?"http://maps.google.cn":"https://maps.googleapis.com")+"/maps/api/js?"+Object.keys(l).map(function(e){return encodeURIComponent(e)+"="+encodeURIComponent(l[e])}).join("&");a||(i="3.31"),i&&(h=h+"&v="+i),c.setAttribute("src",h),c.setAttribute("async",""),c.setAttribute("defer",""),document.body.appendChild(c),window.VueGoogleMapsLoaded=this._setLoaded.bind(this)}},ensureReady:function(){var e=this;return this.loaded?Promise.resolve():new Promise(function(t){e.readyPromises.push(t)})},_setLoaded:function(){this.loaded=!0;var e=!0,t=!1,n=void 0;try{for(var i,o=this.readyPromises[Symbol.iterator]();!(e=(i=o.next()).done);e=!0){(0,i.value)()}}catch(e){t=!0,n=e}finally{try{!e&&o.return&&o.return()}finally{if(t)throw n}}this.readyPromises=[]}};var s=void 0;function a(e,t,n){if(s.errorHandler)s.errorHandler(e,t,n);else{if("undefined"==typeof console)throw e;console.error(e)}}function c(e){return"function"==typeof e?e():e}function l(e){var t=e.vm,n=e.name,i=e.targetPropName,o=e.target,r=e.watcher,s=e.identity,a=e.applier,c=e.retriever,l=(e.readOnly,e.event),u=e.changeEvent;i||(i=n),u||(u=i.toLowerCase()+"_changed");var p,h=void 0,d=(p=n).charAt(0).toUpperCase()+p.slice(1),f=function(e){h=e,o&&o["set"+d](e)};r||(r=function(e){return e}),s||(s=function(e,t){return e===t}),a||(a=function(e,t,n){s(e,t)||n(e)}),c||(c=function(e){return e}),l||(l="update:"+n),t.$watch(function(){return r(t[n])},function(e,t){s(e,h)||a(e,t,f),h=e});var g=o.addListener(u,function(){var e=c(o&&o["get"+d]());s(e,h)||(t.$emit(l,e),h=e)});return function(){g.remove()}}var u={beforeDestroy:function(){this.unbindProps()},methods:{bindProps:function(e,t){this.unbindProps(),this.$_boundsProps=[];var n=!0,i=!1,o=void 0;try{for(var r,s=t[Symbol.iterator]();!(n=(r=s.next()).done);n=!0){var a=r.value,c={vm:this,target:e};"string"==typeof a?c.name=a:Object.assign(c,a),this.$_boundsProps.push(l(c))}}catch(e){i=!0,o=e}finally{try{!n&&s.return&&s.return()}finally{if(i)throw o}}},unbindProps:function(){this.$_boundsProps&&this.$_boundsProps.forEach(function(e){return e()})}}},p={beforeCreate:function(){this.$_googleListeners=[]},beforeDestroy:function(){var e=!0,t=!1,n=void 0;try{for(var i,o=this.$_googleListeners[Symbol.iterator]();!(e=(i=o.next()).done);e=!0){i.value.remove()}}catch(e){t=!0,n=e}finally{try{!e&&o.return&&o.return()}finally{if(t)throw n}}},methods:{listen:function(e,t,n){this.$_googleListeners.push(e.addListener(t,n))},redirectEvents:function(e,t){var n=this,i=function(t){n.listen(e,t,function(){for(var e=arguments.length,i=Array(e),o=0;o component.");this.$_mapAncestor=e},googleMapsPrepare:function(){var e=this;return i(regeneratorRuntime.mark(function t(){var n;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.$_mapAncestor,t.next=3,n.$_getMap();case 3:e.$_map=t.sent;case 4:case"end":return t.stop()}},t,e)}))()}},f=["center","draggable","editable","radius","visible","options"],g=["click","rightclick","dblclick","drag","dragstart","dragend","mouseup","mousedown","mouseover","mouseout"],y={name:"GoogleMapsCircle",mixins:[d],props:{center:{type:Object,required:!0},clickable:{type:Boolean,default:!0},draggable:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},options:{type:Object,default:function(){return{}}},radius:{type:Number,required:!0},visible:{default:!0},zIndex:{type:Number}},watch:{options:"updateOptions",clickable:"updateOptions",zIndex:"updateOptions"},methods:{updateOptions:function(e){this.$_circle&&this.$_circle.setOptions(e||this.$props)}},render:function(e){return""},googleMapsReady:function(){var e=Object.assign({},this.$props);e.map=this.$_map,this.$_circle=new window.google.maps.Circle(e),this.bindProps(this.$_circle,f),this.redirectEvents(this.$_circle,g)},beforeDestroy:function(){this.$_circle&&this.$_circle.setMap(null)}},m={mixins:[h],props:{filter:{type:Function,default:null},request:{type:Object,default:null},tag:{type:String,default:"div"}},data:function(){return{loading:!1,results:null,status:null}},computed:{filteredResults:function(){return this.results&&this.filter?this.results.filter(this.filter):this.results},finalResults:function(){var e=this.filteredResults;return!e||Array.isArray(e)&&!e.length?null:e}},watch:{request:{handler:function(e){e&&this.update()},deep:!0},finalResults:function(e){this.$emit("results",e)}},methods:{createServices:function(){},getScope:function(){return{loading:this.loading,results:this.finalResults,status:this.status}},setResults:function(e,t){this.results=e,this.status=t},update:function(){}},googleMapsReady:function(){this.createServices(),this.request&&this.update()},render:function(e){return e(this.tag,[this.$scopedSlots.default&&this.$scopedSlots.default(this.getScope()),e("span",{ref:"attributions"})])}},v={name:"GoogleMapsGeocoder",mixins:[m],props:{disablePlaceDetails:{type:Boolean,default:!1}},methods:{createServices:function(){this.$_geocoder=new window.google.maps.Geocoder,this.$_placeService=new window.google.maps.places.PlacesService(this.$refs.attributions)},getPlaceDetails:function(e){e.placeDetails={},e.place_id&&(e.placeDetails.loading=!0,this.$_placeService.getDetails({placeId:e.place_id},function(t,n){e.placeDetails=t}))},update:function(){var e=this;this.googleMapsReady&&(this.loading=!0,this.$_geocoder.geocode(this.request,function(t,n){t&&!e.disablePlaceDetails&&t.forEach(e.getPlaceDetails),e.setResults(t,n),e.loading=!1}))}}};var b=void 0;function w(){w.init||(w.init=!0,b=-1!==function(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);if(e.indexOf("Trident/")>0){var n=e.indexOf("rv:");return parseInt(e.substring(n+3,e.indexOf(".",n)),10)}var i=e.indexOf("Edge/");return i>0?parseInt(e.substring(i+5,e.indexOf(".",i)),10):-1}())}var _={render:function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})},staticRenderFns:[],_scopeId:"data-v-b329ee4c",name:"resize-observer",methods:{compareAndNotify:function(){this._w===this.$el.offsetWidth&&this._h===this.$el.offsetHeight||(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.$emit("notify"))},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!b&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),delete this._resizeObject.onload)}},mounted:function(){var e=this;w(),this.$nextTick(function(){e._w=e.$el.offsetWidth,e._h=e.$el.offsetHeight});var t=document.createElement("object");this._resizeObject=t,t.setAttribute("aria-hidden","true"),t.setAttribute("tabindex",-1),t.onload=this.addResizeHandlers,t.type="text/html",b&&this.$el.appendChild(t),t.data="about:blank",b||this.$el.appendChild(t)},beforeDestroy:function(){this.removeResizeHandlers()}};var $={version:"0.4.5",install:function(e){e.component("resize-observer",_),e.component("ResizeObserver",_)}},O=null;function x(e){if(null!==e&&"function"!=typeof e)throw new Error("observe-visibility directive expects a function as the value")}"undefined"!=typeof window?O=window.Vue:"undefined"!=typeof global&&(O=global.Vue),O&&O.use($);var P={bind:function(e,t,n){var i=t.value;if("undefined"==typeof IntersectionObserver)console.warn("[vue-observe-visibility] IntersectionObserver API is not available in your browser. Please install this polyfill: https://github.com/WICG/IntersectionObserver/tree/gh-pages/polyfill");else{x(i),e._vue_visibilityCallback=i;var o=e._vue_intersectionObserver=new IntersectionObserver(function(t){var n=t[0];e._vue_visibilityCallback&&e._vue_visibilityCallback.call(null,n.intersectionRatio>0,n)});n.context.$nextTick(function(){o.observe(e)})}},update:function(e,t){var n=t.value;x(n),e._vue_visibilityCallback=n},unbind:function(e){e._vue_intersectionObserver&&(e._vue_intersectionObserver.disconnect(),delete e._vue_intersectionObserver,delete e._vue_visibilityCallback)}};var k={version:"0.3.1",install:function(e){e.directive("observe-visibility",P)}},j=null;"undefined"!=typeof window?j=window.Vue:"undefined"!=typeof global&&(j=global.Vue),j&&j.use(k);var M,E,S=[{name:"center",watcher:function(e){return{lat:c(e.lat),lng:c(e.lng)}},identity:function(e,t){if(e&&t)return"function"!=typeof e.equals&&(e=new window.google.maps.LatLng(e)),"function"!=typeof t.equals&&(t=new window.google.maps.LatLng(t)),e.equals(t)},retriever:function(e){return{lat:e.lat(),lng:e.lng()}}},"heading","mapTypeId","tilt","zoom","options"],R=["click","dblclick","drag","dragend","dragstart","mousedown","mouseup","mousemove","mouseout","mouseover","resize","rightclick","tilesloaded"],L={render:function(){var e=this.$createElement,t=this._self._c||e;return t("div",{directives:[{name:"observe-visibility",rawName:"v-observe-visibility",value:this.visibilityChanged,expression:"visibilityChanged"}],staticClass:"vue-google-map"},[t("div",{ref:"map",staticClass:"map-view"}),this._v(" "),t("div",{staticClass:"hidden-content"},[this._t("default")],2),this._v(" "),this._t("visible"),this._v(" "),t("resize-observer",{on:{notify:this.resize}})],2)},staticRenderFns:[],_scopeId:"data-v-3074bd5c",name:"GoogleMapsMap",mixins:[h,u,p],components:{ResizeObserver:_},directives:{ObserveVisibility:P},props:{center:{required:!0,type:Object},heading:{type:Number},mapTypeId:{type:String},options:{type:Object,default:function(){return{}}},tilt:{type:Number},zoom:{required:!0,type:Number}},beforeCreate:function(){this.$_mapPromises=[]},googleMapsReady:function(){var e=this,t=this.$refs.map,n=o({center:this.center,heading:this.heading,mapTypeId:this.mapTypeId,tilt:this.tilt,zoom:this.zoom},this.options);this.$_map=new window.google.maps.Map(t,n),this.bindProps(this.$_map,S),this.listen(this.$_map,"bounds_changed",function(){e.$emit("update:bounds",e.$_map.getBounds())}),this.listen(this.$_map,"idle",function(){e.$emit("idle",e),e.lastCenter=e.$_map.getCenter()}),this.lastCenter=this.$_map.getCenter(),this.redirectEvents(this.$_map,R),this.$_mapPromises.forEach(function(t){return t(e.$_map)})},watch:{options:{handler:"updateOptions",deep:!0}},methods:o({},(M={target:function(){return this.$_map},names:["panBy","panTo","panToBounds","fitBounds","getBounds"]},E=M.target,M.names.reduce(function(e,t){return e[t]=function(){var e=E.call(this);if(e){for(var n=arguments.length,i=Array(n),o=0;o0&&void 0!==arguments[0])||arguments[0];this.$_map&&(window.google.maps.event.trigger(this.$_map,"resize"),e&&this.$_map.setCenter(this.lastCenter))},visibilityChanged:function(e){e&&this.$nextTick(this.resize)},$_getMap:function(){var e=this;return this.$_map?Promise.resolve(this.$_map):new Promise(function(t){e.$_mapPromises.push(t)})},updateOptions:function(e){this.$_map&&this.$_map.setOptions(e||this.$props)}})},C=["animation","clickable","cursor","draggable","icon","label","opacity","place","position","shape","title","visible","zIndex"],A=["click","rightclick","dblclick","drag","dragstart","dragend","mouseup","mousedown","mouseover","mouseout"],z={name:"GoogleMapsMarker",mixins:[d],props:{animation:{type:Number},clickable:{type:Boolean,default:!0},cursor:{type:String},draggable:{type:Boolean,default:!1},icon:{},label:{},opacity:{type:Number,default:1},place:{type:Object},position:{type:Object},shape:{type:Object},title:{type:String},visible:{default:!0},zIndex:{type:Number}},render:function(e){return this.$slots.default&&0!==this.$slots.default.length?1===this.$slots.default.length?this.$slots.default[0]:e("div",this.$slots.default):""},googleMapsReady:function(){var e=Object.assign({},this.$props);e.map=this.$_map,this.$_marker=new window.google.maps.Marker(e),this.bindProps(this.$_marker,C),this.redirectEvents(this.$_marker,A)},beforeDestroy:function(){this.$_marker&&this.$_marker.setMap(null)}},I={name:"GoogleMapsNearbyPlaces",mixins:[m],methods:{createServices:function(){this.$_placeService=new window.google.maps.places.PlacesService(this.$refs.attributions)},update:function(){var e=this;this.loading=!0,this.$_placeService.nearbySearch(this.request,function(t,n){e.setResults(t,n),e.loading=!1})}}},G={name:"GoogleMapsPlaceDetails",mixins:[m],methods:{createServices:function(){this.$_placeService=new window.google.maps.places.PlacesService(this.$refs.attributions)},update:function(){var e=this;this.loading=!0,this.$_placeService.getDetails(this.request,function(t,n){e.setResults(t,n),e.loading=!1})}}},N=void 0,B={strokeColor:"#4285F4",strokeOpacity:.25,fillColor:"#4285F4",fillOpacity:.2,strokeWeight:1},D={name:"GoogleMapsUserPosition",mixins:[h],props:{accuracy:{default:0},accuracyStyle:{type:Object,default:null},disableWatch:{type:Boolean,default:!1},hideAccuracy:{type:Boolean,default:!1},minimumAccuracy:{default:1e3},position:{type:Object},positionStyle:{type:Object,default:null},positionOptions:{type:Object,default:function(){return{enableHighAccuracy:!0,maximumAge:1e3}}}},data:function(){return{currentPosition:null,currentAccuracy:null}},watch:{position:function(e){this.currentPosition=e},accuracy:function(e){this.currentAccuracy=e},disableWatch:function(e,t){e!==t&&(e?this.stopWatch():this.startWatch())},positionOptions:function(e){this.disableWatch||(this.stopWatch(),this.startWatch())}},methods:{startWatch:function(){navigator.geolocation?this.$_watchId=navigator.geolocation.watchPosition(this.updatePosition,this.onWatchError,this.positionOptions):(console.warn("GoogleMapsUserPosition: navigator.geolocation not supported"),this.$emit("error",new Error("unsupported")))},stopWatch:function(){navigator.geolocation&&navigator.geolocation.clearWatch(this.$_watchId)},updatePosition:function(e){this.currentPosition={lat:e.coords.latitude,lng:e.coords.longitude},this.$emit("update:position",this.currentPosition),this.currentAccuracy=e.coords.accuracy,this.$emit("update:accuracy",this.currentAccuracy)},onWatchError:function(e){this.$emit("error",e)}},render:function(e){var t=[];return this.googleMapsReady&&this.currentPosition&&(null===this.minimumAccuracy||this.currentAccuracy<=this.minimumAccuracy)&&(t.push(e(z,{props:{clickable:!1,icon:this.positionStyle||N,optimized:!1,position:this.currentPosition,zIndex:3}})),this.hideAccuracy||t.push(e(y,{props:{clickable:!1,radius:this.currentAccuracy,options:this.accuracyStyle||B,center:this.currentPosition,zIndex:1}}))),e("div",t)},googleMapsReady:function(){N={path:window.google.maps.SymbolPath.CIRCLE,fillColor:"#4285F4",fillOpacity:1,scale:6,strokeColor:"white",strokeWeight:2},this.disableWatch||this.startWatch()},beforeDestroy:function(){this.stopWatch()}},W=["draggable","editable","options","path"],T=["click","rightclick","dblclick","drag","dragstart","dragend","mouseup","mousedown","mouseover","mouseout"],q={name:"GoogleMapsPolyline",mixins:[d],props:{editable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},options:{type:Object,default:function(){return{}}},path:{type:Array}},watch:{options:"updateOptions"},methods:{updateOptions:function(e){this.$_polyline&&this.$_polyline.setOptions(e||this.$props)}},render:function(e){return""},googleMapsReady:function(){var e=this,t=Object.assign({},this.$props);t.map=this.$_map,this.$_polyline=new window.google.maps.Polyline(t),this.bindProps(this.$_polyline,W),this.redirectEvents(this.$_polyline,T),this.listen(this.$_polyline,"drag",function(){e.$emit("path_changed",e.$_polyline.getPath())})},beforeDestroy:function(){this.$_polyline&&this.$_polyline.setMap(null)}},F=["bounds","draggable","editable","visible","options"],V=["click","rightclick","dblclick","drag","dragstart","dragend","mouseup","mousedown","mouseover","mouseout"],H={name:"GoogleMapsRectangle",mixins:[d],props:{bounds:{type:Object,required:!0},clickable:{type:Boolean,default:!0},draggable:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},options:{type:Object,default:function(){return{}}},visible:{default:!0},zIndex:{type:Number}},watch:{bounds:"updateBounds",options:"updateOptions",clickable:"updateOptions",zIndex:"updateOptions"},methods:{updateOptions:function(e){this.$_rectangle&&this.$_rectangle.setOptions(e||this.$props)},updateBounds:function(e){this.$_rectangle&&this.$_rectangle.setBounds(e)}},render:function(e){return""},googleMapsReady:function(){var e=Object.assign({},this.$props);e.map=this.$_map,this.$_rectangle=new window.google.maps.Rectangle(e),this.bindProps(this.$_rectangle,F),this.redirectEvents(this.$_rectangle,V)},beforeDestroy:function(){this.$_rectangle&&this.$_rectangle.setMap(null)}},U=["draggable","editable","options","paths"],K=["click","rightclick","dblclick","drag","dragstart","dragend","mouseup","mousedown","mouseover","mouseout"],Y={name:"GoogleMapsPolygon",mixins:[d],props:{editable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},options:{type:Object,default:function(){return{}}},paths:{type:Array}},watch:{paths:"updateOptions",options:"updateOptions"},methods:{updateOptions:function(e){this.$_polygon&&this.$_polygon.setOptions(e||this.$props)}},render:function(e){return""},googleMapsReady:function(){var e=this,t=Object.assign({},this.$props);t.map=this.$_map,this.$_polygon=new window.google.maps.Polygon(t),this.bindProps(this.$_polygon,U),this.redirectEvents(this.$_polygon,K),this.listen(this.$_polygon,"drag",function(){e.$emit("path_changed",e.$_polygon.getPath())})},beforeDestroy:function(){this.$_polygon&&this.$_polygon.setMap(null)}};var J={version:"0.1.2",install:function(e,t){var n=Object.assign({},{installComponents:!0,componentsPrefix:"googlemaps-"},t);!function(e){var t=e.config.optionMergeStrategies;t.googleMapsReady=t.created,t.googleMapsPrepare=t.created}(e),function(e){s=e.config}(e),n.installComponents&&function(e,t){e.component(t+"circle",y),e.component(t+"rectangle",H),e.component(t+"geocoder",v),e.component(t+"map",L),e.component(t+"marker",z),e.component(t+"nearby-places",I),e.component(t+"place-details",G),e.component(t+"user-position",D),e.component(t+"polyline",q),e.component(t+"polygon",Y)}(e,n.componentsPrefix),n.load&&r.load(n.load)}},Q=null;return"undefined"!=typeof window?Q=window.Vue:"undefined"!=typeof global&&(Q=global.Vue),Q&&Q.use(J),e.Circle=y,e.Rectangle=H,e.Geocoder=v,e.Map=L,e.Marker=z,e.NearbyPlaces=I,e.PlaceDetails=G,e.UserPosition=D,e.MapElement=d,e.Polyline=q,e.Polygon=Y,e.default=J,e}({}); +var VueGoogleMaps=function(t){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function n(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function r(t,e){return t(e={exports:{}},e.exports),e.exports}r((function(t){!function(e){var n=Object.prototype,r=n.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",s=i.asyncIterator||"@@asyncIterator",a=i.toStringTag||"@@toStringTag",l=e.regeneratorRuntime;if(l)t.exports=l;else{(l=e.regeneratorRuntime=t.exports).wrap=f;var c={},u={};u[o]=function(){return this};var p=Object.getPrototypeOf,d=p&&p(p(x([])));d&&d!==n&&r.call(d,o)&&(u=d);var h=y.prototype=g.prototype=Object.create(u);v.prototype=h.constructor=y,y.constructor=v,y[a]=v.displayName="GeneratorFunction",l.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===v||"GeneratorFunction"===(e.displayName||e.name))},l.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,y):(t.__proto__=y,a in t||(t[a]="GeneratorFunction")),t.prototype=Object.create(h),t},l.awrap=function(t){return{__await:t}},b(_.prototype),_.prototype[s]=function(){return this},l.AsyncIterator=_,l.async=function(t,e,n,r){var i=new _(f(t,e,n,r));return l.isGeneratorFunction(e)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},b(h),h[a]="Generator",h[o]=function(){return this},h.toString=function(){return"[object Generator]"},l.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},l.values=x,P.prototype={constructor:P,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(n,r){return s.type="throw",s.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],s=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var a=r.call(o,"catchLoc"),l=r.call(o,"finallyLoc");if(a&&l){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),O(n),c}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;O(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:x(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),c}}}function f(t,e,n,r){var i=e&&e.prototype instanceof g?e:g,o=Object.create(i.prototype),s=new P(r||[]);return o._invoke=function(t,e,n){var r="suspendedStart";return function(i,o){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw o;return C()}for(n.method=i,n.arg=o;;){var s=n.delegate;if(s){var a=w(s,n);if(a){if(a===c)continue;return a}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=m(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===c)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}(t,n,s),o}function m(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}function g(){}function v(){}function y(){}function b(t){["next","throw","return"].forEach((function(e){t[e]=function(t){return this._invoke(e,t)}}))}function _(t){var e;this._invoke=function(n,i){function o(){return new Promise((function(e,o){!function e(n,i,o,s){var a=m(t[n],t,i);if("throw"!==a.type){var l=a.arg,c=l.value;return c&&"object"==typeof c&&r.call(c,"__await")?Promise.resolve(c.__await).then((function(t){e("next",t,o,s)}),(function(t){e("throw",t,o,s)})):Promise.resolve(c).then((function(t){l.value=t,o(l)}),s)}s(a.arg)}(n,i,e,o)}))}return e=e?e.then(o,o):o()}}function w(t,e){var n=t.iterator[e.method];if(void 0===n){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method))return c;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return c}var r=m(n,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,c;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,c):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,c)}function $(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function P(t){this.tryEntries=[{tryLoc:"root"}],t.forEach($,this),this.reset(!0)}function x(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n0?(p=r.join(","),c.libraries=p):Array.prototype.isPrototypeOf(c.libraries)&&(c.libraries=c.libraries.join(",")),c.callback="VueGoogleMapsLoaded";var d="boolean"==typeof o&&!0===o?"http://maps.google.cn":"https://maps.googleapis.com",h=Object.keys(c).map((function(t){return"".concat(encodeURIComponent(t),"=").concat(encodeURIComponent(c[t]))})).join("&"),f="".concat(d,"/maps/api/js?").concat(h);a||(n="3.31"),n&&(f="".concat(f,"&v=").concat(n)),l.setAttribute("src",f),l.setAttribute("async",""),l.setAttribute("defer",""),document.body.appendChild(l),window.VueGoogleMapsLoaded=this._setLoaded.bind(this)}},ensureReady:function(){var t=this;return this.loaded?Promise.resolve():new Promise((function(e){t.readyPromises.push(e)}))},_setLoaded:function(){this.loaded=!0;var t=!0,e=!1,n=void 0;try{for(var r,i=this.readyPromises[Symbol.iterator]();!(t=(r=i.next()).done);t=!0){(0,r.value)()}}catch(t){e=!0,n=t}finally{try{t||null==i.return||i.return()}finally{if(e)throw n}}this.readyPromises=[]}};function d(t,e,n){if(u.errorHandler)u.errorHandler(t,e,n);else{if("undefined"==typeof console)throw t;console.error(t)}}function h(t){return"function"==typeof t?t():t}function f(t){var e,n=t.vm,r=t.name,i=t.targetPropName,o=t.target,s=t.watcher,a=t.identity,l=t.applier,c=t.retriever,u=(t.readOnly,t.event),p=t.changeEvent;i||(i=r),p||(p="".concat(i.toLowerCase(),"_changed"));var d,h=(d=r).charAt(0).toUpperCase()+d.slice(1),f=function(t){e=t,o&&o["set".concat(h)](t)};s||(s=function(t){return t}),a||(a=function(t,e){return t===e}),l||(l=function(t,e,n){a(t,e)||n(t)}),c||(c=function(t){return t}),u||(u="update:".concat(r)),n.$watch((function(){return s(n[r])}),(function(t,n){a(t,e)||l(t,n,f),e=t}));var m=o.addListener(p,(function(){var t=c(o&&o["get".concat(h)]());a(t,e)||(n.$emit(u,t),e=t)}));return function(){m.remove()}}var m,g,v={beforeDestroy:function(){this.unbindProps()},methods:{bindProps:function(t,e){this.unbindProps(),this.$_boundsProps=[];var n=!0,r=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done);n=!0){var a=o.value,l={vm:this,target:t};"string"==typeof a?l.name=a:Object.assign(l,a),this.$_boundsProps.push(f(l))}}catch(t){r=!0,i=t}finally{try{n||null==s.return||s.return()}finally{if(r)throw i}}},unbindProps:function(){this.$_boundsProps&&this.$_boundsProps.forEach((function(t){return t()}))}}},y={beforeCreate:function(){this.$_googleListeners=[]},beforeDestroy:function(){var t=!0,e=!1,n=void 0;try{for(var r,i=this.$_googleListeners[Symbol.iterator]();!(t=(r=i.next()).done);t=!0){r.value.remove()}}catch(t){e=!0,n=t}finally{try{t||null==i.return||i.return()}finally{if(e)throw n}}},methods:{listen:function(t,e,n){this.$_googleListeners.push(t.addListener(e,n))},redirectEvents:function(t,e){var n=this,r=!0,i=!1,o=void 0;try{for(var s,a=function(){var e=s.value;n.listen(t,e,(function(){for(var t=arguments.length,r=new Array(t),i=0;i component."));this.$_mapAncestor=t},googleMapsPrepare:(g=s(regeneratorRuntime.mark((function t(){var e;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e=this.$_mapAncestor,t.next=3,e.$_getMap();case 3:this.$_map=t.sent;case 4:case"end":return t.stop()}}),t,this)}))),function(){return g.apply(this,arguments)})},w=["center","draggable","editable","radius","visible","options"],$=["click","rightclick","dblclick","drag","dragstart","dragend","mouseup","mousedown","mouseover","mouseout"],O={name:"GoogleMapsCircle",mixins:[_],props:{center:{type:Object,required:!0},clickable:{type:Boolean,default:!0},draggable:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},options:{type:Object,default:function(){return{}}},radius:{type:Number,required:!0},visible:{default:!0},zIndex:{type:Number}},watch:{options:"updateOptions",clickable:"updateOptions",zIndex:"updateOptions"},methods:{updateOptions:function(t){this.$_circle&&this.$_circle.setOptions(t||this.$props)}},render:function(t){return""},googleMapsReady:function(){var t=Object.assign({},this.$props);t.map=this.$_map,this.$_circle=new window.google.maps.Circle(t),this.bindProps(this.$_circle,w),this.redirectEvents(this.$_circle,$)},beforeDestroy:function(){this.$_circle&&this.$_circle.setMap(null)}},P={mixins:[b],props:{filter:{type:Function,default:null},request:{type:Object,default:null},tag:{type:String,default:"div"}},data:function(){return{loading:!1,results:null,status:null}},computed:{filteredResults:function(){return this.results&&this.filter?this.results.filter(this.filter):this.results},finalResults:function(){var t=this.filteredResults;return!t||Array.isArray(t)&&!t.length?null:t}},watch:{request:{handler:function(t){t&&this.update()},deep:!0},finalResults:function(t){this.$emit("results",t)}},methods:{createServices:function(){},getScope:function(){return{loading:this.loading,results:this.finalResults,status:this.status}},setResults:function(t,e){this.results=t,this.status=e},update:function(){}},googleMapsReady:function(){this.createServices(),this.request&&this.update()},render:function(t){return t(this.tag,[this.$scopedSlots.default&&this.$scopedSlots.default(this.getScope()),t("span",{ref:"attributions"})])}},x={name:"GoogleMapsGeocoder",mixins:[P],props:{disablePlaceDetails:{type:Boolean,default:!1}},methods:{createServices:function(){this.$_geocoder=new window.google.maps.Geocoder,this.$_placeService=new window.google.maps.places.PlacesService(this.$refs.attributions)},getPlaceDetails:function(t){t.placeDetails={},t.place_id&&(t.placeDetails.loading=!0,this.$_placeService.getDetails({placeId:t.place_id},(function(e,n){t.placeDetails=e})))},update:function(){var t=this;this.googleMapsReady&&(this.loading=!0,this.$_geocoder.geocode(this.request,(function(e,n){e&&!t.disablePlaceDetails&&e.forEach(t.getPlaceDetails),t.setResults(e,n),t.loading=!1})))}}},C=r((function(t,n){!function(t){var n=void 0;function r(){r.init||(r.init=!0,n=-1!==function(){var t=window.navigator.userAgent,e=t.indexOf("MSIE ");if(e>0)return parseInt(t.substring(e+5,t.indexOf(".",e)),10);if(t.indexOf("Trident/")>0){var n=t.indexOf("rv:");return parseInt(t.substring(n+3,t.indexOf(".",n)),10)}var r=t.indexOf("Edge/");return r>0?parseInt(t.substring(r+5,t.indexOf(".",r)),10):-1}())}var i={render:function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})},staticRenderFns:[],_scopeId:"data-v-b329ee4c",name:"resize-observer",methods:{compareAndNotify:function(){this._w===this.$el.offsetWidth&&this._h===this.$el.offsetHeight||(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.$emit("notify"))},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!n&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),delete this._resizeObject.onload)}},mounted:function(){var t=this;r(),this.$nextTick((function(){t._w=t.$el.offsetWidth,t._h=t.$el.offsetHeight}));var e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",n&&this.$el.appendChild(e),e.data="about:blank",n||this.$el.appendChild(e)},beforeDestroy:function(){this.removeResizeHandlers()}};function o(t){t.component("resize-observer",i),t.component("ResizeObserver",i)}var s={version:"0.4.5",install:o},a=null;"undefined"!=typeof window?a=window.Vue:void 0!==e&&(a=e.Vue),a&&a.use(s),t.install=o,t.ResizeObserver=i,t.default=s,Object.defineProperty(t,"__esModule",{value:!0})}(n)}));n(C);var M=C.ResizeObserver,A=r((function(t,n){!function(t){function n(t){if(null!==t&&"function"!=typeof t)throw new Error("observe-visibility directive expects a function as the value")}var r={bind:function(t,e,r){var i=e.value;if("undefined"==typeof IntersectionObserver)console.warn("[vue-observe-visibility] IntersectionObserver API is not available in your browser. Please install this polyfill: https://github.com/WICG/IntersectionObserver/tree/gh-pages/polyfill");else{n(i),t._vue_visibilityCallback=i;var o=t._vue_intersectionObserver=new IntersectionObserver((function(e){var n=e[0];t._vue_visibilityCallback&&t._vue_visibilityCallback.call(null,n.intersectionRatio>0,n)}));r.context.$nextTick((function(){o.observe(t)}))}},update:function(t,e){var r=e.value;n(r),t._vue_visibilityCallback=r},unbind:function(t){t._vue_intersectionObserver&&(t._vue_intersectionObserver.disconnect(),delete t._vue_intersectionObserver,delete t._vue_visibilityCallback)}};function i(t){t.directive("observe-visibility",r)}var o={version:"0.3.1",install:i},s=null;"undefined"!=typeof window?s=window.Vue:void 0!==e&&(s=e.Vue),s&&s.use(o),t.install=i,t.ObserveVisibility=r,t.default=o,Object.defineProperty(t,"__esModule",{value:!0})}(n)}));n(A);var R=A.ObserveVisibility;var k,E,j=[{name:"center",watcher:function(t){return{lat:h(t.lat),lng:h(t.lng)}},identity:function(t,e){if(t&&e)return"function"!=typeof t.equals&&(t=new window.google.maps.LatLng(t)),"function"!=typeof e.equals&&(e=new window.google.maps.LatLng(e)),t.equals(e)},retriever:function(t){return{lat:t.lat(),lng:t.lng()}}},"heading","mapTypeId","tilt","zoom","options"],z=["click","dblclick","drag","dragend","dragstart","mousedown","mouseup","mousemove","mouseout","mouseover","resize","rightclick","tilesloaded"],S={name:"GoogleMapsMap",mixins:[b,v,y],components:{ResizeObserver:M},directives:{ObserveVisibility:R},props:{center:{required:!0,type:Object},heading:{type:Number},mapTypeId:{type:String},options:{type:Object,default:function(){return{}}},tilt:{type:Number},zoom:{required:!0,type:Number}},beforeCreate:function(){this.$_mapPromises=[]},googleMapsReady:function(){var t=this,e=this.$refs.map,n=c({center:this.center,heading:this.heading,mapTypeId:this.mapTypeId,tilt:this.tilt,zoom:this.zoom},this.options);this.$_map=new window.google.maps.Map(e,n),this.bindProps(this.$_map,j),this.listen(this.$_map,"bounds_changed",(function(){t.$emit("update:bounds",t.$_map.getBounds())})),this.listen(this.$_map,"idle",(function(){t.$emit("idle",t),t.lastCenter=t.$_map.getCenter()})),this.lastCenter=this.$_map.getCenter(),this.redirectEvents(this.$_map,z),this.$_mapPromises.forEach((function(e){return e(t.$_map)}))},watch:{options:{handler:"updateOptions",deep:!0}},methods:c({},(k={target:function(){return this.$_map},names:["panBy","panTo","panToBounds","fitBounds","getBounds"]},E=k.target,k.names.reduce((function(t,e){return t[e]=function(){var t=E.call(this);if(t){for(var n=arguments.length,r=new Array(n),i=0;i0&&void 0!==arguments[0])||arguments[0];this.$_map&&(window.google.maps.event.trigger(this.$_map,"resize"),t&&this.$_map.setCenter(this.lastCenter))},visibilityChanged:function(t){t&&this.$nextTick(this.resize)},$_getMap:function(){var t=this;return this.$_map?Promise.resolve(this.$_map):new Promise((function(e){t.$_mapPromises.push(e)}))},updateOptions:function(t){this.$_map&&this.$_map.setOptions(t||this.$props)}})};const L="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());let B;const I={};const T=S;var N=function(){var t=this.$createElement,e=this._self._c||t;return e("div",{directives:[{name:"observe-visibility",rawName:"v-observe-visibility",value:this.visibilityChanged,expression:"visibilityChanged"}],staticClass:"vue-google-map"},[e("div",{ref:"map",staticClass:"map-view"}),this._v(" "),e("div",{staticClass:"hidden-content"},[this._t("default")],2),this._v(" "),this._t("visible"),this._v(" "),e("resize-observer",{on:{notify:this.resize}})],2)};N._withStripped=!0;const D=function(t,e,n,r,i,o,s,a,l,c){"boolean"!=typeof s&&(l=a,a=s,s=!1);const u="function"==typeof n?n.options:n;let p;if(t&&t.render&&(u.render=t.render,u.staticRenderFns=t.staticRenderFns,u._compiled=!0,i&&(u.functional=!0)),r&&(u._scopeId=r),o?(p=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,l(t)),t&&t._registeredComponents&&t._registeredComponents.add(o)},u._ssrRegister=p):e&&(p=s?function(t){e.call(this,c(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,a(t))}),p)if(u.functional){const t=u.render;u.render=function(e,n){return p.call(n),t(e,n)}}else{const t=u.beforeCreate;u.beforeCreate=t?[].concat(t,p):[p]}return n}({render:N,staticRenderFns:[]},(function(t){t&&(t("data-v-29eb3fb3_0",{source:"@import '../../node_modules/vue-resize/dist/vue-resize.css';\n",map:{version:3,sources:["C:\\Users\\Mike\\source\\repos\\vue-googlemaps\\src\\components\\Map.vue"],names:[],mappings:"AAwMA,2DAAA",file:"Map.vue",sourcesContent:["\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n"]}, media: undefined }) + ,inject("data-v-29eb3fb3_1", { source: ".vue-google-map[data-v-29eb3fb3] {\n position: relative;\n}\n.vue-google-map .map-view[data-v-29eb3fb3] {\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n position: absolute;\n}\n.vue-google-map .hidden-content[data-v-29eb3fb3] {\n display: none;\n}\n", map: {"version":3,"sources":["C:\\Users\\Mike\\source\\repos\\vue-googlemaps\\src\\components\\Map.vue","Map.vue"],"names":[],"mappings":"AA4MA;EACA,kBAAA;AC3MA;AD6MA;EACA,OAAA;EACA,QAAA;EACA,MAAA;EACA,SAAA;EACA,kBAAA;AC3MA;AD8MA;EACA,aAAA;AC5MA","file":"Map.vue","sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",".vue-google-map {\n position: relative;\n}\n.vue-google-map .map-view {\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n position: absolute;\n}\n.vue-google-map .hidden-content {\n display: none;\n}\n"]}, media: undefined }); + + }; + /* scoped */ + const __vue_scope_id__ = "data-v-29eb3fb3"; + /* module identifier */ + const __vue_module_identifier__ = undefined; + /* functional template */ + const __vue_is_functional_template__ = false; + /* style inject SSR */ + + /* style inject shadow dom */ + + + + const __vue_component__ = normalizeComponent( + { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ }, + __vue_inject_styles__, + __vue_script__, + __vue_scope_id__, + __vue_is_functional_template__, + __vue_module_identifier__, + false, + createInjector, + undefined, + undefined + ); + + var boundProps$2 = ['animation', 'clickable', 'cursor', 'draggable', 'icon', 'label', 'opacity', 'place', 'position', 'shape', 'title', 'visible', 'zIndex']; + var redirectedEvents$2 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; + var Marker = { + name: 'GoogleMapsMarker', + mixins: [MapElement], + props: { + animation: { + type: Number + }, + clickable: { + type: Boolean, + "default": true + }, + cursor: { + type: String + }, + draggable: { + type: Boolean, + "default": false + }, + icon: {}, + label: {}, + opacity: { + type: Number, + "default": 1 + }, + place: { + type: Object + }, + position: { + type: Object + }, + shape: { + type: Object + }, + title: { + type: String + }, + visible: { + "default": true + }, + zIndex: { + type: Number + } + }, + render: function render(h) { + if (!this.$slots["default"] || this.$slots["default"].length === 0) { + return ''; + } else if (this.$slots["default"].length === 1) { + // So that infowindows can have a marker parent + return this.$slots["default"][0]; + } else { + return h('div', this.$slots["default"]); + } + }, + googleMapsReady: function googleMapsReady() { + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_marker = new window.google.maps.Marker(options); + this.bindProps(this.$_marker, boundProps$2); + this.redirectEvents(this.$_marker, redirectedEvents$2); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_marker) { + this.$_marker.setMap(null); + } + } + }; - methods: { - updateOptions: function updateOptions(options) { - this.$_polyline && this.$_polyline.setOptions(options || this.$props); - } - }, - - render: function render(h) { - return ''; - }, - googleMapsReady: function googleMapsReady() { - var _this = this; - - var options = Object.assign({}, this.$props); - options.map = this.$_map; - - this.$_polyline = new window.google.maps.Polyline(options); - this.bindProps(this.$_polyline, boundProps$3); - this.redirectEvents(this.$_polyline, redirectedEvents$3); - this.listen(this.$_polyline, 'drag', function () { - _this.$emit('path_changed', _this.$_polyline.getPath()); - }); - }, - beforeDestroy: function beforeDestroy() { - if (this.$_polyline) { - this.$_polyline.setMap(null); - } - } -}; + var NearbyPlaces = { + name: 'GoogleMapsNearbyPlaces', + mixins: [Service], + methods: { + createServices: function createServices() { + this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); + }, + update: function update() { + var _this = this; + + this.loading = true; + this.$_placeService.nearbySearch(this.request, function (results, status) { + _this.setResults(results, status); + + _this.loading = false; + }); + } + } + }; -var boundProps$4 = ['bounds', 'draggable', 'editable', 'visible', 'options']; + var PlaceDetails = { + name: 'GoogleMapsPlaceDetails', + mixins: [Service], + methods: { + createServices: function createServices() { + this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); + }, + update: function update() { + var _this = this; + + this.loading = true; + this.$_placeService.getDetails(this.request, function (results, status) { + _this.setResults(results, status); + + _this.loading = false; + }); + } + } + }; -var redirectedEvents$4 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; + var defaultPositionStyle; + var defaultAccuracyStyle = { + strokeColor: '#4285F4', + strokeOpacity: 0.25, + fillColor: '#4285F4', + fillOpacity: 0.2, + strokeWeight: 1 + }; + var UserPosition = { + name: 'GoogleMapsUserPosition', + mixins: [Ready], + props: { + accuracy: { + "default": 0 + }, + accuracyStyle: { + type: Object, + "default": null + }, + disableWatch: { + type: Boolean, + "default": false + }, + hideAccuracy: { + type: Boolean, + "default": false + }, + minimumAccuracy: { + "default": 1000 + }, + position: { + type: Object + }, + positionStyle: { + type: Object, + "default": null + }, + positionOptions: { + type: Object, + "default": function _default() { + return { + enableHighAccuracy: true, + maximumAge: 1000 + }; + } + } + }, + data: function data() { + return { + currentPosition: null, + currentAccuracy: null + }; + }, + watch: { + position: function position(value) { + this.currentPosition = value; + }, + accuracy: function accuracy(value) { + this.currentAccuracy = value; + }, + disableWatch: function disableWatch(value, oldValue) { + if (value !== oldValue) { + if (value) { + this.stopWatch(); + } else { + this.startWatch(); + } + } + }, + positionOptions: function positionOptions(value) { + if (!this.disableWatch) { + this.stopWatch(); + this.startWatch(); + } + } + }, + methods: { + startWatch: function startWatch() { + if (navigator.geolocation) { + this.$_watchId = navigator.geolocation.watchPosition(this.updatePosition, this.onWatchError, this.positionOptions); + } else { + console.warn('GoogleMapsUserPosition: navigator.geolocation not supported'); + this.$emit('error', new Error('unsupported')); + } + }, + stopWatch: function stopWatch() { + if (navigator.geolocation) { + navigator.geolocation.clearWatch(this.$_watchId); + } + }, + updatePosition: function updatePosition(position) { + this.currentPosition = { + lat: position.coords.latitude, + lng: position.coords.longitude + }; + this.$emit('update:position', this.currentPosition); + this.currentAccuracy = position.coords.accuracy; + this.$emit('update:accuracy', this.currentAccuracy); + }, + onWatchError: function onWatchError(e) { + this.$emit('error', e); + } + }, + render: function render(h) { + var markers = []; + + if (this.googleMapsReady && this.currentPosition && (this.minimumAccuracy === null || this.currentAccuracy <= this.minimumAccuracy)) { + markers.push(h(Marker, { + props: { + clickable: false, + icon: this.positionStyle || defaultPositionStyle, + optimized: false, + position: this.currentPosition, + zIndex: 3 + } + })); + + if (!this.hideAccuracy) { + markers.push(h(Circle, { + props: { + clickable: false, + radius: this.currentAccuracy, + options: this.accuracyStyle || defaultAccuracyStyle, + center: this.currentPosition, + zIndex: 1 + } + })); + } + } + + return h('div', markers); + }, + googleMapsReady: function googleMapsReady() { + defaultPositionStyle = { + path: window.google.maps.SymbolPath.CIRCLE, + fillColor: '#4285F4', + fillOpacity: 1, + scale: 6, + strokeColor: 'white', + strokeWeight: 2 + }; + + if (!this.disableWatch) { + this.startWatch(); + } + }, + beforeDestroy: function beforeDestroy() { + this.stopWatch(); + } + }; -var Rectangle = { - name: 'GoogleMapsRectangle', + var boundProps$3 = ['draggable', 'editable', 'options', 'path']; + var redirectedEvents$3 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; + var Polyline = { + name: 'GoogleMapsPolyline', + mixins: [MapElement], + props: { + editable: { + type: Boolean, + "default": false + }, + draggable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + path: { + type: Array + } + }, + watch: { + options: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_polyline && this.$_polyline.setOptions(options || this.$props); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var _this = this; + + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_polyline = new window.google.maps.Polyline(options); + this.bindProps(this.$_polyline, boundProps$3); + this.redirectEvents(this.$_polyline, redirectedEvents$3); + this.listen(this.$_polyline, 'drag', function () { + _this.$emit('path_changed', _this.$_polyline.getPath()); + }); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_polyline) { + this.$_polyline.setMap(null); + } + } + }; - mixins: [MapElement], + var boundProps$4 = ['bounds', 'draggable', 'editable', 'visible', 'options']; + var redirectedEvents$4 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; + var Rectangle = { + name: 'GoogleMapsRectangle', + mixins: [MapElement], + props: { + bounds: { + type: Object, + required: true + }, + clickable: { + type: Boolean, + "default": true + }, + draggable: { + type: Boolean, + "default": false + }, + editable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + visible: { + "default": true + }, + zIndex: { + type: Number + } + }, + watch: { + bounds: 'updateBounds', + options: 'updateOptions', + clickable: 'updateOptions', + zIndex: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_rectangle && this.$_rectangle.setOptions(options || this.$props); + }, + updateBounds: function updateBounds(bounds) { + this.$_rectangle && this.$_rectangle.setBounds(bounds); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_rectangle = new window.google.maps.Rectangle(options); + this.bindProps(this.$_rectangle, boundProps$4); + this.redirectEvents(this.$_rectangle, redirectedEvents$4); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_rectangle) { + this.$_rectangle.setMap(null); + } + } + }; - props: { - bounds: { - type: Object, - required: true - }, - clickable: { - type: Boolean, - default: true - }, - draggable: { - type: Boolean, - default: false - }, - editable: { - type: Boolean, - default: false - }, - options: { - type: Object, - default: function _default() { - return {}; - } - }, - visible: { - default: true - }, - zIndex: { - type: Number - } - }, - - watch: { - bounds: 'updateBounds', - options: 'updateOptions', - clickable: 'updateOptions', - zIndex: 'updateOptions' - }, - - methods: { - updateOptions: function updateOptions(options) { - this.$_rectangle && this.$_rectangle.setOptions(options || this.$props); - }, - updateBounds: function updateBounds(bounds) { - this.$_rectangle && this.$_rectangle.setBounds(bounds); - } - }, - - render: function render(h) { - return ''; - }, - googleMapsReady: function googleMapsReady() { - var options = Object.assign({}, this.$props); - options.map = this.$_map; - - this.$_rectangle = new window.google.maps.Rectangle(options); - this.bindProps(this.$_rectangle, boundProps$4); - this.redirectEvents(this.$_rectangle, redirectedEvents$4); - }, - beforeDestroy: function beforeDestroy() { - if (this.$_rectangle) { - this.$_rectangle.setMap(null); - } - } -}; + var boundProps$5 = ['draggable', 'editable', 'options', 'paths']; + var redirectedEvents$5 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; + var Polygon = { + name: 'GoogleMapsPolygon', + mixins: [MapElement], + props: { + editable: { + type: Boolean, + "default": false + }, + draggable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + paths: { + type: Array + } + }, + watch: { + paths: 'updateOptions', + options: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_polygon && this.$_polygon.setOptions(options || this.$props); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var _this = this; + + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_polygon = new window.google.maps.Polygon(options); + this.bindProps(this.$_polygon, boundProps$5); + this.redirectEvents(this.$_polygon, redirectedEvents$5); + this.listen(this.$_polygon, 'drag', function () { + _this.$emit('path_changed', _this.$_polygon.getPath()); + }); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_polygon) { + this.$_polygon.setMap(null); + } + } + }; -var boundProps$5 = ['draggable', 'editable', 'options', 'paths']; + var boundProps$6 = []; + var redirectedEvents$6 = []; + var DirectionsRenderer = { + name: 'GoogleMapsDirectionsRenderer', + mixins: [MapElement], + props: { + options: { + type: Object, + "default": function _default() { + return {}; + } + } + }, + watch: { + options: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_directionsRenderer && this.$_directionsRenderer.setOptions(options || this.$props); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var options = Object.assign({}, this.$props); + options.map = this.$_map; + console.log(options); + this.$_directionsRenderer = new window.google.maps.DirectionsRenderer(options); + this.bindProps(this.$_polyline, boundProps$6); + this.redirectEvents(this.$_polyline, redirectedEvents$6); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_directionsRenderer) { + this.$_directionsRenderer.setMap(null); + } + } + }; -var redirectedEvents$5 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; + var DirectionsService = { + name: 'GoogleMapsDirectionsService', + mixins: [Service], + methods: { + createServices: function createServices() { + this.$_directionsService = new window.google.maps.DirectionsService(this.$refs.attributions); + }, + update: function update() { + var _this = this; + + this.loading = true; + this.$_directionsService.route(this.request, function (results, status) { + _this.setResults(results, status); + + _this.loading = false; + }); + } + } + }; -var Polygon = { - name: 'GoogleMapsPolygon', + var Directions = { + name: 'GoogleMapsDirections', + data: function data() { + return { + directions: null + }; + }, + props: { + //#region DirectionsService + origin: { + type: String | Object, + required: true + }, + destination: { + type: String | Object, + required: true + }, + travelMode: { + type: String, + "default": "DRIVING" + }, + transitOptions: { + type: Object, + "default": null + }, + unitSystem: { + type: Array, + "default": null + }, + waypoints: { + type: String | Object, + "default": null + }, + optimizeWaypoints: { + type: Boolean, + "default": null + }, + provideRouteAlternatives: { + type: Boolean, + "default": null + }, + avoidFerries: { + type: Boolean, + "default": null + }, + avoidHighways: { + type: Boolean, + "default": null + }, + avoidTolls: { + type: Boolean, + "default": null + }, + region: { + type: String, + "default": null + }, + //#endregion + //#region DirectionsRenderer + draggable: { + type: Boolean, + "default": null + }, + hideRouteList: { + type: Boolean, + "default": null + }, + infoWindow: { + type: Object, + "default": null + }, + markerOptions: { + type: Object, + "default": null + }, + panel: { + type: Node, + "default": null + }, + polylineOptions: { + type: Object, + "default": null + }, + preserveViewport: { + type: Boolean, + "default": null + }, + routeIndex: { + type: Number, + "default": null + }, + supressBicycleLayer: { + type: Boolean, + "default": null + }, + suppressInfoWindows: { + type: Boolean, + "default": null + }, + suppressMarkers: { + type: Boolean, + "default": null + }, + suppressPolylines: { + type: Boolean, + "default": null + } //#endregion + + }, + computed: { + directionsRequest: function directionsRequest() { + return { + origin: this.origin, + destination: this.destination, + travelMode: this.travelMode, + transitOptions: this.transitOptions, + unitSystem: this.unitSystem, + waypoints: this.waypoints, + optimizeWaypoints: this.optimizeWaypoints, + provideRouteAlternatives: this.provideRouteAlternatives, + avoidFerries: this.avoidFerries, + avoidHighways: this.avoidHighways, + avoidTolls: this.avoidTolls, + region: this.region + }; + }, + directionsRendererOptions: function directionsRendererOptions() { + return { + options: _objectSpread2({}, this.directions && { + directions: this.directions + }, { + draggable: this.draggable, + hideRouteList: this.hideRouteList, + infoWindow: this.infoWindow, + markerOptions: this.markerOptions, + panel: this.panel, + polylineOptions: this.polylineOptions, + preserveViewport: this.preserveViewport, + routeIndex: this.routeIndex, + supressBicycleLayer: this.supressBicycleLayer, + suppressInfoWindows: this.suppressInfoWindows, + suppressMarkers: this.suppressMarkers, + suppressPolylines: this.suppressPolylines + }) + }; + } + }, + render: function render(h) { + var _this = this; + + return h('div', {}, [h(DirectionsService, { + props: { + request: this.directionsRequest + }, + on: { + results: function results($event) { + _this.directions = $event; + } + } + }), h(DirectionsRenderer, { + props: this.directionsRendererOptions + })]); + } + }; - mixins: [MapElement], + function registerComponents(Vue, prefix) { + Vue.component("".concat(prefix, "circle"), Circle); + Vue.component("".concat(prefix, "rectangle"), Rectangle); + Vue.component("".concat(prefix, "geocoder"), Geocoder); + Vue.component("".concat(prefix, "map"), __vue_component__); + Vue.component("".concat(prefix, "marker"), Marker); + Vue.component("".concat(prefix, "nearby-places"), NearbyPlaces); + Vue.component("".concat(prefix, "place-details"), PlaceDetails); + Vue.component("".concat(prefix, "user-position"), UserPosition); + Vue.component("".concat(prefix, "polyline"), Polyline); + Vue.component("".concat(prefix, "polygon"), Polygon); + Vue.component("".concat(prefix, "directions"), Directions); + } - props: { - editable: { - type: Boolean, - default: false - }, - draggable: { - type: Boolean, - default: false - }, - options: { - type: Object, - default: function _default() { - return {}; - } - }, - paths: { - type: Array - } - }, + var plugin = { + // eslint-disable-next-line no-undef + version: "0.1.3-alpha1", + install: function install(Vue, options) { + var finalOptions = Object.assign({}, { + installComponents: true, + componentsPrefix: 'googlemaps-' + }, options); + optionMergeStrategies(Vue); + initErrorHandling(Vue); + + if (finalOptions.installComponents) { + registerComponents(Vue, finalOptions.componentsPrefix); + } + + if (finalOptions.load) { + loader.load(finalOptions.load); + } + } + }; - watch: { - paths: 'updateOptions', - options: 'updateOptions' - }, + var GlobalVue = null; - methods: { - updateOptions: function updateOptions(options) { - this.$_polygon && this.$_polygon.setOptions(options || this.$props); - } - }, - - render: function render(h) { - return ''; - }, - googleMapsReady: function googleMapsReady() { - var _this = this; - - var options = Object.assign({}, this.$props); - options.map = this.$_map; - - this.$_polygon = new window.google.maps.Polygon(options); - this.bindProps(this.$_polygon, boundProps$5); - this.redirectEvents(this.$_polygon, redirectedEvents$5); - this.listen(this.$_polygon, 'drag', function () { - _this.$emit('path_changed', _this.$_polygon.getPath()); - }); - }, - beforeDestroy: function beforeDestroy() { - if (this.$_polygon) { - this.$_polygon.setMap(null); - } + if (typeof window !== 'undefined') { + GlobalVue = window.Vue; + } else if (typeof global !== 'undefined') { + GlobalVue = global.Vue; } -}; - -function registerComponents(Vue, prefix) { - Vue.component(prefix + 'circle', Circle); - Vue.component(prefix + 'rectangle', Rectangle); - Vue.component(prefix + 'geocoder', Geocoder); - Vue.component(prefix + 'map', Map); - Vue.component(prefix + 'marker', Marker); - Vue.component(prefix + 'nearby-places', NearbyPlaces); - Vue.component(prefix + 'place-details', PlaceDetails); - Vue.component(prefix + 'user-position', UserPosition); - Vue.component(prefix + 'polyline', Polyline); - Vue.component(prefix + 'polygon', Polygon); -} - -var plugin = { - // eslint-disable-next-line no-undef - version: "0.1.2", - install: function install(Vue, options) { - var finalOptions = Object.assign({}, { - installComponents: true, - componentsPrefix: 'googlemaps-' - }, options); - - optionMergeStrategies(Vue); - initErrorHandling(Vue); - - if (finalOptions.installComponents) { - registerComponents(Vue, finalOptions.componentsPrefix); - } - if (finalOptions.load) { - loader.load(finalOptions.load); - } + if (GlobalVue) { + GlobalVue.use(plugin); } -}; - -// Auto-install -var GlobalVue = null; -if (typeof window !== 'undefined') { - GlobalVue = window.Vue; -} else if (typeof global !== 'undefined') { - GlobalVue = global.Vue; -} -if (GlobalVue) { - GlobalVue.use(plugin); -} - -exports.Circle = Circle; -exports.Rectangle = Rectangle; -exports.Geocoder = Geocoder; -exports.Map = Map; -exports.Marker = Marker; -exports.NearbyPlaces = NearbyPlaces; -exports.PlaceDetails = PlaceDetails; -exports.UserPosition = UserPosition; -exports.MapElement = MapElement; -exports.Polyline = Polyline; -exports.Polygon = Polygon; -exports['default'] = plugin; - -Object.defineProperty(exports, '__esModule', { value: true }); + + exports.Circle = Circle; + exports.Directions = Directions; + exports.Geocoder = Geocoder; + exports.Map = __vue_component__; + exports.MapElement = MapElement; + exports.Marker = Marker; + exports.NearbyPlaces = NearbyPlaces; + exports.PlaceDetails = PlaceDetails; + exports.Polygon = Polygon; + exports.Polyline = Polyline; + exports.Rectangle = Rectangle; + exports.UserPosition = UserPosition; + exports.default = plugin; + + Object.defineProperty(exports, '__esModule', { value: true }); }))); diff --git a/docs/build.js b/docs/build.js index a97b2d9..98aedfd 100644 --- a/docs/build.js +++ b/docs/build.js @@ -1,17 +1,17619 @@ -!function(t){function e(i){if(n[i])return n[i].exports;var o=n[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,e),o.l=!0,o.exports}var n={};e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,i){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:i})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="/",e(e.s=20)}([function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e-1&&e.splice(n,1)}}function l(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;m(t,n,[],t._modules.root,!0),c(t,n,e)}function c(t,e,n){var i=t._vm;t.getters={};var r=t._wrappedGetters,a={};o(r,function(e,n){a[n]=function(){return e(t)},Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})});var s=k.config.silent;k.config.silent=!0,t._vm=new k({data:{$$state:e},computed:a}),k.config.silent=s,t.strict&&b(t),i&&(n&&t._withCommit(function(){i._data.$$state=null}),k.nextTick(function(){return i.$destroy()}))}function m(t,e,n,i,o){var r=!n.length,a=t._modules.getNamespace(n);if(i.namespaced&&(t._modulesNamespaceMap[a]=i),!r&&!o){var s=x(e,n.slice(0,-1)),d=n[n.length-1];t._withCommit(function(){k.set(s,d,i.state)})}var l=i.context=u(t,a,n);i.forEachMutation(function(e,n){p(t,a+n,e,l)}),i.forEachAction(function(e,n){var i=e.root?n:a+n,o=e.handler||e;h(t,i,o,l)}),i.forEachGetter(function(e,n){g(t,a+n,e,l)}),i.forEachChild(function(i,r){m(t,e,n.concat(r),i,o)})}function u(t,e,n){var i=""===e,o={dispatch:i?t.dispatch:function(n,i,o){var r=v(n,i,o),a=r.payload,s=r.options,d=r.type;return s&&s.root||(d=e+d),t.dispatch(d,a)},commit:i?t.commit:function(n,i,o){var r=v(n,i,o),a=r.payload,s=r.options,d=r.type;s&&s.root||(d=e+d),t.commit(d,a,s)}};return Object.defineProperties(o,{getters:{get:i?function(){return t.getters}:function(){return f(t,e)}},state:{get:function(){return x(t.state,n)}}}),o}function f(t,e){var n={},i=e.length;return Object.keys(t.getters).forEach(function(o){if(o.slice(0,i)===e){var r=o.slice(i);Object.defineProperty(n,r,{get:function(){return t.getters[o]},enumerable:!0})}}),n}function p(t,e,n,i){(t._mutations[e]||(t._mutations[e]=[])).push(function(e){n.call(t,i.state,e)})}function h(t,e,n,i){(t._actions[e]||(t._actions[e]=[])).push(function(e,o){var r=n.call(t,{dispatch:i.dispatch,commit:i.commit,getters:i.getters,state:i.state,rootGetters:t.getters,rootState:t.state},e,o);return a(r)||(r=Promise.resolve(r)),t._devtoolHook?r.catch(function(e){throw t._devtoolHook.emit("vuex:error",e),e}):r})}function g(t,e,n,i){t._wrappedGetters[e]||(t._wrappedGetters[e]=function(t){return n(i.state,i.getters,t.state,t.getters)})}function b(t){t._vm.$watch(function(){return this._data.$$state},function(){},{deep:!0,sync:!0})}function x(t,e){return e.length?e.reduce(function(t,e){return t[e]},t):t}function v(t,e,n){return r(t)&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function y(t){k&&t===k||(k=t,C(k))}function _(t){return Array.isArray(t)?t.map(function(t){return{key:t,val:t}}):Object.keys(t).map(function(e){return{key:e,val:t[e]}})}function w(t){return function(e,n){return"string"!=typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function E(t,e,n){return t._modulesNamespaceMap[n]}n.d(e,"a",function(){return P}),n.d(e,"b",function(){return L});/** +/******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // identity function for calling harmony imports with the correct context +/******/ __webpack_require__.i = function(value) { return value; }; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { +/******/ configurable: false, +/******/ enumerable: true, +/******/ get: getter +/******/ }); +/******/ } +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = "/"; +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(__webpack_require__.s = 20); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ (function(module, exports) { + +/* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Tobias Koppers @sokra +*/ +// css base code, injected by the css-loader +module.exports = function() { + var list = []; + + // return the list of modules as css string + list.toString = function toString() { + var result = []; + for(var i = 0; i < this.length; i++) { + var item = this[i]; + if(item[2]) { + result.push("@media " + item[2] + "{" + item[1] + "}"); + } else { + result.push(item[1]); + } + } + return result.join(""); + }; + + // import a list of modules into the list + list.i = function(modules, mediaQuery) { + if(typeof modules === "string") + modules = [[null, modules, ""]]; + var alreadyImportedModules = {}; + for(var i = 0; i < this.length; i++) { + var id = this[i][0]; + if(typeof id === "number") + alreadyImportedModules[id] = true; + } + for(i = 0; i < modules.length; i++) { + var item = modules[i]; + // skip already imported module + // this implementation is not 100% perfect for weird media query combinations + // when a module is imported multiple times with different media queries. + // I hope this will never occur (Hey this way we have smaller bundles) + if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) { + if(mediaQuery && !item[2]) { + item[2] = mediaQuery; + } else if(mediaQuery) { + item[2] = "(" + item[2] + ") and (" + mediaQuery + ")"; + } + list.push(item); + } + } + }; + return list; +}; + + +/***/ }), +/* 1 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* unused harmony export Store */ +/* unused harmony export install */ +/* unused harmony export mapState */ +/* unused harmony export mapMutations */ +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return mapGetters; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return mapActions; }); +/* unused harmony export createNamespacedHelpers */ +/** * vuex v2.5.0 * (c) 2017 Evan You * @license MIT */ -var C=function(t){function e(){var t=this.$options;t.store?this.$store="function"==typeof t.store?t.store():t.store:t.parent&&t.parent.$store&&(this.$store=t.parent.$store)}if(Number(t.version.split(".")[0])>=2)t.mixin({beforeCreate:e});else{var n=t.prototype._init;t.prototype._init=function(t){void 0===t&&(t={}),t.init=t.init?[e].concat(t.init):e,n.call(this,t)}}},A="undefined"!=typeof window&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,T=function(t,e){this.runtime=e,this._children=Object.create(null),this._rawModule=t;var n=t.state;this.state=("function"==typeof n?n():n)||{}},M={namespaced:{configurable:!0}};M.namespaced.get=function(){return!!this._rawModule.namespaced},T.prototype.addChild=function(t,e){this._children[t]=e},T.prototype.removeChild=function(t){delete this._children[t]},T.prototype.getChild=function(t){return this._children[t]},T.prototype.update=function(t){this._rawModule.namespaced=t.namespaced,t.actions&&(this._rawModule.actions=t.actions),t.mutations&&(this._rawModule.mutations=t.mutations),t.getters&&(this._rawModule.getters=t.getters)},T.prototype.forEachChild=function(t){o(this._children,t)},T.prototype.forEachGetter=function(t){this._rawModule.getters&&o(this._rawModule.getters,t)},T.prototype.forEachAction=function(t){this._rawModule.actions&&o(this._rawModule.actions,t)},T.prototype.forEachMutation=function(t){this._rawModule.mutations&&o(this._rawModule.mutations,t)},Object.defineProperties(T.prototype,M);var O=function(t){this.register([],t,!1)};O.prototype.get=function(t){return t.reduce(function(t,e){return t.getChild(e)},this.root)},O.prototype.getNamespace=function(t){var e=this.root;return t.reduce(function(t,n){return e=e.getChild(n),t+(e.namespaced?n+"/":"")},"")},O.prototype.update=function(t){s([],this.root,t)},O.prototype.register=function(t,e,n){var i=this;void 0===n&&(n=!0);var r=new T(e,n);if(0===t.length)this.root=r;else{this.get(t.slice(0,-1)).addChild(t[t.length-1],r)}e.modules&&o(e.modules,function(e,o){i.register(t.concat(o),e,n)})},O.prototype.unregister=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1];e.getChild(n).runtime&&e.removeChild(n)};var k,N=function(t){var e=this;void 0===t&&(t={}),!k&&"undefined"!=typeof window&&window.Vue&&y(window.Vue);var n=t.plugins;void 0===n&&(n=[]);var o=t.strict;void 0===o&&(o=!1);var r=t.state;void 0===r&&(r={}),"function"==typeof r&&(r=r()||{}),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new O(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new k;var a=this,s=this,d=s.dispatch,l=s.commit;this.dispatch=function(t,e){return d.call(a,t,e)},this.commit=function(t,e,n){return l.call(a,t,e,n)},this.strict=o,m(this,r,[],this._modules.root),c(this,r),n.forEach(function(t){return t(e)}),k.config.devtools&&i(this)},S={state:{configurable:!0}};S.state.get=function(){return this._vm._data.$$state},S.state.set=function(t){},N.prototype.commit=function(t,e,n){var i=this,o=v(t,e,n),r=o.type,a=o.payload,s=(o.options,{type:r,payload:a}),d=this._mutations[r];d&&(this._withCommit(function(){d.forEach(function(t){t(a)})}),this._subscribers.forEach(function(t){return t(s,i.state)}))},N.prototype.dispatch=function(t,e){var n=this,i=v(t,e),o=i.type,r=i.payload,a={type:o,payload:r},s=this._actions[o];if(s)return this._actionSubscribers.forEach(function(t){return t(a,n.state)}),s.length>1?Promise.all(s.map(function(t){return t(r)})):s[0](r)},N.prototype.subscribe=function(t){return d(t,this._subscribers)},N.prototype.subscribeAction=function(t){return d(t,this._actionSubscribers)},N.prototype.watch=function(t,e,n){var i=this;return this._watcherVM.$watch(function(){return t(i.state,i.getters)},e,n)},N.prototype.replaceState=function(t){var e=this;this._withCommit(function(){e._vm._data.$$state=t})},N.prototype.registerModule=function(t,e,n){void 0===n&&(n={}),"string"==typeof t&&(t=[t]),this._modules.register(t,e),m(this,this.state,t,this._modules.get(t),n.preserveState),c(this,this.state)},N.prototype.unregisterModule=function(t){var e=this;"string"==typeof t&&(t=[t]),this._modules.unregister(t),this._withCommit(function(){var n=x(e.state,t.slice(0,-1));k.delete(n,t[t.length-1])}),l(this)},N.prototype.hotUpdate=function(t){this._modules.update(t),l(this,!0)},N.prototype._withCommit=function(t){var e=this._committing;this._committing=!0,t(),this._committing=e},Object.defineProperties(N.prototype,S);var R=w(function(t,e){var n={};return _(e).forEach(function(e){var i=e.key,o=e.val;n[i]=function(){var e=this.$store.state,n=this.$store.getters;if(t){var i=E(this.$store,"mapState",t);if(!i)return;e=i.context.state,n=i.context.getters}return"function"==typeof o?o.call(this,e,n):e[o]},n[i].vuex=!0}),n}),$=w(function(t,e){var n={};return _(e).forEach(function(e){var i=e.key,o=e.val;n[i]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var i=this.$store.commit;if(t){var r=E(this.$store,"mapMutations",t);if(!r)return;i=r.context.commit}return"function"==typeof o?o.apply(this,[i].concat(e)):i.apply(this.$store,[o].concat(e))}}),n}),P=w(function(t,e){var n={};return _(e).forEach(function(e){var i=e.key,o=e.val;o=t+o,n[i]=function(){if(!t||E(this.$store,"mapGetters",t))return this.$store.getters[o]},n[i].vuex=!0}),n}),L=w(function(t,e){var n={};return _(e).forEach(function(e){var i=e.key,o=e.val;n[i]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var i=this.$store.dispatch;if(t){var r=E(this.$store,"mapActions",t);if(!r)return;i=r.context.dispatch}return"function"==typeof o?o.apply(this,[i].concat(e)):i.apply(this.$store,[o].concat(e))}}),n}),I=function(t){return{mapState:R.bind(null,t),mapGetters:P.bind(null,t),mapMutations:$.bind(null,t),mapActions:L.bind(null,t)}},H={Store:N,install:y,version:"2.5.0",mapState:R,mapMutations:$,mapGetters:P,mapActions:L,createNamespacedHelpers:I};e.c=H},function(t,e){t.exports=function(t,e,n,i,o){var r,a=t=t||{},s=typeof t.default;"object"!==s&&"function"!==s||(r=t,a=t.default);var d="function"==typeof a?a.options:a;e&&(d.render=e.render,d.staticRenderFns=e.staticRenderFns),i&&(d._scopeId=i);var l;if(o?(l=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),n&&n.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},d._ssrRegister=l):n&&(l=n),l){var c=d.functional,m=c?d.render:d.beforeCreate;c?d.render=function(t,e){return l.call(e),m(t,e)}:d.beforeCreate=m?[].concat(m,l):[l]}return{esModule:r,exports:a,options:d}}},function(t,e,n){function i(t){for(var e=0;en.parts.length&&(i.parts.length=n.parts.length)}else{for(var a=[],o=0;o=0&&Math.floor(e)===e&&isFinite(t)}function u(t){return null==t?"":"object"==typeof t?JSON.stringify(t,null,2):String(t)}function f(t){var e=parseFloat(t);return isNaN(e)?t:e}function p(t,e){for(var n=Object.create(null),i=t.split(","),o=0;o-1)return t.splice(n,1)}}function g(t,e){return Ci.call(t,e)}function b(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}function x(t,e){function n(n){var i=arguments.length;return i?i>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n}function v(t,e){return t.bind(e)}function y(t,e){e=e||0;for(var n=t.length-e,i=new Array(n);n--;)i[n]=t[n+e];return i}function _(t,e){for(var n in e)t[n]=e[n];return t}function w(t){for(var e={},n=0;n-1)if(r&&!g(o,"default"))a=!1;else if(""===a||a===ki(t)){var d=nt(String,o.type);(d<0||s0&&(a=vt(a,(e||"")+"_"+n),xt(a[0])&&xt(l)&&(c[d]=$(l.text+a[0].text),a.shift()),c.push.apply(c,a)):s(a)?xt(l)?c[d]=$(l.text+a):""!==a&&c.push($(a)):xt(a)&&xt(l)?c[d]=$(l.text+a.text):(r(t._isVList)&&o(a.tag)&&i(a.key)&&o(e)&&(a.key="__vlist"+e+"_"+n+"__"),c.push(a)));return c}function yt(t,e){return(t.__esModule||to&&"Module"===t[Symbol.toStringTag])&&(t=t.default),d(t)?e.extend(t):t}function _t(t,e,n,i,o){var r=so();return r.asyncFactory=t,r.asyncMeta={data:e,context:n,children:i,tag:o},r}function wt(t,e,n){if(r(t.error)&&o(t.errorComp))return t.errorComp;if(o(t.resolved))return t.resolved;if(r(t.loading)&&o(t.loadingComp))return t.loadingComp;if(!o(t.contexts)){var a=t.contexts=[n],s=!0,l=function(t){for(var e=0,n=a.length;e$o&&Oo[n].id>t.id;)n--;Oo.splice(n+1,0,t)}else Oo.push(t);So||(So=!0,dt(Ft))}}function Gt(t,e,n){Io.get=function(){return this[e][n]},Io.set=function(t){this[e][n]=t},Object.defineProperty(t,n,Io)}function Yt(t){t._watchers=[];var e=t.$options;e.props&&Kt(t,e.props),e.methods&&ne(t,e.methods),e.data?Xt(t):j(t._data={},!0),e.computed&&Jt(t,e.computed),e.watch&&e.watch!==Gi&&ie(t,e.watch)}function Kt(t,e){var n=t.$options.propsData||{},i=t._props={},o=t.$options._propKeys=[],r=!t.$parent;r||L(!1);for(var a in e)!function(r){o.push(r);var a=J(r,e,n,t);D(i,r,a),r in t||Gt(t,"_props",r)}(a);L(!0)}function Xt(t){var e=t.$options.data;e=t._data="function"==typeof e?Zt(e,t):e||{},l(e)||(e={});for(var n=Object.keys(e),i=t.$options.props,o=(t.$options.methods,n.length);o--;){var r=n[o];i&&g(i,r)||M(r)||Gt(t,"_data",r)}j(e,!0)}function Zt(t,e){S();try{return t.call(e,e)}catch(t){return it(t,e,"data()"),{}}finally{R()}}function Jt(t,e){var n=t._computedWatchers=Object.create(null),i=Ji();for(var o in e){var r=e[o],a="function"==typeof r?r:r.get;i||(n[o]=new Lo(t,a||E,E,Ho)),o in t||Qt(t,o,r)}}function Qt(t,e,n){var i=!Ji();"function"==typeof n?(Io.get=i?te(e):ee(n),Io.set=E):(Io.get=n.get?i&&!1!==n.cache?te(e):ee(n.get):E,Io.set=n.set||E),Object.defineProperty(t,e,Io)}function te(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),io.target&&e.depend(),e.value}}function ee(t){return function(){return t.call(this,this)}}function ne(t,e){t.$options.props;for(var n in e)t[n]="function"!=typeof e[n]?E:Ni(e[n],t)}function ie(t,e){for(var n in e){var i=e[n];if(Array.isArray(i))for(var o=0;o=0||n.indexOf(t[o])<0)&&i.push(t[o]);return i}return t}function je(t){this._init(t)}function De(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=y(arguments,1);return n.unshift(this),"function"==typeof t.install?t.install.apply(t,n):"function"==typeof t&&t.apply(null,n),e.push(t),this}}function Be(t){t.mixin=function(t){return this.options=X(this.options,t),this}}function ze(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,i=n.cid,o=t._Ctor||(t._Ctor={});if(o[i])return o[i];var r=t.name||n.options.name,a=function(t){this._init(t)};return a.prototype=Object.create(n.prototype),a.prototype.constructor=a,a.cid=e++,a.options=X(n.options,t),a.super=n,a.options.props&&Fe(a),a.options.computed&&Ue(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,Pi.forEach(function(t){a[t]=n[t]}),r&&(a.options.components[r]=a),a.superOptions=n.options,a.extendOptions=t,a.sealedOptions=_({},a.options),o[i]=a,a}}function Fe(t){var e=t.options.props;for(var n in e)Gt(t.prototype,"_props",n)}function Ue(t){var e=t.options.computed;for(var n in e)Qt(t.prototype,n,e[n])}function We(t){Pi.forEach(function(e){t[e]=function(t,n){return n?("component"===e&&l(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}})}function Ve(t){return t&&(t.Ctor.options.name||t.tag)}function qe(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!c(t)&&t.test(e)}function Ge(t,e){var n=t.cache,i=t.keys,o=t._vnode;for(var r in n){var a=n[r];if(a){var s=Ve(a.componentOptions);s&&!e(s)&&Ye(n,r,i,o)}}}function Ye(t,e,n,i){var o=t[e];!o||i&&o.tag===i.tag||o.componentInstance.$destroy(),t[e]=null,h(n,e)}function Ke(t){for(var e=t.data,n=t,i=t;o(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(e=Xe(i.data,e));for(;o(n=n.parent);)n&&n.data&&(e=Xe(e,n.data));return Ze(e.staticClass,e.class)}function Xe(t,e){return{staticClass:Je(t.staticClass,e.staticClass),class:o(t.class)?[t.class,e.class]:e.class}}function Ze(t,e){return o(t)||o(e)?Je(t,Qe(e)):""}function Je(t,e){return t?e?t+" "+e:t:e||""}function Qe(t){return Array.isArray(t)?tn(t):d(t)?en(t):"string"==typeof t?t:""}function tn(t){for(var e,n="",i=0,r=t.length;i-1?sr[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:sr[t]=/HTMLUnknownElement/.test(e.toString())}function rn(t){if("string"==typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}function an(t,e){var n=document.createElement(t);return"select"!==t?n:(e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)}function sn(t,e){return document.createElementNS(ir[t],e)}function dn(t){return document.createTextNode(t)}function ln(t){return document.createComment(t)}function cn(t,e,n){t.insertBefore(e,n)}function mn(t,e){t.removeChild(e)}function un(t,e){t.appendChild(e)}function fn(t){return t.parentNode}function pn(t){return t.nextSibling}function hn(t){return t.tagName}function gn(t,e){t.textContent=e}function bn(t,e){t.setAttribute(e,"")}function xn(t,e){var n=t.data.ref;if(o(n)){var i=t.context,r=t.componentInstance||t.elm,a=i.$refs;e?Array.isArray(a[n])?h(a[n],r):a[n]===r&&(a[n]=void 0):t.data.refInFor?Array.isArray(a[n])?a[n].indexOf(r)<0&&a[n].push(r):a[n]=[r]:a[n]=r}}function vn(t,e){return t.key===e.key&&(t.tag===e.tag&&t.isComment===e.isComment&&o(t.data)===o(e.data)&&yn(t,e)||r(t.isAsyncPlaceholder)&&t.asyncFactory===e.asyncFactory&&i(e.asyncFactory.error))}function yn(t,e){if("input"!==t.tag)return!0;var n,i=o(n=t.data)&&o(n=n.attrs)&&n.type,r=o(n=e.data)&&o(n=n.attrs)&&n.type;return i===r||dr(i)&&dr(r)}function _n(t,e,n){var i,r,a={};for(i=e;i<=n;++i)r=t[i].key,o(r)&&(a[r]=i);return a}function wn(t,e){(t.data.directives||e.data.directives)&&En(t,e)}function En(t,e){var n,i,o,r=t===mr,a=e===mr,s=Cn(t.data.directives,t.context),d=Cn(e.data.directives,e.context),l=[],c=[];for(n in d)i=s[n],o=d[n],i?(o.oldValue=i.value,Tn(o,"update",e,t),o.def&&o.def.componentUpdated&&c.push(o)):(Tn(o,"bind",e,t),o.def&&o.def.inserted&&l.push(o));if(l.length){var m=function(){for(var n=0;n-1?kn(t,e,n):Jo(e)?nr(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Zo(e)?t.setAttribute(e,nr(n)||"false"===n?"false":"true"):tr(e)?nr(n)?t.removeAttributeNS(Qo,er(e)):t.setAttributeNS(Qo,e,n):kn(t,e,n)}function kn(t,e,n){if(nr(n))t.removeAttribute(e);else{if(Ui&&!Wi&&("TEXTAREA"===t.tagName||"INPUT"===t.tagName)&&"placeholder"===e&&!t.__ieph){var i=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",i)};t.addEventListener("input",i),t.__ieph=!0}t.setAttribute(e,n)}}function Nn(t,e){var n=e.elm,r=e.data,a=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(a)||i(a.staticClass)&&i(a.class)))){var s=Ke(e),d=n._transitionClasses;o(d)&&(s=Je(s,Qe(d))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}function Sn(t){if(o(t[xr])){var e=Ui?"change":"input";t[e]=[].concat(t[xr],t[e]||[]),delete t[xr]}o(t[vr])&&(t.change=[].concat(t[vr],t.change||[]),delete t[vr])}function Rn(t,e,n){var i=qo;return function o(){null!==e.apply(null,arguments)&&Pn(t,o,n,i)}}function $n(t,e,n,i){e=st(e),qo.addEventListener(t,e,Yi?{capture:n,passive:i}:n)}function Pn(t,e,n,i){(i||qo).removeEventListener(t,e._withTask||e,n)}function Ln(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},o=t.data.on||{};qo=e.elm,Sn(n),ut(n,o,$n,Pn,Rn,e.context),qo=void 0}}function In(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,a=e.elm,s=t.data.domProps||{},d=e.data.domProps||{};o(d.__ob__)&&(d=e.data.domProps=_({},d));for(n in s)i(d[n])&&(a[n]="");for(n in d){if(r=d[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===s[n])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===n){a._value=r;var l=i(r)?"":String(r);Hn(a,l)&&(a.value=l)}else a[n]=r}}}function Hn(t,e){return!t.composing&&("OPTION"===t.tagName||jn(t,e)||Dn(t,e))}function jn(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}function Dn(t,e){var n=t.value,i=t._vModifiers;if(o(i)){if(i.lazy)return!1;if(i.number)return f(n)!==f(e);if(i.trim)return n.trim()!==e.trim()}return n!==e}function Bn(t){var e=zn(t.style);return t.staticStyle?_(t.staticStyle,e):e}function zn(t){return Array.isArray(t)?w(t):"string"==typeof t?wr(t):t}function Fn(t,e){var n,i={};if(e)for(var o=t;o.componentInstance;)(o=o.componentInstance._vnode)&&o.data&&(n=Bn(o.data))&&_(i,n);(n=Bn(t.data))&&_(i,n);for(var r=t;r=r.parent;)r.data&&(n=Bn(r.data))&&_(i,n);return i}function Un(t,e){var n=e.data,r=t.data;if(!(i(n.staticStyle)&&i(n.style)&&i(r.staticStyle)&&i(r.style))){var a,s,d=e.elm,l=r.staticStyle,c=r.normalizedStyle||r.style||{},m=l||c,u=zn(e.data.style)||{};e.data.normalizedStyle=o(u.__ob__)?_({},u):u;var f=Fn(e,!0);for(s in m)i(f[s])&&Ar(d,s,"");for(s in f)(a=f[s])!==m[s]&&Ar(d,s,null==a?"":a)}}function Wn(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(kr).forEach(function(e){return t.classList.add(e)}):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function Vn(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(kr).forEach(function(e){return t.classList.remove(e)}):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" "+(t.getAttribute("class")||"")+" ",i=" "+e+" ";n.indexOf(i)>=0;)n=n.replace(i," ");n=n.trim(),n?t.setAttribute("class",n):t.removeAttribute("class")}}function qn(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&_(e,Nr(t.name||"v")),_(e,t),e}return"string"==typeof t?Nr(t):void 0}}function Gn(t){jr(function(){jr(t)})}function Yn(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),Wn(t,e))}function Kn(t,e){t._transitionClasses&&h(t._transitionClasses,e),Vn(t,e)}function Xn(t,e,n){var i=Zn(t,e),o=i.type,r=i.timeout,a=i.propCount;if(!o)return n();var s=o===Rr?Lr:Hr,d=0,l=function(){t.removeEventListener(s,c),n()},c=function(e){e.target===t&&++d>=a&&l()};setTimeout(function(){d0&&(n=Rr,c=a,m=r.length):e===$r?l>0&&(n=$r,c=l,m=d.length):(c=Math.max(a,l),n=c>0?a>l?Rr:$r:null,m=n?n===Rr?r.length:d.length:0),{type:n,timeout:c,propCount:m,hasTransform:n===Rr&&Dr.test(i[Pr+"Property"])}}function Jn(t,e){for(;t.length1}function oi(t,e){!0!==e.data.show&&ti(e)}function ri(t,e,n){ai(t,e,n),(Ui||Vi)&&setTimeout(function(){ai(t,e,n)},0)}function ai(t,e,n){var i=e.value,o=t.multiple;if(!o||Array.isArray(i)){for(var r,a,s=0,d=t.options.length;s-1,a.selected!==r&&(a.selected=r);else if(C(di(a),i))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function si(t,e){return e.every(function(e){return!C(e,t)})}function di(t){return"_value"in t?t._value:t.value}function li(t){t.target.composing=!0}function ci(t){t.target.composing&&(t.target.composing=!1,mi(t.target,"input"))}function mi(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function ui(t){return!t.componentInstance||t.data&&t.data.transition?t:ui(t.componentInstance._vnode)}function fi(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?fi(Ct(e.children)):t}function pi(t){var e={},n=t.$options;for(var i in n.propsData)e[i]=t[i];var o=n._parentListeners;for(var r in o)e[Ti(r)]=o[r];return e}function hi(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}function gi(t){for(;t=t.parent;)if(t.data.transition)return!0}function bi(t,e){return e.key===t.key&&e.tag===t.tag}function xi(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function vi(t){t.data.newPos=t.elm.getBoundingClientRect()}function yi(t){var e=t.data.pos,n=t.data.newPos,i=e.left-n.left,o=e.top-n.top;if(i||o){t.data.moved=!0;var r=t.elm.style;r.transform=r.WebkitTransform="translate("+i+"px,"+o+"px)",r.transitionDuration="0s"}}/*! - * Vue.js v2.5.21 - * (c) 2014-2018 Evan You +var applyMixin = function (Vue) { + var version = Number(Vue.version.split('.')[0]); + + if (version >= 2) { + Vue.mixin({ beforeCreate: vuexInit }); + } else { + // override init and inject vuex init procedure + // for 1.x backwards compatibility. + var _init = Vue.prototype._init; + Vue.prototype._init = function (options) { + if ( options === void 0 ) options = {}; + + options.init = options.init + ? [vuexInit].concat(options.init) + : vuexInit; + _init.call(this, options); + }; + } + + /** + * Vuex init hook, injected into each instances init hooks list. + */ + + function vuexInit () { + var options = this.$options; + // store injection + if (options.store) { + this.$store = typeof options.store === 'function' + ? options.store() + : options.store; + } else if (options.parent && options.parent.$store) { + this.$store = options.parent.$store; + } + } +}; + +var devtoolHook = + typeof window !== 'undefined' && + window.__VUE_DEVTOOLS_GLOBAL_HOOK__; + +function devtoolPlugin (store) { + if (!devtoolHook) { return } + + store._devtoolHook = devtoolHook; + + devtoolHook.emit('vuex:init', store); + + devtoolHook.on('vuex:travel-to-state', function (targetState) { + store.replaceState(targetState); + }); + + store.subscribe(function (mutation, state) { + devtoolHook.emit('vuex:mutation', mutation, state); + }); +} + +/** + * Get the first item that pass the test + * by second argument function + * + * @param {Array} list + * @param {Function} f + * @return {*} + */ +/** + * Deep copy the given object considering circular structure. + * This function caches all nested objects and its copies. + * If it detects circular structure, use cached copy to avoid infinite loop. + * + * @param {*} obj + * @param {Array} cache + * @return {*} + */ + + +/** + * forEach for object + */ +function forEachValue (obj, fn) { + Object.keys(obj).forEach(function (key) { return fn(obj[key], key); }); +} + +function isObject (obj) { + return obj !== null && typeof obj === 'object' +} + +function isPromise (val) { + return val && typeof val.then === 'function' +} + +function assert (condition, msg) { + if (!condition) { throw new Error(("[vuex] " + msg)) } +} + +var Module = function Module (rawModule, runtime) { + this.runtime = runtime; + this._children = Object.create(null); + this._rawModule = rawModule; + var rawState = rawModule.state; + this.state = (typeof rawState === 'function' ? rawState() : rawState) || {}; +}; + +var prototypeAccessors$1 = { namespaced: { configurable: true } }; + +prototypeAccessors$1.namespaced.get = function () { + return !!this._rawModule.namespaced +}; + +Module.prototype.addChild = function addChild (key, module) { + this._children[key] = module; +}; + +Module.prototype.removeChild = function removeChild (key) { + delete this._children[key]; +}; + +Module.prototype.getChild = function getChild (key) { + return this._children[key] +}; + +Module.prototype.update = function update (rawModule) { + this._rawModule.namespaced = rawModule.namespaced; + if (rawModule.actions) { + this._rawModule.actions = rawModule.actions; + } + if (rawModule.mutations) { + this._rawModule.mutations = rawModule.mutations; + } + if (rawModule.getters) { + this._rawModule.getters = rawModule.getters; + } +}; + +Module.prototype.forEachChild = function forEachChild (fn) { + forEachValue(this._children, fn); +}; + +Module.prototype.forEachGetter = function forEachGetter (fn) { + if (this._rawModule.getters) { + forEachValue(this._rawModule.getters, fn); + } +}; + +Module.prototype.forEachAction = function forEachAction (fn) { + if (this._rawModule.actions) { + forEachValue(this._rawModule.actions, fn); + } +}; + +Module.prototype.forEachMutation = function forEachMutation (fn) { + if (this._rawModule.mutations) { + forEachValue(this._rawModule.mutations, fn); + } +}; + +Object.defineProperties( Module.prototype, prototypeAccessors$1 ); + +var ModuleCollection = function ModuleCollection (rawRootModule) { + // register root module (Vuex.Store options) + this.register([], rawRootModule, false); +}; + +ModuleCollection.prototype.get = function get (path) { + return path.reduce(function (module, key) { + return module.getChild(key) + }, this.root) +}; + +ModuleCollection.prototype.getNamespace = function getNamespace (path) { + var module = this.root; + return path.reduce(function (namespace, key) { + module = module.getChild(key); + return namespace + (module.namespaced ? key + '/' : '') + }, '') +}; + +ModuleCollection.prototype.update = function update$1 (rawRootModule) { + update([], this.root, rawRootModule); +}; + +ModuleCollection.prototype.register = function register (path, rawModule, runtime) { + var this$1 = this; + if ( runtime === void 0 ) runtime = true; + + if (false) { + assertRawModule(path, rawModule); + } + + var newModule = new Module(rawModule, runtime); + if (path.length === 0) { + this.root = newModule; + } else { + var parent = this.get(path.slice(0, -1)); + parent.addChild(path[path.length - 1], newModule); + } + + // register nested modules + if (rawModule.modules) { + forEachValue(rawModule.modules, function (rawChildModule, key) { + this$1.register(path.concat(key), rawChildModule, runtime); + }); + } +}; + +ModuleCollection.prototype.unregister = function unregister (path) { + var parent = this.get(path.slice(0, -1)); + var key = path[path.length - 1]; + if (!parent.getChild(key).runtime) { return } + + parent.removeChild(key); +}; + +function update (path, targetModule, newModule) { + if (false) { + assertRawModule(path, newModule); + } + + // update target module + targetModule.update(newModule); + + // update nested modules + if (newModule.modules) { + for (var key in newModule.modules) { + if (!targetModule.getChild(key)) { + if (false) { + console.warn( + "[vuex] trying to add a new module '" + key + "' on hot reloading, " + + 'manual reload is needed' + ); + } + return + } + update( + path.concat(key), + targetModule.getChild(key), + newModule.modules[key] + ); + } + } +} + +var functionAssert = { + assert: function (value) { return typeof value === 'function'; }, + expected: 'function' +}; + +var objectAssert = { + assert: function (value) { return typeof value === 'function' || + (typeof value === 'object' && typeof value.handler === 'function'); }, + expected: 'function or object with "handler" function' +}; + +var assertTypes = { + getters: functionAssert, + mutations: functionAssert, + actions: objectAssert +}; + +function assertRawModule (path, rawModule) { + Object.keys(assertTypes).forEach(function (key) { + if (!rawModule[key]) { return } + + var assertOptions = assertTypes[key]; + + forEachValue(rawModule[key], function (value, type) { + assert( + assertOptions.assert(value), + makeAssertionMessage(path, key, type, value, assertOptions.expected) + ); + }); + }); +} + +function makeAssertionMessage (path, key, type, value, expected) { + var buf = key + " should be " + expected + " but \"" + key + "." + type + "\""; + if (path.length > 0) { + buf += " in module \"" + (path.join('.')) + "\""; + } + buf += " is " + (JSON.stringify(value)) + "."; + return buf +} + +var Vue; // bind on install + +var Store = function Store (options) { + var this$1 = this; + if ( options === void 0 ) options = {}; + + // Auto install if it is not done yet and `window` has `Vue`. + // To allow users to avoid auto-installation in some cases, + // this code should be placed here. See #731 + if (!Vue && typeof window !== 'undefined' && window.Vue) { + install(window.Vue); + } + + if (false) { + assert(Vue, "must call Vue.use(Vuex) before creating a store instance."); + assert(typeof Promise !== 'undefined', "vuex requires a Promise polyfill in this browser."); + assert(this instanceof Store, "Store must be called with the new operator."); + } + + var plugins = options.plugins; if ( plugins === void 0 ) plugins = []; + var strict = options.strict; if ( strict === void 0 ) strict = false; + + var state = options.state; if ( state === void 0 ) state = {}; + if (typeof state === 'function') { + state = state() || {}; + } + + // store internal state + this._committing = false; + this._actions = Object.create(null); + this._actionSubscribers = []; + this._mutations = Object.create(null); + this._wrappedGetters = Object.create(null); + this._modules = new ModuleCollection(options); + this._modulesNamespaceMap = Object.create(null); + this._subscribers = []; + this._watcherVM = new Vue(); + + // bind commit and dispatch to self + var store = this; + var ref = this; + var dispatch = ref.dispatch; + var commit = ref.commit; + this.dispatch = function boundDispatch (type, payload) { + return dispatch.call(store, type, payload) + }; + this.commit = function boundCommit (type, payload, options) { + return commit.call(store, type, payload, options) + }; + + // strict mode + this.strict = strict; + + // init root module. + // this also recursively registers all sub-modules + // and collects all module getters inside this._wrappedGetters + installModule(this, state, [], this._modules.root); + + // initialize the store vm, which is responsible for the reactivity + // (also registers _wrappedGetters as computed properties) + resetStoreVM(this, state); + + // apply plugins + plugins.forEach(function (plugin) { return plugin(this$1); }); + + if (Vue.config.devtools) { + devtoolPlugin(this); + } +}; + +var prototypeAccessors = { state: { configurable: true } }; + +prototypeAccessors.state.get = function () { + return this._vm._data.$$state +}; + +prototypeAccessors.state.set = function (v) { + if (false) { + assert(false, "Use store.replaceState() to explicit replace store state."); + } +}; + +Store.prototype.commit = function commit (_type, _payload, _options) { + var this$1 = this; + + // check object-style commit + var ref = unifyObjectStyle(_type, _payload, _options); + var type = ref.type; + var payload = ref.payload; + var options = ref.options; + + var mutation = { type: type, payload: payload }; + var entry = this._mutations[type]; + if (!entry) { + if (false) { + console.error(("[vuex] unknown mutation type: " + type)); + } + return + } + this._withCommit(function () { + entry.forEach(function commitIterator (handler) { + handler(payload); + }); + }); + this._subscribers.forEach(function (sub) { return sub(mutation, this$1.state); }); + + if ( + false + ) { + console.warn( + "[vuex] mutation type: " + type + ". Silent option has been removed. " + + 'Use the filter functionality in the vue-devtools' + ); + } +}; + +Store.prototype.dispatch = function dispatch (_type, _payload) { + var this$1 = this; + + // check object-style dispatch + var ref = unifyObjectStyle(_type, _payload); + var type = ref.type; + var payload = ref.payload; + + var action = { type: type, payload: payload }; + var entry = this._actions[type]; + if (!entry) { + if (false) { + console.error(("[vuex] unknown action type: " + type)); + } + return + } + + this._actionSubscribers.forEach(function (sub) { return sub(action, this$1.state); }); + + return entry.length > 1 + ? Promise.all(entry.map(function (handler) { return handler(payload); })) + : entry[0](payload) +}; + +Store.prototype.subscribe = function subscribe (fn) { + return genericSubscribe(fn, this._subscribers) +}; + +Store.prototype.subscribeAction = function subscribeAction (fn) { + return genericSubscribe(fn, this._actionSubscribers) +}; + +Store.prototype.watch = function watch (getter, cb, options) { + var this$1 = this; + + if (false) { + assert(typeof getter === 'function', "store.watch only accepts a function."); + } + return this._watcherVM.$watch(function () { return getter(this$1.state, this$1.getters); }, cb, options) +}; + +Store.prototype.replaceState = function replaceState (state) { + var this$1 = this; + + this._withCommit(function () { + this$1._vm._data.$$state = state; + }); +}; + +Store.prototype.registerModule = function registerModule (path, rawModule, options) { + if ( options === void 0 ) options = {}; + + if (typeof path === 'string') { path = [path]; } + + if (false) { + assert(Array.isArray(path), "module path must be a string or an Array."); + assert(path.length > 0, 'cannot register the root module by using registerModule.'); + } + + this._modules.register(path, rawModule); + installModule(this, this.state, path, this._modules.get(path), options.preserveState); + // reset store to update getters... + resetStoreVM(this, this.state); +}; + +Store.prototype.unregisterModule = function unregisterModule (path) { + var this$1 = this; + + if (typeof path === 'string') { path = [path]; } + + if (false) { + assert(Array.isArray(path), "module path must be a string or an Array."); + } + + this._modules.unregister(path); + this._withCommit(function () { + var parentState = getNestedState(this$1.state, path.slice(0, -1)); + Vue.delete(parentState, path[path.length - 1]); + }); + resetStore(this); +}; + +Store.prototype.hotUpdate = function hotUpdate (newOptions) { + this._modules.update(newOptions); + resetStore(this, true); +}; + +Store.prototype._withCommit = function _withCommit (fn) { + var committing = this._committing; + this._committing = true; + fn(); + this._committing = committing; +}; + +Object.defineProperties( Store.prototype, prototypeAccessors ); + +function genericSubscribe (fn, subs) { + if (subs.indexOf(fn) < 0) { + subs.push(fn); + } + return function () { + var i = subs.indexOf(fn); + if (i > -1) { + subs.splice(i, 1); + } + } +} + +function resetStore (store, hot) { + store._actions = Object.create(null); + store._mutations = Object.create(null); + store._wrappedGetters = Object.create(null); + store._modulesNamespaceMap = Object.create(null); + var state = store.state; + // init all modules + installModule(store, state, [], store._modules.root, true); + // reset vm + resetStoreVM(store, state, hot); +} + +function resetStoreVM (store, state, hot) { + var oldVm = store._vm; + + // bind store public getters + store.getters = {}; + var wrappedGetters = store._wrappedGetters; + var computed = {}; + forEachValue(wrappedGetters, function (fn, key) { + // use computed to leverage its lazy-caching mechanism + computed[key] = function () { return fn(store); }; + Object.defineProperty(store.getters, key, { + get: function () { return store._vm[key]; }, + enumerable: true // for local getters + }); + }); + + // use a Vue instance to store the state tree + // suppress warnings just in case the user has added + // some funky global mixins + var silent = Vue.config.silent; + Vue.config.silent = true; + store._vm = new Vue({ + data: { + $$state: state + }, + computed: computed + }); + Vue.config.silent = silent; + + // enable strict mode for new vm + if (store.strict) { + enableStrictMode(store); + } + + if (oldVm) { + if (hot) { + // dispatch changes in all subscribed watchers + // to force getter re-evaluation for hot reloading. + store._withCommit(function () { + oldVm._data.$$state = null; + }); + } + Vue.nextTick(function () { return oldVm.$destroy(); }); + } +} + +function installModule (store, rootState, path, module, hot) { + var isRoot = !path.length; + var namespace = store._modules.getNamespace(path); + + // register in namespace map + if (module.namespaced) { + store._modulesNamespaceMap[namespace] = module; + } + + // set state + if (!isRoot && !hot) { + var parentState = getNestedState(rootState, path.slice(0, -1)); + var moduleName = path[path.length - 1]; + store._withCommit(function () { + Vue.set(parentState, moduleName, module.state); + }); + } + + var local = module.context = makeLocalContext(store, namespace, path); + + module.forEachMutation(function (mutation, key) { + var namespacedType = namespace + key; + registerMutation(store, namespacedType, mutation, local); + }); + + module.forEachAction(function (action, key) { + var type = action.root ? key : namespace + key; + var handler = action.handler || action; + registerAction(store, type, handler, local); + }); + + module.forEachGetter(function (getter, key) { + var namespacedType = namespace + key; + registerGetter(store, namespacedType, getter, local); + }); + + module.forEachChild(function (child, key) { + installModule(store, rootState, path.concat(key), child, hot); + }); +} + +/** + * make localized dispatch, commit, getters and state + * if there is no namespace, just use root ones + */ +function makeLocalContext (store, namespace, path) { + var noNamespace = namespace === ''; + + var local = { + dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) { + var args = unifyObjectStyle(_type, _payload, _options); + var payload = args.payload; + var options = args.options; + var type = args.type; + + if (!options || !options.root) { + type = namespace + type; + if (false) { + console.error(("[vuex] unknown local action type: " + (args.type) + ", global type: " + type)); + return + } + } + + return store.dispatch(type, payload) + }, + + commit: noNamespace ? store.commit : function (_type, _payload, _options) { + var args = unifyObjectStyle(_type, _payload, _options); + var payload = args.payload; + var options = args.options; + var type = args.type; + + if (!options || !options.root) { + type = namespace + type; + if (false) { + console.error(("[vuex] unknown local mutation type: " + (args.type) + ", global type: " + type)); + return + } + } + + store.commit(type, payload, options); + } + }; + + // getters and state object must be gotten lazily + // because they will be changed by vm update + Object.defineProperties(local, { + getters: { + get: noNamespace + ? function () { return store.getters; } + : function () { return makeLocalGetters(store, namespace); } + }, + state: { + get: function () { return getNestedState(store.state, path); } + } + }); + + return local +} + +function makeLocalGetters (store, namespace) { + var gettersProxy = {}; + + var splitPos = namespace.length; + Object.keys(store.getters).forEach(function (type) { + // skip if the target getter is not match this namespace + if (type.slice(0, splitPos) !== namespace) { return } + + // extract local getter type + var localType = type.slice(splitPos); + + // Add a port to the getters proxy. + // Define as getter property because + // we do not want to evaluate the getters in this time. + Object.defineProperty(gettersProxy, localType, { + get: function () { return store.getters[type]; }, + enumerable: true + }); + }); + + return gettersProxy +} + +function registerMutation (store, type, handler, local) { + var entry = store._mutations[type] || (store._mutations[type] = []); + entry.push(function wrappedMutationHandler (payload) { + handler.call(store, local.state, payload); + }); +} + +function registerAction (store, type, handler, local) { + var entry = store._actions[type] || (store._actions[type] = []); + entry.push(function wrappedActionHandler (payload, cb) { + var res = handler.call(store, { + dispatch: local.dispatch, + commit: local.commit, + getters: local.getters, + state: local.state, + rootGetters: store.getters, + rootState: store.state + }, payload, cb); + if (!isPromise(res)) { + res = Promise.resolve(res); + } + if (store._devtoolHook) { + return res.catch(function (err) { + store._devtoolHook.emit('vuex:error', err); + throw err + }) + } else { + return res + } + }); +} + +function registerGetter (store, type, rawGetter, local) { + if (store._wrappedGetters[type]) { + if (false) { + console.error(("[vuex] duplicate getter key: " + type)); + } + return + } + store._wrappedGetters[type] = function wrappedGetter (store) { + return rawGetter( + local.state, // local state + local.getters, // local getters + store.state, // root state + store.getters // root getters + ) + }; +} + +function enableStrictMode (store) { + store._vm.$watch(function () { return this._data.$$state }, function () { + if (false) { + assert(store._committing, "Do not mutate vuex store state outside mutation handlers."); + } + }, { deep: true, sync: true }); +} + +function getNestedState (state, path) { + return path.length + ? path.reduce(function (state, key) { return state[key]; }, state) + : state +} + +function unifyObjectStyle (type, payload, options) { + if (isObject(type) && type.type) { + options = payload; + payload = type; + type = type.type; + } + + if (false) { + assert(typeof type === 'string', ("Expects string as the type, but found " + (typeof type) + ".")); + } + + return { type: type, payload: payload, options: options } +} + +function install (_Vue) { + if (Vue && _Vue === Vue) { + if (false) { + console.error( + '[vuex] already installed. Vue.use(Vuex) should be called only once.' + ); + } + return + } + Vue = _Vue; + applyMixin(Vue); +} + +var mapState = normalizeNamespace(function (namespace, states) { + var res = {}; + normalizeMap(states).forEach(function (ref) { + var key = ref.key; + var val = ref.val; + + res[key] = function mappedState () { + var state = this.$store.state; + var getters = this.$store.getters; + if (namespace) { + var module = getModuleByNamespace(this.$store, 'mapState', namespace); + if (!module) { + return + } + state = module.context.state; + getters = module.context.getters; + } + return typeof val === 'function' + ? val.call(this, state, getters) + : state[val] + }; + // mark vuex getter for devtools + res[key].vuex = true; + }); + return res +}); + +var mapMutations = normalizeNamespace(function (namespace, mutations) { + var res = {}; + normalizeMap(mutations).forEach(function (ref) { + var key = ref.key; + var val = ref.val; + + res[key] = function mappedMutation () { + var args = [], len = arguments.length; + while ( len-- ) args[ len ] = arguments[ len ]; + + var commit = this.$store.commit; + if (namespace) { + var module = getModuleByNamespace(this.$store, 'mapMutations', namespace); + if (!module) { + return + } + commit = module.context.commit; + } + return typeof val === 'function' + ? val.apply(this, [commit].concat(args)) + : commit.apply(this.$store, [val].concat(args)) + }; + }); + return res +}); + +var mapGetters = normalizeNamespace(function (namespace, getters) { + var res = {}; + normalizeMap(getters).forEach(function (ref) { + var key = ref.key; + var val = ref.val; + + val = namespace + val; + res[key] = function mappedGetter () { + if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) { + return + } + if (false) { + console.error(("[vuex] unknown getter: " + val)); + return + } + return this.$store.getters[val] + }; + // mark vuex getter for devtools + res[key].vuex = true; + }); + return res +}); + +var mapActions = normalizeNamespace(function (namespace, actions) { + var res = {}; + normalizeMap(actions).forEach(function (ref) { + var key = ref.key; + var val = ref.val; + + res[key] = function mappedAction () { + var args = [], len = arguments.length; + while ( len-- ) args[ len ] = arguments[ len ]; + + var dispatch = this.$store.dispatch; + if (namespace) { + var module = getModuleByNamespace(this.$store, 'mapActions', namespace); + if (!module) { + return + } + dispatch = module.context.dispatch; + } + return typeof val === 'function' + ? val.apply(this, [dispatch].concat(args)) + : dispatch.apply(this.$store, [val].concat(args)) + }; + }); + return res +}); + +var createNamespacedHelpers = function (namespace) { return ({ + mapState: mapState.bind(null, namespace), + mapGetters: mapGetters.bind(null, namespace), + mapMutations: mapMutations.bind(null, namespace), + mapActions: mapActions.bind(null, namespace) +}); }; + +function normalizeMap (map) { + return Array.isArray(map) + ? map.map(function (key) { return ({ key: key, val: key }); }) + : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); }) +} + +function normalizeNamespace (fn) { + return function (namespace, map) { + if (typeof namespace !== 'string') { + map = namespace; + namespace = ''; + } else if (namespace.charAt(namespace.length - 1) !== '/') { + namespace += '/'; + } + return fn(namespace, map) + } +} + +function getModuleByNamespace (store, helper, namespace) { + var module = store._modulesNamespaceMap[namespace]; + if (false) { + console.error(("[vuex] module namespace not found in " + helper + "(): " + namespace)); + } + return module +} + +var index_esm = { + Store: Store, + install: install, + version: '2.5.0', + mapState: mapState, + mapMutations: mapMutations, + mapGetters: mapGetters, + mapActions: mapActions, + createNamespacedHelpers: createNamespacedHelpers +}; + + +/* harmony default export */ __webpack_exports__["c"] = (index_esm); + + +/***/ }), +/* 2 */ +/***/ (function(module, exports) { + +/* globals __VUE_SSR_CONTEXT__ */ + +// this module is a runtime utility for cleaner component module output and will +// be included in the final webpack user bundle + +module.exports = function normalizeComponent ( + rawScriptExports, + compiledTemplate, + injectStyles, + scopeId, + moduleIdentifier /* server only */ +) { + var esModule + var scriptExports = rawScriptExports = rawScriptExports || {} + + // ES6 modules interop + var type = typeof rawScriptExports.default + if (type === 'object' || type === 'function') { + esModule = rawScriptExports + scriptExports = rawScriptExports.default + } + + // Vue.extend constructor export interop + var options = typeof scriptExports === 'function' + ? scriptExports.options + : scriptExports + + // render functions + if (compiledTemplate) { + options.render = compiledTemplate.render + options.staticRenderFns = compiledTemplate.staticRenderFns + } + + // scopedId + if (scopeId) { + options._scopeId = scopeId + } + + var hook + if (moduleIdentifier) { // server build + hook = function (context) { + // 2.3 injection + context = + context || // cached call + (this.$vnode && this.$vnode.ssrContext) || // stateful + (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional + // 2.2 with runInNewContext: true + if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { + context = __VUE_SSR_CONTEXT__ + } + // inject component styles + if (injectStyles) { + injectStyles.call(this, context) + } + // register component module identifier for async chunk inferrence + if (context && context._registeredComponents) { + context._registeredComponents.add(moduleIdentifier) + } + } + // used by ssr in case component is cached and beforeCreate + // never gets called + options._ssrRegister = hook + } else if (injectStyles) { + hook = injectStyles + } + + if (hook) { + var functional = options.functional + var existing = functional + ? options.render + : options.beforeCreate + if (!functional) { + // inject component registration as beforeCreate hook + options.beforeCreate = existing + ? [].concat(existing, hook) + : [hook] + } else { + // register for functioal component in vue file + options.render = function renderWithStyleInjection (h, context) { + hook.call(context) + return existing(h, context) + } + } + } + + return { + esModule: esModule, + exports: scriptExports, + options: options + } +} + + +/***/ }), +/* 3 */ +/***/ (function(module, exports, __webpack_require__) { + +/* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Tobias Koppers @sokra + Modified by Evan You @yyx990803 +*/ + +var hasDocument = typeof document !== 'undefined' + +if (typeof DEBUG !== 'undefined' && DEBUG) { + if (!hasDocument) { + throw new Error( + 'vue-style-loader cannot be used in a non-browser environment. ' + + "Use { target: 'node' } in your Webpack config to indicate a server-rendering environment." + ) } +} + +var listToStyles = __webpack_require__(52) + +/* +type StyleObject = { + id: number; + parts: Array +} + +type StyleObjectPart = { + css: string; + media: string; + sourceMap: ?string +} +*/ + +var stylesInDom = {/* + [id: number]: { + id: number, + refs: number, + parts: Array<(obj?: StyleObjectPart) => void> + } +*/} + +var head = hasDocument && (document.head || document.getElementsByTagName('head')[0]) +var singletonElement = null +var singletonCounter = 0 +var isProduction = false +var noop = function () {} +var options = null +var ssrIdKey = 'data-vue-ssr-id' + +// Force single-tag solution on IE6-9, which has a hard limit on the # of \r\n\r\n\r\n"] + }, + media: undefined + }), inject("data-v-29eb3fb3_1", { + source: ".vue-google-map[data-v-29eb3fb3] {\n position: relative;\n}\n.vue-google-map .map-view[data-v-29eb3fb3] {\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n position: absolute;\n}\n.vue-google-map .hidden-content[data-v-29eb3fb3] {\n display: none;\n}\n", + map: { + "version": 3, + "sources": ["C:\\Users\\Mike\\source\\repos\\vue-googlemaps\\src\\components\\Map.vue", "Map.vue"], + "names": [], + "mappings": "AA4MA;EACA,kBAAA;AC3MA;AD6MA;EACA,OAAA;EACA,QAAA;EACA,MAAA;EACA,SAAA;EACA,kBAAA;AC3MA;AD8MA;EACA,aAAA;AC5MA", + "file": "Map.vue", + "sourcesContent": ["\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n", ".vue-google-map {\n position: relative;\n}\n.vue-google-map .map-view {\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n position: absolute;\n}\n.vue-google-map .hidden-content {\n display: none;\n}\n"] + }, + media: undefined + }); +}; +/* scoped */ + + +const __vue_scope_id__ = "data-v-29eb3fb3"; +/* module identifier */ + +const __vue_module_identifier__ = undefined; +/* functional template */ + +const __vue_is_functional_template__ = false; +/* style inject SSR */ + +/* style inject shadow dom */ + +const __vue_component__ = normalizeComponent({ + render: __vue_render__, + staticRenderFns: __vue_staticRenderFns__ +}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, createInjector, undefined, undefined); + +var boundProps$2 = ['animation', 'clickable', 'cursor', 'draggable', 'icon', 'label', 'opacity', 'place', 'position', 'shape', 'title', 'visible', 'zIndex']; +var redirectedEvents$2 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; +var Marker = { + name: 'GoogleMapsMarker', + mixins: [MapElement], + props: { + animation: { + type: Number + }, + clickable: { + type: Boolean, + "default": true + }, + cursor: { + type: String + }, + draggable: { + type: Boolean, + "default": false + }, + icon: {}, + label: {}, + opacity: { + type: Number, + "default": 1 + }, + place: { + type: Object + }, + position: { + type: Object + }, + shape: { + type: Object + }, + title: { + type: String + }, + visible: { + "default": true + }, + zIndex: { + type: Number + } + }, + render: function render(h) { + if (!this.$slots["default"] || this.$slots["default"].length === 0) { + return ''; + } else if (this.$slots["default"].length === 1) { + // So that infowindows can have a marker parent + return this.$slots["default"][0]; + } else { + return h('div', this.$slots["default"]); + } + }, + googleMapsReady: function googleMapsReady() { + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_marker = new window.google.maps.Marker(options); + this.bindProps(this.$_marker, boundProps$2); + this.redirectEvents(this.$_marker, redirectedEvents$2); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_marker) { + this.$_marker.setMap(null); + } + } +}; +var NearbyPlaces = { + name: 'GoogleMapsNearbyPlaces', + mixins: [Service], + methods: { + createServices: function createServices() { + this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); + }, + update: function update() { + var _this = this; + + this.loading = true; + this.$_placeService.nearbySearch(this.request, function (results, status) { + _this.setResults(results, status); + + _this.loading = false; + }); + } + } +}; +var PlaceDetails = { + name: 'GoogleMapsPlaceDetails', + mixins: [Service], + methods: { + createServices: function createServices() { + this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions); + }, + update: function update() { + var _this = this; + + this.loading = true; + this.$_placeService.getDetails(this.request, function (results, status) { + _this.setResults(results, status); + + _this.loading = false; + }); + } + } +}; +var defaultPositionStyle; +var defaultAccuracyStyle = { + strokeColor: '#4285F4', + strokeOpacity: 0.25, + fillColor: '#4285F4', + fillOpacity: 0.2, + strokeWeight: 1 +}; +var UserPosition = { + name: 'GoogleMapsUserPosition', + mixins: [Ready], + props: { + accuracy: { + "default": 0 + }, + accuracyStyle: { + type: Object, + "default": null + }, + disableWatch: { + type: Boolean, + "default": false + }, + hideAccuracy: { + type: Boolean, + "default": false + }, + minimumAccuracy: { + "default": 1000 + }, + position: { + type: Object + }, + positionStyle: { + type: Object, + "default": null + }, + positionOptions: { + type: Object, + "default": function _default() { + return { + enableHighAccuracy: true, + maximumAge: 1000 + }; + } + } + }, + data: function data() { + return { + currentPosition: null, + currentAccuracy: null + }; + }, + watch: { + position: function position(value) { + this.currentPosition = value; + }, + accuracy: function accuracy(value) { + this.currentAccuracy = value; + }, + disableWatch: function disableWatch(value, oldValue) { + if (value !== oldValue) { + if (value) { + this.stopWatch(); + } else { + this.startWatch(); + } + } + }, + positionOptions: function positionOptions(value) { + if (!this.disableWatch) { + this.stopWatch(); + this.startWatch(); + } + } + }, + methods: { + startWatch: function startWatch() { + if (navigator.geolocation) { + this.$_watchId = navigator.geolocation.watchPosition(this.updatePosition, this.onWatchError, this.positionOptions); + } else { + console.warn('GoogleMapsUserPosition: navigator.geolocation not supported'); + this.$emit('error', new Error('unsupported')); + } + }, + stopWatch: function stopWatch() { + if (navigator.geolocation) { + navigator.geolocation.clearWatch(this.$_watchId); + } + }, + updatePosition: function updatePosition(position) { + this.currentPosition = { + lat: position.coords.latitude, + lng: position.coords.longitude + }; + this.$emit('update:position', this.currentPosition); + this.currentAccuracy = position.coords.accuracy; + this.$emit('update:accuracy', this.currentAccuracy); + }, + onWatchError: function onWatchError(e) { + this.$emit('error', e); + } + }, + render: function render(h) { + var markers = []; + + if (this.googleMapsReady && this.currentPosition && (this.minimumAccuracy === null || this.currentAccuracy <= this.minimumAccuracy)) { + markers.push(h(Marker, { + props: { + clickable: false, + icon: this.positionStyle || defaultPositionStyle, + optimized: false, + position: this.currentPosition, + zIndex: 3 + } + })); + + if (!this.hideAccuracy) { + markers.push(h(Circle, { + props: { + clickable: false, + radius: this.currentAccuracy, + options: this.accuracyStyle || defaultAccuracyStyle, + center: this.currentPosition, + zIndex: 1 + } + })); + } + } + + return h('div', markers); + }, + googleMapsReady: function googleMapsReady() { + defaultPositionStyle = { + path: window.google.maps.SymbolPath.CIRCLE, + fillColor: '#4285F4', + fillOpacity: 1, + scale: 6, + strokeColor: 'white', + strokeWeight: 2 + }; + + if (!this.disableWatch) { + this.startWatch(); + } + }, + beforeDestroy: function beforeDestroy() { + this.stopWatch(); + } +}; +var boundProps$3 = ['draggable', 'editable', 'options', 'path']; +var redirectedEvents$3 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; +var Polyline = { + name: 'GoogleMapsPolyline', + mixins: [MapElement], + props: { + editable: { + type: Boolean, + "default": false + }, + draggable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + path: { + type: Array + } + }, + watch: { + options: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_polyline && this.$_polyline.setOptions(options || this.$props); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var _this = this; + + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_polyline = new window.google.maps.Polyline(options); + this.bindProps(this.$_polyline, boundProps$3); + this.redirectEvents(this.$_polyline, redirectedEvents$3); + this.listen(this.$_polyline, 'drag', function () { + _this.$emit('path_changed', _this.$_polyline.getPath()); + }); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_polyline) { + this.$_polyline.setMap(null); + } + } +}; +var boundProps$4 = ['bounds', 'draggable', 'editable', 'visible', 'options']; +var redirectedEvents$4 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; +var Rectangle = { + name: 'GoogleMapsRectangle', + mixins: [MapElement], + props: { + bounds: { + type: Object, + required: true + }, + clickable: { + type: Boolean, + "default": true + }, + draggable: { + type: Boolean, + "default": false + }, + editable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + visible: { + "default": true + }, + zIndex: { + type: Number + } + }, + watch: { + bounds: 'updateBounds', + options: 'updateOptions', + clickable: 'updateOptions', + zIndex: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_rectangle && this.$_rectangle.setOptions(options || this.$props); + }, + updateBounds: function updateBounds(bounds) { + this.$_rectangle && this.$_rectangle.setBounds(bounds); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_rectangle = new window.google.maps.Rectangle(options); + this.bindProps(this.$_rectangle, boundProps$4); + this.redirectEvents(this.$_rectangle, redirectedEvents$4); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_rectangle) { + this.$_rectangle.setMap(null); + } + } +}; +var boundProps$5 = ['draggable', 'editable', 'options', 'paths']; +var redirectedEvents$5 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout']; +var Polygon = { + name: 'GoogleMapsPolygon', + mixins: [MapElement], + props: { + editable: { + type: Boolean, + "default": false + }, + draggable: { + type: Boolean, + "default": false + }, + options: { + type: Object, + "default": function _default() { + return {}; + } + }, + paths: { + type: Array + } + }, + watch: { + paths: 'updateOptions', + options: 'updateOptions' + }, + methods: { + updateOptions: function updateOptions(options) { + this.$_polygon && this.$_polygon.setOptions(options || this.$props); + } + }, + render: function render(h) { + return ''; + }, + googleMapsReady: function googleMapsReady() { + var _this = this; + + var options = Object.assign({}, this.$props); + options.map = this.$_map; + this.$_polygon = new window.google.maps.Polygon(options); + this.bindProps(this.$_polygon, boundProps$5); + this.redirectEvents(this.$_polygon, redirectedEvents$5); + this.listen(this.$_polygon, 'drag', function () { + _this.$emit('path_changed', _this.$_polygon.getPath()); + }); + }, + beforeDestroy: function beforeDestroy() { + if (this.$_polygon) { + this.$_polygon.setMap(null); + } + } +}; + +function registerComponents(Vue, prefix) { + Vue.component("".concat(prefix, "circle"), Circle); + Vue.component("".concat(prefix, "rectangle"), Rectangle); + Vue.component("".concat(prefix, "geocoder"), Geocoder); + Vue.component("".concat(prefix, "map"), __vue_component__); + Vue.component("".concat(prefix, "marker"), Marker); + Vue.component("".concat(prefix, "nearby-places"), NearbyPlaces); + Vue.component("".concat(prefix, "place-details"), PlaceDetails); + Vue.component("".concat(prefix, "user-position"), UserPosition); + Vue.component("".concat(prefix, "polyline"), Polyline); + Vue.component("".concat(prefix, "polygon"), Polygon); +} + +var plugin = { + // eslint-disable-next-line no-undef + version: "0.1.2", + install: function install(Vue, options) { + var finalOptions = Object.assign({}, { + installComponents: true, + componentsPrefix: 'googlemaps-' + }, options); + optionMergeStrategies(Vue); + initErrorHandling(Vue); + + if (finalOptions.installComponents) { + registerComponents(Vue, finalOptions.componentsPrefix); + } + + if (finalOptions.load) { + loader.load(finalOptions.load); + } + } +}; +var GlobalVue = null; + +if (typeof window !== 'undefined') { + GlobalVue = window.Vue; +} else if (typeof global !== 'undefined') { + GlobalVue = global.Vue; +} + +if (GlobalVue) { + GlobalVue.use(plugin); +} + +/* harmony default export */ __webpack_exports__["a"] = (plugin); + +/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(4))) + +/***/ }), +/* 23 */ +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(0)(); +// imports + + +// module +exports.push([module.i, ".md-ink-ripple{pointer-events:none;overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0);transition:all .3s cubic-bezier(.55,0,.55,.2)}.md-ripple{position:absolute;background-color:currentColor;border-radius:50%;opacity:.2;transform:scale(0) translateZ(0);transition:none;will-change:background-color,opacity,transform,width,height,top,left}.md-ripple.md-active{animation:ripple 1s cubic-bezier(.25,.8,.25,1) forwards}.md-ripple.md-active.md-fadeout{opacity:0!important;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.6s}@keyframes ripple{to{transform:scale(2.2) translateZ(0)}}html{height:100%;box-sizing:border-box}html *,html :after,html :before{box-sizing:inherit}body{min-height:100%;margin:0;position:relative;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:rgba(0,0,0,.87);font-family:Roboto,Noto Sans,Noto,sans-serif}ul:not(.md-list)>li+li{margin-top:8px}audio,canvas,embed,iframe,img,object,svg,video{max-width:100%;font-style:italic;vertical-align:middle}audio:not(.md-image),canvas:not(.md-image),embed:not(.md-image),iframe:not(.md-image),img:not(.md-image),object:not(.md-image),svg:not(.md-image),video:not(.md-image){height:auto}[tabindex=\"-1\"]:focus{outline:none!important}.md-scrollbar::-webkit-scrollbar,.md-scrollbar ::-webkit-scrollbar{width:10px;height:10px;box-shadow:inset 1px 1px 0 rgba(0,0,0,.12);transition:all .5s cubic-bezier(.35,0,.25,1);background-color:rgba(0,0,0,.05)}.md-scrollbar::-webkit-scrollbar:hover,.md-scrollbar ::-webkit-scrollbar:hover{box-shadow:inset 1px 1px 0 rgba(0,0,0,.054),inset 0 -1px 0 rgba(0,0,0,.038);background-color:rgba(0,0,0,.087)}.md-scrollbar::-webkit-scrollbar-button,.md-scrollbar ::-webkit-scrollbar-button{display:none}.md-scrollbar::-webkit-scrollbar-corner,.md-scrollbar ::-webkit-scrollbar-corner{background-color:transparent}.md-scrollbar::-webkit-scrollbar-thumb,.md-scrollbar ::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.26);box-shadow:inset 1px 1px 0 rgba(0,0,0,.054),inset 0 -1px 0 rgba(0,0,0,.087);transition:all .5s cubic-bezier(.35,0,.25,1)}.md-caption{font-size:12px;font-weight:400;letter-spacing:.02em;line-height:17px}.md-body-1,body{font-weight:400;line-height:20px}.md-body-1,.md-body-2,body{font-size:14px;letter-spacing:.01em}.md-body-2{font-weight:500;line-height:24px}.md-subheading{font-size:16px;font-weight:400;letter-spacing:.01em;line-height:24px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em;line-height:26px}.md-headline{font-size:24px;line-height:32px}.md-display-1,.md-headline{font-weight:400;letter-spacing:0}.md-display-1{font-size:34px;line-height:40px}.md-display-2{font-size:45px;font-weight:400;letter-spacing:0;line-height:48px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:58px}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.01em;line-height:112px}a:not(.md-button):not(.md-bottom-bar-item){text-decoration:none}a:not(.md-button):not(.md-bottom-bar-item):hover{text-decoration:underline}button:focus{outline:none}.md-avatar{width:40px;min-width:40px;height:40px;min-height:40px;margin:auto;display:inline-block;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;border-radius:40px;vertical-align:middle}.md-avatar.md-large{width:64px;min-width:64px;height:64px;min-height:64px;border-radius:64px}.md-avatar.md-large .md-icon{width:40px;min-width:40px;height:40px;min-height:40px;font-size:40px;line-height:40px}.md-avatar.md-avatar-icon{background-color:rgba(0,0,0,.38)}.md-avatar.md-avatar-icon .md-icon{color:#fff}.md-avatar .md-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.md-avatar img{width:100%;height:100%;display:block}.md-avatar .md-ink-ripple{border-radius:50%}.md-avatar .md-ink-ripple .md-ripple.md-active{animation-duration:.9s}.md-avatar-tooltip.md-tooltip-top{margin-top:-8px}.md-avatar-tooltip.md-tooltip-right{margin-left:8px}.md-avatar-tooltip.md-tooltip-bottom{margin-top:8px}.md-avatar-tooltip.md-tooltip-left{margin-left:-8px}.md-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:99;pointer-events:none;background-color:rgba(0,0,0,.54);transform:translateZ(0);opacity:0;transition:all .5s cubic-bezier(.35,0,.25,1)}.md-backdrop.md-active{opacity:1;pointer-events:auto}.md-backdrop.md-transparent{background:rgba(0,0,0,.005)}.md-bottom-bar{width:100%;min-width:100%;height:56px;-ms-flex-pack:center;justify-content:center;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-bottom-bar,.md-bottom-bar-item{position:relative;display:-ms-flexbox;display:flex}.md-bottom-bar-item{max-width:168px;min-width:80px;height:100%;padding:8px 12px 10px;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;-ms-flex:1;flex:1;cursor:pointer;border:none;background:transparent;transform:translateZ(0);color:currentColor;font-family:inherit;font-size:14px;line-height:1em;text-decoration:none}.md-bottom-bar-item.md-active{padding-top:6px}.md-bottom-bar-item.md-active .md-text{transform:scale(1) translateZ(0)}.md-bottom-bar-item.md-active .md-icon,.md-bottom-bar-item.md-active .md-text{color:currentColor}.md-bottom-bar-item[disabled]{opacity:.38}.md-bottom-bar.md-shift .md-bottom-bar-item{min-width:56px;max-width:96px;position:static;-ms-flex:1 1 32px;flex:1 1 32px;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:flex,min-width,max-width;transition-property:flex,min-width,max-width,-ms-flex}.md-bottom-bar.md-shift .md-bottom-bar-item .md-icon{transform:translate3d(0,8px,0)}.md-bottom-bar.md-shift .md-bottom-bar-item .md-text{opacity:0;transform:scale(1) translate3d(0,6px,0)}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active{min-width:96px;max-width:168px;-ms-flex:1 1 72px;flex:1 1 72px}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-icon,.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-text{opacity:1}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-icon{transform:scale(1) translateZ(0)}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-text{transform:scale(1) translate3d(0,2px,0)}.md-bottom-bar-item .md-text{transform:scale(.8571) translateY(2px);transition:all .4s cubic-bezier(.25,.8,.25,1),color .15s linear,opacity .15s linear}.md-bottom-bar-item .md-icon{transition:all .4s cubic-bezier(.25,.8,.25,1),color .15s linear}.md-button{min-width:88px;min-height:36px;margin:6px 8px;padding:0 16px;display:inline-block;position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;background:none;border:0;border-radius:2px;transition:all .4s cubic-bezier(.25,.8,.25,1);color:currentColor;font-family:inherit;font-size:14px;font-style:inherit;font-variant:inherit;font-weight:500;letter-spacing:inherit;line-height:36px;text-align:center;text-transform:uppercase;text-decoration:none;vertical-align:top;white-space:nowrap}.md-button,.md-button:focus{outline:none}.md-button::-moz-focus-inner{border:0}.md-button:hover:not([disabled]):not(.md-raised){background-color:hsla(0,0%,60%,.2);text-decoration:none}.md-button:hover:not([disabled]).md-raised{background-color:rgba(0,0,0,.12)}.md-button:active:not([disabled]){background-color:hsla(0,0%,60%,.4)}.md-button.md-raised:not([disabled]){box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-button.md-dense{min-height:32px;line-height:32px;font-size:13px}.md-button.md-fab .md-icon,.md-button.md-icon-button .md-icon{position:absolute;top:1px;right:0;bottom:0;left:0}.md-button.md-icon-button{width:40px;min-width:40px;height:40px;margin:0 6px;padding:8px;border-radius:50%;line-height:24px}.md-button.md-icon-button:not([disabled]):hover{background:none}.md-button.md-icon-button.md-dense{width:32px;min-width:32px;height:32px;min-height:32px;padding:4px;line-height:32px}.md-button.md-icon-button .md-ink-ripple{border-radius:50%}.md-button.md-icon-button .md-ink-ripple .md-ripple{top:0!important;right:0!important;bottom:0!important;left:0!important}.md-button.md-icon-button .md-ripple.md-active{animation-duration:.9s}.md-button.md-fab{width:56px;height:56px;padding:0;min-width:0;overflow:hidden;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:56px;line-height:56px;background-clip:padding-box;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:background-color,box-shadow,transform}.md-button.md-fab:focus,.md-button.md-fab:hover{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.md-button.md-fab.md-mini{width:40px;height:40px;line-height:40px}.md-button.md-fab .md-ink-ripple{border-radius:56px}.md-button[disabled]{color:rgba(0,0,0,.26);cursor:default;pointer-events:none}.md-button[disabled].md-fab,.md-button[disabled].md-raised{background-color:rgba(0,0,0,.12)}.md-button[disabled].md-fab{box-shadow:none}.md-button:after{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-button .md-ink-ripple{border-radius:2px;background-clip:padding-box;overflow:hidden}.md-button.md-fab .md-icon,.md-button.md-icon-button .md-icon{display:block}.md-fab.md-fab-bottom-center,.md-fab.md-fab-bottom-left,.md-fab.md-fab-bottom-right,.md-fab.md-fab-top-center,.md-fab.md-fab-top-left,.md-fab.md-fab-top-right,.md-speed-dial.md-fab-bottom-center,.md-speed-dial.md-fab-bottom-left,.md-speed-dial.md-fab-bottom-right,.md-speed-dial.md-fab-top-center,.md-speed-dial.md-fab-top-left,.md-speed-dial.md-fab-top-right{margin:0;position:absolute;z-index:10}.md-fab.md-fab-top-left,.md-speed-dial.md-fab-top-left{top:24px;left:24px}.md-fab.md-fab-top-center,.md-speed-dial.md-fab-top-center{top:24px;left:50%;transform:translateX(-50%)}.md-fab.md-fab-top-right,.md-speed-dial.md-fab-top-right{top:24px;right:24px}.md-fab.md-fab-bottom-left,.md-speed-dial.md-fab-bottom-left{bottom:24px;left:24px}.md-fab.md-fab-bottom-center,.md-speed-dial.md-fab-bottom-center{bottom:24px;left:50%;transform:translateX(-50%)}.md-fab.md-fab-bottom-right,.md-speed-dial.md-fab-bottom-right{right:24px;bottom:24px}.md-button-tooltip.md-tooltip-top{margin-top:-8px}.md-button-tooltip.md-tooltip-right{margin-left:8px}.md-button-tooltip.md-tooltip-bottom{margin-top:8px}.md-button-tooltip.md-tooltip-left{margin-left:-8px}.md-button-toggle{width:auto;display:-ms-flexbox;display:flex}.md-button-toggle>.md-button{margin:0;overflow:hidden;border-width:1px 0 1px 1px;border-radius:0;text-align:center;text-overflow:ellipsis;white-space:nowrap}.md-button-toggle>.md-button:first-child{border-radius:2px 0 0 2px}.md-button-toggle>.md-button:last-child{border-right-width:1px;border-radius:0 2px 2px 0}.md-button-toggle>.md-button:not([disabled]){color:rgba(0,0,0,.54)}.md-button-toggle>.md-button:not([disabled]):hover:not(.md-toggle):not(.md-raised){background-color:hsla(0,0%,60%,.2);text-decoration:none}.md-button-toggle>.md-button .md-ink-ripple{border-radius:2px}.md-button-toggle.md-raised button:not([disabled]),.md-card{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-card{overflow:auto;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;position:relative;z-index:1;border-radius:2px}.md-card.md-with-hover{cursor:pointer;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow}.md-card.md-with-hover:hover{z-index:2;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-card .md-card-media{position:relative}.md-card .md-card-media.md-16-9{overflow:hidden}.md-card .md-card-media.md-16-9:before{width:100%;padding-top:56.25%;display:block;content:\" \"}.md-card .md-card-media.md-16-9 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card .md-card-media.md-4-3{overflow:hidden}.md-card .md-card-media.md-4-3:before{width:100%;padding-top:75%;display:block;content:\" \"}.md-card .md-card-media.md-4-3 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card .md-card-media.md-1-1{overflow:hidden}.md-card .md-card-media.md-1-1:before{width:100%;padding-top:100%;display:block;content:\" \"}.md-card .md-card-media.md-1-1 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card .md-card-media+.md-card-header{padding-top:24px}.md-card .md-card-media+.md-card-content:last-child{padding-bottom:16px}.md-card .md-card-media img{width:100%}.md-card .md-card-header{padding:16px}.md-card .md-card-header:first-child>.md-card-header-text>.md-title:first-child,.md-card .md-card-header:first-child>.md-title:first-child{margin-top:8px}.md-card .md-card-header:last-child{margin-bottom:8px}.md-card .md-card-header.md-card-header-flex{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.md-card .md-card-header+.md-card-content{padding-top:0}.md-card .md-card-header+.md-card-actions:not(:last-child){padding:0 8px}.md-card .md-card-header .md-avatar{margin-right:16px;float:left}.md-card .md-card-header .md-avatar~.md-title{font-size:14px}.md-card .md-card-header .md-avatar~.md-subhead,.md-card .md-card-header .md-avatar~.md-title{font-weight:500;line-height:20px}.md-card .md-card-header .md-button{margin:0}.md-card .md-card-header .md-button:last-child{margin-right:-4px}.md-card .md-card-header .md-button+.md-button{margin-left:8px}.md-card .md-card-header .md-card-header-text{-ms-flex:1;flex:1}.md-card .md-card-header .md-card-media{width:80px;-ms-flex:0 0 80px;flex:0 0 80px;height:80px;margin-left:16px}.md-card .md-card-header .md-card-media.md-medium{width:120px;-ms-flex:0 0 120px;flex:0 0 120px;height:120px}.md-card .md-card-header .md-card-media.md-big{width:160px;-ms-flex:0 0 160px;flex:0 0 160px;height:160px}.md-card .md-subhead,.md-card .md-subheading,.md-card .md-title{margin:0;font-weight:400}.md-card .md-subhead{opacity:.54;font-size:14px;letter-spacing:.01em;line-height:20px}.md-card .md-subhead+.md-title{margin-top:4px}.md-card .md-title{font-size:24px;letter-spacing:0;line-height:32px}.md-card .md-card-media-actions{padding:16px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.md-card .md-card-media-actions .md-card-media{max-width:240px;max-height:240px;-ms-flex:1;flex:1}.md-card .md-card-media-actions .md-card-actions{margin-left:16px;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center}.md-card .md-card-media-actions .md-card-actions .md-button+.md-button{margin:8px 0 0}.md-card .md-card-content{padding:16px;font-size:14px;line-height:22px}.md-card .md-card-content:last-child{padding-bottom:24px}.md-card .md-card-actions{padding:8px;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center}.md-card .md-card-actions .md-button{margin:0}.md-card .md-card-actions .md-button:first-child{margin-left:0}.md-card .md-card-actions .md-button:last-child{margin-right:0}.md-card .md-card-actions .md-button+.md-button{margin-left:4px}.md-card .md-card-area,.md-card>.md-card-area:not(:last-child){position:relative}.md-card>.md-card-area:not(:last-child):after{height:1px;position:absolute;bottom:0;content:\" \"}.md-card>.md-card-area:not(:last-child):not(.md-inset):after{right:0;left:0}.md-card>.md-card-area:not(:last-child).md-inset:after{right:16px;left:16px}.md-card .md-card-media-cover{position:relative;color:#fff}.md-card .md-card-media-cover.md-text-scrim .md-card-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.md-card .md-card-media-cover .md-card-area{position:absolute;right:0;bottom:0;left:0;z-index:2}.md-card .md-card-media-cover .md-card-header+.md-card-actions{padding-top:0}.md-card .md-card-media-cover .md-subhead{opacity:1}.md-card .md-card-expand{overflow:hidden}.md-card .md-card-expand.md-active [md-expand-trigger]{transform:rotate(180deg) translate3D(0,0,0)}.md-card .md-card-expand.md-active .md-card-content{margin-top:0!important;opacity:1;padding:4px 16px 24px;height:auto}.md-card .md-card-expand .md-card-actions{padding-top:0;position:relative;z-index:2}.md-card .md-card-expand [md-expand-trigger]{transition:all .4s cubic-bezier(.25,.8,.25,1);will-change:transform}.md-card .md-card-expand .md-card-content{height:0;padding:0 16px;position:relative;z-index:1;opacity:0;transform:translate3D(0,0,0);transition:all .4s cubic-bezier(.25,.8,.25,1);will-change:margin,height}.md-checkbox{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-checkbox:not(.md-disabled),.md-checkbox:not(.md-disabled) .md-checkbox-label{cursor:pointer}.md-checkbox .md-checkbox-container{width:20px;min-width:20px;height:20px;position:relative;border-radius:2px;border:2px solid rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-checkbox .md-checkbox-container:focus{outline:none}.md-checkbox .md-checkbox-container:before{width:48px;height:48px;position:absolute;top:50%;left:50%;border-radius:50%;transform:translate(-50%,-50%);transition:all .3s cubic-bezier(.55,0,.55,.2);content:\" \"}.md-checkbox .md-checkbox-container:after{width:6px;height:13px;position:absolute;top:0;left:5px;border:2px solid #fff;border-top:0;border-left:0;opacity:0;transform:rotate(45deg) scale3D(.15,.15,1);transition:all .3s cubic-bezier(.55,0,.55,.2);content:\" \"}.md-checkbox .md-checkbox-container input{position:absolute;left:-999em}.md-checkbox .md-checkbox-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-checkbox .md-checkbox-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-checkbox .md-checkbox-label{height:20px;padding-left:8px;line-height:20px}.md-checkbox.md-checked .md-checkbox-container:after{opacity:1;transform:rotate(45deg) scale3D(1,1,1);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-chip{height:32px;padding:8px 12px;display:inline-block;border-radius:32px;transition:all .4s cubic-bezier(.25,.8,.25,1);font-size:13px;line-height:16px;white-space:nowrap}.md-chip.md-deletable{position:relative;padding-right:32px}.md-chip.md-editable .md-chip-container{cursor:pointer}.md-chip:active,.md-chip:focus{outline:none}.md-chip:active:not(.md-disabled),.md-chip:focus:not(.md-disabled){cursor:pointer;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-chip.md-disabled .md-button{pointer-events:none;cursor:default}.md-chip .md-button.md-delete{width:24px;min-width:24px;height:24px;min-height:24px;margin:0;padding:0;position:absolute;top:4px;right:4px;border-radius:24px;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-chip .md-button.md-delete .md-icon{width:20px;min-width:20px;height:20px;min-height:20px;margin:0;font-size:20px}.md-chip .md-button.md-delete .md-ink-ripple{border-radius:32px}.md-chip .md-button.md-delete .md-ripple{opacity:.54}.md-chips{min-height:54px;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.md-chips .md-chip{margin-right:8px;margin-bottom:4px}.md-chips .md-input{width:128px;-ms-flex:1;flex:1}.md-dialog-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:108}.md-dialog-container.md-active{pointer-events:auto}.md-dialog-container.md-active .md-dialog{opacity:1!important;transform:scale(1)!important;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform}.md-dialog-backdrop{position:fixed;z-index:109}.md-dialog{min-width:280px;max-width:80%;max-height:80%;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;overflow:hidden;position:relative;z-index:110;outline:none;border-radius:2px;opacity:0;box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12);transform:scale(.9,.85);transform-origin:center center;transition:opacity .4s cubic-bezier(.25,.8,.25,1),transform .4s cubic-bezier(.25,.8,.25,1) .05s;will-change:opacity,transform}.md-dialog.md-reference{transform-origin:top center}.md-dialog.md-transition-off{transition:none!important}.md-dialog p{margin:0}.md-dialog-title{margin-bottom:20px;padding:24px 24px 0}.md-dialog-content{padding:0 24px 24px;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;overflow:auto;position:relative}.md-dialog-content:first-child{padding-top:24px}.md-dialog-content p:first-child:not(:only-child){margin-top:0}.md-dialog-content p:last-child:not(:only-child){margin-bottom:0}.md-dialog-body{margin:0 -24px;padding:0 24px;overflow:auto}.md-dialog-actions{min-height:52px;padding:8px 8px 8px 24px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;position:relative}.md-dialog-actions:before{height:1px;position:absolute;top:-1px;right:0;left:0;content:\" \"}.md-dialog-actions .md-button{min-width:64px;margin:0;padding:0 8px}.md-dialog-actions .md-button+.md-button{margin-left:8px}.md-divider{height:1px;margin:0;padding:0;display:block;border:0;background-color:rgba(0,0,0,.12)}.md-divider.md-inset{margin-left:72px}.md-file{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1}.md-file input[type=file]{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-file .md-icon{cursor:pointer}.md-icon{width:24px;min-width:24px;height:24px;min-height:24px;font-size:24px;margin:auto;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;fill:currentColor;text-rendering:optimizeLegibility;vertical-align:middle}.md-icon.md-size-2x{width:48px;min-width:48px;height:48px;min-height:48px;font-size:48px}.md-icon.md-size-3x{width:72px;min-width:72px;height:72px;min-height:72px;font-size:72px}.md-icon.md-size-4x{width:96px;min-width:96px;height:96px;min-height:96px;font-size:96px}.md-icon.md-size-5x{width:120px;min-width:120px;height:120px;min-height:120px;font-size:120px}.md-icon svg{width:100%;height:100%}img.md-icon{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-image{opacity:0;filter:saturate(20%)}.md-image.md-black-output{filter:brightness(.4) saturate(20%)}.md-image.md-loaded{opacity:1;filter:saturate(100%);transition:opacity 1.1s cubic-bezier(.25,.8,.25,1),filter 2.2s cubic-bezier(.25,.8,.25,1) .3s}.md-input-container{width:100%;min-height:48px;margin:4px 0 24px;padding-top:16px;display:-ms-flexbox;display:flex;position:relative}.md-input-container:after{height:1px;right:0;bottom:0;background-color:rgba(0,0,0,.12);content:\" \"}.md-input-container:after,.md-input-container label{position:absolute;left:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-input-container label{top:23px;pointer-events:none;transition-duration:.3s;color:rgba(0,0,0,.54);font-size:16px;line-height:20px}.md-input-container input,.md-input-container textarea{width:100%;height:32px;padding:0;display:block;-ms-flex:1;flex:1;border:none;background:none;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:font-size;color:rgba(0,0,0,.54);font-family:inherit;font-size:1px;line-height:32px}.md-input-container input:focus,.md-input-container textarea:focus{outline:none}.md-input-container input::-webkit-input-placeholder,.md-input-container textarea::-webkit-input-placeholder{color:rgba(0,0,0,.54);font-size:16px;text-shadow:none;-webkit-text-fill-color:initial}.md-input-container input~.md-icon:not(.md-icon-delete),.md-input-container textarea~.md-icon:not(.md-icon-delete){margin-left:12px}.md-input-container input~.md-icon:not(.md-icon-delete):after,.md-input-container textarea~.md-icon:not(.md-icon-delete):after{right:0;left:auto}.md-input-container textarea{min-height:32px;max-height:230px;padding:5px 0;resize:none;line-height:1.3em}.md-input-container .md-count,.md-input-container .md-error{height:20px;position:absolute;bottom:-22px;font-size:12px}.md-input-container .md-error{display:block!important;left:0;opacity:0;transform:translate3d(0,-8px,0);transition:all .3s cubic-bezier(.55,0,.55,.2)}.md-input-container .md-count{right:0}.md-input-container .md-icon:not(.md-icon-delete){margin:4px auto;color:rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-input-container .md-icon:not(.md-icon-delete):after{width:36px;height:2px;position:absolute;left:0;bottom:0;z-index:2;content:\"\"}.md-input-container .md-icon:not(.md-icon-delete)~label{left:36px}.md-input-container .md-icon:not(.md-icon-delete)~.md-file,.md-input-container .md-icon:not(.md-icon-delete)~.md-input,.md-input-container .md-icon:not(.md-icon-delete)~.md-textarea{margin-left:12px}.md-input-container .md-autocomplete,.md-input-container .md-autocomplete .md-menu,.md-input-container .md-autocomplete .md-menu .md-input{width:100%}.md-theme-default.md-input-container .md-autocomplete .md-icon:not(.md-icon-search):after{height:0}.md-input-container.md-input-placeholder label{pointer-events:auto;top:10px;opacity:0;font-size:12px}.md-input-container.md-input-placeholder input,.md-input-container.md-input-placeholder textarea{font-size:16px}.md-input-container.md-has-value label,.md-input-container.md-input-focused label{pointer-events:auto;top:0;opacity:1;font-size:12px}.md-input-container.md-has-value input,.md-input-container.md-has-value textarea,.md-input-container.md-input-focused input,.md-input-container.md-input-focused textarea{font-size:16px}.md-input-container.md-has-value input,.md-input-container.md-has-value textarea{color:rgba(0,0,0,.87)}.md-input-container.md-input-inline label{pointer-events:none}.md-input-container.md-input-inline.md-input-focused label{top:23px;font-size:16px}.md-input-container.md-input-inline.md-has-value label{opacity:0}.md-input-container.md-input-disabled:after{background:0 100% repeat-x;background-image:linear-gradient(90deg,rgba(0,0,0,.38) 0,rgba(0,0,0,.38) 33%,transparent 0);background-size:4px 1px}.md-input-container.md-input-disabled input,.md-input-container.md-input-disabled label,.md-input-container.md-input-disabled textarea{color:rgba(0,0,0,.38)}.md-input-container.md-has-password.md-input-focused .md-toggle-password{color:rgba(0,0,0,.54)}.md-input-container.md-has-password .md-toggle-password{margin:0;position:absolute;right:0;bottom:-2px;color:rgba(0,0,0,.38)}.md-input-container.md-has-password .md-toggle-password .md-ink-ripple{color:rgba(0,0,0,.87)}.md-input-container.md-clearable.md-input-focused .md-clear-input{color:rgba(0,0,0,.54)}.md-input-container.md-clearable .md-clear-input{margin:0;position:absolute;right:0;bottom:-2px;color:rgba(0,0,0,.38)}.md-input-container.md-clearable .md-clear-input .md-ink-ripple{color:rgba(0,0,0,.87)}.md-input-container.md-input-invalid .md-error{opacity:1;transform:translateZ(0)}.md-input-container.md-input-required label:after{top:2px;right:0;transform:translateX(calc(100% + 2px));content:\"*\";font-size:12px;line-height:1em;vertical-align:top}.md-input-container.md-has-select:hover .md-select:not(.md-disabled):after{color:rgba(0,0,0,.87)}.md-layout{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex:1;flex:1}.md-row{-ms-flex-direction:row;flex-direction:row}.md-column{-ms-flex-direction:column;flex-direction:column}.md-layout.md-container{width:100%;max-width:1200px}.md-layout.md-container.md-centered{margin:0 auto}.md-align-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-center{-ms-flex-pack:center;justify-content:center}.md-align-end{-ms-flex-pack:end;justify-content:flex-end}.md-vertical-align-start{-ms-flex-align:start;align-items:flex-start;-ms-flex-line-pack:start;align-content:flex-start}.md-vertical-align-center{-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.md-vertical-align-end{-ms-flex-align:end;align-items:flex-end;-ms-flex-line-pack:end;align-content:flex-end}.md-vertical-align-stretch{-ms-flex-align:stretch;align-items:stretch;-ms-flex-line-pack:stretch;align-content:stretch}.md-gutter:not(.md-column){margin-right:-12px;margin-left:-12px}.md-gutter:not(.md-column)>.md-layout{padding-right:12px;padding-left:12px}.md-gutter .md-column{margin-top:-12px;margin-bottom:-12px}.md-gutter .md-column>.md-layout{padding-top:12px;padding-bottom:12px}.md-gutter-8:not(.md-column){margin-right:-4px;margin-left:-4px}.md-gutter-8:not(.md-column)>.md-layout{padding-right:4px;padding-left:4px}.md-gutter-8 .md-column{margin-top:-4px;margin-bottom:-4px}.md-gutter-8 .md-column>.md-layout{padding-top:4px;padding-bottom:4px}.md-gutter-16:not(.md-column){margin-right:-8px;margin-left:-8px}.md-gutter-16:not(.md-column)>.md-layout{padding-right:8px;padding-left:8px}.md-gutter-16 .md-column{margin-top:-8px;margin-bottom:-8px}.md-gutter-16 .md-column>.md-layout{padding-top:8px;padding-bottom:8px}.md-gutter-24:not(.md-column){margin-right:-12px;margin-left:-12px}.md-gutter-24:not(.md-column)>.md-layout{padding-right:12px;padding-left:12px}.md-gutter-24 .md-column{margin-top:-12px;margin-bottom:-12px}.md-gutter-24 .md-column>.md-layout{padding-top:12px;padding-bottom:12px}.md-gutter-40:not(.md-column){margin-right:-20px;margin-left:-20px}.md-gutter-40:not(.md-column)>.md-layout{padding-right:20px;padding-left:20px}.md-gutter-40 .md-column{margin-top:-20px;margin-bottom:-20px}.md-gutter-40 .md-column>.md-layout{padding-top:20px;padding-bottom:20px}.md-flex{-ms-flex:1 1;flex:1 1}.md-flex-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-33{margin-left:33.33333%}.md-flex-offset-66{margin-left:66.66666%}.md-flex-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-5{margin-left:5%}.md-flex-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-10{margin-left:10%}.md-flex-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-15{margin-left:15%}.md-flex-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-20{margin-left:20%}.md-flex-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-25{margin-left:25%}.md-flex-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-30{margin-left:30%}.md-flex-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-35{margin-left:35%}.md-flex-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-40{margin-left:40%}.md-flex-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-45{margin-left:45%}.md-flex-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-50{margin-left:50%}.md-flex-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-55{margin-left:55%}.md-flex-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-60{margin-left:60%}.md-flex-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-65{margin-left:65%}.md-flex-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-70{margin-left:70%}.md-flex-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-75{margin-left:75%}.md-flex-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-80{margin-left:80%}.md-flex-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-85{margin-left:85%}.md-flex-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-90{margin-left:90%}.md-flex-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-95{margin-left:95%}.md-flex-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-100{margin-left:100%}@media (max-width:944px){.md-gutter:not(.md-column){margin-right:-8px;margin-left:-8px}.md-gutter:not(.md-column)>.md-layout{padding-right:8px;padding-left:8px}.md-gutter .md-column{margin-top:-8px;margin-bottom:-8px}.md-gutter .md-column>.md-layout{padding-top:8px;padding-bottom:8px}.md-row-small{-ms-flex-direction:row;flex-direction:row}.md-column-small{-ms-flex-direction:column;flex-direction:column}.md-flex-small{-ms-flex:1 1;flex:1 1}.md-flex-small-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-small-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-small-33{margin-left:33.33333%}.md-flex-offset-small-66{margin-left:66.66666%}.md-flex-small-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-small-5{margin-left:5%}.md-flex-small-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-small-10{margin-left:10%}.md-flex-small-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-small-15{margin-left:15%}.md-flex-small-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-small-20{margin-left:20%}.md-flex-small-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-small-25{margin-left:25%}.md-flex-small-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-small-30{margin-left:30%}.md-flex-small-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-small-35{margin-left:35%}.md-flex-small-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-small-40{margin-left:40%}.md-flex-small-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-small-45{margin-left:45%}.md-flex-small-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-small-50{margin-left:50%}.md-flex-small-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-small-55{margin-left:55%}.md-flex-small-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-small-60{margin-left:60%}.md-flex-small-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-small-65{margin-left:65%}.md-flex-small-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-small-70{margin-left:70%}.md-flex-small-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-small-75{margin-left:75%}.md-flex-small-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-small-80{margin-left:80%}.md-flex-small-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-small-85{margin-left:85%}.md-flex-small-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-small-90{margin-left:90%}.md-flex-small-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-small-95{margin-left:95%}.md-flex-small-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-small-100{margin-left:100%}.md-align-small-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-small-center{-ms-flex-pack:center;justify-content:center}.md-align-small-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-small{display:none}}@media (min-width:1904px){.md-row-xlarge{-ms-flex-direction:row;flex-direction:row}.md-column-xlarge{-ms-flex-direction:column;flex-direction:column}.md-flex-xlarge{-ms-flex:1 1;flex:1 1}.md-flex-xlarge-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-xlarge-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-xlarge-33{margin-left:33.33333%}.md-flex-offset-xlarge-66{margin-left:66.66666%}.md-flex-xlarge-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-xlarge-5{margin-left:5%}.md-flex-xlarge-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-xlarge-10{margin-left:10%}.md-flex-xlarge-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-xlarge-15{margin-left:15%}.md-flex-xlarge-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-xlarge-20{margin-left:20%}.md-flex-xlarge-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-xlarge-25{margin-left:25%}.md-flex-xlarge-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-xlarge-30{margin-left:30%}.md-flex-xlarge-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-xlarge-35{margin-left:35%}.md-flex-xlarge-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-xlarge-40{margin-left:40%}.md-flex-xlarge-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-xlarge-45{margin-left:45%}.md-flex-xlarge-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-xlarge-50{margin-left:50%}.md-flex-xlarge-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-xlarge-55{margin-left:55%}.md-flex-xlarge-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-xlarge-60{margin-left:60%}.md-flex-xlarge-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-xlarge-65{margin-left:65%}.md-flex-xlarge-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-xlarge-70{margin-left:70%}.md-flex-xlarge-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-xlarge-75{margin-left:75%}.md-flex-xlarge-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-xlarge-80{margin-left:80%}.md-flex-xlarge-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-xlarge-85{margin-left:85%}.md-flex-xlarge-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-xlarge-90{margin-left:90%}.md-flex-xlarge-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-xlarge-95{margin-left:95%}.md-flex-xlarge-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-xlarge-100{margin-left:100%}.md-align-xlarge-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-xlarge-center{-ms-flex-pack:center;justify-content:center}.md-align-xlarge-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-xlarge{display:none}}@media (max-width:1903px){.md-row-large{-ms-flex-direction:row;flex-direction:row}.md-column-large{-ms-flex-direction:column;flex-direction:column}.md-flex-large{-ms-flex:1 1;flex:1 1}.md-flex-large-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-large-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-large-33{margin-left:33.33333%}.md-flex-offset-large-66{margin-left:66.66666%}.md-flex-large-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-large-5{margin-left:5%}.md-flex-large-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-large-10{margin-left:10%}.md-flex-large-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-large-15{margin-left:15%}.md-flex-large-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-large-20{margin-left:20%}.md-flex-large-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-large-25{margin-left:25%}.md-flex-large-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-large-30{margin-left:30%}.md-flex-large-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-large-35{margin-left:35%}.md-flex-large-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-large-40{margin-left:40%}.md-flex-large-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-large-45{margin-left:45%}.md-flex-large-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-large-50{margin-left:50%}.md-flex-large-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-large-55{margin-left:55%}.md-flex-large-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-large-60{margin-left:60%}.md-flex-large-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-large-65{margin-left:65%}.md-flex-large-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-large-70{margin-left:70%}.md-flex-large-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-large-75{margin-left:75%}.md-flex-large-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-large-80{margin-left:80%}.md-flex-large-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-large-85{margin-left:85%}.md-flex-large-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-large-90{margin-left:90%}.md-flex-large-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-large-95{margin-left:95%}.md-flex-large-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-large-100{margin-left:100%}.md-align-large-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-large-center{-ms-flex-pack:center;justify-content:center}.md-align-large-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-large{display:none}}@media (max-width:1264px){.md-row-medium{-ms-flex-direction:row;flex-direction:row}.md-column-medium{-ms-flex-direction:column;flex-direction:column}.md-flex-medium{-ms-flex:1 1;flex:1 1}.md-flex-medium-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-medium-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-medium-33{margin-left:33.33333%}.md-flex-offset-medium-66{margin-left:66.66666%}.md-flex-medium-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-medium-5{margin-left:5%}.md-flex-medium-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-medium-10{margin-left:10%}.md-flex-medium-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-medium-15{margin-left:15%}.md-flex-medium-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-medium-20{margin-left:20%}.md-flex-medium-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-medium-25{margin-left:25%}.md-flex-medium-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-medium-30{margin-left:30%}.md-flex-medium-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-medium-35{margin-left:35%}.md-flex-medium-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-medium-40{margin-left:40%}.md-flex-medium-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-medium-45{margin-left:45%}.md-flex-medium-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-medium-50{margin-left:50%}.md-flex-medium-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-medium-55{margin-left:55%}.md-flex-medium-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-medium-60{margin-left:60%}.md-flex-medium-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-medium-65{margin-left:65%}.md-flex-medium-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-medium-70{margin-left:70%}.md-flex-medium-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-medium-75{margin-left:75%}.md-flex-medium-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-medium-80{margin-left:80%}.md-flex-medium-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-medium-85{margin-left:85%}.md-flex-medium-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-medium-90{margin-left:90%}.md-flex-medium-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-medium-95{margin-left:95%}.md-flex-medium-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-medium-100{margin-left:100%}.md-align-medium-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-medium-center{-ms-flex-pack:center;justify-content:center}.md-align-medium-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-medium{display:none}}@media (max-width:600px){.md-row-xsmall{-ms-flex-direction:row;flex-direction:row}.md-column-xsmall{-ms-flex-direction:column;flex-direction:column}.md-flex-xsmall{-ms-flex:1 1;flex:1 1}.md-flex-xsmall-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-xsmall-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-xsmall-33{margin-left:33.33333%}.md-flex-offset-xsmall-66{margin-left:66.66666%}.md-flex-xsmall-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-xsmall-5{margin-left:5%}.md-flex-xsmall-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-xsmall-10{margin-left:10%}.md-flex-xsmall-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-xsmall-15{margin-left:15%}.md-flex-xsmall-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-xsmall-20{margin-left:20%}.md-flex-xsmall-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-xsmall-25{margin-left:25%}.md-flex-xsmall-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-xsmall-30{margin-left:30%}.md-flex-xsmall-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-xsmall-35{margin-left:35%}.md-flex-xsmall-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-xsmall-40{margin-left:40%}.md-flex-xsmall-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-xsmall-45{margin-left:45%}.md-flex-xsmall-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-xsmall-50{margin-left:50%}.md-flex-xsmall-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-xsmall-55{margin-left:55%}.md-flex-xsmall-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-xsmall-60{margin-left:60%}.md-flex-xsmall-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-xsmall-65{margin-left:65%}.md-flex-xsmall-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-xsmall-70{margin-left:70%}.md-flex-xsmall-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-xsmall-75{margin-left:75%}.md-flex-xsmall-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-xsmall-80{margin-left:80%}.md-flex-xsmall-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-xsmall-85{margin-left:85%}.md-flex-xsmall-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-xsmall-90{margin-left:90%}.md-flex-xsmall-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-xsmall-95{margin-left:95%}.md-flex-xsmall-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-xsmall-100{margin-left:100%}.md-align-xsmall-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-xsmall-center{-ms-flex-pack:center;justify-content:center}.md-align-xsmall-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-xsmall{display:none}}@media (min-width:1265px){.md-row-large-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-large-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-large-and-up{-ms-flex:1 1;flex:1 1}.md-flex-large-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-large-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-large-and-up-33{margin-left:33.33333%}.md-flex-offset-large-and-up-66{margin-left:66.66666%}.md-flex-large-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-large-and-up-5{margin-left:5%}.md-flex-large-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-large-and-up-10{margin-left:10%}.md-flex-large-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-large-and-up-15{margin-left:15%}.md-flex-large-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-large-and-up-20{margin-left:20%}.md-flex-large-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-large-and-up-25{margin-left:25%}.md-flex-large-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-large-and-up-30{margin-left:30%}.md-flex-large-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-large-and-up-35{margin-left:35%}.md-flex-large-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-large-and-up-40{margin-left:40%}.md-flex-large-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-large-and-up-45{margin-left:45%}.md-flex-large-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-large-and-up-50{margin-left:50%}.md-flex-large-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-large-and-up-55{margin-left:55%}.md-flex-large-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-large-and-up-60{margin-left:60%}.md-flex-large-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-large-and-up-65{margin-left:65%}.md-flex-large-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-large-and-up-70{margin-left:70%}.md-flex-large-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-large-and-up-75{margin-left:75%}.md-flex-large-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-large-and-up-80{margin-left:80%}.md-flex-large-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-large-and-up-85{margin-left:85%}.md-flex-large-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-large-and-up-90{margin-left:90%}.md-flex-large-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-large-and-up-95{margin-left:95%}.md-flex-large-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-large-and-up-100{margin-left:100%}.md-align-large-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-large-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-large-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-large-and-up{display:none}}@media (min-width:945px){.md-row-medium-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-medium-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-medium-and-up{-ms-flex:1 1;flex:1 1}.md-flex-medium-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-medium-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-medium-and-up-33{margin-left:33.33333%}.md-flex-offset-medium-and-up-66{margin-left:66.66666%}.md-flex-medium-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-medium-and-up-5{margin-left:5%}.md-flex-medium-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-medium-and-up-10{margin-left:10%}.md-flex-medium-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-medium-and-up-15{margin-left:15%}.md-flex-medium-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-medium-and-up-20{margin-left:20%}.md-flex-medium-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-medium-and-up-25{margin-left:25%}.md-flex-medium-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-medium-and-up-30{margin-left:30%}.md-flex-medium-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-medium-and-up-35{margin-left:35%}.md-flex-medium-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-medium-and-up-40{margin-left:40%}.md-flex-medium-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-medium-and-up-45{margin-left:45%}.md-flex-medium-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-medium-and-up-50{margin-left:50%}.md-flex-medium-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-medium-and-up-55{margin-left:55%}.md-flex-medium-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-medium-and-up-60{margin-left:60%}.md-flex-medium-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-medium-and-up-65{margin-left:65%}.md-flex-medium-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-medium-and-up-70{margin-left:70%}.md-flex-medium-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-medium-and-up-75{margin-left:75%}.md-flex-medium-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-medium-and-up-80{margin-left:80%}.md-flex-medium-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-medium-and-up-85{margin-left:85%}.md-flex-medium-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-medium-and-up-90{margin-left:90%}.md-flex-medium-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-medium-and-up-95{margin-left:95%}.md-flex-medium-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-medium-and-up-100{margin-left:100%}.md-align-medium-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-medium-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-medium-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-medium-and-up{display:none}}@media (min-width:601px){.md-row-small-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-small-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-small-and-up{-ms-flex:1 1;flex:1 1}.md-flex-small-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-small-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-small-and-up-33{margin-left:33.33333%}.md-flex-offset-small-and-up-66{margin-left:66.66666%}.md-flex-small-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-small-and-up-5{margin-left:5%}.md-flex-small-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-small-and-up-10{margin-left:10%}.md-flex-small-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-small-and-up-15{margin-left:15%}.md-flex-small-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-small-and-up-20{margin-left:20%}.md-flex-small-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-small-and-up-25{margin-left:25%}.md-flex-small-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-small-and-up-30{margin-left:30%}.md-flex-small-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-small-and-up-35{margin-left:35%}.md-flex-small-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-small-and-up-40{margin-left:40%}.md-flex-small-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-small-and-up-45{margin-left:45%}.md-flex-small-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-small-and-up-50{margin-left:50%}.md-flex-small-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-small-and-up-55{margin-left:55%}.md-flex-small-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-small-and-up-60{margin-left:60%}.md-flex-small-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-small-and-up-65{margin-left:65%}.md-flex-small-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-small-and-up-70{margin-left:70%}.md-flex-small-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-small-and-up-75{margin-left:75%}.md-flex-small-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-small-and-up-80{margin-left:80%}.md-flex-small-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-small-and-up-85{margin-left:85%}.md-flex-small-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-small-and-up-90{margin-left:90%}.md-flex-small-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-small-and-up-95{margin-left:95%}.md-flex-small-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-small-and-up-100{margin-left:100%}.md-align-small-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-small-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-small-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-small-and-up{display:none}}@media (min-width:300px){.md-row-xsmall-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-xsmall-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-xsmall-and-up{-ms-flex:1 1;flex:1 1}.md-flex-xsmall-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-xsmall-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-xsmall-and-up-33{margin-left:33.33333%}.md-flex-offset-xsmall-and-up-66{margin-left:66.66666%}.md-flex-xsmall-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-xsmall-and-up-5{margin-left:5%}.md-flex-xsmall-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-xsmall-and-up-10{margin-left:10%}.md-flex-xsmall-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-xsmall-and-up-15{margin-left:15%}.md-flex-xsmall-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-xsmall-and-up-20{margin-left:20%}.md-flex-xsmall-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-xsmall-and-up-25{margin-left:25%}.md-flex-xsmall-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-xsmall-and-up-30{margin-left:30%}.md-flex-xsmall-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-xsmall-and-up-35{margin-left:35%}.md-flex-xsmall-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-xsmall-and-up-40{margin-left:40%}.md-flex-xsmall-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-xsmall-and-up-45{margin-left:45%}.md-flex-xsmall-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-xsmall-and-up-50{margin-left:50%}.md-flex-xsmall-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-xsmall-and-up-55{margin-left:55%}.md-flex-xsmall-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-xsmall-and-up-60{margin-left:60%}.md-flex-xsmall-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-xsmall-and-up-65{margin-left:65%}.md-flex-xsmall-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-xsmall-and-up-70{margin-left:70%}.md-flex-xsmall-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-xsmall-and-up-75{margin-left:75%}.md-flex-xsmall-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-xsmall-and-up-80{margin-left:80%}.md-flex-xsmall-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-xsmall-and-up-85{margin-left:85%}.md-flex-xsmall-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-xsmall-and-up-90{margin-left:90%}.md-flex-xsmall-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-xsmall-and-up-95{margin-left:95%}.md-flex-xsmall-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-xsmall-and-up-100{margin-left:100%}.md-align-xsmall-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-xsmall-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-xsmall-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-xsmall-and-up{display:none}}.md-list{margin:0;padding:8px 0;display:-ms-flexbox;display:flex;-ms-flex-flow:column nowrap;flex-flow:column nowrap;position:relative;list-style:none}.md-list.md-dense{padding:4px 0}.md-list.md-dense .md-list-item.md-inset .md-list-item-container{padding-left:72px}.md-list.md-dense .md-list-item .md-list-item-container{min-height:40px;font-size:13px}.md-list.md-dense .md-list-item .md-list-item-container .md-avatar:first-child,.md-list.md-dense .md-list-item .md-list-item-container .md-list-action:first-child{margin-right:24px}.md-list.md-dense .md-avatar{width:32px;min-width:32px;height:32px;min-height:32px}.md-list.md-dense .md-list-item-expand{min-height:40px}.md-list.md-double-line.md-dense .md-list-item .md-list-item-container{min-height:60px}.md-list.md-double-line.md-dense .md-list-item .md-avatar{width:36px;min-width:36px;height:36px;min-height:36px}.md-list.md-double-line.md-dense .md-list-item .md-avatar .md-avatar:first-child,.md-list.md-double-line.md-dense .md-list-item .md-avatar .md-list-action:first-child{margin-right:20px}.md-list.md-double-line.md-dense .md-list-text-container>:first-child,.md-list.md-double-line.md-dense .md-list-text-container>:nth-child(2){font-size:13px}.md-list.md-double-line .md-list-item .md-list-item-container{min-height:72px}.md-list.md-triple-line.md-dense .md-list-item .md-list-item-container{min-height:76px}.md-list.md-triple-line.md-dense .md-list-item .md-avatar{width:36px;min-width:36px;height:36px;min-height:36px}.md-list.md-triple-line.md-dense .md-list-item .md-avatar .md-avatar:first-child,.md-list.md-triple-line.md-dense .md-list-item .md-avatar .md-list-action:first-child{margin-right:20px}.md-list.md-triple-line.md-dense .md-list-text-container>:first-child,.md-list.md-triple-line.md-dense .md-list-text-container>:nth-child(2){font-size:13px}.md-list.md-triple-line .md-list-item .md-list-item-container{min-height:88px}.md-list.md-triple-line .md-avatar{margin:0}.md-list .md-subheader.md-inset{padding-left:72px}.md-list>.md-subheader:first-of-type{margin-top:-8px}.md-list-item{height:auto;position:relative;z-index:2}.md-list-item.md-disabled{cursor:default;pointer-events:none}.md-list-item.md-inset .md-list-item-container{padding-left:72px}.md-list-item .md-button-ghost{width:100%;margin:0;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:0}.md-list-item .md-button:not(.md-button-ghost):not(.md-list-item-container){position:relative;z-index:2}.md-list-item .md-button:not(.md-button-ghost):not(.md-list-item-container) .md-icon{position:relative}.md-list-item .md-list-item-container{min-height:48px;margin:0;padding:0 16px;display:-ms-flexbox;display:flex;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;-ms-flex:1;flex:1;position:relative;font-size:16px;font-weight:400;text-align:left;text-transform:none}.md-list-item .md-list-item-container:hover{text-decoration:none}.md-list-item .md-list-item-container>.md-icon:first-child{margin-right:32px}.md-list-item .md-list-item-container .md-avatar:first-child,.md-list-item .md-list-item-container .md-list-action:first-child{margin-right:16px}.md-list-item .md-list-item-container .md-list-action{margin:0 -10px 0 0}.md-list-item .md-list-item-container .md-list-action:nth-child(3){margin:0 -10px 0 16px}.md-list-item .md-divider{position:absolute;bottom:0;right:0;left:0}.md-list-item .md-avatar,.md-list-item .md-icon,.md-list-item .md-list-action:first-child{margin:0}.md-list-item .md-avatar:first-of-type+*,.md-list-item .md-icon:first-of-type+*,.md-list-item .md-list-action:first-child:first-of-type+*{-ms-flex:1 1 auto;flex:1 1 auto}.md-list-item .md-avatar{margin-top:8px;margin-bottom:8px}.md-list-item .md-icon{color:rgba(0,0,0,.54)}.md-list-item .md-ink-ripple{border-radius:0}.md-list-item-expand{min-height:48px;-ms-flex-flow:column wrap;flex-flow:column wrap;overflow:hidden;transform:translate3D(0,0,0)}.md-list-item-expand:after,.md-list-item-expand:before{height:1px;position:absolute;right:0;left:0;z-index:3;transition:all .4s cubic-bezier(.25,.8,.25,1);content:\" \"}.md-list-item-expand:before{top:0}.md-list-item-expand:after{bottom:0}.md-list-item-expand.md-active{position:relative}.md-list-item-expand.md-active:after,.md-list-item-expand.md-active:before{background-color:rgba(0,0,0,.12)}.md-list-item-expand.md-active.md-active+.md-active:before,.md-list-item-expand.md-active:first-of-type:before,.md-list-item-expand.md-active:last-of-type:after{background:none}.md-list-item-expand.md-active>.md-list-item-container .md-list-expand-indicator{transform:rotate(180deg) translate3D(0,0,0)}.md-list-item-expand.md-active>.md-list-expand{margin-bottom:0!important}.md-list-item-expand .md-expansion-indicator,.md-list-item-expand .md-icon,.md-list-item-expand .md-list-item-container{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-list-item-expand .md-list-expand{position:relative;z-index:1;transform:translate3D(0,0,0);will-change:margin-bottom;transition:all .5s cubic-bezier(.35,0,.25,1)}.md-list-item-expand .md-list-expand.md-transition-off{transition:none!important}.md-list-item-expand .md-list-expand .md-list{padding:0}.md-list-text-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-ms-flex:1;flex:1;overflow:hidden;line-height:1.25em;white-space:normal}.md-list-text-container>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-list-text-container>:first-child{font-size:16px}.md-list-text-container>:nth-child(2),.md-list-text-container>:nth-child(3){margin:0;color:rgba(0,0,0,.54);font-size:14px}.md-list-text-container>:nth-child(2):not(:last-child){color:rgba(0,0,0,.87)}.md-menu{display:inline-block}.md-menu-content{width:168px;min-width:84px;max-width:392px;min-height:64px;max-height:calc(100vh - 32px);overflow-x:hidden;overflow-y:auto;position:absolute;z-index:131;transform:scale(.9,.85) translateZ(0);border-radius:2px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);opacity:0;transition:width .4s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.55,0,.55,.2),margin .3s cubic-bezier(.55,0,.55,.2),transform 0s cubic-bezier(.55,0,.55,.2) .4s;will-change:transform,opacity,width}.md-menu-content.md-direction-bottom-right{margin-top:-20px;margin-left:-8px;transform-origin:top left}.md-menu-content.md-direction-bottom-right.md-active{margin-top:-11px}.md-menu-content.md-direction-bottom-left{margin-top:-20px;margin-left:8px;transform-origin:top right}.md-menu-content.md-direction-bottom-left.md-active{margin-top:-11px}.md-menu-content.md-direction-top-right{margin-top:20px;margin-left:-8px;transform-origin:bottom left}.md-menu-content.md-direction-top-right.md-active{margin-top:11px}.md-menu-content.md-direction-top-left{margin-top:20px;margin-left:8px;transform-origin:bottom right}.md-menu-content.md-direction-top-left.md-active{margin-top:11px}.md-menu-content.md-align-trigger{margin:0}.md-menu-content.md-size-1{width:84px}.md-menu-content.md-size-2{width:112px}.md-menu-content.md-size-3{width:168px}.md-menu-content.md-size-4{width:224px}.md-menu-content.md-size-5{width:280px}.md-menu-content.md-size-6{width:336px}.md-menu-content.md-size-7{width:392px}.md-menu-content.md-active{pointer-events:auto;opacity:1;transform:scale(1) translateZ(0);transition:width .4s cubic-bezier(.25,.8,.25,1),opacity .4s cubic-bezier(.25,.8,.25,1),transform .3s cubic-bezier(.25,.8,.25,1)}.md-menu-content.md-active .md-list{opacity:1;transition:opacity .3s cubic-bezier(.25,.8,.25,1)}.md-menu-content .md-list{opacity:0;transition:opacity .3s cubic-bezier(.25,.8,.25,1)}.md-menu-item{cursor:pointer;font-size:16px;line-height:1.2em}.md-menu-item[disabled]{cursor:default}.md-menu-item .md-list-item-holder{overflow:hidden;text-overflow:ellipsis}.md-menu-backdrop{z-index:130}.md-boards{width:100%;height:100%!important;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;position:relative}.md-boards.md-transition-off *{transition:none!important}.md-boards.md-dynamic-height .md-boards-content{transition:height .4s cubic-bezier(.25,.8,.25,1)}.md-boards .md-boards-navigation{bottom:0;width:100%;height:48px;min-height:48px;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.md-boards .md-board-header,.md-boards .md-boards-navigation{position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-boards .md-board-header{min-width:24px;max-width:24px;margin:0;padding:0 12px;display:inline-block;cursor:pointer;border:0;background:none;font-family:inherit;font-size:14px;font-weight:500;text-transform:uppercase}.md-boards .md-board-header.md-disabled{cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-boards .md-board-header-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.md-boards .md-board-header-container .md-icon{margin:0}.md-boards .md-board-header-container .md-icon:not(.md-control){width:16px;min-width:16px;height:16px;min-height:16px;font-size:16px}.md-boards .md-boards-content{width:100%;position:relative;overflow:hidden}.md-boards .md-boards-wrapper{width:9999em;height:100%!important;position:absolute;top:0;right:0;bottom:0;left:0;transform:translateZ(0);transition:transform .4s cubic-bezier(.25,.8,.25,1)}.md-boards .md-board{padding:16px;position:absolute;top:0;left:0;right:0}.md-progress{width:100%;height:4px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-progress.md-indeterminate .md-progress-track{right:0}.md-progress.md-indeterminate .md-progress-track:after,.md-progress.md-indeterminate .md-progress-track:before{position:absolute;top:0;bottom:0;left:0;will-change:left,right;content:\"\"}.md-progress.md-indeterminate .md-progress-track:before{animation:progress-indeterminate 2.3s cubic-bezier(.65,.815,.735,.395) infinite}.md-progress.md-indeterminate .md-progress-track:after{animation:progress-indeterminate-short 2.3s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.md-progress.md-progress-enter,.md-progress.md-progress-leave-active{opacity:0;transform:scaleY(0) translateZ(0)}.md-progress.md-progress-enter-active{transform:scaleY(1) translateZ(0)}.md-progress-track{position:absolute;top:0;bottom:0;left:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}@keyframes progress-indeterminate{0%{right:100%;left:-35%}60%{right:-100%;left:100%}to{right:-100%;left:100%}}@keyframes progress-indeterminate-short{0%{right:100%;left:-200%}60%{right:-8%;left:107%}to{right:-8%;left:107%}}.md-radio{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-radio:not(.md-disabled),.md-radio:not(.md-disabled) .md-radio-label{cursor:pointer}.md-radio .md-radio-container{width:20px;height:20px;position:relative;border-radius:50%;border:2px solid rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-radio .md-radio-container:before{width:48px;height:48px;top:50%;left:50%;transform:translate(-50%,-50%)}.md-radio .md-radio-container:after,.md-radio .md-radio-container:before{position:absolute;border-radius:50%;transition:all .3s cubic-bezier(.55,0,.55,.2);content:\" \"}.md-radio .md-radio-container:after{top:3px;right:3px;bottom:3px;left:3px;opacity:0;transform:scale3D(.38,.38,1)}.md-radio .md-radio-container input{position:absolute;left:-999em}.md-radio .md-radio-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-radio .md-radio-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-radio .md-radio-label{height:20px;padding-left:8px;line-height:20px}.md-radio.md-checked .md-radio-container:after{opacity:1;transform:scale3D(1,1,1);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-rating-bar{width:auto;display:-ms-flexbox;display:flex;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:3px;border-radius:2px}.md-rating-bar>.md-full-icon{overflow-x:hidden;display:inherit}.md-rating-bar>.md-empty-icon>.md-icon,.md-rating-bar>.md-full-icon>.md-icon{margin:0;white-space:nowrap;cursor:pointer}.md-rating-bar:not([disabled]):hover{background-color:hsla(0,0%,60%,.2)}.md-rating-bar[disabled]>.md-empty-icon>.md-icon,.md-rating-bar[disabled]>.md-full-icon>.md-icon{cursor:default}.md-select{width:100%;min-width:128px;height:32px;position:relative}.md-select:focus{outline:none}.md-select:not(.md-select-icon):after{margin-top:2px;position:absolute;top:50%;right:0;transform:translateY(-50%) scaleY(.45) scaleX(.85);transition:all .15s linear;content:\"\\25BC\"}.md-select.md-active .md-select-menu{top:-8px;pointer-events:auto;opacity:1;transform:translateY(-8px) scale3D(1,1,1);transform-origin:center top;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.25s;transition-property:opacity,transform,top}.md-select.md-active .md-select-menu>*{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.15s;transition-delay:.1s}.md-select.md-disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;user-drag:none}.md-select.md-disabled input,.md-select.md-disabled label,.md-select.md-disabled span,.md-select.md-disabled textarea{color:rgba(0,0,0,.38)}.md-select select{position:absolute;left:-999em}.md-select .md-menu,.md-select .md-select-value{width:100%;height:32px;display:block;position:relative}.md-select .md-select-value{padding-right:24px;cursor:pointer;overflow:hidden;z-index:2;font-size:16px;line-height:33px;text-overflow:ellipsis;white-space:nowrap}.md-select .md-subheader{color:hsla(0,0%,46%,.87);text-transform:uppercase}.md-select .md-subheader:first-child{margin-top:-8px}.md-select-content{width:auto;max-height:256px}.md-select-content.md-direction-bottom-right{margin-top:-15px;margin-left:-16px}.md-select-content .md-option[disabled]{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;user-drag:none}.md-select-content .md-menu-item .md-list-item-holder{overflow:visible;-ms-flex-pack:start;justify-content:flex-start}.md-select-content.md-multiple .md-checkbox{margin:0}.md-select-content.md-multiple .md-checkbox-label{padding-left:16px;cursor:pointer}.md-sidenav.md-left .md-sidenav-content{left:0;transform:translate3D(-100%,0,0)}.md-sidenav.md-right .md-sidenav-content{right:0;transform:translate3D(100%,0,0)}.md-sidenav.md-fixed .md-sidenav-backdrop,.md-sidenav.md-fixed .md-sidenav-content{position:fixed}.md-sidenav .md-sidenav-content{width:304px;position:absolute;top:0;bottom:0;z-index:100;pointer-events:none;overflow:auto;-webkit-overflow-scrolling:touch;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:transform;will-change:transform}.md-sidenav .md-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:99;pointer-events:none;background-color:rgba(0,0,0,.54);opacity:0;transition:all .5s cubic-bezier(.35,0,.25,1);transition-property:opacity;will-change:opacity}.md-sidenav.md-active .md-sidenav-content{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12);pointer-events:auto;transform:translate3D(0,0,0)}.md-sidenav.md-active .md-sidenav-backdrop{opacity:1;pointer-events:auto}.md-snackbar{display:-ms-flexbox;display:flex;position:fixed;right:0;left:0;z-index:120;pointer-events:none;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:margin-top,margin-bottom}.md-snackbar.md-position-bottom-center,.md-snackbar.md-position-top-center{-ms-flex-pack:center;justify-content:center}.md-snackbar.md-position-bottom-right,.md-snackbar.md-position-top-right{margin-right:24px;-ms-flex-pack:end;justify-content:flex-end}.md-snackbar.md-position-bottom-left,.md-snackbar.md-position-top-left{margin-left:24px;-ms-flex-pack:start;justify-content:flex-start}.md-snackbar.md-position-top-center,.md-snackbar.md-position-top-left,.md-snackbar.md-position-top-right{margin-top:24px}.md-snackbar.md-position-bottom-left,.md-snackbar.md-position-bottom-right{margin-bottom:24px}.md-snackbar.md-position-top-center,.md-snackbar.md-position-top-left,.md-snackbar.md-position-top-right{top:0}.md-snackbar.md-position-top-center .md-snackbar-container,.md-snackbar.md-position-top-left .md-snackbar-container,.md-snackbar.md-position-top-right .md-snackbar-container{transform:translate3D(0,calc(-100% - 24px),0)}.md-snackbar.md-position-bottom-center,.md-snackbar.md-position-bottom-left,.md-snackbar.md-position-bottom-right{bottom:0}.md-snackbar.md-position-bottom-center .md-snackbar-container,.md-snackbar.md-position-bottom-left .md-snackbar-container,.md-snackbar.md-position-bottom-right .md-snackbar-container{transform:translate3D(0,calc(100% + 24px),0)}.md-snackbar.md-active .md-snackbar-container{transform:translate3D(0,0,0)}.md-snackbar.md-active .md-snackbar-content{opacity:1;transition:opacity .4s cubic-bezier(.25,.8,.25,1) .1s}.md-snackbar .md-snackbar-content{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;opacity:0;transition:opacity .2s cubic-bezier(.25,.8,.25,1);will-change:opacity}.md-snackbar .md-button{min-width:64px;margin:-8px -16px}.md-snackbar .md-button:last-child{margin-left:48px}.md-snackbar-container{width:auto;min-width:288px;max-width:568px;min-height:48px;padding:14px 24px;overflow:hidden;pointer-events:auto;border-radius:2px;background-color:#323232;transition:all .4s cubic-bezier(.25,.8,.25,1);color:#fff;font-size:14px}.md-has-toast-top-right .md-fab.md-fab-top-right{transform:translate3D(0,68px,0)}.md-has-toast-top-center .md-fab.md-fab-top-center{transform:translate3D(-50%,68px,0)}.md-has-toast-top-left .md-fab.md-fab-top-left{transform:translate3D(0,68px,0)}.md-has-toast-bottom-right .md-fab.md-fab-bottom-right{transform:translate3D(0,-68px,0)}.md-has-toast-bottom-center .md-fab.md-fab-bottom-center{transform:translate3D(-50%,-68px,0)}.md-has-toast-bottom-left .md-fab.md-fab-bottom-left{transform:translate3D(0,-68px,0)}@media (max-width:600px){.md-snackbar{margin:0!important}.md-snackbar-container{width:100%;max-width:100%;border-radius:0}.md-has-toast-top-right .md-fab.md-fab-top-right{transform:translate3D(0,48px,0)}.md-has-toast-top-center .md-fab.md-fab-top-center{transform:translate3D(-50%,48px,0)}.md-has-toast-top-left .md-fab.md-fab-top-left{transform:translate3D(0,48px,0)}.md-has-toast-bottom-right .md-fab.md-fab-bottom-right{transform:translate3D(0,-48px,0)}.md-has-toast-bottom-center .md-fab.md-fab-bottom-center{transform:translate3D(-50%,-48px,0)}.md-has-toast-bottom-left .md-fab.md-fab-bottom-left{transform:translate3D(0,-48px,0)}}.md-speed-dial{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.md-speed-dial.md-direction-top.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(0,80%,0)}.md-speed-dial.md-direction-top [md-fab-trigger]{margin-top:8px}.md-speed-dial.md-direction-top [md-fab-trigger]~.md-button{margin-bottom:16px}.md-speed-dial.md-direction-right{-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center}.md-speed-dial.md-direction-right.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(-80%,0,0)}.md-speed-dial.md-direction-right [md-fab-trigger]{margin-right:8px}.md-speed-dial.md-direction-right [md-fab-trigger]~.md-button{margin-left:16px}.md-speed-dial.md-direction-bottom{-ms-flex-direction:column;flex-direction:column}.md-speed-dial.md-direction-bottom.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(0,-80%,0)}.md-speed-dial.md-direction-bottom [md-fab-trigger]{margin-bottom:8px}.md-speed-dial.md-direction-bottom [md-fab-trigger]~.md-button{margin-top:16px}.md-speed-dial.md-direction-left{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:center;justify-content:center}.md-speed-dial.md-direction-left.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(80%,0,0)}.md-speed-dial.md-direction-left [md-fab-trigger]{margin-left:8px}.md-speed-dial.md-direction-left [md-fab-trigger]~.md-button{margin-right:16px}.md-speed-dial.md-mode-scale [md-fab-trigger]~.md-button{transform:scale(.6)}.md-speed-dial.md-active [md-fab-trigger]~.md-button{opacity:1;pointer-events:auto;transform:translate3D(0,0,0)!important}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(2){transition-delay:.05s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(3){transition-delay:.1s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(4){transition-delay:.15s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(5){transition-delay:.2s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(6){transition-delay:.25s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(7){transition-delay:.3s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(8){transition-delay:.35s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(9){transition-delay:.4s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(10){transition-delay:.45s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(11){transition-delay:.5s}.md-speed-dial.md-active [md-fab-trigger] [md-icon-morph]{transform:rotate(0);opacity:1}.md-speed-dial.md-active [md-fab-trigger] [md-icon-morph]+.md-icon{transform:rotate(90deg) scale(.8);opacity:0}.md-speed-dial .md-button{margin:0}.md-speed-dial [md-fab-trigger]{position:relative;z-index:2}.md-speed-dial [md-fab-trigger]~.md-button{position:relative;z-index:1;opacity:0;pointer-events:none;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(2){transition-delay:.05s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(3){transition-delay:.1s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(4){transition-delay:.15s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(5){transition-delay:.2s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(6){transition-delay:.25s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(7){transition-delay:.3s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(8){transition-delay:.35s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(9){transition-delay:.4s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(10){transition-delay:.45s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(11){transition-delay:.5s}.md-speed-dial [md-icon-morph],.md-speed-dial [md-icon-morph]+.md-icon{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-speed-dial [md-icon-morph]{opacity:0;transform:rotate(-90deg) scale(.8)}.md-spinner{display:inline-block;position:relative;pointer-events:none;will-change:transform,opacity}.md-spinner.md-indeterminate .md-spinner-draw{animation:spinner-rotate 1.9s linear infinite;transform:rotate(0deg) translateZ(0)}.md-spinner.md-indeterminate .md-spinner-path{stroke-dasharray:2,200;animation:spinner-dash 1.425s ease-in-out infinite}.md-spinner.md-spinner-leave-active{opacity:0;transform:scale(.8) translateZ(0);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-spinner:not(.md-indeterminate).md-spinner-enter-active{transition-duration:2s}.md-spinner:not(.md-indeterminate).md-spinner-enter-active .md-spinner-draw{animation:spinner-initial-rotate 1.98s cubic-bezier(.25,.8,.25,1) forwards}.md-spinner-draw{width:100%;height:100%;margin:auto;position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(270deg) translateZ(0);transform-origin:center center;will-change:transform,opacity}.md-spinner-path{fill:none;stroke-dashoffset:0;stroke-miterlimit:10;transition:all .4s cubic-bezier(.25,.8,.25,1)}@keyframes spinner-rotate{to{transform:rotate(1turn) translateZ(0)}}@keyframes spinner-initial-rotate{0%{opacity:0;transform:rotate(-90deg) translateZ(0)}20%{opacity:1}to{transform:rotate(270deg) translateZ(0)}}@keyframes spinner-dash{0%{stroke-dasharray:2,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.md-stepper{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;position:relative;width:100%}.md-stepper .md-step-header{background:none;border:0;cursor:pointer;-ms-flex-negative:0;flex-shrink:0;font-family:inherit;font-size:12px;font-weight:500;margin:0;max-height:72px;padding:24px;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-stepper .md-step-header .md-step-icons,.md-stepper .md-step-header .md-step-titles{display:inline-block;vertical-align:middle}.md-stepper .md-step-header.md-has-sub-message{padding:15px 24px}.md-stepper .md-step-header.md-has-sub-message .md-step-title{margin-bottom:-4px}.md-stepper .md-step-header .md-step-icon{border-radius:50%;font-size:12px;padding:0 6px}.md-stepper .md-step-header .md-step-error,.md-stepper .md-step-header .md-step-icon{height:24px;line-height:24px;margin-right:8px;min-width:24px;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:24px}.md-stepper .md-step-header .md-step-number{border-radius:50%;display:inline-block;font-size:12px;margin-right:8px;width:24px}.md-stepper .md-step-header .md-step-number span{display:block;line-height:24px;text-align:center}.md-stepper .md-step-header .md-step-title{font-size:inherit}.md-stepper .md-step-header.md-disabled{cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-stepper .md-steps-navigation{display:-ms-flexbox;display:flex;height:72px;min-height:72px;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);z-index:1}.md-stepper .md-steps-navigation.md-alternate-labels{height:104px;min-height:104px}.md-stepper .md-steps-navigation .md-steps-navigation-container{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;width:100%}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-divider{margin:36px 0;position:relative;width:100%}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels{max-height:104px;text-align:center}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels.md-has-sub-message{padding:24px}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels .md-step-icons,.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels .md-step-titles{display:block}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels .md-step-titles{margin-top:10px}.md-stepper .md-steps-container{height:0;overflow:hidden;position:relative;width:100%}.md-stepper .md-steps-container .md-steps-wrapper{bottom:0;left:0;position:absolute;right:0;top:0;transform:translateZ(0);transition:transform .4s cubic-bezier(.25,.8,.25,1);width:9999em}.md-stepper .md-steps-container .md-steps-wrapper .md-step{left:0;padding:16px;position:absolute;right:0;top:0}.md-stepper .md-steps-container .md-steps-wrapper .md-step .md-step-content{padding:16px;font-size:14px;line-height:22px}.md-stepper .md-steps-container .md-steps-wrapper .md-step .md-step-content:last-child{padding-bottom:24px}.md-stepper .md-steps-vertical-container .md-step .md-step-header{padding-bottom:8px}.md-stepper .md-steps-vertical-container .md-step:not(:first-of-type) .md-step-header{padding-top:8px}.md-stepper .md-steps-vertical-container .md-step .md-step-content{margin:0 24px 0 34px;padding-bottom:32px;padding-left:24px;padding-top:8px}.md-stepper .md-steps-vertical-container .md-step:not(:last-of-type) .md-step-content{border-left:1px solid #bdbdbd}@media (min-width:601px){.md-stepper .md-steps-navigation .md-steps-navigation-container{margin-bottom:-15px}}.md-subheader{min-height:48px;padding:0 16px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-flow:row wrap;flex-flow:row wrap;color:rgba(0,0,0,.54);font-size:14px;font-weight:500}.md-switch{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-switch .md-switch-container{width:34px;height:14px;position:relative;border-radius:14px;transition:all .4s cubic-bezier(.25,.8,.25,1);background-color:rgba(0,0,0,.38)}.md-switch .md-switch-container .md-switch-thumb{width:20px;height:20px;position:absolute;top:50%;left:0;background-color:#fafafa;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:all .15s linear}.md-switch .md-switch-container input{position:absolute;left:-999em}.md-switch .md-switch-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-switch .md-switch-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-switch .md-switch-container .md-switch-holder{width:40px;height:40px;margin:0;padding:0;position:absolute;top:50%;left:50%;z-index:2;background:none;border:none;transform:translate(-50%,-50%)}.md-switch .md-switch-container .md-switch-holder:focus{outline:none}.md-switch .md-switch-label{height:14px;padding-left:8px;line-height:14px}.md-switch.md-dragging .md-switch-thumb{cursor:grabbing}.md-switch.md-disabled .md-switch-thumb{cursor:default}.md-table{display:-ms-flexbox;display:flex;-ms-flex-flow:column wrap;flex-flow:column wrap;overflow-x:auto}.md-table.md-transition-off .md-checkbox .md-checkbox-container,.md-table.md-transition-off .md-checkbox .md-checkbox-container:after,.md-table.md-transition-off .md-table-cell{transition:none!important}.md-table table{width:100%;border-spacing:0;border-collapse:collapse;overflow:hidden}.md-table tbody .md-table-row{border-top:1px solid #e0e0e0}.md-table tbody .md-table-row.md-selected .md-table-cell{background-color:#f5f5f5}.md-table tbody .md-table-row:hover .md-table-cell{background-color:#eee}.md-table .md-table-head{padding:0;position:relative;color:rgba(0,0,0,.54);font-size:12px;line-height:16px;text-align:left}.md-table .md-table-head:last-child .md-table-head-container .md-table-head-text{padding-right:24px}.md-table .md-table-head.md-numeric{text-align:right}.md-table .md-table-head .md-icon{width:16px;min-width:16px;height:16px;min-height:16px;font-size:16px;color:rgba(0,0,0,.54)}.md-table .md-table-head .md-icon:not(.md-sortable-icon){margin:0 4px}.md-table .md-table-head .md-icon:first-child{margin-left:0}.md-table .md-table-head .md-icon:last-child{margin-right:0}.md-table .md-table-head-container{height:56px;padding:14px 0;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-table .md-table-head-text{height:28px;padding-right:32px;padding-left:24px;display:inline-block;position:relative;overflow:hidden;line-height:28px;text-overflow:ellipsis;white-space:nowrap}.md-table .md-sortable{cursor:pointer}.md-table .md-sortable:first-of-type .md-sortable-icon{left:auto;right:10px}.md-table .md-sortable.md-sorted,.md-table .md-sortable:hover{color:rgba(0,0,0,.87)}.md-table .md-sortable.md-sorted .md-sortable-icon,.md-table .md-sortable:hover .md-sortable-icon{opacity:1}.md-table .md-sortable.md-sorted .md-sortable-icon{color:rgba(0,0,0,.87)}.md-table .md-sortable.md-sorted-descending .md-sortable-icon{transform:translateY(-50%) rotate(180deg)}.md-table .md-sortable .md-sortable-icon{position:absolute;top:50%;left:2px;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translateY(-50%);opacity:0;color:rgba(0,0,0,.38)}.md-table .md-sortable .md-ink-ripple{color:rgba(0,0,0,.87)}.md-table .md-table-cell{height:48px;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);color:rgba(0,0,0,.87);font-size:13px;line-height:18px}.md-table .md-table-cell:last-child .md-table-cell-container{padding-right:24px}.md-table .md-table-cell.md-numeric{text-align:right}.md-table .md-table-cell.md-numeric .md-icon{margin:0}.md-table .md-table-cell.md-numeric .md-table-cell-container{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.md-table .md-table-cell.md-numeric .md-table-cell-container .md-button .md-icon,.md-table .md-table-cell.md-numeric .md-table-cell-container .md-icon{margin:auto}.md-table .md-table-cell.md-has-action .md-table-cell-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.md-table .md-table-cell .md-table-cell-container{padding:6px 32px 6px 24px}.md-table .md-table-cell .md-button{width:36px;min-width:36px;height:36px;min-height:36px}.md-table .md-table-cell .md-button:last-child{margin:0 -10px 0 0}.md-table .md-table-cell .md-button .md-icon{margin:auto;width:18px;min-width:18px;height:18px;min-height:18px;color:rgba(0,0,0,.54);font-size:18px}.md-table .md-table-selection{width:60px;position:relative;vertical-align:middle}.md-table .md-table-selection+.md-table-cell .md-table-cell-container,.md-table .md-table-selection+.md-table-head .md-table-head-container .md-table-head-text{padding-left:8px}.md-table .md-table-selection .md-table-cell-container{padding-right:16px;padding-left:24px}.md-table .md-table-selection .md-checkbox{margin:0}.md-table .md-table-selection .md-checkbox-container{width:18px;height:18px;margin-top:1px}.md-table .md-table-selection .md-checkbox-container:after{top:-1px;left:4px}.md-table .md-select{min-width:84px}.md-table .md-option,.md-table .md-select-value{font-size:13px}.md-table-edit-trigger{display:inline-block;cursor:pointer;color:rgba(0,0,0,.38)}.md-table-edit-trigger.md-edited{color:rgba(0,0,0,.87)}.md-table-dialog{max-height:0;margin:0;padding:0 24px 2px;position:absolute;top:0;right:0;left:24px;z-index:60;overflow:hidden;pointer-events:none;border-radius:2px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);background-color:#fff;opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1),max-height 0s .5s;transition-duration:.3s;transform:translate3D(0,-8px,0)}.md-table-dialog.md-active{max-height:400px;pointer-events:auto;transform:translate3D(#000);opacity:1;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s}.md-table-dialog.md-large{padding:12px 24px 2px}.md-table-dialog .md-input-container{margin-top:0;margin-bottom:16px}.md-table-dialog .md-input-container.md-input-placeholder input{font-size:13px}.md-table-dialog .md-input-container.md-input-placeholder input::-webkit-input-placeholder{font-size:13px}.md-table-dialog .md-char-counter{font-size:13.5px;color:rgba(0,0,0,.54)}.md-table-dialog .md-button{min-width:64px}.md-table-card{overflow:visible}.md-table-card .md-toolbar{padding-left:16px;background-color:#fff}.md-table-card .md-title{-ms-flex:1;flex:1;font-size:20px}.md-table-card .md-table-pagination{height:56px;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;border-top:1px solid #e0e0e0;color:rgba(0,0,0,.54);font-size:12px}.md-table-card .md-table-pagination .md-table-pagination-previous{margin-right:2px;margin-left:18px}.md-table-card .md-table-pagination .md-select{width:auto;min-width:36px;margin:0 32px}.md-table-card .md-table-pagination .md-select:after{margin-top:0}.md-table-card .md-table-pagination .md-select .md-select-value{padding:0;border:none;font-size:13px}.md-table-card .md-table-pagination .md-button:not([disabled]){color:rgba(0,0,0,.87)}.md-table-card .md-table-pagination .md-button[disabled] .md-icon{color:rgba(0,0,0,.26)}.md-pagination-select.md-direction-bottom-right{margin-top:-16px}.md-pagination-select .md-list-item-holder{font-size:13px}.md-table-alternate-header{position:absolute;top:0;right:0;left:0;z-index:10;pointer-events:none;opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s}.md-table-alternate-header.md-active{pointer-events:auto;opacity:1;transform:translate3D(#000)}.md-table-alternate-header .md-counter{margin-left:8px;-ms-flex:1;flex:1}.md-tabs{width:100%;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;position:relative}.md-tabs.md-transition-off *{transition:none!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .4s cubic-bezier(.25,.8,.25,1)}.md-tabs .md-tabs-navigation{height:48px;min-height:48px;position:relative;z-index:1;display:-ms-flexbox;display:flex;transition:all .4s cubic-bezier(.25,.8,.25,1);overflow:hidden}.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tab-header-navigation-button.md-left{-ms-flex-order:1;order:1}.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tabs-navigation-container{-ms-flex-order:2;order:2}.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tab-header-navigation-button.md-right{-ms-flex-order:3;order:3}.md-tabs .md-tabs-navigation.md-has-icon.md-has-label{min-height:72px}.md-tabs .md-tabs-navigation.md-has-icon.md-has-label .md-icon{margin-bottom:10px}.md-tabs .md-tabs-navigation.md-centered{-ms-flex-pack:center;justify-content:center}.md-tabs .md-tabs-navigation.md-fixed .md-tabs-navigation-container,.md-tabs .md-tabs-navigation.md-fixed .md-tabs-navigation-scroll-container{-ms-flex:1;flex:1}.md-tabs .md-tabs-navigation.md-fixed .md-tab-header{-ms-flex:1;flex:1;max-width:none}.md-tabs .md-tabs-navigation.md-right{-ms-flex-pack:end;justify-content:flex-end}.md-tabs .md-tabs-navigation-container{display:-ms-flexbox;display:flex;overflow-x:auto}.md-tabs .md-tabs-navigation-scroll-container{display:-ms-flexbox;display:flex}.md-tabs .md-tab-header{min-width:72px;max-width:264px;margin:0;padding:0 12px;position:relative;cursor:pointer;border:0;background:none;transition:all .4s cubic-bezier(.25,.8,.25,1);font-family:inherit;font-size:14px;font-weight:500;text-transform:uppercase;-ms-flex-negative:0;flex-shrink:0}.md-tabs .md-tab-header.md-disabled{cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-tabs .md-tab-header-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.md-tabs .md-tab-header-container .md-icon{margin:0}.md-tabs .md-tab-indicator{height:2px;position:absolute;bottom:0;left:0;transform:translate3D(0,0,0)}.md-tabs .md-tab-indicator.md-transition-off{transition:none!important}.md-tabs .md-tab-indicator.md-to-right{transition:all .4s cubic-bezier(.25,.8,.25,1),left .3s cubic-bezier(.35,0,.25,1),right .15s cubic-bezier(.35,0,.25,1)}.md-tabs .md-tab-indicator.md-to-left{transition:all .4s cubic-bezier(.25,.8,.25,1),right .3s cubic-bezier(.35,0,.25,1),left .15s cubic-bezier(.35,0,.25,1)}.md-tabs .md-tab-header-navigation-button{border:none;height:100%;cursor:pointer;position:relative}.md-tabs .md-tab-header-navigation-button.md-left{left:0}.md-tabs .md-tab-header-navigation-button.md-right{right:0}.md-tabs .md-tab-header-navigation-button.md-disabled{pointer-events:none;opacity:.4}.md-tabs .md-tabs-content{width:100%;height:0;position:relative;overflow:hidden}.md-tabs .md-tabs-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;transform:translateZ(0);transition:transform .4s cubic-bezier(.25,.8,.25,1)}.md-tabs .md-tab{padding:16px;position:absolute;top:0;left:0;right:0}@media (min-width:601px){.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tabs-navigation-container{margin-bottom:-15px}}.md-toolbar{min-height:64px;padding:0 8px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center;-ms-flex-flow:row wrap;flex-flow:row wrap;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate3D(0,0,0)}.md-toolbar.md-dense{min-height:48px}.md-toolbar.md-dense.md-medium{min-height:72px}.md-toolbar.md-dense.md-large{min-height:96px}.md-toolbar.md-dense .md-toolbar-container{height:48px}.md-toolbar.md-medium{min-height:88px}.md-toolbar.md-medium .md-toolbar-container:nth-child(2) .md-title:first-child{margin-left:56px}.md-toolbar.md-large{min-height:128px;-ms-flex-line-pack:inherit;align-content:inherit}.md-toolbar.md-large .md-toolbar-container:nth-child(2) .md-title:first-child{margin-left:56px}.md-toolbar.md-account-header{min-height:164px}.md-toolbar.md-account-header .md-ink-ripple{color:#fff}.md-toolbar.md-account-header .md-list-item-container:hover:not([disabled]){background-color:hsla(0,0%,100%,.12)}.md-toolbar.md-account-header .md-avatar-list{margin:16px 0 8px}.md-toolbar.md-account-header .md-avatar-list .md-list-item-container{-ms-flex-align:start;align-items:flex-start}.md-toolbar.md-account-header .md-avatar-list .md-avatar+.md-avatar{margin-left:16px}.md-toolbar .md-toolbar-container{width:100%;height:64px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-item-align:start;align-self:flex-start}.md-toolbar .md-toolbar-container>.md-button:first-child{margin-left:0;margin-right:16px}.md-toolbar .md-toolbar-container>.md-button+.md-button{margin-left:0}.md-toolbar>.md-button:first-child{margin-left:0;margin-right:16px}.md-toolbar>.md-button+.md-button{margin-left:0}.md-toolbar .md-button:hover:not([disabled]):not(.md-raised):not(.md-icon-button):not(.md-fab){background-color:hsla(0,0%,100%,.1)}.md-toolbar .md-title{margin:0;font-size:20px;font-weight:400}.md-toolbar .md-title:first-child{margin-left:8px}.md-toolbar .md-title+.md-input-container{margin-left:24px}.md-toolbar .md-input-container{min-height:32px;margin-top:0;margin-bottom:0;padding-top:0}.md-toolbar .md-list{padding:0;margin:0 -8px;-ms-flex:1;flex:1}.md-tooltip{height:20px;padding:0 8px;position:fixed;z-index:200;pointer-events:none;background-color:rgba(97,97,97,.87);border-radius:2px;opacity:0;transform-origin:center top;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s;transition-delay:0s;color:#fff;font-family:Roboto,Noto Sans,Noto,sans-serif;font-size:10px;line-height:20px;text-transform:none;white-space:nowrap;letter-spacing:.1em}.md-tooltip.md-active{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.3s}.md-tooltip:not(.md-active){transition-delay:0s!important}.md-tooltip.md-transition-off{transition:none!important}.md-tooltip.md-tooltip-top{margin-top:-14px;transform:translate(-50%,8px)}.md-tooltip.md-tooltip-top.md-active{transform:translate(-50%)}.md-tooltip.md-tooltip-right{margin-left:14px;transform:translate(-8px,50%)}.md-tooltip.md-tooltip-right.md-active{transform:translateY(50%)}.md-tooltip.md-tooltip-bottom{margin-top:14px;transform:translate(-50%,-8px)}.md-tooltip.md-tooltip-bottom.md-active{transform:translate(-50%)}.md-tooltip.md-tooltip-left{margin-left:-14px;transform:translate(8px,50%)}.md-tooltip.md-tooltip-left.md-active{transform:translateY(50%)}.md-whiteframe{position:relative;z-index:1}.md-whiteframe-1dp{box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.md-whiteframe-2dp{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-whiteframe-3dp{box-shadow:0 1px 8px rgba(0,0,0,.2),0 3px 4px rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.12)}.md-whiteframe-4dp{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px rgba(0,0,0,.14),0 1px 10px rgba(0,0,0,.12)}.md-whiteframe-5dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.md-whiteframe-6dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px rgba(0,0,0,.14),0 1px 18px rgba(0,0,0,.12)}.md-whiteframe-7dp{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.md-whiteframe-8dp{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-whiteframe-9dp{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.md-whiteframe-10dp{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.md-whiteframe-11dp{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.md-whiteframe-12dp{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-whiteframe-13dp{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.md-whiteframe-14dp{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.md-whiteframe-15dp{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.md-whiteframe-16dp{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-whiteframe-17dp{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.md-whiteframe-18dp{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.md-whiteframe-19dp{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.md-whiteframe-20dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.md-whiteframe-21dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.md-whiteframe-22dp{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.md-whiteframe-23dp{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.md-whiteframe-24dp{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}", ""]); + +// exports + + +/***/ }), +/* 24 */ +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(0)(); +// imports + + +// module +exports.push([module.i, ".vue-google-map[data-v-3074bd5c]{position:relative}.vue-google-map .map-view[data-v-3074bd5c]{left:0;right:0;top:0;bottom:0;position:absolute}.vue-google-map .hidden-content[data-v-3074bd5c]{display:none}", ""]); + +// exports + + +/***/ }), +/* 25 */ +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(0)(); +// imports + + +// module +exports.push([module.i, ".demo[data-v-3dd34410]{height:100%;display:flex;flex-direction:column}.panes[data-v-3dd34410]{flex:1;display:flex;flex-direction:row;align-items:stretch}.map[data-v-3dd34410]{flex:1}.results-pane[data-v-3dd34410]{overflow:auto;width:400px;position:relative}.results-pane .photo[data-v-3dd34410]{background:#eee}", ""]); + +// exports + + +/***/ }), +/* 26 */ +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(0)(); +// imports + + +// module +exports.push([module.i, ".demo[data-v-475ae8fc]{height:100%;display:flex;flex-direction:column}.panes[data-v-475ae8fc]{flex:1;display:flex;flex-direction:row;align-items:stretch}.map[data-v-475ae8fc]{flex:1}.results-pane[data-v-475ae8fc]{overflow:auto;width:400px;position:relative}.results-pane .details>div[data-v-475ae8fc]{padding:8px 16px}.results-pane .details .name[data-v-475ae8fc]{font-size:20px;margin-top:12px}.results-pane .details .address[data-v-475ae8fc]{color:#888}.results-pane .details .photos[data-v-475ae8fc]{padding:0;display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;align-items:center;background:#333}.results-pane .details .photos .photo[data-v-475ae8fc]{flex:auto 0 0;overflow:hidden}.results-pane .details .rating[data-v-475ae8fc]{pointer-events:none}", ""]); + +// exports + + +/***/ }), +/* 27 */ +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(0)(); +// imports + + +// module +exports.push([module.i, ".demo[data-v-649f4bf2]{height:100%;display:flex;flex-direction:column}.panes[data-v-649f4bf2]{flex:1;display:flex;flex-direction:row;align-items:stretch}.map[data-v-649f4bf2]{flex:1}.results-pane[data-v-649f4bf2]{overflow-x:auto;overflow-y:auto;width:400px;height:calc(100vh - 64px);position:relative}.results-pane .photo[data-v-649f4bf2]{background:#eee}", ""]); + +// exports + + +/***/ }), +/* 28 */ +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(0)(); +// imports + + +// module +exports.push([module.i, "#app,body,html{height:100%}body{margin:0;font-family:Roboto,Helvetica,Arial,sans-serif}.tip{padding:12px;font-size:16px;color:#aaa;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.tip.overlay{position:absolute;top:0;bottom:0;left:0;right:0}.tip .md-icon{margin-top:0;margin-bottom:16px}", ""]); + +// exports + + +/***/ }), +/* 29 */ +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(0)(); +// imports + + +// module +exports.push([module.i, ".demo[data-v-688f0713]{height:100%;display:flex;flex-direction:column}.map[data-v-688f0713]{flex:100% 1 1}", ""]); + +// exports + + +/***/ }), +/* 30 */ +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(0)(); +// imports + + +// module +exports.push([module.i, ".loading-overlay[data-v-e887690a]{position:absolute;top:0;bottom:0;left:0;right:0;background:hsla(0,0%,100%,.7);display:flex;align-items:center;justify-content:center;z-index:100}", ""]); + +// exports + + +/***/ }), +/* 31 */ +/***/ (function(module, exports) { + +// shim for using process in browser +var process = module.exports = {}; + +// cached from whatever global is present so that test runners that stub it +// don't break things. But we need to wrap it in a try catch in case it is +// wrapped in strict mode code which doesn't define any globals. It's inside a +// function because try/catches deoptimize in certain engines. + +var cachedSetTimeout; +var cachedClearTimeout; + +function defaultSetTimout() { + throw new Error('setTimeout has not been defined'); +} +function defaultClearTimeout () { + throw new Error('clearTimeout has not been defined'); +} +(function () { + try { + if (typeof setTimeout === 'function') { + cachedSetTimeout = setTimeout; + } else { + cachedSetTimeout = defaultSetTimout; + } + } catch (e) { + cachedSetTimeout = defaultSetTimout; + } + try { + if (typeof clearTimeout === 'function') { + cachedClearTimeout = clearTimeout; + } else { + cachedClearTimeout = defaultClearTimeout; + } + } catch (e) { + cachedClearTimeout = defaultClearTimeout; + } +} ()) +function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + //normal enviroments in sane situations + return setTimeout(fun, 0); + } + // if setTimeout wasn't available but was latter defined + if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { + cachedSetTimeout = setTimeout; + return setTimeout(fun, 0); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedSetTimeout(fun, 0); + } catch(e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedSetTimeout.call(null, fun, 0); + } catch(e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error + return cachedSetTimeout.call(this, fun, 0); + } + } + + +} +function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + //normal enviroments in sane situations + return clearTimeout(marker); + } + // if clearTimeout wasn't available but was latter defined + if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { + cachedClearTimeout = clearTimeout; + return clearTimeout(marker); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedClearTimeout(marker); + } catch (e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedClearTimeout.call(null, marker); + } catch (e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. + // Some versions of I.E. have different rules for clearTimeout vs setTimeout + return cachedClearTimeout.call(this, marker); + } + } + + + +} +var queue = []; +var draining = false; +var currentQueue; +var queueIndex = -1; + +function cleanUpNextTick() { + if (!draining || !currentQueue) { + return; + } + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); + } +} + +function drainQueue() { + if (draining) { + return; + } + var timeout = runTimeout(cleanUpNextTick); + draining = true; + + var len = queue.length; + while(len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); + } + } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + runClearTimeout(timeout); +} + +process.nextTick = function (fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } +}; + +// v8 likes predictible objects +function Item(fun, array) { + this.fun = fun; + this.array = array; +} +Item.prototype.run = function () { + this.fun.apply(null, this.array); +}; +process.title = 'browser'; +process.browser = true; +process.env = {}; +process.argv = []; +process.version = ''; // empty string to avoid regexp issues +process.versions = {}; + +function noop() {} + +process.on = noop; +process.addListener = noop; +process.once = noop; +process.off = noop; +process.removeListener = noop; +process.removeAllListeners = noop; +process.emit = noop; +process.prependListener = noop; +process.prependOnceListener = noop; + +process.listeners = function (name) { return [] } + +process.binding = function (name) { + throw new Error('process.binding is not supported'); +}; + +process.cwd = function () { return '/' }; +process.chdir = function (dir) { + throw new Error('process.chdir is not supported'); +}; +process.umask = function() { return 0; }; + + +/***/ }), +/* 32 */ +/***/ (function(module, exports, __webpack_require__) { + +/* WEBPACK VAR INJECTION */(function(global, process) {(function (global, undefined) { + "use strict"; + + if (global.setImmediate) { + return; + } + + var nextHandle = 1; // Spec says greater than zero + var tasksByHandle = {}; + var currentlyRunningATask = false; + var doc = global.document; + var registerImmediate; + + function setImmediate(callback) { + // Callback can either be a function or a string + if (typeof callback !== "function") { + callback = new Function("" + callback); + } + // Copy function arguments + var args = new Array(arguments.length - 1); + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i + 1]; + } + // Store and register the task + var task = { callback: callback, args: args }; + tasksByHandle[nextHandle] = task; + registerImmediate(nextHandle); + return nextHandle++; + } + + function clearImmediate(handle) { + delete tasksByHandle[handle]; + } + + function run(task) { + var callback = task.callback; + var args = task.args; + switch (args.length) { + case 0: + callback(); + break; + case 1: + callback(args[0]); + break; + case 2: + callback(args[0], args[1]); + break; + case 3: + callback(args[0], args[1], args[2]); + break; + default: + callback.apply(undefined, args); + break; + } + } + + function runIfPresent(handle) { + // From the spec: "Wait until any invocations of this algorithm started before this one have completed." + // So if we're currently running a task, we'll need to delay this invocation. + if (currentlyRunningATask) { + // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a + // "too much recursion" error. + setTimeout(runIfPresent, 0, handle); + } else { + var task = tasksByHandle[handle]; + if (task) { + currentlyRunningATask = true; + try { + run(task); + } finally { + clearImmediate(handle); + currentlyRunningATask = false; + } + } + } + } + + function installNextTickImplementation() { + registerImmediate = function(handle) { + process.nextTick(function () { runIfPresent(handle); }); + }; + } + + function canUsePostMessage() { + // The test against `importScripts` prevents this implementation from being installed inside a web worker, + // where `global.postMessage` means something completely different and can't be used for this purpose. + if (global.postMessage && !global.importScripts) { + var postMessageIsAsynchronous = true; + var oldOnMessage = global.onmessage; + global.onmessage = function() { + postMessageIsAsynchronous = false; + }; + global.postMessage("", "*"); + global.onmessage = oldOnMessage; + return postMessageIsAsynchronous; + } + } + + function installPostMessageImplementation() { + // Installs an event handler on `global` for the `message` event: see + // * https://developer.mozilla.org/en/DOM/window.postMessage + // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages + + var messagePrefix = "setImmediate$" + Math.random() + "$"; + var onGlobalMessage = function(event) { + if (event.source === global && + typeof event.data === "string" && + event.data.indexOf(messagePrefix) === 0) { + runIfPresent(+event.data.slice(messagePrefix.length)); + } + }; + + if (global.addEventListener) { + global.addEventListener("message", onGlobalMessage, false); + } else { + global.attachEvent("onmessage", onGlobalMessage); + } + + registerImmediate = function(handle) { + global.postMessage(messagePrefix + handle, "*"); + }; + } + + function installMessageChannelImplementation() { + var channel = new MessageChannel(); + channel.port1.onmessage = function(event) { + var handle = event.data; + runIfPresent(handle); + }; + + registerImmediate = function(handle) { + channel.port2.postMessage(handle); + }; + } + + function installReadyStateChangeImplementation() { + var html = doc.documentElement; + registerImmediate = function(handle) { + // Create a \n\n\n\n\n\n// WEBPACK FOOTER //\n// App.vue?2182cc45","\n\t\n\t\t\n\t\t\t\n\t\t\t\tmenu\n\t\t\t\n\n\t\t\tGeocoder\n\t\t\t\n\t\t\t\n\t\t\t\tmy_location\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tassistant\n\t\t\t\t\t\tClick on the map\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tGeocoder\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tplace\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{{ result.placeDetails.name }}\n\t\t\t\t\t\t\t\t\t{{ result.placeDetails.vicinity }}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{{ result.formatted_address }}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// LocationGeocoder.vue?1ba00f49","\n\t\n\t\t\n\t\t\t\n\t\t\t\tmenu\n\t\t\t\n\n\t\t\tNearby places\n\t\t\t\n\t\t\t\n\t\t\t\tmy_location\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t !result.types.includes('locality')\"\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tNearby places\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tplace\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{{ result.name }}\n\t\t\t\t\t\t\t\t{{ result.vicinity }}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// NearbyPlaces.vue?46a99d15","\n\t\n\t\t\n\t\t\t\n\t\t\t\tmenu\n\t\t\t\n\n\t\t\tPlace details\n\t\t\t\n\t\t\t\n\t\t\t\tmy_location\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tassistant\n\t\t\t\t\t\tClick an icon on the map\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\tPlace details\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t{{ props.results.name }}\n\t\t\t\t\t\t{{ props.results.formatted_address }}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tphone\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{{ props.results.international_phone_number }}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tpublic\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{{ props.results.website }}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// PlaceDetails.vue?549aa4f5","\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\tmenu\n\t\t\t\n\n\t\t\tSimple map\n\t\t\t\n\t\t\t\n\t\t\t\tmy_location\n\t\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// SimpleMap.vue?0399e3be","import '../../dist/vue-googlemaps.css'\nimport 'vue-material/dist/vue-material.css'\n\nimport './plugins'\nimport Vue from 'vue'\nimport router from './router'\nimport store from './store'\nimport App from './components/App.vue'\nimport LoadingOverlay from './components/LoadingOverlay.vue'\n\nVue.component('LoadingOverlay', LoadingOverlay)\n\n// eslint-disable-next-line no-new\nnew Vue({\n\tel: '#app',\n\trouter,\n\tstore,\n\t...App,\n})\n\n\n\n// WEBPACK FOOTER //\n// ./src/main.js","export default {\n\tnamespaced: true,\n\n\tstate () {\n\t\treturn {\n\t\t\tsideNavOpen: false,\n\t\t}\n\t},\n\n\tgetters: {\n\t\tsideNavOpen: state => state.sideNavOpen,\n\t},\n\n\tmutations: {\n\t\tsideNavOpen (state, value) {\n\t\t\tstate.sideNavOpen = value\n\t\t},\n\t},\n\n\tactions: {\n\t\tsetSideNavOpen ({ commit }, value) {\n\t\t\tcommit('sideNavOpen', value)\n\t\t},\n\n\t\ttoggleSideNav ({ commit, getters }) {\n\t\t\tconst value = getters.sideNavOpen\n\t\t\tcommit('sideNavOpen', !value)\n\t\t},\n\t},\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/store/layout.js","function createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar runtime = createCommonjsModule(function (module) {\n/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n!(function(global) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n var inModule = 'object' === \"object\";\n var runtime = global.regeneratorRuntime;\n if (runtime) {\n if (inModule) {\n // If regeneratorRuntime is defined globally and we're in a module,\n // make the exports object identical to regeneratorRuntime.\n module.exports = runtime;\n }\n // Don't bother evaluating the rest of this file if the runtime was\n // already defined globally.\n return;\n }\n\n // Define the runtime globally (as expected by generated code) as either\n // module.exports (if we're in a module) or a new, empty object.\n runtime = global.regeneratorRuntime = inModule ? module.exports : {};\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n runtime.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] =\n GeneratorFunction.displayName = \"GeneratorFunction\";\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n prototype[method] = function(arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n runtime.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n runtime.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n runtime.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return Promise.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return Promise.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration. If the Promise is rejected, however, the\n // result for this iteration will be rejected with the same\n // reason. Note that rejections of yielded Promises are not\n // thrown back into the generator function, as is the case\n // when an awaited Promise is rejected. This difference in\n // behavior between yield and await is important, because it\n // allows the consumer to decide what to do with the yielded\n // rejection (swallow it and continue, manually .throw it back\n // into the generator, abandon iteration, whatever). With\n // await, by contrast, there is no opportunity to examine the\n // rejection reason outside the generator function, so the\n // only option is to throw it from the await expression, and\n // let the generator function handle the exception.\n result.value = unwrapped;\n resolve(result);\n }, reject);\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new Promise(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n runtime.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n runtime.async = function(innerFn, outerFn, self, tryLocsList) {\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList)\n );\n\n return runtime.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n if (delegate.iterator.return) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n Gp[toStringTagSymbol] = \"Generator\";\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n runtime.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n runtime.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n})(\n // In sloppy mode, unbound `this` refers to the global object, fallback to\n // Function constructor if we're in global strict mode. That is sadly a form\n // of indirect eval which violates Content Security Policy.\n (function() { return this })() || Function(\"return this\")()\n);\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\n\n\n\n\nvar asyncGenerator = function () {\n function AwaitValue(value) {\n this.value = value;\n }\n\n function AsyncGenerator(gen) {\n var front, back;\n\n function send(key, arg) {\n return new Promise(function (resolve, reject) {\n var request = {\n key: key,\n arg: arg,\n resolve: resolve,\n reject: reject,\n next: null\n };\n\n if (back) {\n back = back.next = request;\n } else {\n front = back = request;\n resume(key, arg);\n }\n });\n }\n\n function resume(key, arg) {\n try {\n var result = gen[key](arg);\n var value = result.value;\n\n if (value instanceof AwaitValue) {\n Promise.resolve(value.value).then(function (arg) {\n resume(\"next\", arg);\n }, function (arg) {\n resume(\"throw\", arg);\n });\n } else {\n settle(result.done ? \"return\" : \"normal\", result.value);\n }\n } catch (err) {\n settle(\"throw\", err);\n }\n }\n\n function settle(type, value) {\n switch (type) {\n case \"return\":\n front.resolve({\n value: value,\n done: true\n });\n break;\n\n case \"throw\":\n front.reject(value);\n break;\n\n default:\n front.resolve({\n value: value,\n done: false\n });\n break;\n }\n\n front = front.next;\n\n if (front) {\n resume(front.key, front.arg);\n } else {\n back = null;\n }\n }\n\n this._invoke = send;\n\n if (typeof gen.return !== \"function\") {\n this.return = undefined;\n }\n }\n\n if (typeof Symbol === \"function\" && Symbol.asyncIterator) {\n AsyncGenerator.prototype[Symbol.asyncIterator] = function () {\n return this;\n };\n }\n\n AsyncGenerator.prototype.next = function (arg) {\n return this._invoke(\"next\", arg);\n };\n\n AsyncGenerator.prototype.throw = function (arg) {\n return this._invoke(\"throw\", arg);\n };\n\n AsyncGenerator.prototype.return = function (arg) {\n return this._invoke(\"return\", arg);\n };\n\n return {\n wrap: function (fn) {\n return function () {\n return new AsyncGenerator(fn.apply(this, arguments));\n };\n },\n await: function (value) {\n return new AwaitValue(value);\n }\n };\n}();\n\n\n\nvar asyncToGenerator = function (fn) {\n return function () {\n var gen = fn.apply(this, arguments);\n return new Promise(function (resolve, reject) {\n function step(key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n return Promise.resolve(value).then(function (value) {\n step(\"next\", value);\n }, function (err) {\n step(\"throw\", err);\n });\n }\n }\n\n return step(\"next\");\n });\n };\n};\n\n\n\n\n\n\n\n\n\n\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar loader = {\n\tloaded: false,\n\treadyPromises: [],\n\n\t/**\n * @param apiKey API Key, or object with the URL parameters. For example\n * to use Google Maps Premium API, pass\n * `{ client: }`.\n * You may pass the libraries and/or version (as `v`) parameter into\n * this parameter and skip the next two parameters\n * @param version Google for Maps version\n * @param libraries Libraries to load (@see\n * https://developers.google.com/maps/documentation/javascript/libraries)\n * @param loadCn Boolean. If set to true, the map will be loaded form goole maps China\n * (@see https://developers.google.com/maps/documentation/javascript/basics#GoogleMapsChina)\n */\n\tload: function load(_ref) {\n\t\tvar apiKey = _ref.apiKey,\n\t\t version = _ref.version,\n\t\t libraries = _ref.libraries,\n\t\t loadCn = _ref.loadCn,\n\t\t _ref$useNewFeatures = _ref.useNewFeatures,\n\t\t useNewFeatures = _ref$useNewFeatures === undefined ? true : _ref$useNewFeatures;\n\n\t\tif (typeof window === 'undefined') {\n\t\t\t// Do nothing if run from server-side\n\t\t\treturn Promise.resolve();\n\t\t}\n\t\tif (!this.loaded && (!window.google || !window.google.maps)) {\n\t\t\tvar googleMapScript = document.createElement('SCRIPT');\n\n\t\t\t// Allow apiKey to be an object.\n\t\t\t// This is to support more esoteric means of loading Google Maps,\n\t\t\t// such as Google for business\n\t\t\t// https://developers.google.com/maps/documentation/javascript/get-api-key#premium-auth\n\t\t\tvar options = {};\n\t\t\tif (typeof apiKey === 'string') {\n\t\t\t\toptions.key = apiKey;\n\t\t\t} else if ((typeof apiKey === 'undefined' ? 'undefined' : _typeof(apiKey)) === 'object') {\n\t\t\t\tfor (var k in apiKey) {\n\t\t\t\t\t// transfer values in apiKey to options\n\t\t\t\t\toptions[k] = apiKey[k];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthrow new Error('`apiKey` should either be a string or an object');\n\t\t\t}\n\n\t\t\t// libraries\n\t\t\tvar librariesPath = '';\n\t\t\tif (libraries && libraries.length > 0) {\n\t\t\t\tlibrariesPath = libraries.join(',');\n\t\t\t\toptions['libraries'] = librariesPath;\n\t\t\t} else if (Array.prototype.isPrototypeOf(options.libraries)) {\n\t\t\t\toptions.libraries = options.libraries.join(',');\n\t\t\t}\n\t\t\toptions['callback'] = 'VueGoogleMapsLoaded';\n\n\t\t\tvar baseUrl = typeof loadCn === 'boolean' && loadCn === true ? 'http://maps.google.cn' : 'https://maps.googleapis.com';\n\n\t\t\tvar urlParams = Object.keys(options).map(function (key) {\n\t\t\t\treturn encodeURIComponent(key) + '=' + encodeURIComponent(options[key]);\n\t\t\t}).join('&');\n\n\t\t\tvar url = baseUrl + '/maps/api/js?' + urlParams;\n\n\t\t\t// Override version if they do not want to use the new renderer/base map\n\t\t\tif (!useNewFeatures) {\n\t\t\t\tversion = '3.31';\n\t\t\t}\n\n\t\t\tif (version) {\n\t\t\t\turl = url + '&v=' + version;\n\t\t\t}\n\n\t\t\tgoogleMapScript.setAttribute('src', url);\n\t\t\tgoogleMapScript.setAttribute('async', '');\n\t\t\tgoogleMapScript.setAttribute('defer', '');\n\t\t\tdocument.body.appendChild(googleMapScript);\n\n\t\t\twindow.VueGoogleMapsLoaded = this._setLoaded.bind(this);\n\t\t} else {\n\t\t\tconsole.warn('The Google Maps library is already loaded');\n\t\t\tthis._setLoaded();\n\t\t}\n\t},\n\tensureReady: function ensureReady() {\n\t\tvar _this = this;\n\n\t\tif (this.loaded) {\n\t\t\treturn Promise.resolve();\n\t\t} else {\n\t\t\tvar promise = new Promise(function (resolve) {\n\t\t\t\t_this.readyPromises.push(resolve);\n\t\t\t});\n\t\t\treturn promise;\n\t\t}\n\t},\n\t_setLoaded: function _setLoaded() {\n\t\tthis.loaded = true;\n\t\tvar _iteratorNormalCompletion = true;\n\t\tvar _didIteratorError = false;\n\t\tvar _iteratorError = undefined;\n\n\t\ttry {\n\t\t\tfor (var _iterator = this.readyPromises[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n\t\t\t\tvar resolve = _step.value;\n\n\t\t\t\tresolve();\n\t\t\t}\n\t\t} catch (err) {\n\t\t\t_didIteratorError = true;\n\t\t\t_iteratorError = err;\n\t\t} finally {\n\t\t\ttry {\n\t\t\t\tif (!_iteratorNormalCompletion && _iterator.return) {\n\t\t\t\t\t_iterator.return();\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tif (_didIteratorError) {\n\t\t\t\t\tthrow _iteratorError;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.readyPromises = [];\n\t}\n};\n\nfunction optionMergeStrategies(Vue) {\n\tvar strats = Vue.config.optionMergeStrategies;\n\n\tstrats.googleMapsReady = strats.created;\n\tstrats.googleMapsPrepare = strats.created;\n}\n\nvar config = void 0;\n\nfunction initErrorHandling(Vue) {\n\tconfig = Vue.config;\n}\n\nfunction handleError(e, vm, info) {\n\tif (config.errorHandler) {\n\t\tconfig.errorHandler(e, vm, info);\n\t} else {\n\t\tif (typeof console !== 'undefined') {\n\t\t\tconsole.error(e);\n\t\t} else {\n\t\t\tthrow e;\n\t\t}\n\t}\n}\n\nfunction autoCall(value) {\n\treturn typeof value === 'function' ? value() : value;\n}\n\nfunction capitalize(text) {\n\treturn text.charAt(0).toUpperCase() + text.slice(1);\n}\n\nfunction bindProp(_ref) {\n\tvar vm = _ref.vm,\n\t name = _ref.name,\n\t targetPropName = _ref.targetPropName,\n\t target = _ref.target,\n\t watcher = _ref.watcher,\n\t identity = _ref.identity,\n\t applier = _ref.applier,\n\t retriever = _ref.retriever,\n\t readOnly = _ref.readOnly,\n\t event = _ref.event,\n\t changeEvent = _ref.changeEvent;\n\n\tif (!targetPropName) {\n\t\ttargetPropName = name;\n\t}\n\tif (!changeEvent) {\n\t\tchangeEvent = targetPropName.toLowerCase() + '_changed';\n\t}\n\n\tvar setValue = void 0;\n\tvar capitalizedName = capitalize(name);\n\tvar getter = function getter() {\n\t\treturn target && target['get' + capitalizedName]();\n\t};\n\tvar setter = function setter(value) {\n\t\tsetValue = value;\n\t\ttarget && target['set' + capitalizedName](value);\n\t};\n\n\tif (!watcher) {\n\t\twatcher = function watcher(value) {\n\t\t\treturn value;\n\t\t};\n\t}\n\tif (!identity) {\n\t\tidentity = function identity(a, b) {\n\t\t\treturn a === b;\n\t\t};\n\t}\n\tif (!applier) {\n\t\tapplier = function applier(value, oldValue, set) {\n\t\t\tif (!identity(value, oldValue)) {\n\t\t\t\tset(value);\n\t\t\t}\n\t\t};\n\t}\n\tif (!retriever) {\n\t\tretriever = function retriever(value) {\n\t\t\treturn value;\n\t\t};\n\t}\n\tif (!event) {\n\t\tevent = 'update:' + name;\n\t}\n\n\tvm.$watch(function () {\n\t\treturn watcher(vm[name]);\n\t}, function (value, oldValue) {\n\t\tif (!identity(value, setValue)) {\n\t\t\tapplier(value, oldValue, setter);\n\t\t}\n\t\tsetValue = value;\n\t});\n\n\tvar listener = target.addListener(changeEvent, function () {\n\t\tvar value = retriever(getter());\n\t\tif (!identity(value, setValue)) {\n\t\t\tvm.$emit(event, value);\n\t\t\tsetValue = value;\n\t\t}\n\t});\n\n\treturn function () {\n\t\tlistener.remove();\n\t};\n}\n\nvar BoundProps = {\n\tbeforeDestroy: function beforeDestroy() {\n\t\tthis.unbindProps();\n\t},\n\n\n\tmethods: {\n\t\tbindProps: function bindProps(target, props) {\n\t\t\tthis.unbindProps();\n\t\t\tthis.$_boundsProps = [];\n\t\t\tvar _iteratorNormalCompletion = true;\n\t\t\tvar _didIteratorError = false;\n\t\t\tvar _iteratorError = undefined;\n\n\t\t\ttry {\n\t\t\t\tfor (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n\t\t\t\t\tvar prop = _step.value;\n\n\t\t\t\t\tvar options = {\n\t\t\t\t\t\tvm: this,\n\t\t\t\t\t\ttarget: target\n\t\t\t\t\t};\n\t\t\t\t\tif (typeof prop === 'string') {\n\t\t\t\t\t\toptions.name = prop;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tObject.assign(options, prop);\n\t\t\t\t\t}\n\t\t\t\t\tthis.$_boundsProps.push(bindProp(options));\n\t\t\t\t}\n\t\t\t} catch (err) {\n\t\t\t\t_didIteratorError = true;\n\t\t\t\t_iteratorError = err;\n\t\t\t} finally {\n\t\t\t\ttry {\n\t\t\t\t\tif (!_iteratorNormalCompletion && _iterator.return) {\n\t\t\t\t\t\t_iterator.return();\n\t\t\t\t\t}\n\t\t\t\t} finally {\n\t\t\t\t\tif (_didIteratorError) {\n\t\t\t\t\t\tthrow _iteratorError;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tunbindProps: function unbindProps() {\n\t\t\tif (this.$_boundsProps) {\n\t\t\t\tthis.$_boundsProps.forEach(function (unbind) {\n\t\t\t\t\treturn unbind();\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar Events = {\n\tbeforeCreate: function beforeCreate() {\n\t\tthis.$_googleListeners = [];\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tvar _iteratorNormalCompletion = true;\n\t\tvar _didIteratorError = false;\n\t\tvar _iteratorError = undefined;\n\n\t\ttry {\n\t\t\tfor (var _iterator = this.$_googleListeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n\t\t\t\tvar listener = _step.value;\n\n\t\t\t\tlistener.remove();\n\t\t\t}\n\t\t} catch (err) {\n\t\t\t_didIteratorError = true;\n\t\t\t_iteratorError = err;\n\t\t} finally {\n\t\t\ttry {\n\t\t\t\tif (!_iteratorNormalCompletion && _iterator.return) {\n\t\t\t\t\t_iterator.return();\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tif (_didIteratorError) {\n\t\t\t\t\tthrow _iteratorError;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\n\tmethods: {\n\t\tlisten: function listen(target, event, handler) {\n\t\t\tthis.$_googleListeners.push(target.addListener(event, handler));\n\t\t},\n\t\tredirectEvents: function redirectEvents(target, events) {\n\t\t\tvar _this = this;\n\n\t\t\tvar _loop = function _loop(e) {\n\t\t\t\t_this.listen(target, e, function () {\n\t\t\t\t\tfor (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t\t\t\t\t\targs[_key] = arguments[_key];\n\t\t\t\t\t}\n\n\t\t\t\t\t_this.$emit.apply(_this, [e].concat(args));\n\t\t\t\t});\n\t\t\t};\n\n\t\t\tvar _iteratorNormalCompletion2 = true;\n\t\t\tvar _didIteratorError2 = false;\n\t\t\tvar _iteratorError2 = undefined;\n\n\t\t\ttry {\n\t\t\t\tfor (var _iterator2 = events[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n\t\t\t\t\tvar e = _step2.value;\n\n\t\t\t\t\t_loop(e);\n\t\t\t\t}\n\t\t\t} catch (err) {\n\t\t\t\t_didIteratorError2 = true;\n\t\t\t\t_iteratorError2 = err;\n\t\t\t} finally {\n\t\t\t\ttry {\n\t\t\t\t\tif (!_iteratorNormalCompletion2 && _iterator2.return) {\n\t\t\t\t\t\t_iterator2.return();\n\t\t\t\t\t}\n\t\t\t\t} finally {\n\t\t\t\t\tif (_didIteratorError2) {\n\t\t\t\t\t\tthrow _iteratorError2;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar Ready = {\n\tdata: function data() {\n\t\treturn {\n\t\t\tgoogleMapsReady: false\n\t\t};\n\t},\n\tmounted: function mounted() {\n\t\tvar _this = this;\n\n\t\treturn asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n\t\t\tvar handlers, promises, i, result, _handlers, _i;\n\n\t\t\treturn regeneratorRuntime.wrap(function _callee$(_context) {\n\t\t\t\twhile (1) {\n\t\t\t\t\tswitch (_context.prev = _context.next) {\n\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\t_context.next = 2;\n\t\t\t\t\t\t\treturn loader.ensureReady();\n\n\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\thandlers = _this.$options.googleMapsPrepare;\n\n\t\t\t\t\t\t\tif (!handlers) {\n\t\t\t\t\t\t\t\t_context.next = 8;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tpromises = [];\n\n\t\t\t\t\t\t\tfor (i = 0; i < handlers.length; i++) {\n\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\tresult = handlers[i].call(_this);\n\n\t\t\t\t\t\t\t\t\tif (typeof result.then === 'function') {\n\t\t\t\t\t\t\t\t\t\tpromises.push(result);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\t\t\thandleError(e, _this, 'googleMapsPrepare hook');\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t_context.next = 8;\n\t\t\t\t\t\t\treturn Promise.all(promises);\n\n\t\t\t\t\t\tcase 8:\n\n\t\t\t\t\t\t\t// Ready\n\t\t\t\t\t\t\t_this.googleMapsReady = true;\n\t\t\t\t\t\t\t_handlers = _this.$options.googleMapsReady;\n\n\t\t\t\t\t\t\tif (_handlers) {\n\t\t\t\t\t\t\t\tfor (_i = 0; _i < _handlers.length; _i++) {\n\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t_handlers[_i].call(_this);\n\t\t\t\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\t\t\t\thandleError(e, _this, 'googleMapsReady hook');\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t_this.$emit('ready');\n\n\t\t\t\t\t\tcase 12:\n\t\t\t\t\t\tcase 'end':\n\t\t\t\t\t\t\treturn _context.stop();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, _callee, _this);\n\t\t}))();\n\t}\n};\n\nvar FindAncestor = {\n\tmethods: {\n\t\t$_findAncestor: function $_findAncestor(condition) {\n\t\t\tvar search = this.$parent;\n\n\t\t\twhile (search) {\n\t\t\t\tif (condition(search)) {\n\t\t\t\t\treturn search;\n\t\t\t\t}\n\t\t\t\tsearch = search.$parent;\n\t\t\t}\n\n\t\t\treturn null;\n\t\t}\n\t}\n};\n\nvar MapElement = {\n\tmixins: [BoundProps, Events, FindAncestor, Ready],\n\n\tcreated: function created() {\n\t\tvar mapAncestor = this.$_findAncestor(function (a) {\n\t\t\treturn a.$options.name === 'GoogleMapsMap';\n\t\t});\n\n\t\tif (!mapAncestor) {\n\t\t\tthrow new Error(this.constructor.name + ' component must be used within a component.');\n\t\t}\n\n\t\tthis.$_mapAncestor = mapAncestor;\n\t},\n\tgoogleMapsPrepare: function googleMapsPrepare() {\n\t\tvar _this = this;\n\n\t\treturn asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n\t\t\tvar mapComp;\n\t\t\treturn regeneratorRuntime.wrap(function _callee$(_context) {\n\t\t\t\twhile (1) {\n\t\t\t\t\tswitch (_context.prev = _context.next) {\n\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\tmapComp = _this.$_mapAncestor;\n\t\t\t\t\t\t\t_context.next = 3;\n\t\t\t\t\t\t\treturn mapComp.$_getMap();\n\n\t\t\t\t\t\tcase 3:\n\t\t\t\t\t\t\t_this.$_map = _context.sent;\n\n\t\t\t\t\t\tcase 4:\n\t\t\t\t\t\tcase 'end':\n\t\t\t\t\t\t\treturn _context.stop();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, _callee, _this);\n\t\t}))();\n\t}\n};\n\nvar boundProps = ['center', 'draggable', 'editable', 'radius', 'visible', 'options'];\n\nvar redirectedEvents = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\n\nvar Circle = {\n\tname: 'GoogleMapsCircle',\n\n\tmixins: [MapElement],\n\n\tprops: {\n\t\tcenter: {\n\t\t\ttype: Object,\n\t\t\trequired: true\n\t\t},\n\t\tclickable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true\n\t\t},\n\t\tdraggable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\teditable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\toptions: {\n\t\t\ttype: Object,\n\t\t\tdefault: function _default() {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\ttype: Number,\n\t\t\trequired: true\n\t\t},\n\t\tvisible: {\n\t\t\tdefault: true\n\t\t},\n\t\tzIndex: {\n\t\t\ttype: Number\n\t\t}\n\t},\n\n\twatch: {\n\t\toptions: 'updateOptions',\n\t\tclickable: 'updateOptions',\n\t\tzIndex: 'updateOptions'\n\t},\n\n\tmethods: {\n\t\tupdateOptions: function updateOptions(options) {\n\t\t\tthis.$_circle && this.$_circle.setOptions(options || this.$props);\n\t\t}\n\t},\n\n\trender: function render(h) {\n\t\treturn '';\n\t},\n\tgoogleMapsReady: function googleMapsReady() {\n\t\tvar options = Object.assign({}, this.$props);\n\t\toptions.map = this.$_map;\n\n\t\tthis.$_circle = new window.google.maps.Circle(options);\n\t\tthis.bindProps(this.$_circle, boundProps);\n\t\tthis.redirectEvents(this.$_circle, redirectedEvents);\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tif (this.$_circle) {\n\t\t\tthis.$_circle.setMap(null);\n\t\t}\n\t}\n};\n\nvar Service = {\n\tmixins: [Ready],\n\n\tprops: {\n\t\tfilter: {\n\t\t\ttype: Function,\n\t\t\tdefault: null\n\t\t},\n\t\trequest: {\n\t\t\ttype: Object,\n\t\t\tdefault: null\n\t\t},\n\t\ttag: {\n\t\t\ttype: String,\n\t\t\tdefault: 'div'\n\t\t}\n\t},\n\n\tdata: function data() {\n\t\treturn {\n\t\t\tloading: false,\n\t\t\tresults: null,\n\t\t\tstatus: null\n\t\t};\n\t},\n\n\n\tcomputed: {\n\t\tfilteredResults: function filteredResults() {\n\t\t\tif (this.results && this.filter) {\n\t\t\t\treturn this.results.filter(this.filter);\n\t\t\t} else {\n\t\t\t\treturn this.results;\n\t\t\t}\n\t\t},\n\t\tfinalResults: function finalResults() {\n\t\t\tvar results = this.filteredResults;\n\t\t\treturn results && (!Array.isArray(results) || results.length) ? results : null;\n\t\t}\n\t},\n\n\twatch: {\n\t\trequest: {\n\t\t\thandler: function handler(value) {\n\t\t\t\tvalue && this.update();\n\t\t\t},\n\n\t\t\tdeep: true\n\t\t},\n\t\tfinalResults: function finalResults(value) {\n\t\t\tthis.$emit('results', value);\n\t\t}\n\t},\n\n\tmethods: {\n\t\tcreateServices: function createServices() {\n\t\t\t// Override this in components\n\t\t},\n\t\tgetScope: function getScope() {\n\t\t\t// Override this in components\n\t\t\treturn {\n\t\t\t\tloading: this.loading,\n\t\t\t\tresults: this.finalResults,\n\t\t\t\tstatus: this.status\n\t\t\t};\n\t\t},\n\t\tsetResults: function setResults(results, status) {\n\t\t\tthis.results = results;\n\t\t\tthis.status = status;\n\t\t},\n\t\tupdate: function update() {\n\t\t\t// Override this in components\n\t\t}\n\t},\n\n\tgoogleMapsReady: function googleMapsReady() {\n\t\tthis.createServices();\n\t\tthis.request && this.update();\n\t},\n\trender: function render(h) {\n\t\treturn h(this.tag, [this.$scopedSlots.default && this.$scopedSlots.default(this.getScope()), h('span', {\n\t\t\tref: 'attributions'\n\t\t})]);\n\t}\n};\n\nvar Geocoder = {\n\tname: 'GoogleMapsGeocoder',\n\n\tmixins: [Service],\n\n\tprops: {\n\t\tdisablePlaceDetails: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t}\n\t},\n\n\tmethods: {\n\t\tcreateServices: function createServices() {\n\t\t\tthis.$_geocoder = new window.google.maps.Geocoder();\n\t\t\tthis.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions);\n\t\t},\n\t\tgetPlaceDetails: function getPlaceDetails(result) {\n\t\t\tresult.placeDetails = {};\n\t\t\tif (result.place_id) {\n\t\t\t\tresult.placeDetails.loading = true;\n\t\t\t\tthis.$_placeService.getDetails({\n\t\t\t\t\tplaceId: result.place_id\n\t\t\t\t}, function (details, status) {\n\t\t\t\t\tresult.placeDetails = details;\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tupdate: function update() {\n\t\t\tvar _this = this;\n\n\t\t\tif (this.googleMapsReady) {\n\t\t\t\tthis.loading = true;\n\t\t\t\tthis.$_geocoder.geocode(this.request, function (results, status) {\n\t\t\t\t\tif (results) {\n\t\t\t\t\t\t!_this.disablePlaceDetails && results.forEach(_this.getPlaceDetails);\n\t\t\t\t\t}\n\t\t\t\t\t_this.setResults(results, status);\n\t\t\t\t\t_this.loading = false;\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n};\n\nfunction getInternetExplorerVersion() {\n\tvar ua = window.navigator.userAgent;\n\n\tvar msie = ua.indexOf('MSIE ');\n\tif (msie > 0) {\n\t\t// IE 10 or older => return version number\n\t\treturn parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n\t}\n\n\tvar trident = ua.indexOf('Trident/');\n\tif (trident > 0) {\n\t\t// IE 11 => return version number\n\t\tvar rv = ua.indexOf('rv:');\n\t\treturn parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n\t}\n\n\tvar edge = ua.indexOf('Edge/');\n\tif (edge > 0) {\n\t\t// Edge (IE 12+) => return version number\n\t\treturn parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n\t}\n\n\t// other browser\n\treturn -1;\n}\n\nvar isIE = void 0;\n\nfunction initCompat() {\n\tif (!initCompat.init) {\n\t\tinitCompat.init = true;\n\t\tisIE = getInternetExplorerVersion() !== -1;\n\t}\n}\n\nvar ResizeObserver = { render: function render() {\n\t\tvar _vm = this;var _h = _vm.$createElement;var _c = _vm._self._c || _h;return _c('div', { staticClass: \"resize-observer\", attrs: { \"tabindex\": \"-1\" } });\n\t}, staticRenderFns: [], _scopeId: 'data-v-b329ee4c',\n\tname: 'resize-observer',\n\n\tmethods: {\n\t\tcompareAndNotify: function compareAndNotify() {\n\t\t\tif (this._w !== this.$el.offsetWidth || this._h !== this.$el.offsetHeight) {\n\t\t\t\tthis._w = this.$el.offsetWidth;\n\t\t\t\tthis._h = this.$el.offsetHeight;\n\t\t\t\tthis.$emit('notify');\n\t\t\t}\n\t\t},\n\t\taddResizeHandlers: function addResizeHandlers() {\n\t\t\tthis._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\t\t\tthis.compareAndNotify();\n\t\t},\n\t\tremoveResizeHandlers: function removeResizeHandlers() {\n\t\t\tif (this._resizeObject && this._resizeObject.onload) {\n\t\t\t\tif (!isIE && this._resizeObject.contentDocument) {\n\t\t\t\t\tthis._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n\t\t\t\t}\n\t\t\t\tdelete this._resizeObject.onload;\n\t\t\t}\n\t\t}\n\t},\n\n\tmounted: function mounted() {\n\t\tvar _this = this;\n\n\t\tinitCompat();\n\t\tthis.$nextTick(function () {\n\t\t\t_this._w = _this.$el.offsetWidth;\n\t\t\t_this._h = _this.$el.offsetHeight;\n\t\t});\n\t\tvar object = document.createElement('object');\n\t\tthis._resizeObject = object;\n\t\tobject.setAttribute('aria-hidden', 'true');\n\t\tobject.setAttribute('tabindex', -1);\n\t\tobject.onload = this.addResizeHandlers;\n\t\tobject.type = 'text/html';\n\t\tif (isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t\tobject.data = 'about:blank';\n\t\tif (!isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tthis.removeResizeHandlers();\n\t}\n};\n\n// Install the components\nfunction install(Vue) {\n\tVue.component('resize-observer', ResizeObserver);\n\tVue.component('ResizeObserver', ResizeObserver);\n}\n\n// Plugin\nvar plugin$2 = {\n\t// eslint-disable-next-line no-undef\n\tversion: \"0.4.5\",\n\tinstall: install\n};\n\n// Auto-install\nvar GlobalVue$1 = null;\nif (typeof window !== 'undefined') {\n\tGlobalVue$1 = window.Vue;\n} else if (typeof global !== 'undefined') {\n\tGlobalVue$1 = global.Vue;\n}\nif (GlobalVue$1) {\n\tGlobalVue$1.use(plugin$2);\n}\n\nfunction throwValueError(value) {\n\tif (value !== null && typeof value !== 'function') {\n\t\tthrow new Error('observe-visibility directive expects a function as the value');\n\t}\n}\n\nvar ObserveVisibility = {\n\tbind: function bind(el, _ref, vnode) {\n\t\tvar value = _ref.value;\n\n\t\tif (typeof IntersectionObserver === 'undefined') {\n\t\t\tconsole.warn('[vue-observe-visibility] IntersectionObserver API is not available in your browser. Please install this polyfill: https://github.com/WICG/IntersectionObserver/tree/gh-pages/polyfill');\n\t\t} else {\n\t\t\tthrowValueError(value);\n\t\t\tel._vue_visibilityCallback = value;\n\t\t\tvar observer = el._vue_intersectionObserver = new IntersectionObserver(function (entries) {\n\t\t\t\tvar entry = entries[0];\n\t\t\t\tif (el._vue_visibilityCallback) {\n\t\t\t\t\tel._vue_visibilityCallback.call(null, entry.intersectionRatio > 0, entry);\n\t\t\t\t}\n\t\t\t});\n\t\t\t// Wait for the element to be in document\n\t\t\tvnode.context.$nextTick(function () {\n\t\t\t\tobserver.observe(el);\n\t\t\t});\n\t\t}\n\t},\n\tupdate: function update(el, _ref2) {\n\t\tvar value = _ref2.value;\n\n\t\tthrowValueError(value);\n\t\tel._vue_visibilityCallback = value;\n\t},\n\tunbind: function unbind(el) {\n\t\tif (el._vue_intersectionObserver) {\n\t\t\tel._vue_intersectionObserver.disconnect();\n\t\t\tdelete el._vue_intersectionObserver;\n\t\t\tdelete el._vue_visibilityCallback;\n\t\t}\n\t}\n};\n\n// Install the components\nfunction install$1(Vue) {\n\tVue.directive('observe-visibility', ObserveVisibility);\n\t/* -- Add more components here -- */\n}\n\n/* -- Plugin definition & Auto-install -- */\n/* You shouldn't have to modify the code below */\n\n// Plugin\nvar plugin$4 = {\n\t// eslint-disable-next-line no-undef\n\tversion: \"0.3.1\",\n\tinstall: install$1\n};\n\n// Auto-install\nvar GlobalVue$2 = null;\nif (typeof window !== 'undefined') {\n\tGlobalVue$2 = window.Vue;\n} else if (typeof global !== 'undefined') {\n\tGlobalVue$2 = global.Vue;\n}\nif (GlobalVue$2) {\n\tGlobalVue$2.use(plugin$4);\n}\n\nfunction redirectMethods(_ref) {\n\tvar target = _ref.target,\n\t names = _ref.names;\n\n\treturn names.reduce(function (obj, name) {\n\t\tobj[name] = function () {\n\t\t\tvar t = target.call(this);\n\t\t\tif (t) {\n\t\t\t\tfor (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t\t\t\t\targs[_key] = arguments[_key];\n\t\t\t\t}\n\n\t\t\t\treturn t[name].apply(t, args);\n\t\t\t}\n\t\t};\n\t\treturn obj;\n\t}, {});\n}\n\nvar boundProps$1 = [{\n\tname: 'center',\n\twatcher: function watcher(value) {\n\t\treturn {\n\t\t\tlat: autoCall(value.lat),\n\t\t\tlng: autoCall(value.lng)\n\t\t};\n\t},\n\tidentity: function identity(a, b) {\n\t\tif (a && b) {\n\t\t\tif (typeof a.equals !== 'function') {\n\t\t\t\ta = new window.google.maps.LatLng(a);\n\t\t\t}\n\t\t\tif (typeof b.equals !== 'function') {\n\t\t\t\tb = new window.google.maps.LatLng(b);\n\t\t\t}\n\t\t\treturn a.equals(b);\n\t\t}\n\t},\n\tretriever: function retriever(value) {\n\t\treturn {\n\t\t\tlat: value.lat(),\n\t\t\tlng: value.lng()\n\t\t};\n\t}\n}, 'heading', 'mapTypeId', 'tilt', 'zoom', 'options'];\n\nvar redirectedMethods = ['panBy', 'panTo', 'panToBounds', 'fitBounds', 'getBounds'];\n\nvar redirectedEvents$1 = ['click', 'dblclick', 'drag', 'dragend', 'dragstart', 'mousedown', 'mouseup', 'mousemove', 'mouseout', 'mouseover', 'resize', 'rightclick', 'tilesloaded'];\n\nvar Map = { render: function render() {\n\t\tvar _vm = this;var _h = _vm.$createElement;var _c = _vm._self._c || _h;return _c('div', { directives: [{ name: \"observe-visibility\", rawName: \"v-observe-visibility\", value: _vm.visibilityChanged, expression: \"visibilityChanged\" }], staticClass: \"vue-google-map\" }, [_c('div', { ref: \"map\", staticClass: \"map-view\" }), _vm._v(\" \"), _c('div', { staticClass: \"hidden-content\" }, [_vm._t(\"default\")], 2), _vm._v(\" \"), _vm._t(\"visible\"), _vm._v(\" \"), _c('resize-observer', { on: { \"notify\": _vm.resize } })], 2);\n\t}, staticRenderFns: [], _scopeId: 'data-v-3074bd5c',\n\tname: 'GoogleMapsMap',\n\n\tmixins: [Ready, BoundProps, Events],\n\n\tcomponents: {\n\t\tResizeObserver: ResizeObserver\n\t},\n\n\tdirectives: {\n\t\tObserveVisibility: ObserveVisibility\n\t},\n\n\tprops: {\n\t\tcenter: {\n\t\t\trequired: true,\n\t\t\ttype: Object\n\t\t},\n\t\theading: {\n\t\t\ttype: Number\n\t\t},\n\t\tmapTypeId: {\n\t\t\ttype: String\n\t\t},\n\t\toptions: {\n\t\t\ttype: Object,\n\t\t\tdefault: function _default() {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t},\n\t\ttilt: {\n\t\t\ttype: Number\n\t\t},\n\t\tzoom: {\n\t\t\trequired: true,\n\t\t\ttype: Number\n\t\t}\n\t},\n\n\tbeforeCreate: function beforeCreate() {\n\t\tthis.$_mapPromises = [];\n\t},\n\tgoogleMapsReady: function googleMapsReady() {\n\t\tvar _this = this;\n\n\t\tvar element = this.$refs.map;\n\n\t\tvar options = _extends({\n\t\t\tcenter: this.center,\n\t\t\theading: this.heading,\n\t\t\tmapTypeId: this.mapTypeId,\n\t\t\ttilt: this.tilt,\n\t\t\tzoom: this.zoom\n\t\t}, this.options);\n\n\t\tthis.$_map = new window.google.maps.Map(element, options);\n\n\t\tthis.bindProps(this.$_map, boundProps$1);\n\n\t\tthis.listen(this.$_map, 'bounds_changed', function () {\n\t\t\t_this.$emit('update:bounds', _this.$_map.getBounds());\n\t\t});\n\n\t\tthis.listen(this.$_map, 'idle', function () {\n\t\t\t_this.$emit('idle', _this);\n\t\t\t_this.lastCenter = _this.$_map.getCenter();\n\t\t});\n\n\t\tthis.lastCenter = this.$_map.getCenter();\n\n\t\tthis.redirectEvents(this.$_map, redirectedEvents$1);\n\n\t\t// Code that awaits `$_getMap()`\n\t\tthis.$_mapPromises.forEach(function (resolve) {\n\t\t\treturn resolve(_this.$_map);\n\t\t});\n\t},\n\n\n\twatch: {\n\t\toptions: {\n\t\t\thandler: 'updateOptions',\n\t\t\tdeep: true\n\t\t}\n\t},\n\n\tmethods: _extends({}, redirectMethods({\n\t\ttarget: function target() {\n\t\t\treturn this.$_map;\n\t\t},\n\n\t\tnames: redirectedMethods\n\t}), {\n\t\tresize: function resize() {\n\t\t\tvar preserveCenter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n\t\t\tif (this.$_map) {\n\t\t\t\t// let center\n\t\t\t\t// preserveCenter && (center = this.$_map.getCenter())\n\t\t\t\twindow.google.maps.event.trigger(this.$_map, 'resize');\n\t\t\t\tpreserveCenter && this.$_map.setCenter(this.lastCenter);\n\t\t\t}\n\t\t},\n\t\tvisibilityChanged: function visibilityChanged(isVisible) {\n\t\t\tif (isVisible) {\n\t\t\t\tthis.$nextTick(this.resize);\n\t\t\t}\n\t\t},\n\t\t$_getMap: function $_getMap() {\n\t\t\tvar _this2 = this;\n\n\t\t\tif (this.$_map) {\n\t\t\t\treturn Promise.resolve(this.$_map);\n\t\t\t} else {\n\t\t\t\treturn new Promise(function (resolve) {\n\t\t\t\t\t_this2.$_mapPromises.push(resolve);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tupdateOptions: function updateOptions(options) {\n\t\t\tthis.$_map && this.$_map.setOptions(options || this.$props);\n\t\t}\n\t})\n};\n\nvar boundProps$2 = ['animation', 'clickable', 'cursor', 'draggable', 'icon', 'label', 'opacity', 'place', 'position', 'shape', 'title', 'visible', 'zIndex'];\n\nvar redirectedEvents$2 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\n\nvar Marker = {\n\tname: 'GoogleMapsMarker',\n\n\tmixins: [MapElement],\n\n\tprops: {\n\t\tanimation: {\n\t\t\ttype: Number\n\t\t},\n\t\tclickable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true\n\t\t},\n\t\tcursor: {\n\t\t\ttype: String\n\t\t},\n\t\tdraggable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\ticon: {},\n\t\tlabel: {},\n\t\topacity: {\n\t\t\ttype: Number,\n\t\t\tdefault: 1\n\t\t},\n\t\tplace: {\n\t\t\ttype: Object\n\t\t},\n\t\tposition: {\n\t\t\ttype: Object\n\t\t},\n\t\tshape: {\n\t\t\ttype: Object\n\t\t},\n\t\ttitle: {\n\t\t\ttype: String\n\t\t},\n\t\tvisible: {\n\t\t\tdefault: true\n\t\t},\n\t\tzIndex: {\n\t\t\ttype: Number\n\t\t}\n\t},\n\n\trender: function render(h) {\n\t\tif (!this.$slots.default || this.$slots.default.length === 0) {\n\t\t\treturn '';\n\t\t} else if (this.$slots.default.length === 1) {\n\t\t\t// So that infowindows can have a marker parent\n\t\t\treturn this.$slots.default[0];\n\t\t} else {\n\t\t\treturn h('div', this.$slots.default);\n\t\t}\n\t},\n\tgoogleMapsReady: function googleMapsReady() {\n\t\tvar options = Object.assign({}, this.$props);\n\t\toptions.map = this.$_map;\n\n\t\tthis.$_marker = new window.google.maps.Marker(options);\n\t\tthis.bindProps(this.$_marker, boundProps$2);\n\t\tthis.redirectEvents(this.$_marker, redirectedEvents$2);\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tif (this.$_marker) {\n\t\t\tthis.$_marker.setMap(null);\n\t\t}\n\t}\n};\n\nvar NearbyPlaces = {\n\tname: 'GoogleMapsNearbyPlaces',\n\n\tmixins: [Service],\n\n\tmethods: {\n\t\tcreateServices: function createServices() {\n\t\t\tthis.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions);\n\t\t},\n\t\tupdate: function update() {\n\t\t\tvar _this = this;\n\n\t\t\tthis.loading = true;\n\t\t\tthis.$_placeService.nearbySearch(this.request, function (results, status) {\n\t\t\t\t_this.setResults(results, status);\n\t\t\t\t_this.loading = false;\n\t\t\t});\n\t\t}\n\t}\n};\n\nvar PlaceDetails = {\n\tname: 'GoogleMapsPlaceDetails',\n\n\tmixins: [Service],\n\n\tmethods: {\n\t\tcreateServices: function createServices() {\n\t\t\tthis.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions);\n\t\t},\n\t\tupdate: function update() {\n\t\t\tvar _this = this;\n\n\t\t\tthis.loading = true;\n\t\t\tthis.$_placeService.getDetails(this.request, function (results, status) {\n\t\t\t\t_this.setResults(results, status);\n\t\t\t\t_this.loading = false;\n\t\t\t});\n\t\t}\n\t}\n};\n\nvar defaultPositionStyle = void 0;\nvar defaultAccuracyStyle = {\n\tstrokeColor: '#4285F4',\n\tstrokeOpacity: 0.25,\n\tfillColor: '#4285F4',\n\tfillOpacity: 0.2,\n\tstrokeWeight: 1\n};\n\nvar UserPosition = {\n\tname: 'GoogleMapsUserPosition',\n\n\tmixins: [Ready],\n\n\tprops: {\n\t\taccuracy: {\n\t\t\tdefault: 0\n\t\t},\n\t\taccuracyStyle: {\n\t\t\ttype: Object,\n\t\t\tdefault: null\n\t\t},\n\t\tdisableWatch: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\thideAccuracy: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\tminimumAccuracy: {\n\t\t\tdefault: 1000\n\t\t},\n\t\tposition: {\n\t\t\ttype: Object\n\t\t},\n\t\tpositionStyle: {\n\t\t\ttype: Object,\n\t\t\tdefault: null\n\t\t},\n\t\tpositionOptions: {\n\t\t\ttype: Object,\n\t\t\tdefault: function _default() {\n\t\t\t\treturn {\n\t\t\t\t\tenableHighAccuracy: true,\n\t\t\t\t\tmaximumAge: 1000\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t},\n\n\tdata: function data() {\n\t\treturn {\n\t\t\tcurrentPosition: null,\n\t\t\tcurrentAccuracy: null\n\t\t};\n\t},\n\n\n\twatch: {\n\t\tposition: function position(value) {\n\t\t\tthis.currentPosition = value;\n\t\t},\n\t\taccuracy: function accuracy(value) {\n\t\t\tthis.currentAccuracy = value;\n\t\t},\n\t\tdisableWatch: function disableWatch(value, oldValue) {\n\t\t\tif (value !== oldValue) {\n\t\t\t\tif (value) {\n\t\t\t\t\tthis.stopWatch();\n\t\t\t\t} else {\n\t\t\t\t\tthis.startWatch();\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tpositionOptions: function positionOptions(value) {\n\t\t\tif (!this.disableWatch) {\n\t\t\t\tthis.stopWatch();\n\t\t\t\tthis.startWatch();\n\t\t\t}\n\t\t}\n\t},\n\n\tmethods: {\n\t\tstartWatch: function startWatch() {\n\t\t\tif (navigator.geolocation) {\n\t\t\t\tthis.$_watchId = navigator.geolocation.watchPosition(this.updatePosition, this.onWatchError, this.positionOptions);\n\t\t\t} else {\n\t\t\t\tconsole.warn('GoogleMapsUserPosition: navigator.geolocation not supported');\n\t\t\t\tthis.$emit('error', new Error('unsupported'));\n\t\t\t}\n\t\t},\n\t\tstopWatch: function stopWatch() {\n\t\t\tif (navigator.geolocation) {\n\t\t\t\tnavigator.geolocation.clearWatch(this.$_watchId);\n\t\t\t}\n\t\t},\n\t\tupdatePosition: function updatePosition(position) {\n\t\t\tthis.currentPosition = {\n\t\t\t\tlat: position.coords.latitude,\n\t\t\t\tlng: position.coords.longitude\n\t\t\t};\n\t\t\tthis.$emit('update:position', this.currentPosition);\n\t\t\tthis.currentAccuracy = position.coords.accuracy;\n\t\t\tthis.$emit('update:accuracy', this.currentAccuracy);\n\t\t},\n\t\tonWatchError: function onWatchError(e) {\n\t\t\tthis.$emit('error', e);\n\t\t}\n\t},\n\n\trender: function render(h) {\n\t\tvar markers = [];\n\t\tif (this.googleMapsReady && this.currentPosition && (this.minimumAccuracy === null || this.currentAccuracy <= this.minimumAccuracy)) {\n\t\t\tmarkers.push(h(Marker, {\n\t\t\t\tprops: {\n\t\t\t\t\tclickable: false,\n\t\t\t\t\ticon: this.positionStyle || defaultPositionStyle,\n\t\t\t\t\toptimized: false,\n\t\t\t\t\tposition: this.currentPosition,\n\t\t\t\t\tzIndex: 3\n\t\t\t\t}\n\t\t\t}));\n\t\t\tif (!this.hideAccuracy) {\n\t\t\t\tmarkers.push(h(Circle, {\n\t\t\t\t\tprops: {\n\t\t\t\t\t\tclickable: false,\n\t\t\t\t\t\tradius: this.currentAccuracy,\n\t\t\t\t\t\toptions: this.accuracyStyle || defaultAccuracyStyle,\n\t\t\t\t\t\tcenter: this.currentPosition,\n\t\t\t\t\t\tzIndex: 1\n\t\t\t\t\t}\n\t\t\t\t}));\n\t\t\t}\n\t\t}\n\n\t\treturn h('div', markers);\n\t},\n\tgoogleMapsReady: function googleMapsReady() {\n\t\tdefaultPositionStyle = {\n\t\t\tpath: window.google.maps.SymbolPath.CIRCLE,\n\t\t\tfillColor: '#4285F4',\n\t\t\tfillOpacity: 1,\n\t\t\tscale: 6,\n\t\t\tstrokeColor: 'white',\n\t\t\tstrokeWeight: 2\n\t\t};\n\n\t\tif (!this.disableWatch) {\n\t\t\tthis.startWatch();\n\t\t}\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tthis.stopWatch();\n\t}\n};\n\nvar boundProps$3 = ['draggable', 'editable', 'options', 'path'];\n\nvar redirectedEvents$3 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\n\nvar Polyline = {\n\tname: 'GoogleMapsPolyline',\n\n\tmixins: [MapElement],\n\n\tprops: {\n\t\teditable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\tdraggable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\toptions: {\n\t\t\ttype: Object,\n\t\t\tdefault: function _default() {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t},\n\t\tpath: {\n\t\t\ttype: Array\n\t\t}\n\t},\n\n\twatch: {\n\t\toptions: 'updateOptions'\n\t},\n\n\tmethods: {\n\t\tupdateOptions: function updateOptions(options) {\n\t\t\tthis.$_polyline && this.$_polyline.setOptions(options || this.$props);\n\t\t}\n\t},\n\n\trender: function render(h) {\n\t\treturn '';\n\t},\n\tgoogleMapsReady: function googleMapsReady() {\n\t\tvar _this = this;\n\n\t\tvar options = Object.assign({}, this.$props);\n\t\toptions.map = this.$_map;\n\n\t\tthis.$_polyline = new window.google.maps.Polyline(options);\n\t\tthis.bindProps(this.$_polyline, boundProps$3);\n\t\tthis.redirectEvents(this.$_polyline, redirectedEvents$3);\n\t\tthis.listen(this.$_polyline, 'drag', function () {\n\t\t\t_this.$emit('path_changed', _this.$_polyline.getPath());\n\t\t});\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tif (this.$_polyline) {\n\t\t\tthis.$_polyline.setMap(null);\n\t\t}\n\t}\n};\n\nvar boundProps$4 = ['bounds', 'draggable', 'editable', 'visible', 'options'];\n\nvar redirectedEvents$4 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\n\nvar Rectangle = {\n\tname: 'GoogleMapsRectangle',\n\n\tmixins: [MapElement],\n\n\tprops: {\n\t\tbounds: {\n\t\t\ttype: Object,\n\t\t\trequired: true\n\t\t},\n\t\tclickable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true\n\t\t},\n\t\tdraggable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\teditable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\toptions: {\n\t\t\ttype: Object,\n\t\t\tdefault: function _default() {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t},\n\t\tvisible: {\n\t\t\tdefault: true\n\t\t},\n\t\tzIndex: {\n\t\t\ttype: Number\n\t\t}\n\t},\n\n\twatch: {\n\t\tbounds: 'updateBounds',\n\t\toptions: 'updateOptions',\n\t\tclickable: 'updateOptions',\n\t\tzIndex: 'updateOptions'\n\t},\n\n\tmethods: {\n\t\tupdateOptions: function updateOptions(options) {\n\t\t\tthis.$_rectangle && this.$_rectangle.setOptions(options || this.$props);\n\t\t},\n\t\tupdateBounds: function updateBounds(bounds) {\n\t\t\tthis.$_rectangle && this.$_rectangle.setBounds(bounds);\n\t\t}\n\t},\n\n\trender: function render(h) {\n\t\treturn '';\n\t},\n\tgoogleMapsReady: function googleMapsReady() {\n\t\tvar options = Object.assign({}, this.$props);\n\t\toptions.map = this.$_map;\n\n\t\tthis.$_rectangle = new window.google.maps.Rectangle(options);\n\t\tthis.bindProps(this.$_rectangle, boundProps$4);\n\t\tthis.redirectEvents(this.$_rectangle, redirectedEvents$4);\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tif (this.$_rectangle) {\n\t\t\tthis.$_rectangle.setMap(null);\n\t\t}\n\t}\n};\n\nvar boundProps$5 = ['draggable', 'editable', 'options', 'paths'];\n\nvar redirectedEvents$5 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\n\nvar Polygon = {\n\tname: 'GoogleMapsPolygon',\n\n\tmixins: [MapElement],\n\n\tprops: {\n\t\teditable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\tdraggable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\toptions: {\n\t\t\ttype: Object,\n\t\t\tdefault: function _default() {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t},\n\t\tpaths: {\n\t\t\ttype: Array\n\t\t}\n\t},\n\n\twatch: {\n\t\tpaths: 'updateOptions',\n\t\toptions: 'updateOptions'\n\t},\n\n\tmethods: {\n\t\tupdateOptions: function updateOptions(options) {\n\t\t\tthis.$_polygon && this.$_polygon.setOptions(options || this.$props);\n\t\t}\n\t},\n\n\trender: function render(h) {\n\t\treturn '';\n\t},\n\tgoogleMapsReady: function googleMapsReady() {\n\t\tvar _this = this;\n\n\t\tvar options = Object.assign({}, this.$props);\n\t\toptions.map = this.$_map;\n\n\t\tthis.$_polygon = new window.google.maps.Polygon(options);\n\t\tthis.bindProps(this.$_polygon, boundProps$5);\n\t\tthis.redirectEvents(this.$_polygon, redirectedEvents$5);\n\t\tthis.listen(this.$_polygon, 'drag', function () {\n\t\t\t_this.$emit('path_changed', _this.$_polygon.getPath());\n\t\t});\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tif (this.$_polygon) {\n\t\t\tthis.$_polygon.setMap(null);\n\t\t}\n\t}\n};\n\nfunction registerComponents(Vue, prefix) {\n\tVue.component(prefix + 'circle', Circle);\n\tVue.component(prefix + 'rectangle', Rectangle);\n\tVue.component(prefix + 'geocoder', Geocoder);\n\tVue.component(prefix + 'map', Map);\n\tVue.component(prefix + 'marker', Marker);\n\tVue.component(prefix + 'nearby-places', NearbyPlaces);\n\tVue.component(prefix + 'place-details', PlaceDetails);\n\tVue.component(prefix + 'user-position', UserPosition);\n\tVue.component(prefix + 'polyline', Polyline);\n\tVue.component(prefix + 'polygon', Polygon);\n}\n\nvar plugin = {\n\t// eslint-disable-next-line no-undef\n\tversion: \"0.1.1\",\n\tinstall: function install(Vue, options) {\n\t\tvar finalOptions = Object.assign({}, {\n\t\t\tinstallComponents: true,\n\t\t\tcomponentsPrefix: 'googlemaps-'\n\t\t}, options);\n\n\t\toptionMergeStrategies(Vue);\n\t\tinitErrorHandling(Vue);\n\n\t\tif (finalOptions.installComponents) {\n\t\t\tregisterComponents(Vue, finalOptions.componentsPrefix);\n\t\t}\n\n\t\tif (finalOptions.load) {\n\t\t\tloader.load(finalOptions.load);\n\t\t}\n\t}\n};\n\nvar GlobalVue = null;\nif (typeof window !== 'undefined') {\n\tGlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n\tGlobalVue = global.Vue;\n}\nif (GlobalVue) {\n\tGlobalVue.use(plugin);\n}\n\nexport { Circle, Rectangle, Geocoder, Map, Marker, NearbyPlaces, PlaceDetails, UserPosition, MapElement, Polyline, Polygon };\nexport default plugin;\n\n\n\n// WEBPACK FOOTER //\n// ../dist/vue-googlemaps.esm.js","exports = module.exports = require(\"../../css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".md-ink-ripple{pointer-events:none;overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0);transition:all .3s cubic-bezier(.55,0,.55,.2)}.md-ripple{position:absolute;background-color:currentColor;border-radius:50%;opacity:.2;transform:scale(0) translateZ(0);transition:none;will-change:background-color,opacity,transform,width,height,top,left}.md-ripple.md-active{animation:ripple 1s cubic-bezier(.25,.8,.25,1) forwards}.md-ripple.md-active.md-fadeout{opacity:0!important;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.6s}@keyframes ripple{to{transform:scale(2.2) translateZ(0)}}html{height:100%;box-sizing:border-box}html *,html :after,html :before{box-sizing:inherit}body{min-height:100%;margin:0;position:relative;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:rgba(0,0,0,.87);font-family:Roboto,Noto Sans,Noto,sans-serif}ul:not(.md-list)>li+li{margin-top:8px}audio,canvas,embed,iframe,img,object,svg,video{max-width:100%;font-style:italic;vertical-align:middle}audio:not(.md-image),canvas:not(.md-image),embed:not(.md-image),iframe:not(.md-image),img:not(.md-image),object:not(.md-image),svg:not(.md-image),video:not(.md-image){height:auto}[tabindex=\\\"-1\\\"]:focus{outline:none!important}.md-scrollbar::-webkit-scrollbar,.md-scrollbar ::-webkit-scrollbar{width:10px;height:10px;box-shadow:inset 1px 1px 0 rgba(0,0,0,.12);transition:all .5s cubic-bezier(.35,0,.25,1);background-color:rgba(0,0,0,.05)}.md-scrollbar::-webkit-scrollbar:hover,.md-scrollbar ::-webkit-scrollbar:hover{box-shadow:inset 1px 1px 0 rgba(0,0,0,.054),inset 0 -1px 0 rgba(0,0,0,.038);background-color:rgba(0,0,0,.087)}.md-scrollbar::-webkit-scrollbar-button,.md-scrollbar ::-webkit-scrollbar-button{display:none}.md-scrollbar::-webkit-scrollbar-corner,.md-scrollbar ::-webkit-scrollbar-corner{background-color:transparent}.md-scrollbar::-webkit-scrollbar-thumb,.md-scrollbar ::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.26);box-shadow:inset 1px 1px 0 rgba(0,0,0,.054),inset 0 -1px 0 rgba(0,0,0,.087);transition:all .5s cubic-bezier(.35,0,.25,1)}.md-caption{font-size:12px;font-weight:400;letter-spacing:.02em;line-height:17px}.md-body-1,body{font-weight:400;line-height:20px}.md-body-1,.md-body-2,body{font-size:14px;letter-spacing:.01em}.md-body-2{font-weight:500;line-height:24px}.md-subheading{font-size:16px;font-weight:400;letter-spacing:.01em;line-height:24px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em;line-height:26px}.md-headline{font-size:24px;line-height:32px}.md-display-1,.md-headline{font-weight:400;letter-spacing:0}.md-display-1{font-size:34px;line-height:40px}.md-display-2{font-size:45px;font-weight:400;letter-spacing:0;line-height:48px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:58px}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.01em;line-height:112px}a:not(.md-button):not(.md-bottom-bar-item){text-decoration:none}a:not(.md-button):not(.md-bottom-bar-item):hover{text-decoration:underline}button:focus{outline:none}.md-avatar{width:40px;min-width:40px;height:40px;min-height:40px;margin:auto;display:inline-block;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;border-radius:40px;vertical-align:middle}.md-avatar.md-large{width:64px;min-width:64px;height:64px;min-height:64px;border-radius:64px}.md-avatar.md-large .md-icon{width:40px;min-width:40px;height:40px;min-height:40px;font-size:40px;line-height:40px}.md-avatar.md-avatar-icon{background-color:rgba(0,0,0,.38)}.md-avatar.md-avatar-icon .md-icon{color:#fff}.md-avatar .md-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.md-avatar img{width:100%;height:100%;display:block}.md-avatar .md-ink-ripple{border-radius:50%}.md-avatar .md-ink-ripple .md-ripple.md-active{animation-duration:.9s}.md-avatar-tooltip.md-tooltip-top{margin-top:-8px}.md-avatar-tooltip.md-tooltip-right{margin-left:8px}.md-avatar-tooltip.md-tooltip-bottom{margin-top:8px}.md-avatar-tooltip.md-tooltip-left{margin-left:-8px}.md-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:99;pointer-events:none;background-color:rgba(0,0,0,.54);transform:translateZ(0);opacity:0;transition:all .5s cubic-bezier(.35,0,.25,1)}.md-backdrop.md-active{opacity:1;pointer-events:auto}.md-backdrop.md-transparent{background:rgba(0,0,0,.005)}.md-bottom-bar{width:100%;min-width:100%;height:56px;-ms-flex-pack:center;justify-content:center;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-bottom-bar,.md-bottom-bar-item{position:relative;display:-ms-flexbox;display:flex}.md-bottom-bar-item{max-width:168px;min-width:80px;height:100%;padding:8px 12px 10px;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;-ms-flex:1;flex:1;cursor:pointer;border:none;background:transparent;transform:translateZ(0);color:currentColor;font-family:inherit;font-size:14px;line-height:1em;text-decoration:none}.md-bottom-bar-item.md-active{padding-top:6px}.md-bottom-bar-item.md-active .md-text{transform:scale(1) translateZ(0)}.md-bottom-bar-item.md-active .md-icon,.md-bottom-bar-item.md-active .md-text{color:currentColor}.md-bottom-bar-item[disabled]{opacity:.38}.md-bottom-bar.md-shift .md-bottom-bar-item{min-width:56px;max-width:96px;position:static;-ms-flex:1 1 32px;flex:1 1 32px;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:flex,min-width,max-width;transition-property:flex,min-width,max-width,-ms-flex}.md-bottom-bar.md-shift .md-bottom-bar-item .md-icon{transform:translate3d(0,8px,0)}.md-bottom-bar.md-shift .md-bottom-bar-item .md-text{opacity:0;transform:scale(1) translate3d(0,6px,0)}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active{min-width:96px;max-width:168px;-ms-flex:1 1 72px;flex:1 1 72px}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-icon,.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-text{opacity:1}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-icon{transform:scale(1) translateZ(0)}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-text{transform:scale(1) translate3d(0,2px,0)}.md-bottom-bar-item .md-text{transform:scale(.8571) translateY(2px);transition:all .4s cubic-bezier(.25,.8,.25,1),color .15s linear,opacity .15s linear}.md-bottom-bar-item .md-icon{transition:all .4s cubic-bezier(.25,.8,.25,1),color .15s linear}.md-button{min-width:88px;min-height:36px;margin:6px 8px;padding:0 16px;display:inline-block;position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;background:none;border:0;border-radius:2px;transition:all .4s cubic-bezier(.25,.8,.25,1);color:currentColor;font-family:inherit;font-size:14px;font-style:inherit;font-variant:inherit;font-weight:500;letter-spacing:inherit;line-height:36px;text-align:center;text-transform:uppercase;text-decoration:none;vertical-align:top;white-space:nowrap}.md-button,.md-button:focus{outline:none}.md-button::-moz-focus-inner{border:0}.md-button:hover:not([disabled]):not(.md-raised){background-color:hsla(0,0%,60%,.2);text-decoration:none}.md-button:hover:not([disabled]).md-raised{background-color:rgba(0,0,0,.12)}.md-button:active:not([disabled]){background-color:hsla(0,0%,60%,.4)}.md-button.md-raised:not([disabled]){box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-button.md-dense{min-height:32px;line-height:32px;font-size:13px}.md-button.md-fab .md-icon,.md-button.md-icon-button .md-icon{position:absolute;top:1px;right:0;bottom:0;left:0}.md-button.md-icon-button{width:40px;min-width:40px;height:40px;margin:0 6px;padding:8px;border-radius:50%;line-height:24px}.md-button.md-icon-button:not([disabled]):hover{background:none}.md-button.md-icon-button.md-dense{width:32px;min-width:32px;height:32px;min-height:32px;padding:4px;line-height:32px}.md-button.md-icon-button .md-ink-ripple{border-radius:50%}.md-button.md-icon-button .md-ink-ripple .md-ripple{top:0!important;right:0!important;bottom:0!important;left:0!important}.md-button.md-icon-button .md-ripple.md-active{animation-duration:.9s}.md-button.md-fab{width:56px;height:56px;padding:0;min-width:0;overflow:hidden;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:56px;line-height:56px;background-clip:padding-box;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:background-color,box-shadow,transform}.md-button.md-fab:focus,.md-button.md-fab:hover{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.md-button.md-fab.md-mini{width:40px;height:40px;line-height:40px}.md-button.md-fab .md-ink-ripple{border-radius:56px}.md-button[disabled]{color:rgba(0,0,0,.26);cursor:default;pointer-events:none}.md-button[disabled].md-fab,.md-button[disabled].md-raised{background-color:rgba(0,0,0,.12)}.md-button[disabled].md-fab{box-shadow:none}.md-button:after{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-button .md-ink-ripple{border-radius:2px;background-clip:padding-box;overflow:hidden}.md-button.md-fab .md-icon,.md-button.md-icon-button .md-icon{display:block}.md-fab.md-fab-bottom-center,.md-fab.md-fab-bottom-left,.md-fab.md-fab-bottom-right,.md-fab.md-fab-top-center,.md-fab.md-fab-top-left,.md-fab.md-fab-top-right,.md-speed-dial.md-fab-bottom-center,.md-speed-dial.md-fab-bottom-left,.md-speed-dial.md-fab-bottom-right,.md-speed-dial.md-fab-top-center,.md-speed-dial.md-fab-top-left,.md-speed-dial.md-fab-top-right{margin:0;position:absolute;z-index:10}.md-fab.md-fab-top-left,.md-speed-dial.md-fab-top-left{top:24px;left:24px}.md-fab.md-fab-top-center,.md-speed-dial.md-fab-top-center{top:24px;left:50%;transform:translateX(-50%)}.md-fab.md-fab-top-right,.md-speed-dial.md-fab-top-right{top:24px;right:24px}.md-fab.md-fab-bottom-left,.md-speed-dial.md-fab-bottom-left{bottom:24px;left:24px}.md-fab.md-fab-bottom-center,.md-speed-dial.md-fab-bottom-center{bottom:24px;left:50%;transform:translateX(-50%)}.md-fab.md-fab-bottom-right,.md-speed-dial.md-fab-bottom-right{right:24px;bottom:24px}.md-button-tooltip.md-tooltip-top{margin-top:-8px}.md-button-tooltip.md-tooltip-right{margin-left:8px}.md-button-tooltip.md-tooltip-bottom{margin-top:8px}.md-button-tooltip.md-tooltip-left{margin-left:-8px}.md-button-toggle{width:auto;display:-ms-flexbox;display:flex}.md-button-toggle>.md-button{margin:0;overflow:hidden;border-width:1px 0 1px 1px;border-radius:0;text-align:center;text-overflow:ellipsis;white-space:nowrap}.md-button-toggle>.md-button:first-child{border-radius:2px 0 0 2px}.md-button-toggle>.md-button:last-child{border-right-width:1px;border-radius:0 2px 2px 0}.md-button-toggle>.md-button:not([disabled]){color:rgba(0,0,0,.54)}.md-button-toggle>.md-button:not([disabled]):hover:not(.md-toggle):not(.md-raised){background-color:hsla(0,0%,60%,.2);text-decoration:none}.md-button-toggle>.md-button .md-ink-ripple{border-radius:2px}.md-button-toggle.md-raised button:not([disabled]),.md-card{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-card{overflow:auto;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;position:relative;z-index:1;border-radius:2px}.md-card.md-with-hover{cursor:pointer;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow}.md-card.md-with-hover:hover{z-index:2;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-card .md-card-media{position:relative}.md-card .md-card-media.md-16-9{overflow:hidden}.md-card .md-card-media.md-16-9:before{width:100%;padding-top:56.25%;display:block;content:\\\" \\\"}.md-card .md-card-media.md-16-9 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card .md-card-media.md-4-3{overflow:hidden}.md-card .md-card-media.md-4-3:before{width:100%;padding-top:75%;display:block;content:\\\" \\\"}.md-card .md-card-media.md-4-3 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card .md-card-media.md-1-1{overflow:hidden}.md-card .md-card-media.md-1-1:before{width:100%;padding-top:100%;display:block;content:\\\" \\\"}.md-card .md-card-media.md-1-1 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card .md-card-media+.md-card-header{padding-top:24px}.md-card .md-card-media+.md-card-content:last-child{padding-bottom:16px}.md-card .md-card-media img{width:100%}.md-card .md-card-header{padding:16px}.md-card .md-card-header:first-child>.md-card-header-text>.md-title:first-child,.md-card .md-card-header:first-child>.md-title:first-child{margin-top:8px}.md-card .md-card-header:last-child{margin-bottom:8px}.md-card .md-card-header.md-card-header-flex{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.md-card .md-card-header+.md-card-content{padding-top:0}.md-card .md-card-header+.md-card-actions:not(:last-child){padding:0 8px}.md-card .md-card-header .md-avatar{margin-right:16px;float:left}.md-card .md-card-header .md-avatar~.md-title{font-size:14px}.md-card .md-card-header .md-avatar~.md-subhead,.md-card .md-card-header .md-avatar~.md-title{font-weight:500;line-height:20px}.md-card .md-card-header .md-button{margin:0}.md-card .md-card-header .md-button:last-child{margin-right:-4px}.md-card .md-card-header .md-button+.md-button{margin-left:8px}.md-card .md-card-header .md-card-header-text{-ms-flex:1;flex:1}.md-card .md-card-header .md-card-media{width:80px;-ms-flex:0 0 80px;flex:0 0 80px;height:80px;margin-left:16px}.md-card .md-card-header .md-card-media.md-medium{width:120px;-ms-flex:0 0 120px;flex:0 0 120px;height:120px}.md-card .md-card-header .md-card-media.md-big{width:160px;-ms-flex:0 0 160px;flex:0 0 160px;height:160px}.md-card .md-subhead,.md-card .md-subheading,.md-card .md-title{margin:0;font-weight:400}.md-card .md-subhead{opacity:.54;font-size:14px;letter-spacing:.01em;line-height:20px}.md-card .md-subhead+.md-title{margin-top:4px}.md-card .md-title{font-size:24px;letter-spacing:0;line-height:32px}.md-card .md-card-media-actions{padding:16px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.md-card .md-card-media-actions .md-card-media{max-width:240px;max-height:240px;-ms-flex:1;flex:1}.md-card .md-card-media-actions .md-card-actions{margin-left:16px;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center}.md-card .md-card-media-actions .md-card-actions .md-button+.md-button{margin:8px 0 0}.md-card .md-card-content{padding:16px;font-size:14px;line-height:22px}.md-card .md-card-content:last-child{padding-bottom:24px}.md-card .md-card-actions{padding:8px;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center}.md-card .md-card-actions .md-button{margin:0}.md-card .md-card-actions .md-button:first-child{margin-left:0}.md-card .md-card-actions .md-button:last-child{margin-right:0}.md-card .md-card-actions .md-button+.md-button{margin-left:4px}.md-card .md-card-area,.md-card>.md-card-area:not(:last-child){position:relative}.md-card>.md-card-area:not(:last-child):after{height:1px;position:absolute;bottom:0;content:\\\" \\\"}.md-card>.md-card-area:not(:last-child):not(.md-inset):after{right:0;left:0}.md-card>.md-card-area:not(:last-child).md-inset:after{right:16px;left:16px}.md-card .md-card-media-cover{position:relative;color:#fff}.md-card .md-card-media-cover.md-text-scrim .md-card-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.md-card .md-card-media-cover .md-card-area{position:absolute;right:0;bottom:0;left:0;z-index:2}.md-card .md-card-media-cover .md-card-header+.md-card-actions{padding-top:0}.md-card .md-card-media-cover .md-subhead{opacity:1}.md-card .md-card-expand{overflow:hidden}.md-card .md-card-expand.md-active [md-expand-trigger]{transform:rotate(180deg) translate3D(0,0,0)}.md-card .md-card-expand.md-active .md-card-content{margin-top:0!important;opacity:1;padding:4px 16px 24px;height:auto}.md-card .md-card-expand .md-card-actions{padding-top:0;position:relative;z-index:2}.md-card .md-card-expand [md-expand-trigger]{transition:all .4s cubic-bezier(.25,.8,.25,1);will-change:transform}.md-card .md-card-expand .md-card-content{height:0;padding:0 16px;position:relative;z-index:1;opacity:0;transform:translate3D(0,0,0);transition:all .4s cubic-bezier(.25,.8,.25,1);will-change:margin,height}.md-checkbox{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-checkbox:not(.md-disabled),.md-checkbox:not(.md-disabled) .md-checkbox-label{cursor:pointer}.md-checkbox .md-checkbox-container{width:20px;min-width:20px;height:20px;position:relative;border-radius:2px;border:2px solid rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-checkbox .md-checkbox-container:focus{outline:none}.md-checkbox .md-checkbox-container:before{width:48px;height:48px;position:absolute;top:50%;left:50%;border-radius:50%;transform:translate(-50%,-50%);transition:all .3s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-checkbox .md-checkbox-container:after{width:6px;height:13px;position:absolute;top:0;left:5px;border:2px solid #fff;border-top:0;border-left:0;opacity:0;transform:rotate(45deg) scale3D(.15,.15,1);transition:all .3s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-checkbox .md-checkbox-container input{position:absolute;left:-999em}.md-checkbox .md-checkbox-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-checkbox .md-checkbox-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-checkbox .md-checkbox-label{height:20px;padding-left:8px;line-height:20px}.md-checkbox.md-checked .md-checkbox-container:after{opacity:1;transform:rotate(45deg) scale3D(1,1,1);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-chip{height:32px;padding:8px 12px;display:inline-block;border-radius:32px;transition:all .4s cubic-bezier(.25,.8,.25,1);font-size:13px;line-height:16px;white-space:nowrap}.md-chip.md-deletable{position:relative;padding-right:32px}.md-chip.md-editable .md-chip-container{cursor:pointer}.md-chip:active,.md-chip:focus{outline:none}.md-chip:active:not(.md-disabled),.md-chip:focus:not(.md-disabled){cursor:pointer;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-chip.md-disabled .md-button{pointer-events:none;cursor:default}.md-chip .md-button.md-delete{width:24px;min-width:24px;height:24px;min-height:24px;margin:0;padding:0;position:absolute;top:4px;right:4px;border-radius:24px;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-chip .md-button.md-delete .md-icon{width:20px;min-width:20px;height:20px;min-height:20px;margin:0;font-size:20px}.md-chip .md-button.md-delete .md-ink-ripple{border-radius:32px}.md-chip .md-button.md-delete .md-ripple{opacity:.54}.md-chips{min-height:54px;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.md-chips .md-chip{margin-right:8px;margin-bottom:4px}.md-chips .md-input{width:128px;-ms-flex:1;flex:1}.md-dialog-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:108}.md-dialog-container.md-active{pointer-events:auto}.md-dialog-container.md-active .md-dialog{opacity:1!important;transform:scale(1)!important;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform}.md-dialog-backdrop{position:fixed;z-index:109}.md-dialog{min-width:280px;max-width:80%;max-height:80%;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;overflow:hidden;position:relative;z-index:110;outline:none;border-radius:2px;opacity:0;box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12);transform:scale(.9,.85);transform-origin:center center;transition:opacity .4s cubic-bezier(.25,.8,.25,1),transform .4s cubic-bezier(.25,.8,.25,1) .05s;will-change:opacity,transform}.md-dialog.md-reference{transform-origin:top center}.md-dialog.md-transition-off{transition:none!important}.md-dialog p{margin:0}.md-dialog-title{margin-bottom:20px;padding:24px 24px 0}.md-dialog-content{padding:0 24px 24px;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;overflow:auto;position:relative}.md-dialog-content:first-child{padding-top:24px}.md-dialog-content p:first-child:not(:only-child){margin-top:0}.md-dialog-content p:last-child:not(:only-child){margin-bottom:0}.md-dialog-body{margin:0 -24px;padding:0 24px;overflow:auto}.md-dialog-actions{min-height:52px;padding:8px 8px 8px 24px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;position:relative}.md-dialog-actions:before{height:1px;position:absolute;top:-1px;right:0;left:0;content:\\\" \\\"}.md-dialog-actions .md-button{min-width:64px;margin:0;padding:0 8px}.md-dialog-actions .md-button+.md-button{margin-left:8px}.md-divider{height:1px;margin:0;padding:0;display:block;border:0;background-color:rgba(0,0,0,.12)}.md-divider.md-inset{margin-left:72px}.md-file{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1}.md-file input[type=file]{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-file .md-icon{cursor:pointer}.md-icon{width:24px;min-width:24px;height:24px;min-height:24px;font-size:24px;margin:auto;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;fill:currentColor;text-rendering:optimizeLegibility;vertical-align:middle}.md-icon.md-size-2x{width:48px;min-width:48px;height:48px;min-height:48px;font-size:48px}.md-icon.md-size-3x{width:72px;min-width:72px;height:72px;min-height:72px;font-size:72px}.md-icon.md-size-4x{width:96px;min-width:96px;height:96px;min-height:96px;font-size:96px}.md-icon.md-size-5x{width:120px;min-width:120px;height:120px;min-height:120px;font-size:120px}.md-icon svg{width:100%;height:100%}img.md-icon{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-image{opacity:0;filter:saturate(20%)}.md-image.md-black-output{filter:brightness(.4) saturate(20%)}.md-image.md-loaded{opacity:1;filter:saturate(100%);transition:opacity 1.1s cubic-bezier(.25,.8,.25,1),filter 2.2s cubic-bezier(.25,.8,.25,1) .3s}.md-input-container{width:100%;min-height:48px;margin:4px 0 24px;padding-top:16px;display:-ms-flexbox;display:flex;position:relative}.md-input-container:after{height:1px;right:0;bottom:0;background-color:rgba(0,0,0,.12);content:\\\" \\\"}.md-input-container:after,.md-input-container label{position:absolute;left:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-input-container label{top:23px;pointer-events:none;transition-duration:.3s;color:rgba(0,0,0,.54);font-size:16px;line-height:20px}.md-input-container input,.md-input-container textarea{width:100%;height:32px;padding:0;display:block;-ms-flex:1;flex:1;border:none;background:none;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:font-size;color:rgba(0,0,0,.54);font-family:inherit;font-size:1px;line-height:32px}.md-input-container input:focus,.md-input-container textarea:focus{outline:none}.md-input-container input::-webkit-input-placeholder,.md-input-container textarea::-webkit-input-placeholder{color:rgba(0,0,0,.54);font-size:16px;text-shadow:none;-webkit-text-fill-color:initial}.md-input-container input~.md-icon:not(.md-icon-delete),.md-input-container textarea~.md-icon:not(.md-icon-delete){margin-left:12px}.md-input-container input~.md-icon:not(.md-icon-delete):after,.md-input-container textarea~.md-icon:not(.md-icon-delete):after{right:0;left:auto}.md-input-container textarea{min-height:32px;max-height:230px;padding:5px 0;resize:none;line-height:1.3em}.md-input-container .md-count,.md-input-container .md-error{height:20px;position:absolute;bottom:-22px;font-size:12px}.md-input-container .md-error{display:block!important;left:0;opacity:0;transform:translate3d(0,-8px,0);transition:all .3s cubic-bezier(.55,0,.55,.2)}.md-input-container .md-count{right:0}.md-input-container .md-icon:not(.md-icon-delete){margin:4px auto;color:rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-input-container .md-icon:not(.md-icon-delete):after{width:36px;height:2px;position:absolute;left:0;bottom:0;z-index:2;content:\\\"\\\"}.md-input-container .md-icon:not(.md-icon-delete)~label{left:36px}.md-input-container .md-icon:not(.md-icon-delete)~.md-file,.md-input-container .md-icon:not(.md-icon-delete)~.md-input,.md-input-container .md-icon:not(.md-icon-delete)~.md-textarea{margin-left:12px}.md-input-container .md-autocomplete,.md-input-container .md-autocomplete .md-menu,.md-input-container .md-autocomplete .md-menu .md-input{width:100%}.md-theme-default.md-input-container .md-autocomplete .md-icon:not(.md-icon-search):after{height:0}.md-input-container.md-input-placeholder label{pointer-events:auto;top:10px;opacity:0;font-size:12px}.md-input-container.md-input-placeholder input,.md-input-container.md-input-placeholder textarea{font-size:16px}.md-input-container.md-has-value label,.md-input-container.md-input-focused label{pointer-events:auto;top:0;opacity:1;font-size:12px}.md-input-container.md-has-value input,.md-input-container.md-has-value textarea,.md-input-container.md-input-focused input,.md-input-container.md-input-focused textarea{font-size:16px}.md-input-container.md-has-value input,.md-input-container.md-has-value textarea{color:rgba(0,0,0,.87)}.md-input-container.md-input-inline label{pointer-events:none}.md-input-container.md-input-inline.md-input-focused label{top:23px;font-size:16px}.md-input-container.md-input-inline.md-has-value label{opacity:0}.md-input-container.md-input-disabled:after{background:0 100% repeat-x;background-image:linear-gradient(90deg,rgba(0,0,0,.38) 0,rgba(0,0,0,.38) 33%,transparent 0);background-size:4px 1px}.md-input-container.md-input-disabled input,.md-input-container.md-input-disabled label,.md-input-container.md-input-disabled textarea{color:rgba(0,0,0,.38)}.md-input-container.md-has-password.md-input-focused .md-toggle-password{color:rgba(0,0,0,.54)}.md-input-container.md-has-password .md-toggle-password{margin:0;position:absolute;right:0;bottom:-2px;color:rgba(0,0,0,.38)}.md-input-container.md-has-password .md-toggle-password .md-ink-ripple{color:rgba(0,0,0,.87)}.md-input-container.md-clearable.md-input-focused .md-clear-input{color:rgba(0,0,0,.54)}.md-input-container.md-clearable .md-clear-input{margin:0;position:absolute;right:0;bottom:-2px;color:rgba(0,0,0,.38)}.md-input-container.md-clearable .md-clear-input .md-ink-ripple{color:rgba(0,0,0,.87)}.md-input-container.md-input-invalid .md-error{opacity:1;transform:translateZ(0)}.md-input-container.md-input-required label:after{top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";font-size:12px;line-height:1em;vertical-align:top}.md-input-container.md-has-select:hover .md-select:not(.md-disabled):after{color:rgba(0,0,0,.87)}.md-layout{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex:1;flex:1}.md-row{-ms-flex-direction:row;flex-direction:row}.md-column{-ms-flex-direction:column;flex-direction:column}.md-layout.md-container{width:100%;max-width:1200px}.md-layout.md-container.md-centered{margin:0 auto}.md-align-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-center{-ms-flex-pack:center;justify-content:center}.md-align-end{-ms-flex-pack:end;justify-content:flex-end}.md-vertical-align-start{-ms-flex-align:start;align-items:flex-start;-ms-flex-line-pack:start;align-content:flex-start}.md-vertical-align-center{-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.md-vertical-align-end{-ms-flex-align:end;align-items:flex-end;-ms-flex-line-pack:end;align-content:flex-end}.md-vertical-align-stretch{-ms-flex-align:stretch;align-items:stretch;-ms-flex-line-pack:stretch;align-content:stretch}.md-gutter:not(.md-column){margin-right:-12px;margin-left:-12px}.md-gutter:not(.md-column)>.md-layout{padding-right:12px;padding-left:12px}.md-gutter .md-column{margin-top:-12px;margin-bottom:-12px}.md-gutter .md-column>.md-layout{padding-top:12px;padding-bottom:12px}.md-gutter-8:not(.md-column){margin-right:-4px;margin-left:-4px}.md-gutter-8:not(.md-column)>.md-layout{padding-right:4px;padding-left:4px}.md-gutter-8 .md-column{margin-top:-4px;margin-bottom:-4px}.md-gutter-8 .md-column>.md-layout{padding-top:4px;padding-bottom:4px}.md-gutter-16:not(.md-column){margin-right:-8px;margin-left:-8px}.md-gutter-16:not(.md-column)>.md-layout{padding-right:8px;padding-left:8px}.md-gutter-16 .md-column{margin-top:-8px;margin-bottom:-8px}.md-gutter-16 .md-column>.md-layout{padding-top:8px;padding-bottom:8px}.md-gutter-24:not(.md-column){margin-right:-12px;margin-left:-12px}.md-gutter-24:not(.md-column)>.md-layout{padding-right:12px;padding-left:12px}.md-gutter-24 .md-column{margin-top:-12px;margin-bottom:-12px}.md-gutter-24 .md-column>.md-layout{padding-top:12px;padding-bottom:12px}.md-gutter-40:not(.md-column){margin-right:-20px;margin-left:-20px}.md-gutter-40:not(.md-column)>.md-layout{padding-right:20px;padding-left:20px}.md-gutter-40 .md-column{margin-top:-20px;margin-bottom:-20px}.md-gutter-40 .md-column>.md-layout{padding-top:20px;padding-bottom:20px}.md-flex{-ms-flex:1 1;flex:1 1}.md-flex-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-33{margin-left:33.33333%}.md-flex-offset-66{margin-left:66.66666%}.md-flex-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-5{margin-left:5%}.md-flex-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-10{margin-left:10%}.md-flex-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-15{margin-left:15%}.md-flex-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-20{margin-left:20%}.md-flex-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-25{margin-left:25%}.md-flex-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-30{margin-left:30%}.md-flex-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-35{margin-left:35%}.md-flex-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-40{margin-left:40%}.md-flex-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-45{margin-left:45%}.md-flex-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-50{margin-left:50%}.md-flex-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-55{margin-left:55%}.md-flex-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-60{margin-left:60%}.md-flex-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-65{margin-left:65%}.md-flex-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-70{margin-left:70%}.md-flex-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-75{margin-left:75%}.md-flex-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-80{margin-left:80%}.md-flex-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-85{margin-left:85%}.md-flex-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-90{margin-left:90%}.md-flex-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-95{margin-left:95%}.md-flex-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-100{margin-left:100%}@media (max-width:944px){.md-gutter:not(.md-column){margin-right:-8px;margin-left:-8px}.md-gutter:not(.md-column)>.md-layout{padding-right:8px;padding-left:8px}.md-gutter .md-column{margin-top:-8px;margin-bottom:-8px}.md-gutter .md-column>.md-layout{padding-top:8px;padding-bottom:8px}.md-row-small{-ms-flex-direction:row;flex-direction:row}.md-column-small{-ms-flex-direction:column;flex-direction:column}.md-flex-small{-ms-flex:1 1;flex:1 1}.md-flex-small-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-small-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-small-33{margin-left:33.33333%}.md-flex-offset-small-66{margin-left:66.66666%}.md-flex-small-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-small-5{margin-left:5%}.md-flex-small-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-small-10{margin-left:10%}.md-flex-small-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-small-15{margin-left:15%}.md-flex-small-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-small-20{margin-left:20%}.md-flex-small-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-small-25{margin-left:25%}.md-flex-small-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-small-30{margin-left:30%}.md-flex-small-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-small-35{margin-left:35%}.md-flex-small-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-small-40{margin-left:40%}.md-flex-small-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-small-45{margin-left:45%}.md-flex-small-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-small-50{margin-left:50%}.md-flex-small-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-small-55{margin-left:55%}.md-flex-small-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-small-60{margin-left:60%}.md-flex-small-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-small-65{margin-left:65%}.md-flex-small-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-small-70{margin-left:70%}.md-flex-small-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-small-75{margin-left:75%}.md-flex-small-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-small-80{margin-left:80%}.md-flex-small-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-small-85{margin-left:85%}.md-flex-small-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-small-90{margin-left:90%}.md-flex-small-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-small-95{margin-left:95%}.md-flex-small-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-small-100{margin-left:100%}.md-align-small-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-small-center{-ms-flex-pack:center;justify-content:center}.md-align-small-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-small{display:none}}@media (min-width:1904px){.md-row-xlarge{-ms-flex-direction:row;flex-direction:row}.md-column-xlarge{-ms-flex-direction:column;flex-direction:column}.md-flex-xlarge{-ms-flex:1 1;flex:1 1}.md-flex-xlarge-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-xlarge-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-xlarge-33{margin-left:33.33333%}.md-flex-offset-xlarge-66{margin-left:66.66666%}.md-flex-xlarge-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-xlarge-5{margin-left:5%}.md-flex-xlarge-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-xlarge-10{margin-left:10%}.md-flex-xlarge-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-xlarge-15{margin-left:15%}.md-flex-xlarge-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-xlarge-20{margin-left:20%}.md-flex-xlarge-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-xlarge-25{margin-left:25%}.md-flex-xlarge-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-xlarge-30{margin-left:30%}.md-flex-xlarge-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-xlarge-35{margin-left:35%}.md-flex-xlarge-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-xlarge-40{margin-left:40%}.md-flex-xlarge-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-xlarge-45{margin-left:45%}.md-flex-xlarge-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-xlarge-50{margin-left:50%}.md-flex-xlarge-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-xlarge-55{margin-left:55%}.md-flex-xlarge-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-xlarge-60{margin-left:60%}.md-flex-xlarge-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-xlarge-65{margin-left:65%}.md-flex-xlarge-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-xlarge-70{margin-left:70%}.md-flex-xlarge-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-xlarge-75{margin-left:75%}.md-flex-xlarge-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-xlarge-80{margin-left:80%}.md-flex-xlarge-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-xlarge-85{margin-left:85%}.md-flex-xlarge-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-xlarge-90{margin-left:90%}.md-flex-xlarge-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-xlarge-95{margin-left:95%}.md-flex-xlarge-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-xlarge-100{margin-left:100%}.md-align-xlarge-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-xlarge-center{-ms-flex-pack:center;justify-content:center}.md-align-xlarge-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-xlarge{display:none}}@media (max-width:1903px){.md-row-large{-ms-flex-direction:row;flex-direction:row}.md-column-large{-ms-flex-direction:column;flex-direction:column}.md-flex-large{-ms-flex:1 1;flex:1 1}.md-flex-large-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-large-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-large-33{margin-left:33.33333%}.md-flex-offset-large-66{margin-left:66.66666%}.md-flex-large-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-large-5{margin-left:5%}.md-flex-large-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-large-10{margin-left:10%}.md-flex-large-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-large-15{margin-left:15%}.md-flex-large-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-large-20{margin-left:20%}.md-flex-large-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-large-25{margin-left:25%}.md-flex-large-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-large-30{margin-left:30%}.md-flex-large-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-large-35{margin-left:35%}.md-flex-large-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-large-40{margin-left:40%}.md-flex-large-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-large-45{margin-left:45%}.md-flex-large-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-large-50{margin-left:50%}.md-flex-large-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-large-55{margin-left:55%}.md-flex-large-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-large-60{margin-left:60%}.md-flex-large-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-large-65{margin-left:65%}.md-flex-large-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-large-70{margin-left:70%}.md-flex-large-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-large-75{margin-left:75%}.md-flex-large-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-large-80{margin-left:80%}.md-flex-large-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-large-85{margin-left:85%}.md-flex-large-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-large-90{margin-left:90%}.md-flex-large-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-large-95{margin-left:95%}.md-flex-large-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-large-100{margin-left:100%}.md-align-large-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-large-center{-ms-flex-pack:center;justify-content:center}.md-align-large-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-large{display:none}}@media (max-width:1264px){.md-row-medium{-ms-flex-direction:row;flex-direction:row}.md-column-medium{-ms-flex-direction:column;flex-direction:column}.md-flex-medium{-ms-flex:1 1;flex:1 1}.md-flex-medium-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-medium-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-medium-33{margin-left:33.33333%}.md-flex-offset-medium-66{margin-left:66.66666%}.md-flex-medium-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-medium-5{margin-left:5%}.md-flex-medium-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-medium-10{margin-left:10%}.md-flex-medium-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-medium-15{margin-left:15%}.md-flex-medium-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-medium-20{margin-left:20%}.md-flex-medium-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-medium-25{margin-left:25%}.md-flex-medium-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-medium-30{margin-left:30%}.md-flex-medium-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-medium-35{margin-left:35%}.md-flex-medium-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-medium-40{margin-left:40%}.md-flex-medium-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-medium-45{margin-left:45%}.md-flex-medium-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-medium-50{margin-left:50%}.md-flex-medium-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-medium-55{margin-left:55%}.md-flex-medium-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-medium-60{margin-left:60%}.md-flex-medium-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-medium-65{margin-left:65%}.md-flex-medium-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-medium-70{margin-left:70%}.md-flex-medium-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-medium-75{margin-left:75%}.md-flex-medium-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-medium-80{margin-left:80%}.md-flex-medium-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-medium-85{margin-left:85%}.md-flex-medium-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-medium-90{margin-left:90%}.md-flex-medium-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-medium-95{margin-left:95%}.md-flex-medium-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-medium-100{margin-left:100%}.md-align-medium-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-medium-center{-ms-flex-pack:center;justify-content:center}.md-align-medium-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-medium{display:none}}@media (max-width:600px){.md-row-xsmall{-ms-flex-direction:row;flex-direction:row}.md-column-xsmall{-ms-flex-direction:column;flex-direction:column}.md-flex-xsmall{-ms-flex:1 1;flex:1 1}.md-flex-xsmall-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-xsmall-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-xsmall-33{margin-left:33.33333%}.md-flex-offset-xsmall-66{margin-left:66.66666%}.md-flex-xsmall-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-xsmall-5{margin-left:5%}.md-flex-xsmall-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-xsmall-10{margin-left:10%}.md-flex-xsmall-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-xsmall-15{margin-left:15%}.md-flex-xsmall-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-xsmall-20{margin-left:20%}.md-flex-xsmall-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-xsmall-25{margin-left:25%}.md-flex-xsmall-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-xsmall-30{margin-left:30%}.md-flex-xsmall-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-xsmall-35{margin-left:35%}.md-flex-xsmall-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-xsmall-40{margin-left:40%}.md-flex-xsmall-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-xsmall-45{margin-left:45%}.md-flex-xsmall-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-xsmall-50{margin-left:50%}.md-flex-xsmall-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-xsmall-55{margin-left:55%}.md-flex-xsmall-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-xsmall-60{margin-left:60%}.md-flex-xsmall-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-xsmall-65{margin-left:65%}.md-flex-xsmall-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-xsmall-70{margin-left:70%}.md-flex-xsmall-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-xsmall-75{margin-left:75%}.md-flex-xsmall-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-xsmall-80{margin-left:80%}.md-flex-xsmall-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-xsmall-85{margin-left:85%}.md-flex-xsmall-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-xsmall-90{margin-left:90%}.md-flex-xsmall-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-xsmall-95{margin-left:95%}.md-flex-xsmall-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-xsmall-100{margin-left:100%}.md-align-xsmall-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-xsmall-center{-ms-flex-pack:center;justify-content:center}.md-align-xsmall-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-xsmall{display:none}}@media (min-width:1265px){.md-row-large-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-large-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-large-and-up{-ms-flex:1 1;flex:1 1}.md-flex-large-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-large-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-large-and-up-33{margin-left:33.33333%}.md-flex-offset-large-and-up-66{margin-left:66.66666%}.md-flex-large-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-large-and-up-5{margin-left:5%}.md-flex-large-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-large-and-up-10{margin-left:10%}.md-flex-large-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-large-and-up-15{margin-left:15%}.md-flex-large-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-large-and-up-20{margin-left:20%}.md-flex-large-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-large-and-up-25{margin-left:25%}.md-flex-large-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-large-and-up-30{margin-left:30%}.md-flex-large-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-large-and-up-35{margin-left:35%}.md-flex-large-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-large-and-up-40{margin-left:40%}.md-flex-large-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-large-and-up-45{margin-left:45%}.md-flex-large-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-large-and-up-50{margin-left:50%}.md-flex-large-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-large-and-up-55{margin-left:55%}.md-flex-large-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-large-and-up-60{margin-left:60%}.md-flex-large-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-large-and-up-65{margin-left:65%}.md-flex-large-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-large-and-up-70{margin-left:70%}.md-flex-large-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-large-and-up-75{margin-left:75%}.md-flex-large-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-large-and-up-80{margin-left:80%}.md-flex-large-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-large-and-up-85{margin-left:85%}.md-flex-large-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-large-and-up-90{margin-left:90%}.md-flex-large-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-large-and-up-95{margin-left:95%}.md-flex-large-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-large-and-up-100{margin-left:100%}.md-align-large-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-large-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-large-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-large-and-up{display:none}}@media (min-width:945px){.md-row-medium-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-medium-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-medium-and-up{-ms-flex:1 1;flex:1 1}.md-flex-medium-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-medium-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-medium-and-up-33{margin-left:33.33333%}.md-flex-offset-medium-and-up-66{margin-left:66.66666%}.md-flex-medium-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-medium-and-up-5{margin-left:5%}.md-flex-medium-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-medium-and-up-10{margin-left:10%}.md-flex-medium-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-medium-and-up-15{margin-left:15%}.md-flex-medium-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-medium-and-up-20{margin-left:20%}.md-flex-medium-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-medium-and-up-25{margin-left:25%}.md-flex-medium-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-medium-and-up-30{margin-left:30%}.md-flex-medium-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-medium-and-up-35{margin-left:35%}.md-flex-medium-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-medium-and-up-40{margin-left:40%}.md-flex-medium-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-medium-and-up-45{margin-left:45%}.md-flex-medium-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-medium-and-up-50{margin-left:50%}.md-flex-medium-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-medium-and-up-55{margin-left:55%}.md-flex-medium-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-medium-and-up-60{margin-left:60%}.md-flex-medium-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-medium-and-up-65{margin-left:65%}.md-flex-medium-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-medium-and-up-70{margin-left:70%}.md-flex-medium-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-medium-and-up-75{margin-left:75%}.md-flex-medium-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-medium-and-up-80{margin-left:80%}.md-flex-medium-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-medium-and-up-85{margin-left:85%}.md-flex-medium-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-medium-and-up-90{margin-left:90%}.md-flex-medium-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-medium-and-up-95{margin-left:95%}.md-flex-medium-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-medium-and-up-100{margin-left:100%}.md-align-medium-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-medium-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-medium-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-medium-and-up{display:none}}@media (min-width:601px){.md-row-small-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-small-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-small-and-up{-ms-flex:1 1;flex:1 1}.md-flex-small-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-small-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-small-and-up-33{margin-left:33.33333%}.md-flex-offset-small-and-up-66{margin-left:66.66666%}.md-flex-small-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-small-and-up-5{margin-left:5%}.md-flex-small-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-small-and-up-10{margin-left:10%}.md-flex-small-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-small-and-up-15{margin-left:15%}.md-flex-small-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-small-and-up-20{margin-left:20%}.md-flex-small-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-small-and-up-25{margin-left:25%}.md-flex-small-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-small-and-up-30{margin-left:30%}.md-flex-small-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-small-and-up-35{margin-left:35%}.md-flex-small-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-small-and-up-40{margin-left:40%}.md-flex-small-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-small-and-up-45{margin-left:45%}.md-flex-small-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-small-and-up-50{margin-left:50%}.md-flex-small-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-small-and-up-55{margin-left:55%}.md-flex-small-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-small-and-up-60{margin-left:60%}.md-flex-small-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-small-and-up-65{margin-left:65%}.md-flex-small-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-small-and-up-70{margin-left:70%}.md-flex-small-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-small-and-up-75{margin-left:75%}.md-flex-small-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-small-and-up-80{margin-left:80%}.md-flex-small-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-small-and-up-85{margin-left:85%}.md-flex-small-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-small-and-up-90{margin-left:90%}.md-flex-small-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-small-and-up-95{margin-left:95%}.md-flex-small-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-small-and-up-100{margin-left:100%}.md-align-small-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-small-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-small-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-small-and-up{display:none}}@media (min-width:300px){.md-row-xsmall-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-xsmall-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-xsmall-and-up{-ms-flex:1 1;flex:1 1}.md-flex-xsmall-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-xsmall-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-xsmall-and-up-33{margin-left:33.33333%}.md-flex-offset-xsmall-and-up-66{margin-left:66.66666%}.md-flex-xsmall-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-xsmall-and-up-5{margin-left:5%}.md-flex-xsmall-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-xsmall-and-up-10{margin-left:10%}.md-flex-xsmall-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-xsmall-and-up-15{margin-left:15%}.md-flex-xsmall-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-xsmall-and-up-20{margin-left:20%}.md-flex-xsmall-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-xsmall-and-up-25{margin-left:25%}.md-flex-xsmall-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-xsmall-and-up-30{margin-left:30%}.md-flex-xsmall-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-xsmall-and-up-35{margin-left:35%}.md-flex-xsmall-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-xsmall-and-up-40{margin-left:40%}.md-flex-xsmall-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-xsmall-and-up-45{margin-left:45%}.md-flex-xsmall-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-xsmall-and-up-50{margin-left:50%}.md-flex-xsmall-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-xsmall-and-up-55{margin-left:55%}.md-flex-xsmall-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-xsmall-and-up-60{margin-left:60%}.md-flex-xsmall-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-xsmall-and-up-65{margin-left:65%}.md-flex-xsmall-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-xsmall-and-up-70{margin-left:70%}.md-flex-xsmall-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-xsmall-and-up-75{margin-left:75%}.md-flex-xsmall-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-xsmall-and-up-80{margin-left:80%}.md-flex-xsmall-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-xsmall-and-up-85{margin-left:85%}.md-flex-xsmall-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-xsmall-and-up-90{margin-left:90%}.md-flex-xsmall-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-xsmall-and-up-95{margin-left:95%}.md-flex-xsmall-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-xsmall-and-up-100{margin-left:100%}.md-align-xsmall-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-xsmall-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-xsmall-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-xsmall-and-up{display:none}}.md-list{margin:0;padding:8px 0;display:-ms-flexbox;display:flex;-ms-flex-flow:column nowrap;flex-flow:column nowrap;position:relative;list-style:none}.md-list.md-dense{padding:4px 0}.md-list.md-dense .md-list-item.md-inset .md-list-item-container{padding-left:72px}.md-list.md-dense .md-list-item .md-list-item-container{min-height:40px;font-size:13px}.md-list.md-dense .md-list-item .md-list-item-container .md-avatar:first-child,.md-list.md-dense .md-list-item .md-list-item-container .md-list-action:first-child{margin-right:24px}.md-list.md-dense .md-avatar{width:32px;min-width:32px;height:32px;min-height:32px}.md-list.md-dense .md-list-item-expand{min-height:40px}.md-list.md-double-line.md-dense .md-list-item .md-list-item-container{min-height:60px}.md-list.md-double-line.md-dense .md-list-item .md-avatar{width:36px;min-width:36px;height:36px;min-height:36px}.md-list.md-double-line.md-dense .md-list-item .md-avatar .md-avatar:first-child,.md-list.md-double-line.md-dense .md-list-item .md-avatar .md-list-action:first-child{margin-right:20px}.md-list.md-double-line.md-dense .md-list-text-container>:first-child,.md-list.md-double-line.md-dense .md-list-text-container>:nth-child(2){font-size:13px}.md-list.md-double-line .md-list-item .md-list-item-container{min-height:72px}.md-list.md-triple-line.md-dense .md-list-item .md-list-item-container{min-height:76px}.md-list.md-triple-line.md-dense .md-list-item .md-avatar{width:36px;min-width:36px;height:36px;min-height:36px}.md-list.md-triple-line.md-dense .md-list-item .md-avatar .md-avatar:first-child,.md-list.md-triple-line.md-dense .md-list-item .md-avatar .md-list-action:first-child{margin-right:20px}.md-list.md-triple-line.md-dense .md-list-text-container>:first-child,.md-list.md-triple-line.md-dense .md-list-text-container>:nth-child(2){font-size:13px}.md-list.md-triple-line .md-list-item .md-list-item-container{min-height:88px}.md-list.md-triple-line .md-avatar{margin:0}.md-list .md-subheader.md-inset{padding-left:72px}.md-list>.md-subheader:first-of-type{margin-top:-8px}.md-list-item{height:auto;position:relative;z-index:2}.md-list-item.md-disabled{cursor:default;pointer-events:none}.md-list-item.md-inset .md-list-item-container{padding-left:72px}.md-list-item .md-button-ghost{width:100%;margin:0;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:0}.md-list-item .md-button:not(.md-button-ghost):not(.md-list-item-container){position:relative;z-index:2}.md-list-item .md-button:not(.md-button-ghost):not(.md-list-item-container) .md-icon{position:relative}.md-list-item .md-list-item-container{min-height:48px;margin:0;padding:0 16px;display:-ms-flexbox;display:flex;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;-ms-flex:1;flex:1;position:relative;font-size:16px;font-weight:400;text-align:left;text-transform:none}.md-list-item .md-list-item-container:hover{text-decoration:none}.md-list-item .md-list-item-container>.md-icon:first-child{margin-right:32px}.md-list-item .md-list-item-container .md-avatar:first-child,.md-list-item .md-list-item-container .md-list-action:first-child{margin-right:16px}.md-list-item .md-list-item-container .md-list-action{margin:0 -10px 0 0}.md-list-item .md-list-item-container .md-list-action:nth-child(3){margin:0 -10px 0 16px}.md-list-item .md-divider{position:absolute;bottom:0;right:0;left:0}.md-list-item .md-avatar,.md-list-item .md-icon,.md-list-item .md-list-action:first-child{margin:0}.md-list-item .md-avatar:first-of-type+*,.md-list-item .md-icon:first-of-type+*,.md-list-item .md-list-action:first-child:first-of-type+*{-ms-flex:1 1 auto;flex:1 1 auto}.md-list-item .md-avatar{margin-top:8px;margin-bottom:8px}.md-list-item .md-icon{color:rgba(0,0,0,.54)}.md-list-item .md-ink-ripple{border-radius:0}.md-list-item-expand{min-height:48px;-ms-flex-flow:column wrap;flex-flow:column wrap;overflow:hidden;transform:translate3D(0,0,0)}.md-list-item-expand:after,.md-list-item-expand:before{height:1px;position:absolute;right:0;left:0;z-index:3;transition:all .4s cubic-bezier(.25,.8,.25,1);content:\\\" \\\"}.md-list-item-expand:before{top:0}.md-list-item-expand:after{bottom:0}.md-list-item-expand.md-active{position:relative}.md-list-item-expand.md-active:after,.md-list-item-expand.md-active:before{background-color:rgba(0,0,0,.12)}.md-list-item-expand.md-active.md-active+.md-active:before,.md-list-item-expand.md-active:first-of-type:before,.md-list-item-expand.md-active:last-of-type:after{background:none}.md-list-item-expand.md-active>.md-list-item-container .md-list-expand-indicator{transform:rotate(180deg) translate3D(0,0,0)}.md-list-item-expand.md-active>.md-list-expand{margin-bottom:0!important}.md-list-item-expand .md-expansion-indicator,.md-list-item-expand .md-icon,.md-list-item-expand .md-list-item-container{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-list-item-expand .md-list-expand{position:relative;z-index:1;transform:translate3D(0,0,0);will-change:margin-bottom;transition:all .5s cubic-bezier(.35,0,.25,1)}.md-list-item-expand .md-list-expand.md-transition-off{transition:none!important}.md-list-item-expand .md-list-expand .md-list{padding:0}.md-list-text-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-ms-flex:1;flex:1;overflow:hidden;line-height:1.25em;white-space:normal}.md-list-text-container>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-list-text-container>:first-child{font-size:16px}.md-list-text-container>:nth-child(2),.md-list-text-container>:nth-child(3){margin:0;color:rgba(0,0,0,.54);font-size:14px}.md-list-text-container>:nth-child(2):not(:last-child){color:rgba(0,0,0,.87)}.md-menu{display:inline-block}.md-menu-content{width:168px;min-width:84px;max-width:392px;min-height:64px;max-height:calc(100vh - 32px);overflow-x:hidden;overflow-y:auto;position:absolute;z-index:131;transform:scale(.9,.85) translateZ(0);border-radius:2px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);opacity:0;transition:width .4s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.55,0,.55,.2),margin .3s cubic-bezier(.55,0,.55,.2),transform 0s cubic-bezier(.55,0,.55,.2) .4s;will-change:transform,opacity,width}.md-menu-content.md-direction-bottom-right{margin-top:-20px;margin-left:-8px;transform-origin:top left}.md-menu-content.md-direction-bottom-right.md-active{margin-top:-11px}.md-menu-content.md-direction-bottom-left{margin-top:-20px;margin-left:8px;transform-origin:top right}.md-menu-content.md-direction-bottom-left.md-active{margin-top:-11px}.md-menu-content.md-direction-top-right{margin-top:20px;margin-left:-8px;transform-origin:bottom left}.md-menu-content.md-direction-top-right.md-active{margin-top:11px}.md-menu-content.md-direction-top-left{margin-top:20px;margin-left:8px;transform-origin:bottom right}.md-menu-content.md-direction-top-left.md-active{margin-top:11px}.md-menu-content.md-align-trigger{margin:0}.md-menu-content.md-size-1{width:84px}.md-menu-content.md-size-2{width:112px}.md-menu-content.md-size-3{width:168px}.md-menu-content.md-size-4{width:224px}.md-menu-content.md-size-5{width:280px}.md-menu-content.md-size-6{width:336px}.md-menu-content.md-size-7{width:392px}.md-menu-content.md-active{pointer-events:auto;opacity:1;transform:scale(1) translateZ(0);transition:width .4s cubic-bezier(.25,.8,.25,1),opacity .4s cubic-bezier(.25,.8,.25,1),transform .3s cubic-bezier(.25,.8,.25,1)}.md-menu-content.md-active .md-list{opacity:1;transition:opacity .3s cubic-bezier(.25,.8,.25,1)}.md-menu-content .md-list{opacity:0;transition:opacity .3s cubic-bezier(.25,.8,.25,1)}.md-menu-item{cursor:pointer;font-size:16px;line-height:1.2em}.md-menu-item[disabled]{cursor:default}.md-menu-item .md-list-item-holder{overflow:hidden;text-overflow:ellipsis}.md-menu-backdrop{z-index:130}.md-boards{width:100%;height:100%!important;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;position:relative}.md-boards.md-transition-off *{transition:none!important}.md-boards.md-dynamic-height .md-boards-content{transition:height .4s cubic-bezier(.25,.8,.25,1)}.md-boards .md-boards-navigation{bottom:0;width:100%;height:48px;min-height:48px;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.md-boards .md-board-header,.md-boards .md-boards-navigation{position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-boards .md-board-header{min-width:24px;max-width:24px;margin:0;padding:0 12px;display:inline-block;cursor:pointer;border:0;background:none;font-family:inherit;font-size:14px;font-weight:500;text-transform:uppercase}.md-boards .md-board-header.md-disabled{cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-boards .md-board-header-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.md-boards .md-board-header-container .md-icon{margin:0}.md-boards .md-board-header-container .md-icon:not(.md-control){width:16px;min-width:16px;height:16px;min-height:16px;font-size:16px}.md-boards .md-boards-content{width:100%;position:relative;overflow:hidden}.md-boards .md-boards-wrapper{width:9999em;height:100%!important;position:absolute;top:0;right:0;bottom:0;left:0;transform:translateZ(0);transition:transform .4s cubic-bezier(.25,.8,.25,1)}.md-boards .md-board{padding:16px;position:absolute;top:0;left:0;right:0}.md-progress{width:100%;height:4px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-progress.md-indeterminate .md-progress-track{right:0}.md-progress.md-indeterminate .md-progress-track:after,.md-progress.md-indeterminate .md-progress-track:before{position:absolute;top:0;bottom:0;left:0;will-change:left,right;content:\\\"\\\"}.md-progress.md-indeterminate .md-progress-track:before{animation:progress-indeterminate 2.3s cubic-bezier(.65,.815,.735,.395) infinite}.md-progress.md-indeterminate .md-progress-track:after{animation:progress-indeterminate-short 2.3s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.md-progress.md-progress-enter,.md-progress.md-progress-leave-active{opacity:0;transform:scaleY(0) translateZ(0)}.md-progress.md-progress-enter-active{transform:scaleY(1) translateZ(0)}.md-progress-track{position:absolute;top:0;bottom:0;left:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}@keyframes progress-indeterminate{0%{right:100%;left:-35%}60%{right:-100%;left:100%}to{right:-100%;left:100%}}@keyframes progress-indeterminate-short{0%{right:100%;left:-200%}60%{right:-8%;left:107%}to{right:-8%;left:107%}}.md-radio{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-radio:not(.md-disabled),.md-radio:not(.md-disabled) .md-radio-label{cursor:pointer}.md-radio .md-radio-container{width:20px;height:20px;position:relative;border-radius:50%;border:2px solid rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-radio .md-radio-container:before{width:48px;height:48px;top:50%;left:50%;transform:translate(-50%,-50%)}.md-radio .md-radio-container:after,.md-radio .md-radio-container:before{position:absolute;border-radius:50%;transition:all .3s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-radio .md-radio-container:after{top:3px;right:3px;bottom:3px;left:3px;opacity:0;transform:scale3D(.38,.38,1)}.md-radio .md-radio-container input{position:absolute;left:-999em}.md-radio .md-radio-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-radio .md-radio-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-radio .md-radio-label{height:20px;padding-left:8px;line-height:20px}.md-radio.md-checked .md-radio-container:after{opacity:1;transform:scale3D(1,1,1);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-rating-bar{width:auto;display:-ms-flexbox;display:flex;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:3px;border-radius:2px}.md-rating-bar>.md-full-icon{overflow-x:hidden;display:inherit}.md-rating-bar>.md-empty-icon>.md-icon,.md-rating-bar>.md-full-icon>.md-icon{margin:0;white-space:nowrap;cursor:pointer}.md-rating-bar:not([disabled]):hover{background-color:hsla(0,0%,60%,.2)}.md-rating-bar[disabled]>.md-empty-icon>.md-icon,.md-rating-bar[disabled]>.md-full-icon>.md-icon{cursor:default}.md-select{width:100%;min-width:128px;height:32px;position:relative}.md-select:focus{outline:none}.md-select:not(.md-select-icon):after{margin-top:2px;position:absolute;top:50%;right:0;transform:translateY(-50%) scaleY(.45) scaleX(.85);transition:all .15s linear;content:\\\"\\\\25BC\\\"}.md-select.md-active .md-select-menu{top:-8px;pointer-events:auto;opacity:1;transform:translateY(-8px) scale3D(1,1,1);transform-origin:center top;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.25s;transition-property:opacity,transform,top}.md-select.md-active .md-select-menu>*{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.15s;transition-delay:.1s}.md-select.md-disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;user-drag:none}.md-select.md-disabled input,.md-select.md-disabled label,.md-select.md-disabled span,.md-select.md-disabled textarea{color:rgba(0,0,0,.38)}.md-select select{position:absolute;left:-999em}.md-select .md-menu,.md-select .md-select-value{width:100%;height:32px;display:block;position:relative}.md-select .md-select-value{padding-right:24px;cursor:pointer;overflow:hidden;z-index:2;font-size:16px;line-height:33px;text-overflow:ellipsis;white-space:nowrap}.md-select .md-subheader{color:hsla(0,0%,46%,.87);text-transform:uppercase}.md-select .md-subheader:first-child{margin-top:-8px}.md-select-content{width:auto;max-height:256px}.md-select-content.md-direction-bottom-right{margin-top:-15px;margin-left:-16px}.md-select-content .md-option[disabled]{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;user-drag:none}.md-select-content .md-menu-item .md-list-item-holder{overflow:visible;-ms-flex-pack:start;justify-content:flex-start}.md-select-content.md-multiple .md-checkbox{margin:0}.md-select-content.md-multiple .md-checkbox-label{padding-left:16px;cursor:pointer}.md-sidenav.md-left .md-sidenav-content{left:0;transform:translate3D(-100%,0,0)}.md-sidenav.md-right .md-sidenav-content{right:0;transform:translate3D(100%,0,0)}.md-sidenav.md-fixed .md-sidenav-backdrop,.md-sidenav.md-fixed .md-sidenav-content{position:fixed}.md-sidenav .md-sidenav-content{width:304px;position:absolute;top:0;bottom:0;z-index:100;pointer-events:none;overflow:auto;-webkit-overflow-scrolling:touch;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:transform;will-change:transform}.md-sidenav .md-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:99;pointer-events:none;background-color:rgba(0,0,0,.54);opacity:0;transition:all .5s cubic-bezier(.35,0,.25,1);transition-property:opacity;will-change:opacity}.md-sidenav.md-active .md-sidenav-content{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12);pointer-events:auto;transform:translate3D(0,0,0)}.md-sidenav.md-active .md-sidenav-backdrop{opacity:1;pointer-events:auto}.md-snackbar{display:-ms-flexbox;display:flex;position:fixed;right:0;left:0;z-index:120;pointer-events:none;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:margin-top,margin-bottom}.md-snackbar.md-position-bottom-center,.md-snackbar.md-position-top-center{-ms-flex-pack:center;justify-content:center}.md-snackbar.md-position-bottom-right,.md-snackbar.md-position-top-right{margin-right:24px;-ms-flex-pack:end;justify-content:flex-end}.md-snackbar.md-position-bottom-left,.md-snackbar.md-position-top-left{margin-left:24px;-ms-flex-pack:start;justify-content:flex-start}.md-snackbar.md-position-top-center,.md-snackbar.md-position-top-left,.md-snackbar.md-position-top-right{margin-top:24px}.md-snackbar.md-position-bottom-left,.md-snackbar.md-position-bottom-right{margin-bottom:24px}.md-snackbar.md-position-top-center,.md-snackbar.md-position-top-left,.md-snackbar.md-position-top-right{top:0}.md-snackbar.md-position-top-center .md-snackbar-container,.md-snackbar.md-position-top-left .md-snackbar-container,.md-snackbar.md-position-top-right .md-snackbar-container{transform:translate3D(0,calc(-100% - 24px),0)}.md-snackbar.md-position-bottom-center,.md-snackbar.md-position-bottom-left,.md-snackbar.md-position-bottom-right{bottom:0}.md-snackbar.md-position-bottom-center .md-snackbar-container,.md-snackbar.md-position-bottom-left .md-snackbar-container,.md-snackbar.md-position-bottom-right .md-snackbar-container{transform:translate3D(0,calc(100% + 24px),0)}.md-snackbar.md-active .md-snackbar-container{transform:translate3D(0,0,0)}.md-snackbar.md-active .md-snackbar-content{opacity:1;transition:opacity .4s cubic-bezier(.25,.8,.25,1) .1s}.md-snackbar .md-snackbar-content{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;opacity:0;transition:opacity .2s cubic-bezier(.25,.8,.25,1);will-change:opacity}.md-snackbar .md-button{min-width:64px;margin:-8px -16px}.md-snackbar .md-button:last-child{margin-left:48px}.md-snackbar-container{width:auto;min-width:288px;max-width:568px;min-height:48px;padding:14px 24px;overflow:hidden;pointer-events:auto;border-radius:2px;background-color:#323232;transition:all .4s cubic-bezier(.25,.8,.25,1);color:#fff;font-size:14px}.md-has-toast-top-right .md-fab.md-fab-top-right{transform:translate3D(0,68px,0)}.md-has-toast-top-center .md-fab.md-fab-top-center{transform:translate3D(-50%,68px,0)}.md-has-toast-top-left .md-fab.md-fab-top-left{transform:translate3D(0,68px,0)}.md-has-toast-bottom-right .md-fab.md-fab-bottom-right{transform:translate3D(0,-68px,0)}.md-has-toast-bottom-center .md-fab.md-fab-bottom-center{transform:translate3D(-50%,-68px,0)}.md-has-toast-bottom-left .md-fab.md-fab-bottom-left{transform:translate3D(0,-68px,0)}@media (max-width:600px){.md-snackbar{margin:0!important}.md-snackbar-container{width:100%;max-width:100%;border-radius:0}.md-has-toast-top-right .md-fab.md-fab-top-right{transform:translate3D(0,48px,0)}.md-has-toast-top-center .md-fab.md-fab-top-center{transform:translate3D(-50%,48px,0)}.md-has-toast-top-left .md-fab.md-fab-top-left{transform:translate3D(0,48px,0)}.md-has-toast-bottom-right .md-fab.md-fab-bottom-right{transform:translate3D(0,-48px,0)}.md-has-toast-bottom-center .md-fab.md-fab-bottom-center{transform:translate3D(-50%,-48px,0)}.md-has-toast-bottom-left .md-fab.md-fab-bottom-left{transform:translate3D(0,-48px,0)}}.md-speed-dial{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.md-speed-dial.md-direction-top.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(0,80%,0)}.md-speed-dial.md-direction-top [md-fab-trigger]{margin-top:8px}.md-speed-dial.md-direction-top [md-fab-trigger]~.md-button{margin-bottom:16px}.md-speed-dial.md-direction-right{-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center}.md-speed-dial.md-direction-right.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(-80%,0,0)}.md-speed-dial.md-direction-right [md-fab-trigger]{margin-right:8px}.md-speed-dial.md-direction-right [md-fab-trigger]~.md-button{margin-left:16px}.md-speed-dial.md-direction-bottom{-ms-flex-direction:column;flex-direction:column}.md-speed-dial.md-direction-bottom.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(0,-80%,0)}.md-speed-dial.md-direction-bottom [md-fab-trigger]{margin-bottom:8px}.md-speed-dial.md-direction-bottom [md-fab-trigger]~.md-button{margin-top:16px}.md-speed-dial.md-direction-left{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:center;justify-content:center}.md-speed-dial.md-direction-left.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(80%,0,0)}.md-speed-dial.md-direction-left [md-fab-trigger]{margin-left:8px}.md-speed-dial.md-direction-left [md-fab-trigger]~.md-button{margin-right:16px}.md-speed-dial.md-mode-scale [md-fab-trigger]~.md-button{transform:scale(.6)}.md-speed-dial.md-active [md-fab-trigger]~.md-button{opacity:1;pointer-events:auto;transform:translate3D(0,0,0)!important}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(2){transition-delay:.05s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(3){transition-delay:.1s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(4){transition-delay:.15s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(5){transition-delay:.2s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(6){transition-delay:.25s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(7){transition-delay:.3s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(8){transition-delay:.35s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(9){transition-delay:.4s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(10){transition-delay:.45s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(11){transition-delay:.5s}.md-speed-dial.md-active [md-fab-trigger] [md-icon-morph]{transform:rotate(0);opacity:1}.md-speed-dial.md-active [md-fab-trigger] [md-icon-morph]+.md-icon{transform:rotate(90deg) scale(.8);opacity:0}.md-speed-dial .md-button{margin:0}.md-speed-dial [md-fab-trigger]{position:relative;z-index:2}.md-speed-dial [md-fab-trigger]~.md-button{position:relative;z-index:1;opacity:0;pointer-events:none;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(2){transition-delay:.05s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(3){transition-delay:.1s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(4){transition-delay:.15s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(5){transition-delay:.2s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(6){transition-delay:.25s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(7){transition-delay:.3s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(8){transition-delay:.35s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(9){transition-delay:.4s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(10){transition-delay:.45s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(11){transition-delay:.5s}.md-speed-dial [md-icon-morph],.md-speed-dial [md-icon-morph]+.md-icon{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-speed-dial [md-icon-morph]{opacity:0;transform:rotate(-90deg) scale(.8)}.md-spinner{display:inline-block;position:relative;pointer-events:none;will-change:transform,opacity}.md-spinner.md-indeterminate .md-spinner-draw{animation:spinner-rotate 1.9s linear infinite;transform:rotate(0deg) translateZ(0)}.md-spinner.md-indeterminate .md-spinner-path{stroke-dasharray:2,200;animation:spinner-dash 1.425s ease-in-out infinite}.md-spinner.md-spinner-leave-active{opacity:0;transform:scale(.8) translateZ(0);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-spinner:not(.md-indeterminate).md-spinner-enter-active{transition-duration:2s}.md-spinner:not(.md-indeterminate).md-spinner-enter-active .md-spinner-draw{animation:spinner-initial-rotate 1.98s cubic-bezier(.25,.8,.25,1) forwards}.md-spinner-draw{width:100%;height:100%;margin:auto;position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(270deg) translateZ(0);transform-origin:center center;will-change:transform,opacity}.md-spinner-path{fill:none;stroke-dashoffset:0;stroke-miterlimit:10;transition:all .4s cubic-bezier(.25,.8,.25,1)}@keyframes spinner-rotate{to{transform:rotate(1turn) translateZ(0)}}@keyframes spinner-initial-rotate{0%{opacity:0;transform:rotate(-90deg) translateZ(0)}20%{opacity:1}to{transform:rotate(270deg) translateZ(0)}}@keyframes spinner-dash{0%{stroke-dasharray:2,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.md-stepper{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;position:relative;width:100%}.md-stepper .md-step-header{background:none;border:0;cursor:pointer;-ms-flex-negative:0;flex-shrink:0;font-family:inherit;font-size:12px;font-weight:500;margin:0;max-height:72px;padding:24px;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-stepper .md-step-header .md-step-icons,.md-stepper .md-step-header .md-step-titles{display:inline-block;vertical-align:middle}.md-stepper .md-step-header.md-has-sub-message{padding:15px 24px}.md-stepper .md-step-header.md-has-sub-message .md-step-title{margin-bottom:-4px}.md-stepper .md-step-header .md-step-icon{border-radius:50%;font-size:12px;padding:0 6px}.md-stepper .md-step-header .md-step-error,.md-stepper .md-step-header .md-step-icon{height:24px;line-height:24px;margin-right:8px;min-width:24px;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:24px}.md-stepper .md-step-header .md-step-number{border-radius:50%;display:inline-block;font-size:12px;margin-right:8px;width:24px}.md-stepper .md-step-header .md-step-number span{display:block;line-height:24px;text-align:center}.md-stepper .md-step-header .md-step-title{font-size:inherit}.md-stepper .md-step-header.md-disabled{cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-stepper .md-steps-navigation{display:-ms-flexbox;display:flex;height:72px;min-height:72px;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);z-index:1}.md-stepper .md-steps-navigation.md-alternate-labels{height:104px;min-height:104px}.md-stepper .md-steps-navigation .md-steps-navigation-container{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;width:100%}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-divider{margin:36px 0;position:relative;width:100%}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels{max-height:104px;text-align:center}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels.md-has-sub-message{padding:24px}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels .md-step-icons,.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels .md-step-titles{display:block}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels .md-step-titles{margin-top:10px}.md-stepper .md-steps-container{height:0;overflow:hidden;position:relative;width:100%}.md-stepper .md-steps-container .md-steps-wrapper{bottom:0;left:0;position:absolute;right:0;top:0;transform:translateZ(0);transition:transform .4s cubic-bezier(.25,.8,.25,1);width:9999em}.md-stepper .md-steps-container .md-steps-wrapper .md-step{left:0;padding:16px;position:absolute;right:0;top:0}.md-stepper .md-steps-container .md-steps-wrapper .md-step .md-step-content{padding:16px;font-size:14px;line-height:22px}.md-stepper .md-steps-container .md-steps-wrapper .md-step .md-step-content:last-child{padding-bottom:24px}.md-stepper .md-steps-vertical-container .md-step .md-step-header{padding-bottom:8px}.md-stepper .md-steps-vertical-container .md-step:not(:first-of-type) .md-step-header{padding-top:8px}.md-stepper .md-steps-vertical-container .md-step .md-step-content{margin:0 24px 0 34px;padding-bottom:32px;padding-left:24px;padding-top:8px}.md-stepper .md-steps-vertical-container .md-step:not(:last-of-type) .md-step-content{border-left:1px solid #bdbdbd}@media (min-width:601px){.md-stepper .md-steps-navigation .md-steps-navigation-container{margin-bottom:-15px}}.md-subheader{min-height:48px;padding:0 16px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-flow:row wrap;flex-flow:row wrap;color:rgba(0,0,0,.54);font-size:14px;font-weight:500}.md-switch{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-switch .md-switch-container{width:34px;height:14px;position:relative;border-radius:14px;transition:all .4s cubic-bezier(.25,.8,.25,1);background-color:rgba(0,0,0,.38)}.md-switch .md-switch-container .md-switch-thumb{width:20px;height:20px;position:absolute;top:50%;left:0;background-color:#fafafa;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:all .15s linear}.md-switch .md-switch-container input{position:absolute;left:-999em}.md-switch .md-switch-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-switch .md-switch-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-switch .md-switch-container .md-switch-holder{width:40px;height:40px;margin:0;padding:0;position:absolute;top:50%;left:50%;z-index:2;background:none;border:none;transform:translate(-50%,-50%)}.md-switch .md-switch-container .md-switch-holder:focus{outline:none}.md-switch .md-switch-label{height:14px;padding-left:8px;line-height:14px}.md-switch.md-dragging .md-switch-thumb{cursor:grabbing}.md-switch.md-disabled .md-switch-thumb{cursor:default}.md-table{display:-ms-flexbox;display:flex;-ms-flex-flow:column wrap;flex-flow:column wrap;overflow-x:auto}.md-table.md-transition-off .md-checkbox .md-checkbox-container,.md-table.md-transition-off .md-checkbox .md-checkbox-container:after,.md-table.md-transition-off .md-table-cell{transition:none!important}.md-table table{width:100%;border-spacing:0;border-collapse:collapse;overflow:hidden}.md-table tbody .md-table-row{border-top:1px solid #e0e0e0}.md-table tbody .md-table-row.md-selected .md-table-cell{background-color:#f5f5f5}.md-table tbody .md-table-row:hover .md-table-cell{background-color:#eee}.md-table .md-table-head{padding:0;position:relative;color:rgba(0,0,0,.54);font-size:12px;line-height:16px;text-align:left}.md-table .md-table-head:last-child .md-table-head-container .md-table-head-text{padding-right:24px}.md-table .md-table-head.md-numeric{text-align:right}.md-table .md-table-head .md-icon{width:16px;min-width:16px;height:16px;min-height:16px;font-size:16px;color:rgba(0,0,0,.54)}.md-table .md-table-head .md-icon:not(.md-sortable-icon){margin:0 4px}.md-table .md-table-head .md-icon:first-child{margin-left:0}.md-table .md-table-head .md-icon:last-child{margin-right:0}.md-table .md-table-head-container{height:56px;padding:14px 0;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-table .md-table-head-text{height:28px;padding-right:32px;padding-left:24px;display:inline-block;position:relative;overflow:hidden;line-height:28px;text-overflow:ellipsis;white-space:nowrap}.md-table .md-sortable{cursor:pointer}.md-table .md-sortable:first-of-type .md-sortable-icon{left:auto;right:10px}.md-table .md-sortable.md-sorted,.md-table .md-sortable:hover{color:rgba(0,0,0,.87)}.md-table .md-sortable.md-sorted .md-sortable-icon,.md-table .md-sortable:hover .md-sortable-icon{opacity:1}.md-table .md-sortable.md-sorted .md-sortable-icon{color:rgba(0,0,0,.87)}.md-table .md-sortable.md-sorted-descending .md-sortable-icon{transform:translateY(-50%) rotate(180deg)}.md-table .md-sortable .md-sortable-icon{position:absolute;top:50%;left:2px;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translateY(-50%);opacity:0;color:rgba(0,0,0,.38)}.md-table .md-sortable .md-ink-ripple{color:rgba(0,0,0,.87)}.md-table .md-table-cell{height:48px;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);color:rgba(0,0,0,.87);font-size:13px;line-height:18px}.md-table .md-table-cell:last-child .md-table-cell-container{padding-right:24px}.md-table .md-table-cell.md-numeric{text-align:right}.md-table .md-table-cell.md-numeric .md-icon{margin:0}.md-table .md-table-cell.md-numeric .md-table-cell-container{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.md-table .md-table-cell.md-numeric .md-table-cell-container .md-button .md-icon,.md-table .md-table-cell.md-numeric .md-table-cell-container .md-icon{margin:auto}.md-table .md-table-cell.md-has-action .md-table-cell-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.md-table .md-table-cell .md-table-cell-container{padding:6px 32px 6px 24px}.md-table .md-table-cell .md-button{width:36px;min-width:36px;height:36px;min-height:36px}.md-table .md-table-cell .md-button:last-child{margin:0 -10px 0 0}.md-table .md-table-cell .md-button .md-icon{margin:auto;width:18px;min-width:18px;height:18px;min-height:18px;color:rgba(0,0,0,.54);font-size:18px}.md-table .md-table-selection{width:60px;position:relative;vertical-align:middle}.md-table .md-table-selection+.md-table-cell .md-table-cell-container,.md-table .md-table-selection+.md-table-head .md-table-head-container .md-table-head-text{padding-left:8px}.md-table .md-table-selection .md-table-cell-container{padding-right:16px;padding-left:24px}.md-table .md-table-selection .md-checkbox{margin:0}.md-table .md-table-selection .md-checkbox-container{width:18px;height:18px;margin-top:1px}.md-table .md-table-selection .md-checkbox-container:after{top:-1px;left:4px}.md-table .md-select{min-width:84px}.md-table .md-option,.md-table .md-select-value{font-size:13px}.md-table-edit-trigger{display:inline-block;cursor:pointer;color:rgba(0,0,0,.38)}.md-table-edit-trigger.md-edited{color:rgba(0,0,0,.87)}.md-table-dialog{max-height:0;margin:0;padding:0 24px 2px;position:absolute;top:0;right:0;left:24px;z-index:60;overflow:hidden;pointer-events:none;border-radius:2px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);background-color:#fff;opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1),max-height 0s .5s;transition-duration:.3s;transform:translate3D(0,-8px,0)}.md-table-dialog.md-active{max-height:400px;pointer-events:auto;transform:translate3D(#000);opacity:1;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s}.md-table-dialog.md-large{padding:12px 24px 2px}.md-table-dialog .md-input-container{margin-top:0;margin-bottom:16px}.md-table-dialog .md-input-container.md-input-placeholder input{font-size:13px}.md-table-dialog .md-input-container.md-input-placeholder input::-webkit-input-placeholder{font-size:13px}.md-table-dialog .md-char-counter{font-size:13.5px;color:rgba(0,0,0,.54)}.md-table-dialog .md-button{min-width:64px}.md-table-card{overflow:visible}.md-table-card .md-toolbar{padding-left:16px;background-color:#fff}.md-table-card .md-title{-ms-flex:1;flex:1;font-size:20px}.md-table-card .md-table-pagination{height:56px;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;border-top:1px solid #e0e0e0;color:rgba(0,0,0,.54);font-size:12px}.md-table-card .md-table-pagination .md-table-pagination-previous{margin-right:2px;margin-left:18px}.md-table-card .md-table-pagination .md-select{width:auto;min-width:36px;margin:0 32px}.md-table-card .md-table-pagination .md-select:after{margin-top:0}.md-table-card .md-table-pagination .md-select .md-select-value{padding:0;border:none;font-size:13px}.md-table-card .md-table-pagination .md-button:not([disabled]){color:rgba(0,0,0,.87)}.md-table-card .md-table-pagination .md-button[disabled] .md-icon{color:rgba(0,0,0,.26)}.md-pagination-select.md-direction-bottom-right{margin-top:-16px}.md-pagination-select .md-list-item-holder{font-size:13px}.md-table-alternate-header{position:absolute;top:0;right:0;left:0;z-index:10;pointer-events:none;opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s}.md-table-alternate-header.md-active{pointer-events:auto;opacity:1;transform:translate3D(#000)}.md-table-alternate-header .md-counter{margin-left:8px;-ms-flex:1;flex:1}.md-tabs{width:100%;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;position:relative}.md-tabs.md-transition-off *{transition:none!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .4s cubic-bezier(.25,.8,.25,1)}.md-tabs .md-tabs-navigation{height:48px;min-height:48px;position:relative;z-index:1;display:-ms-flexbox;display:flex;transition:all .4s cubic-bezier(.25,.8,.25,1);overflow:hidden}.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tab-header-navigation-button.md-left{-ms-flex-order:1;order:1}.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tabs-navigation-container{-ms-flex-order:2;order:2}.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tab-header-navigation-button.md-right{-ms-flex-order:3;order:3}.md-tabs .md-tabs-navigation.md-has-icon.md-has-label{min-height:72px}.md-tabs .md-tabs-navigation.md-has-icon.md-has-label .md-icon{margin-bottom:10px}.md-tabs .md-tabs-navigation.md-centered{-ms-flex-pack:center;justify-content:center}.md-tabs .md-tabs-navigation.md-fixed .md-tabs-navigation-container,.md-tabs .md-tabs-navigation.md-fixed .md-tabs-navigation-scroll-container{-ms-flex:1;flex:1}.md-tabs .md-tabs-navigation.md-fixed .md-tab-header{-ms-flex:1;flex:1;max-width:none}.md-tabs .md-tabs-navigation.md-right{-ms-flex-pack:end;justify-content:flex-end}.md-tabs .md-tabs-navigation-container{display:-ms-flexbox;display:flex;overflow-x:auto}.md-tabs .md-tabs-navigation-scroll-container{display:-ms-flexbox;display:flex}.md-tabs .md-tab-header{min-width:72px;max-width:264px;margin:0;padding:0 12px;position:relative;cursor:pointer;border:0;background:none;transition:all .4s cubic-bezier(.25,.8,.25,1);font-family:inherit;font-size:14px;font-weight:500;text-transform:uppercase;-ms-flex-negative:0;flex-shrink:0}.md-tabs .md-tab-header.md-disabled{cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-tabs .md-tab-header-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.md-tabs .md-tab-header-container .md-icon{margin:0}.md-tabs .md-tab-indicator{height:2px;position:absolute;bottom:0;left:0;transform:translate3D(0,0,0)}.md-tabs .md-tab-indicator.md-transition-off{transition:none!important}.md-tabs .md-tab-indicator.md-to-right{transition:all .4s cubic-bezier(.25,.8,.25,1),left .3s cubic-bezier(.35,0,.25,1),right .15s cubic-bezier(.35,0,.25,1)}.md-tabs .md-tab-indicator.md-to-left{transition:all .4s cubic-bezier(.25,.8,.25,1),right .3s cubic-bezier(.35,0,.25,1),left .15s cubic-bezier(.35,0,.25,1)}.md-tabs .md-tab-header-navigation-button{border:none;height:100%;cursor:pointer;position:relative}.md-tabs .md-tab-header-navigation-button.md-left{left:0}.md-tabs .md-tab-header-navigation-button.md-right{right:0}.md-tabs .md-tab-header-navigation-button.md-disabled{pointer-events:none;opacity:.4}.md-tabs .md-tabs-content{width:100%;height:0;position:relative;overflow:hidden}.md-tabs .md-tabs-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;transform:translateZ(0);transition:transform .4s cubic-bezier(.25,.8,.25,1)}.md-tabs .md-tab{padding:16px;position:absolute;top:0;left:0;right:0}@media (min-width:601px){.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tabs-navigation-container{margin-bottom:-15px}}.md-toolbar{min-height:64px;padding:0 8px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center;-ms-flex-flow:row wrap;flex-flow:row wrap;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate3D(0,0,0)}.md-toolbar.md-dense{min-height:48px}.md-toolbar.md-dense.md-medium{min-height:72px}.md-toolbar.md-dense.md-large{min-height:96px}.md-toolbar.md-dense .md-toolbar-container{height:48px}.md-toolbar.md-medium{min-height:88px}.md-toolbar.md-medium .md-toolbar-container:nth-child(2) .md-title:first-child{margin-left:56px}.md-toolbar.md-large{min-height:128px;-ms-flex-line-pack:inherit;align-content:inherit}.md-toolbar.md-large .md-toolbar-container:nth-child(2) .md-title:first-child{margin-left:56px}.md-toolbar.md-account-header{min-height:164px}.md-toolbar.md-account-header .md-ink-ripple{color:#fff}.md-toolbar.md-account-header .md-list-item-container:hover:not([disabled]){background-color:hsla(0,0%,100%,.12)}.md-toolbar.md-account-header .md-avatar-list{margin:16px 0 8px}.md-toolbar.md-account-header .md-avatar-list .md-list-item-container{-ms-flex-align:start;align-items:flex-start}.md-toolbar.md-account-header .md-avatar-list .md-avatar+.md-avatar{margin-left:16px}.md-toolbar .md-toolbar-container{width:100%;height:64px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-item-align:start;align-self:flex-start}.md-toolbar .md-toolbar-container>.md-button:first-child{margin-left:0;margin-right:16px}.md-toolbar .md-toolbar-container>.md-button+.md-button{margin-left:0}.md-toolbar>.md-button:first-child{margin-left:0;margin-right:16px}.md-toolbar>.md-button+.md-button{margin-left:0}.md-toolbar .md-button:hover:not([disabled]):not(.md-raised):not(.md-icon-button):not(.md-fab){background-color:hsla(0,0%,100%,.1)}.md-toolbar .md-title{margin:0;font-size:20px;font-weight:400}.md-toolbar .md-title:first-child{margin-left:8px}.md-toolbar .md-title+.md-input-container{margin-left:24px}.md-toolbar .md-input-container{min-height:32px;margin-top:0;margin-bottom:0;padding-top:0}.md-toolbar .md-list{padding:0;margin:0 -8px;-ms-flex:1;flex:1}.md-tooltip{height:20px;padding:0 8px;position:fixed;z-index:200;pointer-events:none;background-color:rgba(97,97,97,.87);border-radius:2px;opacity:0;transform-origin:center top;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s;transition-delay:0s;color:#fff;font-family:Roboto,Noto Sans,Noto,sans-serif;font-size:10px;line-height:20px;text-transform:none;white-space:nowrap;letter-spacing:.1em}.md-tooltip.md-active{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.3s}.md-tooltip:not(.md-active){transition-delay:0s!important}.md-tooltip.md-transition-off{transition:none!important}.md-tooltip.md-tooltip-top{margin-top:-14px;transform:translate(-50%,8px)}.md-tooltip.md-tooltip-top.md-active{transform:translate(-50%)}.md-tooltip.md-tooltip-right{margin-left:14px;transform:translate(-8px,50%)}.md-tooltip.md-tooltip-right.md-active{transform:translateY(50%)}.md-tooltip.md-tooltip-bottom{margin-top:14px;transform:translate(-50%,-8px)}.md-tooltip.md-tooltip-bottom.md-active{transform:translate(-50%)}.md-tooltip.md-tooltip-left{margin-left:-14px;transform:translate(8px,50%)}.md-tooltip.md-tooltip-left.md-active{transform:translateY(50%)}.md-whiteframe{position:relative;z-index:1}.md-whiteframe-1dp{box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.md-whiteframe-2dp{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-whiteframe-3dp{box-shadow:0 1px 8px rgba(0,0,0,.2),0 3px 4px rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.12)}.md-whiteframe-4dp{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px rgba(0,0,0,.14),0 1px 10px rgba(0,0,0,.12)}.md-whiteframe-5dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.md-whiteframe-6dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px rgba(0,0,0,.14),0 1px 18px rgba(0,0,0,.12)}.md-whiteframe-7dp{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.md-whiteframe-8dp{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-whiteframe-9dp{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.md-whiteframe-10dp{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.md-whiteframe-11dp{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.md-whiteframe-12dp{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-whiteframe-13dp{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.md-whiteframe-14dp{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.md-whiteframe-15dp{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.md-whiteframe-16dp{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-whiteframe-17dp{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.md-whiteframe-18dp{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.md-whiteframe-19dp{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.md-whiteframe-20dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.md-whiteframe-21dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.md-whiteframe-22dp{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.md-whiteframe-23dp{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.md-whiteframe-24dp{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader!./~/vue-material/dist/vue-material.css\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../demo-src/node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".vue-google-map[data-v-3074bd5c]{position:relative}.vue-google-map .map-view[data-v-3074bd5c]{left:0;right:0;top:0;bottom:0;position:absolute}.vue-google-map .hidden-content[data-v-3074bd5c]{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader!../dist/vue-googlemaps.css\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".demo[data-v-3dd34410]{height:100%;display:flex;flex-direction:column}.panes[data-v-3dd34410]{flex:1;display:flex;flex-direction:row;align-items:stretch}.map[data-v-3dd34410]{flex:1}.results-pane[data-v-3dd34410]{overflow:auto;width:400px;position:relative}.results-pane .photo[data-v-3dd34410]{background:#eee}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-3dd34410\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LocationGeocoder.vue\n// module id = 25\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".demo[data-v-475ae8fc]{height:100%;display:flex;flex-direction:column}.panes[data-v-475ae8fc]{flex:1;display:flex;flex-direction:row;align-items:stretch}.map[data-v-475ae8fc]{flex:1}.results-pane[data-v-475ae8fc]{overflow:auto;width:400px;position:relative}.results-pane .details>div[data-v-475ae8fc]{padding:8px 16px}.results-pane .details .name[data-v-475ae8fc]{font-size:20px;margin-top:12px}.results-pane .details .address[data-v-475ae8fc]{color:#888}.results-pane .details .photos[data-v-475ae8fc]{padding:0;display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;align-items:center;background:#333}.results-pane .details .photos .photo[data-v-475ae8fc]{flex:auto 0 0;overflow:hidden}.results-pane .details .rating[data-v-475ae8fc]{pointer-events:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-475ae8fc\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/PlaceDetails.vue\n// module id = 26\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".demo[data-v-649f4bf2]{height:100%;display:flex;flex-direction:column}.panes[data-v-649f4bf2]{flex:1;display:flex;flex-direction:row;align-items:stretch}.map[data-v-649f4bf2]{flex:1}.results-pane[data-v-649f4bf2]{overflow-x:auto;overflow-y:auto;width:400px;height:calc(100vh - 64px);position:relative}.results-pane .photo[data-v-649f4bf2]{background:#eee}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-649f4bf2\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/NearbyPlaces.vue\n// module id = 27\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \"#app,body,html{height:100%}body{margin:0;font-family:Roboto,Helvetica,Arial,sans-serif}.tip{padding:12px;font-size:16px;color:#aaa;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.tip.overlay{position:absolute;top:0;bottom:0;left:0;right:0}.tip .md-icon{margin-top:0;margin-bottom:16px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-64aef02a\",\"scoped\":false,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/App.vue\n// module id = 28\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".demo[data-v-688f0713]{height:100%;display:flex;flex-direction:column}.map[data-v-688f0713]{flex:100% 1 1}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-688f0713\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/SimpleMap.vue\n// module id = 29\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".loading-overlay[data-v-e887690a]{position:absolute;top:0;bottom:0;left:0;right:0;background:hsla(0,0%,100%,.7);display:flex;align-items:center;justify-content:center;z-index:100}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-e887690a\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LoadingOverlay.vue\n// module id = 30\n// module chunks = 0","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/process/browser.js\n// module id = 31\n// module chunks = 0","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a \r\n\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// App.vue?e7c48ae8","\r\n\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\tmenu\r\n\t\t\t\r\n\r\n\t\t\tGeocoder\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\tmy_location\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tassistant\r\n\t\t\t\t\t\tClick on the map\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tGeocoder\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tplace\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{{ result.placeDetails.name }}\r\n\t\t\t\t\t\t\t\t\t{{ result.placeDetails.vicinity }}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ result.formatted_address }}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// LocationGeocoder.vue?2309aa44","\r\n\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\tmenu\r\n\t\t\t\r\n\r\n\t\t\tNearby places\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\tmy_location\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t !result.types.includes('locality')\"\r\n\t\t\t>\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNearby places\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tplace\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ result.name }}\r\n\t\t\t\t\t\t\t\t{{ result.vicinity }}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// NearbyPlaces.vue?f9762af4","\r\n\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\tmenu\r\n\t\t\t\r\n\r\n\t\t\tPlace details\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\tmy_location\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tassistant\r\n\t\t\t\t\t\tClick an icon on the map\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tPlace details\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{{ props.results.name }}\r\n\t\t\t\t\t\t{{ props.results.formatted_address }}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tphone\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ props.results.international_phone_number }}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tpublic\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{ props.results.website }}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// PlaceDetails.vue?defd07f6","\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\tmenu\r\n\t\t\t\r\n\r\n\t\t\tSimple map\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\tmy_location\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// SimpleMap.vue?35498bee","import '../../dist/vue-googlemaps.css'\r\nimport 'vue-material/dist/vue-material.css'\r\n\r\nimport './plugins'\r\nimport Vue from 'vue'\r\nimport router from './router'\r\nimport store from './store'\r\nimport App from './components/App.vue'\r\nimport LoadingOverlay from './components/LoadingOverlay.vue'\r\n\r\nVue.component('LoadingOverlay', LoadingOverlay)\r\n\r\n// eslint-disable-next-line no-new\r\nnew Vue({\r\n\tel: '#app',\r\n\trouter,\r\n\tstore,\r\n\t...App,\r\n})\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/main.js","export default {\r\n\tnamespaced: true,\r\n\r\n\tstate () {\r\n\t\treturn {\r\n\t\t\tsideNavOpen: false,\r\n\t\t}\r\n\t},\r\n\r\n\tgetters: {\r\n\t\tsideNavOpen: state => state.sideNavOpen,\r\n\t},\r\n\r\n\tmutations: {\r\n\t\tsideNavOpen (state, value) {\r\n\t\t\tstate.sideNavOpen = value\r\n\t\t},\r\n\t},\r\n\r\n\tactions: {\r\n\t\tsetSideNavOpen ({ commit }, value) {\r\n\t\t\tcommit('sideNavOpen', value)\r\n\t\t},\r\n\r\n\t\ttoggleSideNav ({ commit, getters }) {\r\n\t\t\tconst value = getters.sideNavOpen\r\n\t\t\tcommit('sideNavOpen', !value)\r\n\t\t},\r\n\t},\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/store/layout.js","var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction unwrapExports (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar runtime = createCommonjsModule(function (module) {\n/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n!(function(global) {\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined$1; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n var runtime = global.regeneratorRuntime;\n if (runtime) {\n {\n // If regeneratorRuntime is defined globally and we're in a module,\n // make the exports object identical to regeneratorRuntime.\n module.exports = runtime;\n }\n // Don't bother evaluating the rest of this file if the runtime was\n // already defined globally.\n return;\n }\n\n // Define the runtime globally (as expected by generated code) as either\n // module.exports (if we're in a module) or a new, empty object.\n runtime = global.regeneratorRuntime = module.exports ;\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n runtime.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] =\n GeneratorFunction.displayName = \"GeneratorFunction\";\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n prototype[method] = function(arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n runtime.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n runtime.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n runtime.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return Promise.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return Promise.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration. If the Promise is rejected, however, the\n // result for this iteration will be rejected with the same\n // reason. Note that rejections of yielded Promises are not\n // thrown back into the generator function, as is the case\n // when an awaited Promise is rejected. This difference in\n // behavior between yield and await is important, because it\n // allows the consumer to decide what to do with the yielded\n // rejection (swallow it and continue, manually .throw it back\n // into the generator, abandon iteration, whatever). With\n // await, by contrast, there is no opportunity to examine the\n // rejection reason outside the generator function, so the\n // only option is to throw it from the await expression, and\n // let the generator function handle the exception.\n result.value = unwrapped;\n resolve(result);\n }, reject);\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new Promise(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n runtime.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n runtime.async = function(innerFn, outerFn, self, tryLocsList) {\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList)\n );\n\n return runtime.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined$1) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n if (delegate.iterator.return) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined$1;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined$1;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n Gp[toStringTagSymbol] = \"Generator\";\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n runtime.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined$1;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n runtime.values = values;\n\n function doneResult() {\n return { value: undefined$1, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined$1;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined$1;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined$1;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined$1;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined$1;\n }\n\n return ContinueSentinel;\n }\n };\n})(\n // In sloppy mode, unbound `this` refers to the global object, fallback to\n // Function constructor if we're in global strict mode. That is sadly a form\n // of indirect eval which violates Content Security Policy.\n (function() { return this })() || Function(\"return this\")()\n);\n});\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nvar loader = {\n loaded: false,\n readyPromises: [],\n\n /**\r\n * @param apiKey API Key, or object with the URL parameters. For example\r\n * to use Google Maps Premium API, pass\r\n * `{ client: }`.\r\n * You may pass the libraries and/or version (as `v`) parameter into\r\n * this parameter and skip the next two parameters\r\n * @param version Google for Maps version\r\n * @param libraries Libraries to load (@see\r\n * https://developers.google.com/maps/documentation/javascript/libraries)\r\n * @param loadCn Boolean. If set to true, the map will be loaded form goole maps China\r\n * (@see https://developers.google.com/maps/documentation/javascript/basics#GoogleMapsChina)\r\n */\n load: function load(_ref) {\n var apiKey = _ref.apiKey,\n version = _ref.version,\n libraries = _ref.libraries,\n loadCn = _ref.loadCn,\n _ref$useNewFeatures = _ref.useNewFeatures,\n useNewFeatures = _ref$useNewFeatures === void 0 ? true : _ref$useNewFeatures;\n\n if (typeof window === 'undefined') {\n // Do nothing if run from server-side\n return Promise.resolve();\n }\n\n if (!this.loaded && (!window.google || !window.google.maps)) {\n var googleMapScript = document.createElement('SCRIPT'); // Allow apiKey to be an object.\n // This is to support more esoteric means of loading Google Maps,\n // such as Google for business\n // https://developers.google.com/maps/documentation/javascript/get-api-key#premium-auth\n\n var options = {};\n\n if (typeof apiKey === 'string') {\n options.key = apiKey;\n } else if (_typeof(apiKey) === 'object') {\n for (var k in apiKey) {\n // transfer values in apiKey to options\n options[k] = apiKey[k];\n }\n } else {\n throw new Error('`apiKey` should either be a string or an object');\n } // libraries\n\n\n var librariesPath = '';\n\n if (libraries && libraries.length > 0) {\n librariesPath = libraries.join(',');\n options['libraries'] = librariesPath;\n } else if (Array.prototype.isPrototypeOf(options.libraries)) {\n options.libraries = options.libraries.join(',');\n }\n\n options['callback'] = 'VueGoogleMapsLoaded';\n var baseUrl = typeof loadCn === 'boolean' && loadCn === true ? 'http://maps.google.cn' : 'https://maps.googleapis.com';\n var urlParams = Object.keys(options).map(function (key) {\n return \"\".concat(encodeURIComponent(key), \"=\").concat(encodeURIComponent(options[key]));\n }).join('&');\n var url = \"\".concat(baseUrl, \"/maps/api/js?\").concat(urlParams); // Override version if they do not want to use the new renderer/base map\n\n if (!useNewFeatures) {\n version = '3.31';\n }\n\n if (version) {\n url = \"\".concat(url, \"&v=\").concat(version);\n }\n\n googleMapScript.setAttribute('src', url);\n googleMapScript.setAttribute('async', '');\n googleMapScript.setAttribute('defer', '');\n document.body.appendChild(googleMapScript);\n window.VueGoogleMapsLoaded = this._setLoaded.bind(this);\n } else {\n console.warn('The Google Maps library is already loaded');\n\n this._setLoaded();\n }\n },\n ensureReady: function ensureReady() {\n var _this = this;\n\n if (this.loaded) {\n return Promise.resolve();\n } else {\n var promise = new Promise(function (resolve) {\n _this.readyPromises.push(resolve);\n });\n return promise;\n }\n },\n _setLoaded: function _setLoaded() {\n this.loaded = true;\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = this.readyPromises[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var resolve = _step.value;\n resolve();\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator[\"return\"] != null) {\n _iterator[\"return\"]();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n this.readyPromises = [];\n }\n};\n\nfunction optionMergeStrategies(Vue) {\n var strats = Vue.config.optionMergeStrategies;\n strats.googleMapsReady = strats.created;\n strats.googleMapsPrepare = strats.created;\n}\n\nvar config;\nfunction initErrorHandling(Vue) {\n config = Vue.config;\n}\nfunction handleError(e, vm, info) {\n if (config.errorHandler) {\n config.errorHandler(e, vm, info);\n } else {\n if (typeof console !== 'undefined') {\n console.error(e);\n } else {\n throw e;\n }\n }\n}\n\nfunction autoCall(value) {\n return typeof value === 'function' ? value() : value;\n}\nfunction capitalize(text) {\n return text.charAt(0).toUpperCase() + text.slice(1);\n}\n\nfunction bindProp(_ref) {\n var vm = _ref.vm,\n name = _ref.name,\n targetPropName = _ref.targetPropName,\n target = _ref.target,\n watcher = _ref.watcher,\n identity = _ref.identity,\n applier = _ref.applier,\n retriever = _ref.retriever,\n readOnly = _ref.readOnly,\n event = _ref.event,\n changeEvent = _ref.changeEvent;\n\n if (!targetPropName) {\n targetPropName = name;\n }\n\n if (!changeEvent) {\n changeEvent = \"\".concat(targetPropName.toLowerCase(), \"_changed\");\n }\n\n var setValue;\n var capitalizedName = capitalize(name);\n\n var getter = function getter() {\n return target && target[\"get\".concat(capitalizedName)]();\n };\n\n var setter = function setter(value) {\n setValue = value;\n target && target[\"set\".concat(capitalizedName)](value);\n };\n\n if (!watcher) {\n watcher = function watcher(value) {\n return value;\n };\n }\n\n if (!identity) {\n identity = function identity(a, b) {\n return a === b;\n };\n }\n\n if (!applier) {\n applier = function applier(value, oldValue, set) {\n if (!identity(value, oldValue)) {\n set(value);\n }\n };\n }\n\n if (!retriever) {\n retriever = function retriever(value) {\n return value;\n };\n }\n\n if (!event) {\n event = \"update:\".concat(name);\n }\n\n vm.$watch(function () {\n return watcher(vm[name]);\n }, function (value, oldValue) {\n if (!identity(value, setValue)) {\n applier(value, oldValue, setter);\n }\n\n setValue = value;\n });\n var listener = target.addListener(changeEvent, function () {\n var value = retriever(getter());\n\n if (!identity(value, setValue)) {\n vm.$emit(event, value);\n setValue = value;\n }\n });\n return function () {\n listener.remove();\n };\n}\n\nvar BoundProps = {\n beforeDestroy: function beforeDestroy() {\n this.unbindProps();\n },\n methods: {\n bindProps: function bindProps(target, props) {\n this.unbindProps();\n this.$_boundsProps = [];\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var prop = _step.value;\n var options = {\n vm: this,\n target: target\n };\n\n if (typeof prop === 'string') {\n options.name = prop;\n } else {\n Object.assign(options, prop);\n }\n\n this.$_boundsProps.push(bindProp(options));\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator[\"return\"] != null) {\n _iterator[\"return\"]();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n },\n unbindProps: function unbindProps() {\n if (this.$_boundsProps) {\n this.$_boundsProps.forEach(function (unbind) {\n return unbind();\n });\n }\n }\n }\n};\n\nvar Events = {\n beforeCreate: function beforeCreate() {\n this.$_googleListeners = [];\n },\n beforeDestroy: function beforeDestroy() {\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = this.$_googleListeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var listener = _step.value;\n listener.remove();\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator[\"return\"] != null) {\n _iterator[\"return\"]();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n },\n methods: {\n listen: function listen(target, event, handler) {\n this.$_googleListeners.push(target.addListener(event, handler));\n },\n redirectEvents: function redirectEvents(target, events) {\n var _this = this;\n\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n var _loop = function _loop() {\n var e = _step2.value;\n\n _this.listen(target, e, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this.$emit.apply(_this, [e].concat(args));\n });\n };\n\n for (var _iterator2 = events[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n _loop();\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2[\"return\"] != null) {\n _iterator2[\"return\"]();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n }\n }\n};\n\nvar Ready = {\n data: function data() {\n return {\n googleMapsReady: false\n };\n },\n mounted: function () {\n var _mounted = _asyncToGenerator(\n /*#__PURE__*/\n regeneratorRuntime.mark(function _callee() {\n var handlers, promises, i, result, _handlers, _i;\n\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return loader.ensureReady();\n\n case 2:\n handlers = this.$options.googleMapsPrepare;\n\n if (!handlers) {\n _context.next = 8;\n break;\n }\n\n promises = [];\n\n for (i = 0; i < handlers.length; i++) {\n try {\n result = handlers[i].call(this);\n\n if (typeof result.then === 'function') {\n promises.push(result);\n }\n } catch (e) {\n handleError(e, this, \"googleMapsPrepare hook\");\n }\n }\n\n _context.next = 8;\n return Promise.all(promises);\n\n case 8:\n // Ready\n this.googleMapsReady = true;\n _handlers = this.$options.googleMapsReady;\n\n if (_handlers) {\n for (_i = 0; _i < _handlers.length; _i++) {\n try {\n _handlers[_i].call(this);\n } catch (e) {\n handleError(e, this, \"googleMapsReady hook\");\n }\n }\n }\n\n this.$emit('ready');\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function mounted() {\n return _mounted.apply(this, arguments);\n }\n\n return mounted;\n }()\n};\n\nvar FindAncestor = {\n methods: {\n $_findAncestor: function $_findAncestor(condition) {\n var search = this.$parent;\n\n while (search) {\n if (condition(search)) {\n return search;\n }\n\n search = search.$parent;\n }\n\n return null;\n }\n }\n};\n\nvar MapElement = {\n mixins: [BoundProps, Events, FindAncestor, Ready],\n created: function created() {\n var mapAncestor = this.$_findAncestor(function (a) {\n return a.$options.name === 'GoogleMapsMap';\n });\n\n if (!mapAncestor) {\n throw new Error(\"\".concat(this.constructor.name, \" component must be used within a component.\"));\n }\n\n this.$_mapAncestor = mapAncestor;\n },\n googleMapsPrepare: function () {\n var _googleMapsPrepare = _asyncToGenerator(\n /*#__PURE__*/\n regeneratorRuntime.mark(function _callee() {\n var mapComp;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n mapComp = this.$_mapAncestor;\n _context.next = 3;\n return mapComp.$_getMap();\n\n case 3:\n this.$_map = _context.sent;\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function googleMapsPrepare() {\n return _googleMapsPrepare.apply(this, arguments);\n }\n\n return googleMapsPrepare;\n }()\n};\n\nvar boundProps = ['center', 'draggable', 'editable', 'radius', 'visible', 'options'];\nvar redirectedEvents = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\nvar Circle = {\n name: 'GoogleMapsCircle',\n mixins: [MapElement],\n props: {\n center: {\n type: Object,\n required: true\n },\n clickable: {\n type: Boolean,\n \"default\": true\n },\n draggable: {\n type: Boolean,\n \"default\": false\n },\n editable: {\n type: Boolean,\n \"default\": false\n },\n options: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n },\n radius: {\n type: Number,\n required: true\n },\n visible: {\n \"default\": true\n },\n zIndex: {\n type: Number\n }\n },\n watch: {\n options: 'updateOptions',\n clickable: 'updateOptions',\n zIndex: 'updateOptions'\n },\n methods: {\n updateOptions: function updateOptions(options) {\n this.$_circle && this.$_circle.setOptions(options || this.$props);\n }\n },\n render: function render(h) {\n return '';\n },\n googleMapsReady: function googleMapsReady() {\n var options = Object.assign({}, this.$props);\n options.map = this.$_map;\n this.$_circle = new window.google.maps.Circle(options);\n this.bindProps(this.$_circle, boundProps);\n this.redirectEvents(this.$_circle, redirectedEvents);\n },\n beforeDestroy: function beforeDestroy() {\n if (this.$_circle) {\n this.$_circle.setMap(null);\n }\n }\n};\n\nvar Service = {\n mixins: [Ready],\n props: {\n filter: {\n type: Function,\n \"default\": null\n },\n request: {\n type: Object,\n \"default\": null\n },\n tag: {\n type: String,\n \"default\": 'div'\n }\n },\n data: function data() {\n return {\n loading: false,\n results: null,\n status: null\n };\n },\n computed: {\n filteredResults: function filteredResults() {\n if (this.results && this.filter) {\n return this.results.filter(this.filter);\n } else {\n return this.results;\n }\n },\n finalResults: function finalResults() {\n var results = this.filteredResults;\n return results && (!Array.isArray(results) || results.length) ? results : null;\n }\n },\n watch: {\n request: {\n handler: function handler(value) {\n value && this.update();\n },\n deep: true\n },\n finalResults: function finalResults(value) {\n this.$emit('results', value);\n }\n },\n methods: {\n createServices: function createServices() {// Override this in components\n },\n getScope: function getScope() {\n // Override this in components\n return {\n loading: this.loading,\n results: this.finalResults,\n status: this.status\n };\n },\n setResults: function setResults(results, status) {\n this.results = results;\n this.status = status;\n },\n update: function update() {// Override this in components\n }\n },\n googleMapsReady: function googleMapsReady() {\n this.createServices();\n this.request && this.update();\n },\n render: function render(h) {\n return h(this.tag, [this.$scopedSlots[\"default\"] && this.$scopedSlots[\"default\"](this.getScope()), h('span', {\n ref: 'attributions'\n })]);\n }\n};\n\nvar Geocoder = {\n name: 'GoogleMapsGeocoder',\n mixins: [Service],\n props: {\n disablePlaceDetails: {\n type: Boolean,\n \"default\": false\n }\n },\n methods: {\n createServices: function createServices() {\n this.$_geocoder = new window.google.maps.Geocoder();\n this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions);\n },\n getPlaceDetails: function getPlaceDetails(result) {\n result.placeDetails = {};\n\n if (result.place_id) {\n result.placeDetails.loading = true;\n this.$_placeService.getDetails({\n placeId: result.place_id\n }, function (details, status) {\n result.placeDetails = details;\n });\n }\n },\n update: function update() {\n var _this = this;\n\n if (this.googleMapsReady) {\n this.loading = true;\n this.$_geocoder.geocode(this.request, function (results, status) {\n if (results) {\n !_this.disablePlaceDetails && results.forEach(_this.getPlaceDetails);\n }\n\n _this.setResults(results, status);\n\n _this.loading = false;\n });\n }\n }\n }\n};\n\nvar vueResize_umd = createCommonjsModule(function (module, exports) {\n(function (global, factory) {\n\t factory(exports) ;\n}(commonjsGlobal, (function (exports) {\nfunction getInternetExplorerVersion() {\n\tvar ua = window.navigator.userAgent;\n\n\tvar msie = ua.indexOf('MSIE ');\n\tif (msie > 0) {\n\t\t// IE 10 or older => return version number\n\t\treturn parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n\t}\n\n\tvar trident = ua.indexOf('Trident/');\n\tif (trident > 0) {\n\t\t// IE 11 => return version number\n\t\tvar rv = ua.indexOf('rv:');\n\t\treturn parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n\t}\n\n\tvar edge = ua.indexOf('Edge/');\n\tif (edge > 0) {\n\t\t// Edge (IE 12+) => return version number\n\t\treturn parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n\t}\n\n\t// other browser\n\treturn -1;\n}\n\nvar isIE = void 0;\n\nfunction initCompat() {\n\tif (!initCompat.init) {\n\t\tinitCompat.init = true;\n\t\tisIE = getInternetExplorerVersion() !== -1;\n\t}\n}\n\nvar ResizeObserver = { render: function render() {\n\t\tvar _vm = this;var _h = _vm.$createElement;var _c = _vm._self._c || _h;return _c('div', { staticClass: \"resize-observer\", attrs: { \"tabindex\": \"-1\" } });\n\t}, staticRenderFns: [], _scopeId: 'data-v-b329ee4c',\n\tname: 'resize-observer',\n\n\tmethods: {\n\t\tcompareAndNotify: function compareAndNotify() {\n\t\t\tif (this._w !== this.$el.offsetWidth || this._h !== this.$el.offsetHeight) {\n\t\t\t\tthis._w = this.$el.offsetWidth;\n\t\t\t\tthis._h = this.$el.offsetHeight;\n\t\t\t\tthis.$emit('notify');\n\t\t\t}\n\t\t},\n\t\taddResizeHandlers: function addResizeHandlers() {\n\t\t\tthis._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\t\t\tthis.compareAndNotify();\n\t\t},\n\t\tremoveResizeHandlers: function removeResizeHandlers() {\n\t\t\tif (this._resizeObject && this._resizeObject.onload) {\n\t\t\t\tif (!isIE && this._resizeObject.contentDocument) {\n\t\t\t\t\tthis._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n\t\t\t\t}\n\t\t\t\tdelete this._resizeObject.onload;\n\t\t\t}\n\t\t}\n\t},\n\n\tmounted: function mounted() {\n\t\tvar _this = this;\n\n\t\tinitCompat();\n\t\tthis.$nextTick(function () {\n\t\t\t_this._w = _this.$el.offsetWidth;\n\t\t\t_this._h = _this.$el.offsetHeight;\n\t\t});\n\t\tvar object = document.createElement('object');\n\t\tthis._resizeObject = object;\n\t\tobject.setAttribute('aria-hidden', 'true');\n\t\tobject.setAttribute('tabindex', -1);\n\t\tobject.onload = this.addResizeHandlers;\n\t\tobject.type = 'text/html';\n\t\tif (isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t\tobject.data = 'about:blank';\n\t\tif (!isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tthis.removeResizeHandlers();\n\t}\n};\n\n// Install the components\nfunction install(Vue) {\n\tVue.component('resize-observer', ResizeObserver);\n\tVue.component('ResizeObserver', ResizeObserver);\n}\n\n// Plugin\nvar plugin = {\n\t// eslint-disable-next-line no-undef\n\tversion: \"0.4.5\",\n\tinstall: install\n};\n\n// Auto-install\nvar GlobalVue = null;\nif (typeof window !== 'undefined') {\n\tGlobalVue = window.Vue;\n} else if (typeof commonjsGlobal !== 'undefined') {\n\tGlobalVue = commonjsGlobal.Vue;\n}\nif (GlobalVue) {\n\tGlobalVue.use(plugin);\n}\n\nexports.install = install;\nexports.ResizeObserver = ResizeObserver;\nexports['default'] = plugin;\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n});\n\nunwrapExports(vueResize_umd);\nvar vueResize_umd_1 = vueResize_umd.ResizeObserver;\n\nvar vueObserveVisibility_umd = createCommonjsModule(function (module, exports) {\n(function (global, factory) {\n\t factory(exports) ;\n}(commonjsGlobal, (function (exports) {\nfunction throwValueError(value) {\n\tif (value !== null && typeof value !== 'function') {\n\t\tthrow new Error('observe-visibility directive expects a function as the value');\n\t}\n}\n\nvar ObserveVisibility = {\n\tbind: function bind(el, _ref, vnode) {\n\t\tvar value = _ref.value;\n\n\t\tif (typeof IntersectionObserver === 'undefined') {\n\t\t\tconsole.warn('[vue-observe-visibility] IntersectionObserver API is not available in your browser. Please install this polyfill: https://github.com/WICG/IntersectionObserver/tree/gh-pages/polyfill');\n\t\t} else {\n\t\t\tthrowValueError(value);\n\t\t\tel._vue_visibilityCallback = value;\n\t\t\tvar observer = el._vue_intersectionObserver = new IntersectionObserver(function (entries) {\n\t\t\t\tvar entry = entries[0];\n\t\t\t\tif (el._vue_visibilityCallback) {\n\t\t\t\t\tel._vue_visibilityCallback.call(null, entry.intersectionRatio > 0, entry);\n\t\t\t\t}\n\t\t\t});\n\t\t\t// Wait for the element to be in document\n\t\t\tvnode.context.$nextTick(function () {\n\t\t\t\tobserver.observe(el);\n\t\t\t});\n\t\t}\n\t},\n\tupdate: function update(el, _ref2) {\n\t\tvar value = _ref2.value;\n\n\t\tthrowValueError(value);\n\t\tel._vue_visibilityCallback = value;\n\t},\n\tunbind: function unbind(el) {\n\t\tif (el._vue_intersectionObserver) {\n\t\t\tel._vue_intersectionObserver.disconnect();\n\t\t\tdelete el._vue_intersectionObserver;\n\t\t\tdelete el._vue_visibilityCallback;\n\t\t}\n\t}\n};\n\n// Install the components\nfunction install(Vue) {\n\tVue.directive('observe-visibility', ObserveVisibility);\n\t/* -- Add more components here -- */\n}\n\n/* -- Plugin definition & Auto-install -- */\n/* You shouldn't have to modify the code below */\n\n// Plugin\nvar plugin = {\n\t// eslint-disable-next-line no-undef\n\tversion: \"0.3.1\",\n\tinstall: install\n};\n\n// Auto-install\nvar GlobalVue = null;\nif (typeof window !== 'undefined') {\n\tGlobalVue = window.Vue;\n} else if (typeof commonjsGlobal !== 'undefined') {\n\tGlobalVue = commonjsGlobal.Vue;\n}\nif (GlobalVue) {\n\tGlobalVue.use(plugin);\n}\n\nexports.install = install;\nexports.ObserveVisibility = ObserveVisibility;\nexports['default'] = plugin;\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n});\n\nunwrapExports(vueObserveVisibility_umd);\nvar vueObserveVisibility_umd_1 = vueObserveVisibility_umd.ObserveVisibility;\n\nfunction redirectMethods(_ref) {\n var target = _ref.target,\n names = _ref.names;\n return names.reduce(function (obj, name) {\n obj[name] = function () {\n var t = target.call(this);\n\n if (t) {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return t[name].apply(t, args);\n }\n };\n\n return obj;\n }, {});\n}\n\nvar boundProps$1 = [{\n name: 'center',\n watcher: function watcher(value) {\n return {\n lat: autoCall(value.lat),\n lng: autoCall(value.lng)\n };\n },\n identity: function identity(a, b) {\n if (a && b) {\n if (typeof a.equals !== 'function') {\n a = new window.google.maps.LatLng(a);\n }\n\n if (typeof b.equals !== 'function') {\n b = new window.google.maps.LatLng(b);\n }\n\n return a.equals(b);\n }\n },\n retriever: function retriever(value) {\n return {\n lat: value.lat(),\n lng: value.lng()\n };\n }\n}, 'heading', 'mapTypeId', 'tilt', 'zoom', 'options'];\nvar redirectedMethods = ['panBy', 'panTo', 'panToBounds', 'fitBounds', 'getBounds'];\nvar redirectedEvents$1 = ['click', 'dblclick', 'drag', 'dragend', 'dragstart', 'mousedown', 'mouseup', 'mousemove', 'mouseout', 'mouseover', 'resize', 'rightclick', 'tilesloaded'];\nvar script = {\n name: 'GoogleMapsMap',\n mixins: [Ready, BoundProps, Events],\n components: {\n ResizeObserver: vueResize_umd_1\n },\n directives: {\n ObserveVisibility: vueObserveVisibility_umd_1\n },\n props: {\n center: {\n required: true,\n type: Object\n },\n heading: {\n type: Number\n },\n mapTypeId: {\n type: String\n },\n options: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n },\n tilt: {\n type: Number\n },\n zoom: {\n required: true,\n type: Number\n }\n },\n beforeCreate: function beforeCreate() {\n this.$_mapPromises = [];\n },\n googleMapsReady: function googleMapsReady() {\n var _this = this;\n\n var element = this.$refs.map;\n\n var options = _objectSpread2({\n center: this.center,\n heading: this.heading,\n mapTypeId: this.mapTypeId,\n tilt: this.tilt,\n zoom: this.zoom\n }, this.options);\n\n this.$_map = new window.google.maps.Map(element, options);\n this.bindProps(this.$_map, boundProps$1);\n this.listen(this.$_map, 'bounds_changed', function () {\n _this.$emit('update:bounds', _this.$_map.getBounds());\n });\n this.listen(this.$_map, 'idle', function () {\n _this.$emit('idle', _this);\n\n _this.lastCenter = _this.$_map.getCenter();\n });\n this.lastCenter = this.$_map.getCenter();\n this.redirectEvents(this.$_map, redirectedEvents$1); // Code that awaits `$_getMap()`\n\n this.$_mapPromises.forEach(function (resolve) {\n return resolve(_this.$_map);\n });\n },\n watch: {\n options: {\n handler: 'updateOptions',\n deep: true\n }\n },\n methods: _objectSpread2({}, redirectMethods({\n target: function target() {\n return this.$_map;\n },\n names: redirectedMethods\n }), {\n resize: function resize() {\n var preserveCenter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n if (this.$_map) {\n // let center\n // preserveCenter && (center = this.$_map.getCenter())\n window.google.maps.event.trigger(this.$_map, 'resize');\n preserveCenter && this.$_map.setCenter(this.lastCenter);\n }\n },\n visibilityChanged: function visibilityChanged(isVisible) {\n if (isVisible) {\n this.$nextTick(this.resize);\n }\n },\n $_getMap: function $_getMap() {\n var _this2 = this;\n\n if (this.$_map) {\n return Promise.resolve(this.$_map);\n } else {\n return new Promise(function (resolve) {\n _this2.$_mapPromises.push(resolve);\n });\n }\n },\n updateOptions: function updateOptions(options) {\n this.$_map && this.$_map.setOptions(options || this.$props);\n }\n })\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\nconst isOldIE = typeof navigator !== 'undefined' &&\r\n /msie [6-9]\\\\b/.test(navigator.userAgent.toLowerCase());\r\nfunction createInjector(context) {\r\n return (id, style) => addStyle(id, style);\r\n}\r\nlet HEAD;\r\nconst styles = {};\r\nfunction addStyle(id, css) {\r\n const group = isOldIE ? css.media || 'default' : id;\r\n const style = styles[group] || (styles[group] = { ids: new Set(), styles: [] });\r\n if (!style.ids.has(id)) {\r\n style.ids.add(id);\r\n let code = css.source;\r\n if (css.map) {\r\n // https://developer.chrome.com/devtools/docs/javascript-debugging\r\n // this makes source maps inside style tags work properly in Chrome\r\n code += '\\n/*# sourceURL=' + css.map.sources[0] + ' */';\r\n // http://stackoverflow.com/a/26603875\r\n code +=\r\n '\\n/*# sourceMappingURL=data:application/json;base64,' +\r\n btoa(unescape(encodeURIComponent(JSON.stringify(css.map)))) +\r\n ' */';\r\n }\r\n if (!style.element) {\r\n style.element = document.createElement('style');\r\n style.element.type = 'text/css';\r\n if (css.media)\r\n style.element.setAttribute('media', css.media);\r\n if (HEAD === undefined) {\r\n HEAD = document.head || document.getElementsByTagName('head')[0];\r\n }\r\n HEAD.appendChild(style.element);\r\n }\r\n if ('styleSheet' in style.element) {\r\n style.styles.push(code);\r\n style.element.styleSheet.cssText = style.styles\r\n .filter(Boolean)\r\n .join('\\n');\r\n }\r\n else {\r\n const index = style.ids.size - 1;\r\n const textNode = document.createTextNode(code);\r\n const nodes = style.element.childNodes;\r\n if (nodes[index])\r\n style.element.removeChild(nodes[index]);\r\n if (nodes.length)\r\n style.element.insertBefore(textNode, nodes[index]);\r\n else\r\n style.element.appendChild(textNode);\r\n }\r\n }\r\n}\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n {\n directives: [\n {\n name: \"observe-visibility\",\n rawName: \"v-observe-visibility\",\n value: _vm.visibilityChanged,\n expression: \"visibilityChanged\"\n }\n ],\n staticClass: \"vue-google-map\"\n },\n [\n _c(\"div\", { ref: \"map\", staticClass: \"map-view\" }),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"hidden-content\" }, [_vm._t(\"default\")], 2),\n _vm._v(\" \"),\n _vm._t(\"visible\"),\n _vm._v(\" \"),\n _c(\"resize-observer\", { on: { notify: _vm.resize } })\n ],\n 2\n )\n};\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n\n /* style */\n const __vue_inject_styles__ = function (inject) {\n if (!inject) return\n inject(\"data-v-29eb3fb3_0\", { source: \"@import '../../node_modules/vue-resize/dist/vue-resize.css';\\n\", map: {\"version\":3,\"sources\":[\"C:\\\\Users\\\\Mike\\\\source\\\\repos\\\\vue-googlemaps\\\\src\\\\components\\\\Map.vue\"],\"names\":[],\"mappings\":\"AAwMA,2DAAA\",\"file\":\"Map.vue\",\"sourcesContent\":[\"\\r\\n\\t\\r\\n\\t\\t\\r\\n\\t\\t\\r\\n\\t\\t\\t\\r\\n\\t\\t\\r\\n\\t\\t\\r\\n\\t\\t\\r\\n\\t\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\"]}, media: undefined })\n,inject(\"data-v-29eb3fb3_1\", { source: \".vue-google-map[data-v-29eb3fb3] {\\n position: relative;\\n}\\n.vue-google-map .map-view[data-v-29eb3fb3] {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n position: absolute;\\n}\\n.vue-google-map .hidden-content[data-v-29eb3fb3] {\\n display: none;\\n}\\n\", map: {\"version\":3,\"sources\":[\"C:\\\\Users\\\\Mike\\\\source\\\\repos\\\\vue-googlemaps\\\\src\\\\components\\\\Map.vue\",\"Map.vue\"],\"names\":[],\"mappings\":\"AA4MA;EACA,kBAAA;AC3MA;AD6MA;EACA,OAAA;EACA,QAAA;EACA,MAAA;EACA,SAAA;EACA,kBAAA;AC3MA;AD8MA;EACA,aAAA;AC5MA\",\"file\":\"Map.vue\",\"sourcesContent\":[\"\\r\\n\\t\\r\\n\\t\\t\\r\\n\\t\\t\\r\\n\\t\\t\\t\\r\\n\\t\\t\\r\\n\\t\\t\\r\\n\\t\\t\\r\\n\\t\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\",\".vue-google-map {\\n position: relative;\\n}\\n.vue-google-map .map-view {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n position: absolute;\\n}\\n.vue-google-map .hidden-content {\\n display: none;\\n}\\n\"]}, media: undefined });\n\n };\n /* scoped */\n const __vue_scope_id__ = \"data-v-29eb3fb3\";\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = normalizeComponent(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n createInjector,\n undefined,\n undefined\n );\n\nvar boundProps$2 = ['animation', 'clickable', 'cursor', 'draggable', 'icon', 'label', 'opacity', 'place', 'position', 'shape', 'title', 'visible', 'zIndex'];\nvar redirectedEvents$2 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\nvar Marker = {\n name: 'GoogleMapsMarker',\n mixins: [MapElement],\n props: {\n animation: {\n type: Number\n },\n clickable: {\n type: Boolean,\n \"default\": true\n },\n cursor: {\n type: String\n },\n draggable: {\n type: Boolean,\n \"default\": false\n },\n icon: {},\n label: {},\n opacity: {\n type: Number,\n \"default\": 1\n },\n place: {\n type: Object\n },\n position: {\n type: Object\n },\n shape: {\n type: Object\n },\n title: {\n type: String\n },\n visible: {\n \"default\": true\n },\n zIndex: {\n type: Number\n }\n },\n render: function render(h) {\n if (!this.$slots[\"default\"] || this.$slots[\"default\"].length === 0) {\n return '';\n } else if (this.$slots[\"default\"].length === 1) {\n // So that infowindows can have a marker parent\n return this.$slots[\"default\"][0];\n } else {\n return h('div', this.$slots[\"default\"]);\n }\n },\n googleMapsReady: function googleMapsReady() {\n var options = Object.assign({}, this.$props);\n options.map = this.$_map;\n this.$_marker = new window.google.maps.Marker(options);\n this.bindProps(this.$_marker, boundProps$2);\n this.redirectEvents(this.$_marker, redirectedEvents$2);\n },\n beforeDestroy: function beforeDestroy() {\n if (this.$_marker) {\n this.$_marker.setMap(null);\n }\n }\n};\n\nvar NearbyPlaces = {\n name: 'GoogleMapsNearbyPlaces',\n mixins: [Service],\n methods: {\n createServices: function createServices() {\n this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions);\n },\n update: function update() {\n var _this = this;\n\n this.loading = true;\n this.$_placeService.nearbySearch(this.request, function (results, status) {\n _this.setResults(results, status);\n\n _this.loading = false;\n });\n }\n }\n};\n\nvar PlaceDetails = {\n name: 'GoogleMapsPlaceDetails',\n mixins: [Service],\n methods: {\n createServices: function createServices() {\n this.$_placeService = new window.google.maps.places.PlacesService(this.$refs.attributions);\n },\n update: function update() {\n var _this = this;\n\n this.loading = true;\n this.$_placeService.getDetails(this.request, function (results, status) {\n _this.setResults(results, status);\n\n _this.loading = false;\n });\n }\n }\n};\n\nvar defaultPositionStyle;\nvar defaultAccuracyStyle = {\n strokeColor: '#4285F4',\n strokeOpacity: 0.25,\n fillColor: '#4285F4',\n fillOpacity: 0.2,\n strokeWeight: 1\n};\nvar UserPosition = {\n name: 'GoogleMapsUserPosition',\n mixins: [Ready],\n props: {\n accuracy: {\n \"default\": 0\n },\n accuracyStyle: {\n type: Object,\n \"default\": null\n },\n disableWatch: {\n type: Boolean,\n \"default\": false\n },\n hideAccuracy: {\n type: Boolean,\n \"default\": false\n },\n minimumAccuracy: {\n \"default\": 1000\n },\n position: {\n type: Object\n },\n positionStyle: {\n type: Object,\n \"default\": null\n },\n positionOptions: {\n type: Object,\n \"default\": function _default() {\n return {\n enableHighAccuracy: true,\n maximumAge: 1000\n };\n }\n }\n },\n data: function data() {\n return {\n currentPosition: null,\n currentAccuracy: null\n };\n },\n watch: {\n position: function position(value) {\n this.currentPosition = value;\n },\n accuracy: function accuracy(value) {\n this.currentAccuracy = value;\n },\n disableWatch: function disableWatch(value, oldValue) {\n if (value !== oldValue) {\n if (value) {\n this.stopWatch();\n } else {\n this.startWatch();\n }\n }\n },\n positionOptions: function positionOptions(value) {\n if (!this.disableWatch) {\n this.stopWatch();\n this.startWatch();\n }\n }\n },\n methods: {\n startWatch: function startWatch() {\n if (navigator.geolocation) {\n this.$_watchId = navigator.geolocation.watchPosition(this.updatePosition, this.onWatchError, this.positionOptions);\n } else {\n console.warn('GoogleMapsUserPosition: navigator.geolocation not supported');\n this.$emit('error', new Error('unsupported'));\n }\n },\n stopWatch: function stopWatch() {\n if (navigator.geolocation) {\n navigator.geolocation.clearWatch(this.$_watchId);\n }\n },\n updatePosition: function updatePosition(position) {\n this.currentPosition = {\n lat: position.coords.latitude,\n lng: position.coords.longitude\n };\n this.$emit('update:position', this.currentPosition);\n this.currentAccuracy = position.coords.accuracy;\n this.$emit('update:accuracy', this.currentAccuracy);\n },\n onWatchError: function onWatchError(e) {\n this.$emit('error', e);\n }\n },\n render: function render(h) {\n var markers = [];\n\n if (this.googleMapsReady && this.currentPosition && (this.minimumAccuracy === null || this.currentAccuracy <= this.minimumAccuracy)) {\n markers.push(h(Marker, {\n props: {\n clickable: false,\n icon: this.positionStyle || defaultPositionStyle,\n optimized: false,\n position: this.currentPosition,\n zIndex: 3\n }\n }));\n\n if (!this.hideAccuracy) {\n markers.push(h(Circle, {\n props: {\n clickable: false,\n radius: this.currentAccuracy,\n options: this.accuracyStyle || defaultAccuracyStyle,\n center: this.currentPosition,\n zIndex: 1\n }\n }));\n }\n }\n\n return h('div', markers);\n },\n googleMapsReady: function googleMapsReady() {\n defaultPositionStyle = {\n path: window.google.maps.SymbolPath.CIRCLE,\n fillColor: '#4285F4',\n fillOpacity: 1,\n scale: 6,\n strokeColor: 'white',\n strokeWeight: 2\n };\n\n if (!this.disableWatch) {\n this.startWatch();\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.stopWatch();\n }\n};\n\nvar boundProps$3 = ['draggable', 'editable', 'options', 'path'];\nvar redirectedEvents$3 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\nvar Polyline = {\n name: 'GoogleMapsPolyline',\n mixins: [MapElement],\n props: {\n editable: {\n type: Boolean,\n \"default\": false\n },\n draggable: {\n type: Boolean,\n \"default\": false\n },\n options: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n },\n path: {\n type: Array\n }\n },\n watch: {\n options: 'updateOptions'\n },\n methods: {\n updateOptions: function updateOptions(options) {\n this.$_polyline && this.$_polyline.setOptions(options || this.$props);\n }\n },\n render: function render(h) {\n return '';\n },\n googleMapsReady: function googleMapsReady() {\n var _this = this;\n\n var options = Object.assign({}, this.$props);\n options.map = this.$_map;\n this.$_polyline = new window.google.maps.Polyline(options);\n this.bindProps(this.$_polyline, boundProps$3);\n this.redirectEvents(this.$_polyline, redirectedEvents$3);\n this.listen(this.$_polyline, 'drag', function () {\n _this.$emit('path_changed', _this.$_polyline.getPath());\n });\n },\n beforeDestroy: function beforeDestroy() {\n if (this.$_polyline) {\n this.$_polyline.setMap(null);\n }\n }\n};\n\nvar boundProps$4 = ['bounds', 'draggable', 'editable', 'visible', 'options'];\nvar redirectedEvents$4 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\nvar Rectangle = {\n name: 'GoogleMapsRectangle',\n mixins: [MapElement],\n props: {\n bounds: {\n type: Object,\n required: true\n },\n clickable: {\n type: Boolean,\n \"default\": true\n },\n draggable: {\n type: Boolean,\n \"default\": false\n },\n editable: {\n type: Boolean,\n \"default\": false\n },\n options: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n },\n visible: {\n \"default\": true\n },\n zIndex: {\n type: Number\n }\n },\n watch: {\n bounds: 'updateBounds',\n options: 'updateOptions',\n clickable: 'updateOptions',\n zIndex: 'updateOptions'\n },\n methods: {\n updateOptions: function updateOptions(options) {\n this.$_rectangle && this.$_rectangle.setOptions(options || this.$props);\n },\n updateBounds: function updateBounds(bounds) {\n this.$_rectangle && this.$_rectangle.setBounds(bounds);\n }\n },\n render: function render(h) {\n return '';\n },\n googleMapsReady: function googleMapsReady() {\n var options = Object.assign({}, this.$props);\n options.map = this.$_map;\n this.$_rectangle = new window.google.maps.Rectangle(options);\n this.bindProps(this.$_rectangle, boundProps$4);\n this.redirectEvents(this.$_rectangle, redirectedEvents$4);\n },\n beforeDestroy: function beforeDestroy() {\n if (this.$_rectangle) {\n this.$_rectangle.setMap(null);\n }\n }\n};\n\nvar boundProps$5 = ['draggable', 'editable', 'options', 'paths'];\nvar redirectedEvents$5 = ['click', 'rightclick', 'dblclick', 'drag', 'dragstart', 'dragend', 'mouseup', 'mousedown', 'mouseover', 'mouseout'];\nvar Polygon = {\n name: 'GoogleMapsPolygon',\n mixins: [MapElement],\n props: {\n editable: {\n type: Boolean,\n \"default\": false\n },\n draggable: {\n type: Boolean,\n \"default\": false\n },\n options: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n },\n paths: {\n type: Array\n }\n },\n watch: {\n paths: 'updateOptions',\n options: 'updateOptions'\n },\n methods: {\n updateOptions: function updateOptions(options) {\n this.$_polygon && this.$_polygon.setOptions(options || this.$props);\n }\n },\n render: function render(h) {\n return '';\n },\n googleMapsReady: function googleMapsReady() {\n var _this = this;\n\n var options = Object.assign({}, this.$props);\n options.map = this.$_map;\n this.$_polygon = new window.google.maps.Polygon(options);\n this.bindProps(this.$_polygon, boundProps$5);\n this.redirectEvents(this.$_polygon, redirectedEvents$5);\n this.listen(this.$_polygon, 'drag', function () {\n _this.$emit('path_changed', _this.$_polygon.getPath());\n });\n },\n beforeDestroy: function beforeDestroy() {\n if (this.$_polygon) {\n this.$_polygon.setMap(null);\n }\n }\n};\n\nfunction registerComponents(Vue, prefix) {\n Vue.component(\"\".concat(prefix, \"circle\"), Circle);\n Vue.component(\"\".concat(prefix, \"rectangle\"), Rectangle);\n Vue.component(\"\".concat(prefix, \"geocoder\"), Geocoder);\n Vue.component(\"\".concat(prefix, \"map\"), __vue_component__);\n Vue.component(\"\".concat(prefix, \"marker\"), Marker);\n Vue.component(\"\".concat(prefix, \"nearby-places\"), NearbyPlaces);\n Vue.component(\"\".concat(prefix, \"place-details\"), PlaceDetails);\n Vue.component(\"\".concat(prefix, \"user-position\"), UserPosition);\n Vue.component(\"\".concat(prefix, \"polyline\"), Polyline);\n Vue.component(\"\".concat(prefix, \"polygon\"), Polygon);\n}\n\nvar plugin = {\n // eslint-disable-next-line no-undef\n version: \"0.1.2\",\n install: function install(Vue, options) {\n var finalOptions = Object.assign({}, {\n installComponents: true,\n componentsPrefix: 'googlemaps-'\n }, options);\n optionMergeStrategies(Vue);\n initErrorHandling(Vue);\n\n if (finalOptions.installComponents) {\n registerComponents(Vue, finalOptions.componentsPrefix);\n }\n\n if (finalOptions.load) {\n loader.load(finalOptions.load);\n }\n }\n};\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { Circle, Geocoder, __vue_component__ as Map, MapElement, Marker, NearbyPlaces, PlaceDetails, Polygon, Polyline, Rectangle, UserPosition };\n\n\n\n// WEBPACK FOOTER //\n// ../dist/vue-googlemaps.esm.js","exports = module.exports = require(\"../../css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".md-ink-ripple{pointer-events:none;overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0);transition:all .3s cubic-bezier(.55,0,.55,.2)}.md-ripple{position:absolute;background-color:currentColor;border-radius:50%;opacity:.2;transform:scale(0) translateZ(0);transition:none;will-change:background-color,opacity,transform,width,height,top,left}.md-ripple.md-active{animation:ripple 1s cubic-bezier(.25,.8,.25,1) forwards}.md-ripple.md-active.md-fadeout{opacity:0!important;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.6s}@keyframes ripple{to{transform:scale(2.2) translateZ(0)}}html{height:100%;box-sizing:border-box}html *,html :after,html :before{box-sizing:inherit}body{min-height:100%;margin:0;position:relative;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:rgba(0,0,0,.87);font-family:Roboto,Noto Sans,Noto,sans-serif}ul:not(.md-list)>li+li{margin-top:8px}audio,canvas,embed,iframe,img,object,svg,video{max-width:100%;font-style:italic;vertical-align:middle}audio:not(.md-image),canvas:not(.md-image),embed:not(.md-image),iframe:not(.md-image),img:not(.md-image),object:not(.md-image),svg:not(.md-image),video:not(.md-image){height:auto}[tabindex=\\\"-1\\\"]:focus{outline:none!important}.md-scrollbar::-webkit-scrollbar,.md-scrollbar ::-webkit-scrollbar{width:10px;height:10px;box-shadow:inset 1px 1px 0 rgba(0,0,0,.12);transition:all .5s cubic-bezier(.35,0,.25,1);background-color:rgba(0,0,0,.05)}.md-scrollbar::-webkit-scrollbar:hover,.md-scrollbar ::-webkit-scrollbar:hover{box-shadow:inset 1px 1px 0 rgba(0,0,0,.054),inset 0 -1px 0 rgba(0,0,0,.038);background-color:rgba(0,0,0,.087)}.md-scrollbar::-webkit-scrollbar-button,.md-scrollbar ::-webkit-scrollbar-button{display:none}.md-scrollbar::-webkit-scrollbar-corner,.md-scrollbar ::-webkit-scrollbar-corner{background-color:transparent}.md-scrollbar::-webkit-scrollbar-thumb,.md-scrollbar ::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.26);box-shadow:inset 1px 1px 0 rgba(0,0,0,.054),inset 0 -1px 0 rgba(0,0,0,.087);transition:all .5s cubic-bezier(.35,0,.25,1)}.md-caption{font-size:12px;font-weight:400;letter-spacing:.02em;line-height:17px}.md-body-1,body{font-weight:400;line-height:20px}.md-body-1,.md-body-2,body{font-size:14px;letter-spacing:.01em}.md-body-2{font-weight:500;line-height:24px}.md-subheading{font-size:16px;font-weight:400;letter-spacing:.01em;line-height:24px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em;line-height:26px}.md-headline{font-size:24px;line-height:32px}.md-display-1,.md-headline{font-weight:400;letter-spacing:0}.md-display-1{font-size:34px;line-height:40px}.md-display-2{font-size:45px;font-weight:400;letter-spacing:0;line-height:48px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:58px}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.01em;line-height:112px}a:not(.md-button):not(.md-bottom-bar-item){text-decoration:none}a:not(.md-button):not(.md-bottom-bar-item):hover{text-decoration:underline}button:focus{outline:none}.md-avatar{width:40px;min-width:40px;height:40px;min-height:40px;margin:auto;display:inline-block;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;border-radius:40px;vertical-align:middle}.md-avatar.md-large{width:64px;min-width:64px;height:64px;min-height:64px;border-radius:64px}.md-avatar.md-large .md-icon{width:40px;min-width:40px;height:40px;min-height:40px;font-size:40px;line-height:40px}.md-avatar.md-avatar-icon{background-color:rgba(0,0,0,.38)}.md-avatar.md-avatar-icon .md-icon{color:#fff}.md-avatar .md-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.md-avatar img{width:100%;height:100%;display:block}.md-avatar .md-ink-ripple{border-radius:50%}.md-avatar .md-ink-ripple .md-ripple.md-active{animation-duration:.9s}.md-avatar-tooltip.md-tooltip-top{margin-top:-8px}.md-avatar-tooltip.md-tooltip-right{margin-left:8px}.md-avatar-tooltip.md-tooltip-bottom{margin-top:8px}.md-avatar-tooltip.md-tooltip-left{margin-left:-8px}.md-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:99;pointer-events:none;background-color:rgba(0,0,0,.54);transform:translateZ(0);opacity:0;transition:all .5s cubic-bezier(.35,0,.25,1)}.md-backdrop.md-active{opacity:1;pointer-events:auto}.md-backdrop.md-transparent{background:rgba(0,0,0,.005)}.md-bottom-bar{width:100%;min-width:100%;height:56px;-ms-flex-pack:center;justify-content:center;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-bottom-bar,.md-bottom-bar-item{position:relative;display:-ms-flexbox;display:flex}.md-bottom-bar-item{max-width:168px;min-width:80px;height:100%;padding:8px 12px 10px;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;-ms-flex:1;flex:1;cursor:pointer;border:none;background:transparent;transform:translateZ(0);color:currentColor;font-family:inherit;font-size:14px;line-height:1em;text-decoration:none}.md-bottom-bar-item.md-active{padding-top:6px}.md-bottom-bar-item.md-active .md-text{transform:scale(1) translateZ(0)}.md-bottom-bar-item.md-active .md-icon,.md-bottom-bar-item.md-active .md-text{color:currentColor}.md-bottom-bar-item[disabled]{opacity:.38}.md-bottom-bar.md-shift .md-bottom-bar-item{min-width:56px;max-width:96px;position:static;-ms-flex:1 1 32px;flex:1 1 32px;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:flex,min-width,max-width;transition-property:flex,min-width,max-width,-ms-flex}.md-bottom-bar.md-shift .md-bottom-bar-item .md-icon{transform:translate3d(0,8px,0)}.md-bottom-bar.md-shift .md-bottom-bar-item .md-text{opacity:0;transform:scale(1) translate3d(0,6px,0)}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active{min-width:96px;max-width:168px;-ms-flex:1 1 72px;flex:1 1 72px}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-icon,.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-text{opacity:1}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-icon{transform:scale(1) translateZ(0)}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-text{transform:scale(1) translate3d(0,2px,0)}.md-bottom-bar-item .md-text{transform:scale(.8571) translateY(2px);transition:all .4s cubic-bezier(.25,.8,.25,1),color .15s linear,opacity .15s linear}.md-bottom-bar-item .md-icon{transition:all .4s cubic-bezier(.25,.8,.25,1),color .15s linear}.md-button{min-width:88px;min-height:36px;margin:6px 8px;padding:0 16px;display:inline-block;position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;background:none;border:0;border-radius:2px;transition:all .4s cubic-bezier(.25,.8,.25,1);color:currentColor;font-family:inherit;font-size:14px;font-style:inherit;font-variant:inherit;font-weight:500;letter-spacing:inherit;line-height:36px;text-align:center;text-transform:uppercase;text-decoration:none;vertical-align:top;white-space:nowrap}.md-button,.md-button:focus{outline:none}.md-button::-moz-focus-inner{border:0}.md-button:hover:not([disabled]):not(.md-raised){background-color:hsla(0,0%,60%,.2);text-decoration:none}.md-button:hover:not([disabled]).md-raised{background-color:rgba(0,0,0,.12)}.md-button:active:not([disabled]){background-color:hsla(0,0%,60%,.4)}.md-button.md-raised:not([disabled]){box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-button.md-dense{min-height:32px;line-height:32px;font-size:13px}.md-button.md-fab .md-icon,.md-button.md-icon-button .md-icon{position:absolute;top:1px;right:0;bottom:0;left:0}.md-button.md-icon-button{width:40px;min-width:40px;height:40px;margin:0 6px;padding:8px;border-radius:50%;line-height:24px}.md-button.md-icon-button:not([disabled]):hover{background:none}.md-button.md-icon-button.md-dense{width:32px;min-width:32px;height:32px;min-height:32px;padding:4px;line-height:32px}.md-button.md-icon-button .md-ink-ripple{border-radius:50%}.md-button.md-icon-button .md-ink-ripple .md-ripple{top:0!important;right:0!important;bottom:0!important;left:0!important}.md-button.md-icon-button .md-ripple.md-active{animation-duration:.9s}.md-button.md-fab{width:56px;height:56px;padding:0;min-width:0;overflow:hidden;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:56px;line-height:56px;background-clip:padding-box;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:background-color,box-shadow,transform}.md-button.md-fab:focus,.md-button.md-fab:hover{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.md-button.md-fab.md-mini{width:40px;height:40px;line-height:40px}.md-button.md-fab .md-ink-ripple{border-radius:56px}.md-button[disabled]{color:rgba(0,0,0,.26);cursor:default;pointer-events:none}.md-button[disabled].md-fab,.md-button[disabled].md-raised{background-color:rgba(0,0,0,.12)}.md-button[disabled].md-fab{box-shadow:none}.md-button:after{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-button .md-ink-ripple{border-radius:2px;background-clip:padding-box;overflow:hidden}.md-button.md-fab .md-icon,.md-button.md-icon-button .md-icon{display:block}.md-fab.md-fab-bottom-center,.md-fab.md-fab-bottom-left,.md-fab.md-fab-bottom-right,.md-fab.md-fab-top-center,.md-fab.md-fab-top-left,.md-fab.md-fab-top-right,.md-speed-dial.md-fab-bottom-center,.md-speed-dial.md-fab-bottom-left,.md-speed-dial.md-fab-bottom-right,.md-speed-dial.md-fab-top-center,.md-speed-dial.md-fab-top-left,.md-speed-dial.md-fab-top-right{margin:0;position:absolute;z-index:10}.md-fab.md-fab-top-left,.md-speed-dial.md-fab-top-left{top:24px;left:24px}.md-fab.md-fab-top-center,.md-speed-dial.md-fab-top-center{top:24px;left:50%;transform:translateX(-50%)}.md-fab.md-fab-top-right,.md-speed-dial.md-fab-top-right{top:24px;right:24px}.md-fab.md-fab-bottom-left,.md-speed-dial.md-fab-bottom-left{bottom:24px;left:24px}.md-fab.md-fab-bottom-center,.md-speed-dial.md-fab-bottom-center{bottom:24px;left:50%;transform:translateX(-50%)}.md-fab.md-fab-bottom-right,.md-speed-dial.md-fab-bottom-right{right:24px;bottom:24px}.md-button-tooltip.md-tooltip-top{margin-top:-8px}.md-button-tooltip.md-tooltip-right{margin-left:8px}.md-button-tooltip.md-tooltip-bottom{margin-top:8px}.md-button-tooltip.md-tooltip-left{margin-left:-8px}.md-button-toggle{width:auto;display:-ms-flexbox;display:flex}.md-button-toggle>.md-button{margin:0;overflow:hidden;border-width:1px 0 1px 1px;border-radius:0;text-align:center;text-overflow:ellipsis;white-space:nowrap}.md-button-toggle>.md-button:first-child{border-radius:2px 0 0 2px}.md-button-toggle>.md-button:last-child{border-right-width:1px;border-radius:0 2px 2px 0}.md-button-toggle>.md-button:not([disabled]){color:rgba(0,0,0,.54)}.md-button-toggle>.md-button:not([disabled]):hover:not(.md-toggle):not(.md-raised){background-color:hsla(0,0%,60%,.2);text-decoration:none}.md-button-toggle>.md-button .md-ink-ripple{border-radius:2px}.md-button-toggle.md-raised button:not([disabled]),.md-card{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-card{overflow:auto;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;position:relative;z-index:1;border-radius:2px}.md-card.md-with-hover{cursor:pointer;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow}.md-card.md-with-hover:hover{z-index:2;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-card .md-card-media{position:relative}.md-card .md-card-media.md-16-9{overflow:hidden}.md-card .md-card-media.md-16-9:before{width:100%;padding-top:56.25%;display:block;content:\\\" \\\"}.md-card .md-card-media.md-16-9 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card .md-card-media.md-4-3{overflow:hidden}.md-card .md-card-media.md-4-3:before{width:100%;padding-top:75%;display:block;content:\\\" \\\"}.md-card .md-card-media.md-4-3 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card .md-card-media.md-1-1{overflow:hidden}.md-card .md-card-media.md-1-1:before{width:100%;padding-top:100%;display:block;content:\\\" \\\"}.md-card .md-card-media.md-1-1 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card .md-card-media+.md-card-header{padding-top:24px}.md-card .md-card-media+.md-card-content:last-child{padding-bottom:16px}.md-card .md-card-media img{width:100%}.md-card .md-card-header{padding:16px}.md-card .md-card-header:first-child>.md-card-header-text>.md-title:first-child,.md-card .md-card-header:first-child>.md-title:first-child{margin-top:8px}.md-card .md-card-header:last-child{margin-bottom:8px}.md-card .md-card-header.md-card-header-flex{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.md-card .md-card-header+.md-card-content{padding-top:0}.md-card .md-card-header+.md-card-actions:not(:last-child){padding:0 8px}.md-card .md-card-header .md-avatar{margin-right:16px;float:left}.md-card .md-card-header .md-avatar~.md-title{font-size:14px}.md-card .md-card-header .md-avatar~.md-subhead,.md-card .md-card-header .md-avatar~.md-title{font-weight:500;line-height:20px}.md-card .md-card-header .md-button{margin:0}.md-card .md-card-header .md-button:last-child{margin-right:-4px}.md-card .md-card-header .md-button+.md-button{margin-left:8px}.md-card .md-card-header .md-card-header-text{-ms-flex:1;flex:1}.md-card .md-card-header .md-card-media{width:80px;-ms-flex:0 0 80px;flex:0 0 80px;height:80px;margin-left:16px}.md-card .md-card-header .md-card-media.md-medium{width:120px;-ms-flex:0 0 120px;flex:0 0 120px;height:120px}.md-card .md-card-header .md-card-media.md-big{width:160px;-ms-flex:0 0 160px;flex:0 0 160px;height:160px}.md-card .md-subhead,.md-card .md-subheading,.md-card .md-title{margin:0;font-weight:400}.md-card .md-subhead{opacity:.54;font-size:14px;letter-spacing:.01em;line-height:20px}.md-card .md-subhead+.md-title{margin-top:4px}.md-card .md-title{font-size:24px;letter-spacing:0;line-height:32px}.md-card .md-card-media-actions{padding:16px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.md-card .md-card-media-actions .md-card-media{max-width:240px;max-height:240px;-ms-flex:1;flex:1}.md-card .md-card-media-actions .md-card-actions{margin-left:16px;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center}.md-card .md-card-media-actions .md-card-actions .md-button+.md-button{margin:8px 0 0}.md-card .md-card-content{padding:16px;font-size:14px;line-height:22px}.md-card .md-card-content:last-child{padding-bottom:24px}.md-card .md-card-actions{padding:8px;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center}.md-card .md-card-actions .md-button{margin:0}.md-card .md-card-actions .md-button:first-child{margin-left:0}.md-card .md-card-actions .md-button:last-child{margin-right:0}.md-card .md-card-actions .md-button+.md-button{margin-left:4px}.md-card .md-card-area,.md-card>.md-card-area:not(:last-child){position:relative}.md-card>.md-card-area:not(:last-child):after{height:1px;position:absolute;bottom:0;content:\\\" \\\"}.md-card>.md-card-area:not(:last-child):not(.md-inset):after{right:0;left:0}.md-card>.md-card-area:not(:last-child).md-inset:after{right:16px;left:16px}.md-card .md-card-media-cover{position:relative;color:#fff}.md-card .md-card-media-cover.md-text-scrim .md-card-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.md-card .md-card-media-cover .md-card-area{position:absolute;right:0;bottom:0;left:0;z-index:2}.md-card .md-card-media-cover .md-card-header+.md-card-actions{padding-top:0}.md-card .md-card-media-cover .md-subhead{opacity:1}.md-card .md-card-expand{overflow:hidden}.md-card .md-card-expand.md-active [md-expand-trigger]{transform:rotate(180deg) translate3D(0,0,0)}.md-card .md-card-expand.md-active .md-card-content{margin-top:0!important;opacity:1;padding:4px 16px 24px;height:auto}.md-card .md-card-expand .md-card-actions{padding-top:0;position:relative;z-index:2}.md-card .md-card-expand [md-expand-trigger]{transition:all .4s cubic-bezier(.25,.8,.25,1);will-change:transform}.md-card .md-card-expand .md-card-content{height:0;padding:0 16px;position:relative;z-index:1;opacity:0;transform:translate3D(0,0,0);transition:all .4s cubic-bezier(.25,.8,.25,1);will-change:margin,height}.md-checkbox{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-checkbox:not(.md-disabled),.md-checkbox:not(.md-disabled) .md-checkbox-label{cursor:pointer}.md-checkbox .md-checkbox-container{width:20px;min-width:20px;height:20px;position:relative;border-radius:2px;border:2px solid rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-checkbox .md-checkbox-container:focus{outline:none}.md-checkbox .md-checkbox-container:before{width:48px;height:48px;position:absolute;top:50%;left:50%;border-radius:50%;transform:translate(-50%,-50%);transition:all .3s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-checkbox .md-checkbox-container:after{width:6px;height:13px;position:absolute;top:0;left:5px;border:2px solid #fff;border-top:0;border-left:0;opacity:0;transform:rotate(45deg) scale3D(.15,.15,1);transition:all .3s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-checkbox .md-checkbox-container input{position:absolute;left:-999em}.md-checkbox .md-checkbox-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-checkbox .md-checkbox-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-checkbox .md-checkbox-label{height:20px;padding-left:8px;line-height:20px}.md-checkbox.md-checked .md-checkbox-container:after{opacity:1;transform:rotate(45deg) scale3D(1,1,1);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-chip{height:32px;padding:8px 12px;display:inline-block;border-radius:32px;transition:all .4s cubic-bezier(.25,.8,.25,1);font-size:13px;line-height:16px;white-space:nowrap}.md-chip.md-deletable{position:relative;padding-right:32px}.md-chip.md-editable .md-chip-container{cursor:pointer}.md-chip:active,.md-chip:focus{outline:none}.md-chip:active:not(.md-disabled),.md-chip:focus:not(.md-disabled){cursor:pointer;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-chip.md-disabled .md-button{pointer-events:none;cursor:default}.md-chip .md-button.md-delete{width:24px;min-width:24px;height:24px;min-height:24px;margin:0;padding:0;position:absolute;top:4px;right:4px;border-radius:24px;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-chip .md-button.md-delete .md-icon{width:20px;min-width:20px;height:20px;min-height:20px;margin:0;font-size:20px}.md-chip .md-button.md-delete .md-ink-ripple{border-radius:32px}.md-chip .md-button.md-delete .md-ripple{opacity:.54}.md-chips{min-height:54px;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.md-chips .md-chip{margin-right:8px;margin-bottom:4px}.md-chips .md-input{width:128px;-ms-flex:1;flex:1}.md-dialog-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:108}.md-dialog-container.md-active{pointer-events:auto}.md-dialog-container.md-active .md-dialog{opacity:1!important;transform:scale(1)!important;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform}.md-dialog-backdrop{position:fixed;z-index:109}.md-dialog{min-width:280px;max-width:80%;max-height:80%;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;overflow:hidden;position:relative;z-index:110;outline:none;border-radius:2px;opacity:0;box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12);transform:scale(.9,.85);transform-origin:center center;transition:opacity .4s cubic-bezier(.25,.8,.25,1),transform .4s cubic-bezier(.25,.8,.25,1) .05s;will-change:opacity,transform}.md-dialog.md-reference{transform-origin:top center}.md-dialog.md-transition-off{transition:none!important}.md-dialog p{margin:0}.md-dialog-title{margin-bottom:20px;padding:24px 24px 0}.md-dialog-content{padding:0 24px 24px;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;overflow:auto;position:relative}.md-dialog-content:first-child{padding-top:24px}.md-dialog-content p:first-child:not(:only-child){margin-top:0}.md-dialog-content p:last-child:not(:only-child){margin-bottom:0}.md-dialog-body{margin:0 -24px;padding:0 24px;overflow:auto}.md-dialog-actions{min-height:52px;padding:8px 8px 8px 24px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;position:relative}.md-dialog-actions:before{height:1px;position:absolute;top:-1px;right:0;left:0;content:\\\" \\\"}.md-dialog-actions .md-button{min-width:64px;margin:0;padding:0 8px}.md-dialog-actions .md-button+.md-button{margin-left:8px}.md-divider{height:1px;margin:0;padding:0;display:block;border:0;background-color:rgba(0,0,0,.12)}.md-divider.md-inset{margin-left:72px}.md-file{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1}.md-file input[type=file]{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-file .md-icon{cursor:pointer}.md-icon{width:24px;min-width:24px;height:24px;min-height:24px;font-size:24px;margin:auto;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;fill:currentColor;text-rendering:optimizeLegibility;vertical-align:middle}.md-icon.md-size-2x{width:48px;min-width:48px;height:48px;min-height:48px;font-size:48px}.md-icon.md-size-3x{width:72px;min-width:72px;height:72px;min-height:72px;font-size:72px}.md-icon.md-size-4x{width:96px;min-width:96px;height:96px;min-height:96px;font-size:96px}.md-icon.md-size-5x{width:120px;min-width:120px;height:120px;min-height:120px;font-size:120px}.md-icon svg{width:100%;height:100%}img.md-icon{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-image{opacity:0;filter:saturate(20%)}.md-image.md-black-output{filter:brightness(.4) saturate(20%)}.md-image.md-loaded{opacity:1;filter:saturate(100%);transition:opacity 1.1s cubic-bezier(.25,.8,.25,1),filter 2.2s cubic-bezier(.25,.8,.25,1) .3s}.md-input-container{width:100%;min-height:48px;margin:4px 0 24px;padding-top:16px;display:-ms-flexbox;display:flex;position:relative}.md-input-container:after{height:1px;right:0;bottom:0;background-color:rgba(0,0,0,.12);content:\\\" \\\"}.md-input-container:after,.md-input-container label{position:absolute;left:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-input-container label{top:23px;pointer-events:none;transition-duration:.3s;color:rgba(0,0,0,.54);font-size:16px;line-height:20px}.md-input-container input,.md-input-container textarea{width:100%;height:32px;padding:0;display:block;-ms-flex:1;flex:1;border:none;background:none;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:font-size;color:rgba(0,0,0,.54);font-family:inherit;font-size:1px;line-height:32px}.md-input-container input:focus,.md-input-container textarea:focus{outline:none}.md-input-container input::-webkit-input-placeholder,.md-input-container textarea::-webkit-input-placeholder{color:rgba(0,0,0,.54);font-size:16px;text-shadow:none;-webkit-text-fill-color:initial}.md-input-container input~.md-icon:not(.md-icon-delete),.md-input-container textarea~.md-icon:not(.md-icon-delete){margin-left:12px}.md-input-container input~.md-icon:not(.md-icon-delete):after,.md-input-container textarea~.md-icon:not(.md-icon-delete):after{right:0;left:auto}.md-input-container textarea{min-height:32px;max-height:230px;padding:5px 0;resize:none;line-height:1.3em}.md-input-container .md-count,.md-input-container .md-error{height:20px;position:absolute;bottom:-22px;font-size:12px}.md-input-container .md-error{display:block!important;left:0;opacity:0;transform:translate3d(0,-8px,0);transition:all .3s cubic-bezier(.55,0,.55,.2)}.md-input-container .md-count{right:0}.md-input-container .md-icon:not(.md-icon-delete){margin:4px auto;color:rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-input-container .md-icon:not(.md-icon-delete):after{width:36px;height:2px;position:absolute;left:0;bottom:0;z-index:2;content:\\\"\\\"}.md-input-container .md-icon:not(.md-icon-delete)~label{left:36px}.md-input-container .md-icon:not(.md-icon-delete)~.md-file,.md-input-container .md-icon:not(.md-icon-delete)~.md-input,.md-input-container .md-icon:not(.md-icon-delete)~.md-textarea{margin-left:12px}.md-input-container .md-autocomplete,.md-input-container .md-autocomplete .md-menu,.md-input-container .md-autocomplete .md-menu .md-input{width:100%}.md-theme-default.md-input-container .md-autocomplete .md-icon:not(.md-icon-search):after{height:0}.md-input-container.md-input-placeholder label{pointer-events:auto;top:10px;opacity:0;font-size:12px}.md-input-container.md-input-placeholder input,.md-input-container.md-input-placeholder textarea{font-size:16px}.md-input-container.md-has-value label,.md-input-container.md-input-focused label{pointer-events:auto;top:0;opacity:1;font-size:12px}.md-input-container.md-has-value input,.md-input-container.md-has-value textarea,.md-input-container.md-input-focused input,.md-input-container.md-input-focused textarea{font-size:16px}.md-input-container.md-has-value input,.md-input-container.md-has-value textarea{color:rgba(0,0,0,.87)}.md-input-container.md-input-inline label{pointer-events:none}.md-input-container.md-input-inline.md-input-focused label{top:23px;font-size:16px}.md-input-container.md-input-inline.md-has-value label{opacity:0}.md-input-container.md-input-disabled:after{background:0 100% repeat-x;background-image:linear-gradient(90deg,rgba(0,0,0,.38) 0,rgba(0,0,0,.38) 33%,transparent 0);background-size:4px 1px}.md-input-container.md-input-disabled input,.md-input-container.md-input-disabled label,.md-input-container.md-input-disabled textarea{color:rgba(0,0,0,.38)}.md-input-container.md-has-password.md-input-focused .md-toggle-password{color:rgba(0,0,0,.54)}.md-input-container.md-has-password .md-toggle-password{margin:0;position:absolute;right:0;bottom:-2px;color:rgba(0,0,0,.38)}.md-input-container.md-has-password .md-toggle-password .md-ink-ripple{color:rgba(0,0,0,.87)}.md-input-container.md-clearable.md-input-focused .md-clear-input{color:rgba(0,0,0,.54)}.md-input-container.md-clearable .md-clear-input{margin:0;position:absolute;right:0;bottom:-2px;color:rgba(0,0,0,.38)}.md-input-container.md-clearable .md-clear-input .md-ink-ripple{color:rgba(0,0,0,.87)}.md-input-container.md-input-invalid .md-error{opacity:1;transform:translateZ(0)}.md-input-container.md-input-required label:after{top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";font-size:12px;line-height:1em;vertical-align:top}.md-input-container.md-has-select:hover .md-select:not(.md-disabled):after{color:rgba(0,0,0,.87)}.md-layout{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex:1;flex:1}.md-row{-ms-flex-direction:row;flex-direction:row}.md-column{-ms-flex-direction:column;flex-direction:column}.md-layout.md-container{width:100%;max-width:1200px}.md-layout.md-container.md-centered{margin:0 auto}.md-align-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-center{-ms-flex-pack:center;justify-content:center}.md-align-end{-ms-flex-pack:end;justify-content:flex-end}.md-vertical-align-start{-ms-flex-align:start;align-items:flex-start;-ms-flex-line-pack:start;align-content:flex-start}.md-vertical-align-center{-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.md-vertical-align-end{-ms-flex-align:end;align-items:flex-end;-ms-flex-line-pack:end;align-content:flex-end}.md-vertical-align-stretch{-ms-flex-align:stretch;align-items:stretch;-ms-flex-line-pack:stretch;align-content:stretch}.md-gutter:not(.md-column){margin-right:-12px;margin-left:-12px}.md-gutter:not(.md-column)>.md-layout{padding-right:12px;padding-left:12px}.md-gutter .md-column{margin-top:-12px;margin-bottom:-12px}.md-gutter .md-column>.md-layout{padding-top:12px;padding-bottom:12px}.md-gutter-8:not(.md-column){margin-right:-4px;margin-left:-4px}.md-gutter-8:not(.md-column)>.md-layout{padding-right:4px;padding-left:4px}.md-gutter-8 .md-column{margin-top:-4px;margin-bottom:-4px}.md-gutter-8 .md-column>.md-layout{padding-top:4px;padding-bottom:4px}.md-gutter-16:not(.md-column){margin-right:-8px;margin-left:-8px}.md-gutter-16:not(.md-column)>.md-layout{padding-right:8px;padding-left:8px}.md-gutter-16 .md-column{margin-top:-8px;margin-bottom:-8px}.md-gutter-16 .md-column>.md-layout{padding-top:8px;padding-bottom:8px}.md-gutter-24:not(.md-column){margin-right:-12px;margin-left:-12px}.md-gutter-24:not(.md-column)>.md-layout{padding-right:12px;padding-left:12px}.md-gutter-24 .md-column{margin-top:-12px;margin-bottom:-12px}.md-gutter-24 .md-column>.md-layout{padding-top:12px;padding-bottom:12px}.md-gutter-40:not(.md-column){margin-right:-20px;margin-left:-20px}.md-gutter-40:not(.md-column)>.md-layout{padding-right:20px;padding-left:20px}.md-gutter-40 .md-column{margin-top:-20px;margin-bottom:-20px}.md-gutter-40 .md-column>.md-layout{padding-top:20px;padding-bottom:20px}.md-flex{-ms-flex:1 1;flex:1 1}.md-flex-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-33{margin-left:33.33333%}.md-flex-offset-66{margin-left:66.66666%}.md-flex-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-5{margin-left:5%}.md-flex-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-10{margin-left:10%}.md-flex-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-15{margin-left:15%}.md-flex-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-20{margin-left:20%}.md-flex-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-25{margin-left:25%}.md-flex-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-30{margin-left:30%}.md-flex-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-35{margin-left:35%}.md-flex-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-40{margin-left:40%}.md-flex-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-45{margin-left:45%}.md-flex-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-50{margin-left:50%}.md-flex-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-55{margin-left:55%}.md-flex-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-60{margin-left:60%}.md-flex-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-65{margin-left:65%}.md-flex-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-70{margin-left:70%}.md-flex-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-75{margin-left:75%}.md-flex-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-80{margin-left:80%}.md-flex-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-85{margin-left:85%}.md-flex-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-90{margin-left:90%}.md-flex-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-95{margin-left:95%}.md-flex-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-100{margin-left:100%}@media (max-width:944px){.md-gutter:not(.md-column){margin-right:-8px;margin-left:-8px}.md-gutter:not(.md-column)>.md-layout{padding-right:8px;padding-left:8px}.md-gutter .md-column{margin-top:-8px;margin-bottom:-8px}.md-gutter .md-column>.md-layout{padding-top:8px;padding-bottom:8px}.md-row-small{-ms-flex-direction:row;flex-direction:row}.md-column-small{-ms-flex-direction:column;flex-direction:column}.md-flex-small{-ms-flex:1 1;flex:1 1}.md-flex-small-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-small-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-small-33{margin-left:33.33333%}.md-flex-offset-small-66{margin-left:66.66666%}.md-flex-small-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-small-5{margin-left:5%}.md-flex-small-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-small-10{margin-left:10%}.md-flex-small-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-small-15{margin-left:15%}.md-flex-small-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-small-20{margin-left:20%}.md-flex-small-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-small-25{margin-left:25%}.md-flex-small-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-small-30{margin-left:30%}.md-flex-small-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-small-35{margin-left:35%}.md-flex-small-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-small-40{margin-left:40%}.md-flex-small-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-small-45{margin-left:45%}.md-flex-small-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-small-50{margin-left:50%}.md-flex-small-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-small-55{margin-left:55%}.md-flex-small-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-small-60{margin-left:60%}.md-flex-small-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-small-65{margin-left:65%}.md-flex-small-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-small-70{margin-left:70%}.md-flex-small-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-small-75{margin-left:75%}.md-flex-small-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-small-80{margin-left:80%}.md-flex-small-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-small-85{margin-left:85%}.md-flex-small-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-small-90{margin-left:90%}.md-flex-small-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-small-95{margin-left:95%}.md-flex-small-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-small-100{margin-left:100%}.md-align-small-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-small-center{-ms-flex-pack:center;justify-content:center}.md-align-small-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-small{display:none}}@media (min-width:1904px){.md-row-xlarge{-ms-flex-direction:row;flex-direction:row}.md-column-xlarge{-ms-flex-direction:column;flex-direction:column}.md-flex-xlarge{-ms-flex:1 1;flex:1 1}.md-flex-xlarge-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-xlarge-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-xlarge-33{margin-left:33.33333%}.md-flex-offset-xlarge-66{margin-left:66.66666%}.md-flex-xlarge-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-xlarge-5{margin-left:5%}.md-flex-xlarge-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-xlarge-10{margin-left:10%}.md-flex-xlarge-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-xlarge-15{margin-left:15%}.md-flex-xlarge-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-xlarge-20{margin-left:20%}.md-flex-xlarge-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-xlarge-25{margin-left:25%}.md-flex-xlarge-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-xlarge-30{margin-left:30%}.md-flex-xlarge-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-xlarge-35{margin-left:35%}.md-flex-xlarge-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-xlarge-40{margin-left:40%}.md-flex-xlarge-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-xlarge-45{margin-left:45%}.md-flex-xlarge-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-xlarge-50{margin-left:50%}.md-flex-xlarge-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-xlarge-55{margin-left:55%}.md-flex-xlarge-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-xlarge-60{margin-left:60%}.md-flex-xlarge-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-xlarge-65{margin-left:65%}.md-flex-xlarge-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-xlarge-70{margin-left:70%}.md-flex-xlarge-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-xlarge-75{margin-left:75%}.md-flex-xlarge-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-xlarge-80{margin-left:80%}.md-flex-xlarge-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-xlarge-85{margin-left:85%}.md-flex-xlarge-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-xlarge-90{margin-left:90%}.md-flex-xlarge-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-xlarge-95{margin-left:95%}.md-flex-xlarge-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-xlarge-100{margin-left:100%}.md-align-xlarge-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-xlarge-center{-ms-flex-pack:center;justify-content:center}.md-align-xlarge-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-xlarge{display:none}}@media (max-width:1903px){.md-row-large{-ms-flex-direction:row;flex-direction:row}.md-column-large{-ms-flex-direction:column;flex-direction:column}.md-flex-large{-ms-flex:1 1;flex:1 1}.md-flex-large-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-large-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-large-33{margin-left:33.33333%}.md-flex-offset-large-66{margin-left:66.66666%}.md-flex-large-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-large-5{margin-left:5%}.md-flex-large-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-large-10{margin-left:10%}.md-flex-large-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-large-15{margin-left:15%}.md-flex-large-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-large-20{margin-left:20%}.md-flex-large-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-large-25{margin-left:25%}.md-flex-large-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-large-30{margin-left:30%}.md-flex-large-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-large-35{margin-left:35%}.md-flex-large-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-large-40{margin-left:40%}.md-flex-large-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-large-45{margin-left:45%}.md-flex-large-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-large-50{margin-left:50%}.md-flex-large-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-large-55{margin-left:55%}.md-flex-large-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-large-60{margin-left:60%}.md-flex-large-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-large-65{margin-left:65%}.md-flex-large-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-large-70{margin-left:70%}.md-flex-large-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-large-75{margin-left:75%}.md-flex-large-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-large-80{margin-left:80%}.md-flex-large-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-large-85{margin-left:85%}.md-flex-large-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-large-90{margin-left:90%}.md-flex-large-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-large-95{margin-left:95%}.md-flex-large-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-large-100{margin-left:100%}.md-align-large-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-large-center{-ms-flex-pack:center;justify-content:center}.md-align-large-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-large{display:none}}@media (max-width:1264px){.md-row-medium{-ms-flex-direction:row;flex-direction:row}.md-column-medium{-ms-flex-direction:column;flex-direction:column}.md-flex-medium{-ms-flex:1 1;flex:1 1}.md-flex-medium-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-medium-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-medium-33{margin-left:33.33333%}.md-flex-offset-medium-66{margin-left:66.66666%}.md-flex-medium-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-medium-5{margin-left:5%}.md-flex-medium-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-medium-10{margin-left:10%}.md-flex-medium-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-medium-15{margin-left:15%}.md-flex-medium-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-medium-20{margin-left:20%}.md-flex-medium-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-medium-25{margin-left:25%}.md-flex-medium-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-medium-30{margin-left:30%}.md-flex-medium-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-medium-35{margin-left:35%}.md-flex-medium-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-medium-40{margin-left:40%}.md-flex-medium-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-medium-45{margin-left:45%}.md-flex-medium-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-medium-50{margin-left:50%}.md-flex-medium-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-medium-55{margin-left:55%}.md-flex-medium-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-medium-60{margin-left:60%}.md-flex-medium-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-medium-65{margin-left:65%}.md-flex-medium-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-medium-70{margin-left:70%}.md-flex-medium-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-medium-75{margin-left:75%}.md-flex-medium-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-medium-80{margin-left:80%}.md-flex-medium-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-medium-85{margin-left:85%}.md-flex-medium-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-medium-90{margin-left:90%}.md-flex-medium-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-medium-95{margin-left:95%}.md-flex-medium-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-medium-100{margin-left:100%}.md-align-medium-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-medium-center{-ms-flex-pack:center;justify-content:center}.md-align-medium-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-medium{display:none}}@media (max-width:600px){.md-row-xsmall{-ms-flex-direction:row;flex-direction:row}.md-column-xsmall{-ms-flex-direction:column;flex-direction:column}.md-flex-xsmall{-ms-flex:1 1;flex:1 1}.md-flex-xsmall-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-xsmall-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-xsmall-33{margin-left:33.33333%}.md-flex-offset-xsmall-66{margin-left:66.66666%}.md-flex-xsmall-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-xsmall-5{margin-left:5%}.md-flex-xsmall-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-xsmall-10{margin-left:10%}.md-flex-xsmall-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-xsmall-15{margin-left:15%}.md-flex-xsmall-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-xsmall-20{margin-left:20%}.md-flex-xsmall-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-xsmall-25{margin-left:25%}.md-flex-xsmall-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-xsmall-30{margin-left:30%}.md-flex-xsmall-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-xsmall-35{margin-left:35%}.md-flex-xsmall-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-xsmall-40{margin-left:40%}.md-flex-xsmall-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-xsmall-45{margin-left:45%}.md-flex-xsmall-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-xsmall-50{margin-left:50%}.md-flex-xsmall-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-xsmall-55{margin-left:55%}.md-flex-xsmall-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-xsmall-60{margin-left:60%}.md-flex-xsmall-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-xsmall-65{margin-left:65%}.md-flex-xsmall-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-xsmall-70{margin-left:70%}.md-flex-xsmall-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-xsmall-75{margin-left:75%}.md-flex-xsmall-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-xsmall-80{margin-left:80%}.md-flex-xsmall-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-xsmall-85{margin-left:85%}.md-flex-xsmall-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-xsmall-90{margin-left:90%}.md-flex-xsmall-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-xsmall-95{margin-left:95%}.md-flex-xsmall-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-xsmall-100{margin-left:100%}.md-align-xsmall-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-xsmall-center{-ms-flex-pack:center;justify-content:center}.md-align-xsmall-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-xsmall{display:none}}@media (min-width:1265px){.md-row-large-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-large-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-large-and-up{-ms-flex:1 1;flex:1 1}.md-flex-large-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-large-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-large-and-up-33{margin-left:33.33333%}.md-flex-offset-large-and-up-66{margin-left:66.66666%}.md-flex-large-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-large-and-up-5{margin-left:5%}.md-flex-large-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-large-and-up-10{margin-left:10%}.md-flex-large-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-large-and-up-15{margin-left:15%}.md-flex-large-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-large-and-up-20{margin-left:20%}.md-flex-large-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-large-and-up-25{margin-left:25%}.md-flex-large-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-large-and-up-30{margin-left:30%}.md-flex-large-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-large-and-up-35{margin-left:35%}.md-flex-large-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-large-and-up-40{margin-left:40%}.md-flex-large-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-large-and-up-45{margin-left:45%}.md-flex-large-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-large-and-up-50{margin-left:50%}.md-flex-large-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-large-and-up-55{margin-left:55%}.md-flex-large-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-large-and-up-60{margin-left:60%}.md-flex-large-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-large-and-up-65{margin-left:65%}.md-flex-large-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-large-and-up-70{margin-left:70%}.md-flex-large-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-large-and-up-75{margin-left:75%}.md-flex-large-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-large-and-up-80{margin-left:80%}.md-flex-large-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-large-and-up-85{margin-left:85%}.md-flex-large-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-large-and-up-90{margin-left:90%}.md-flex-large-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-large-and-up-95{margin-left:95%}.md-flex-large-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-large-and-up-100{margin-left:100%}.md-align-large-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-large-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-large-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-large-and-up{display:none}}@media (min-width:945px){.md-row-medium-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-medium-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-medium-and-up{-ms-flex:1 1;flex:1 1}.md-flex-medium-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-medium-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-medium-and-up-33{margin-left:33.33333%}.md-flex-offset-medium-and-up-66{margin-left:66.66666%}.md-flex-medium-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-medium-and-up-5{margin-left:5%}.md-flex-medium-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-medium-and-up-10{margin-left:10%}.md-flex-medium-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-medium-and-up-15{margin-left:15%}.md-flex-medium-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-medium-and-up-20{margin-left:20%}.md-flex-medium-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-medium-and-up-25{margin-left:25%}.md-flex-medium-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-medium-and-up-30{margin-left:30%}.md-flex-medium-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-medium-and-up-35{margin-left:35%}.md-flex-medium-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-medium-and-up-40{margin-left:40%}.md-flex-medium-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-medium-and-up-45{margin-left:45%}.md-flex-medium-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-medium-and-up-50{margin-left:50%}.md-flex-medium-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-medium-and-up-55{margin-left:55%}.md-flex-medium-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-medium-and-up-60{margin-left:60%}.md-flex-medium-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-medium-and-up-65{margin-left:65%}.md-flex-medium-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-medium-and-up-70{margin-left:70%}.md-flex-medium-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-medium-and-up-75{margin-left:75%}.md-flex-medium-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-medium-and-up-80{margin-left:80%}.md-flex-medium-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-medium-and-up-85{margin-left:85%}.md-flex-medium-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-medium-and-up-90{margin-left:90%}.md-flex-medium-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-medium-and-up-95{margin-left:95%}.md-flex-medium-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-medium-and-up-100{margin-left:100%}.md-align-medium-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-medium-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-medium-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-medium-and-up{display:none}}@media (min-width:601px){.md-row-small-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-small-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-small-and-up{-ms-flex:1 1;flex:1 1}.md-flex-small-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-small-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-small-and-up-33{margin-left:33.33333%}.md-flex-offset-small-and-up-66{margin-left:66.66666%}.md-flex-small-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-small-and-up-5{margin-left:5%}.md-flex-small-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-small-and-up-10{margin-left:10%}.md-flex-small-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-small-and-up-15{margin-left:15%}.md-flex-small-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-small-and-up-20{margin-left:20%}.md-flex-small-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-small-and-up-25{margin-left:25%}.md-flex-small-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-small-and-up-30{margin-left:30%}.md-flex-small-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-small-and-up-35{margin-left:35%}.md-flex-small-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-small-and-up-40{margin-left:40%}.md-flex-small-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-small-and-up-45{margin-left:45%}.md-flex-small-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-small-and-up-50{margin-left:50%}.md-flex-small-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-small-and-up-55{margin-left:55%}.md-flex-small-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-small-and-up-60{margin-left:60%}.md-flex-small-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-small-and-up-65{margin-left:65%}.md-flex-small-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-small-and-up-70{margin-left:70%}.md-flex-small-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-small-and-up-75{margin-left:75%}.md-flex-small-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-small-and-up-80{margin-left:80%}.md-flex-small-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-small-and-up-85{margin-left:85%}.md-flex-small-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-small-and-up-90{margin-left:90%}.md-flex-small-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-small-and-up-95{margin-left:95%}.md-flex-small-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-small-and-up-100{margin-left:100%}.md-align-small-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-small-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-small-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-small-and-up{display:none}}@media (min-width:300px){.md-row-xsmall-and-up{-ms-flex-direction:row;flex-direction:row}.md-column-xsmall-and-up{-ms-flex-direction:column;flex-direction:column}.md-flex-xsmall-and-up{-ms-flex:1 1;flex:1 1}.md-flex-xsmall-and-up-33{min-width:33.33333%;-ms-flex:0 1 33.33333%;flex:0 1 33.33333%}.md-flex-xsmall-and-up-66{min-width:33.33333%;-ms-flex:0 1 66.66666%;flex:0 1 66.66666%}.md-flex-offset-xsmall-and-up-33{margin-left:33.33333%}.md-flex-offset-xsmall-and-up-66{margin-left:66.66666%}.md-flex-xsmall-and-up-5{min-width:5%;-ms-flex:0 1 5%;flex:0 1 5%}.md-flex-offset-xsmall-and-up-5{margin-left:5%}.md-flex-xsmall-and-up-10{min-width:10%;-ms-flex:0 1 10%;flex:0 1 10%}.md-flex-offset-xsmall-and-up-10{margin-left:10%}.md-flex-xsmall-and-up-15{min-width:15%;-ms-flex:0 1 15%;flex:0 1 15%}.md-flex-offset-xsmall-and-up-15{margin-left:15%}.md-flex-xsmall-and-up-20{min-width:20%;-ms-flex:0 1 20%;flex:0 1 20%}.md-flex-offset-xsmall-and-up-20{margin-left:20%}.md-flex-xsmall-and-up-25{min-width:25%;-ms-flex:0 1 25%;flex:0 1 25%}.md-flex-offset-xsmall-and-up-25{margin-left:25%}.md-flex-xsmall-and-up-30{min-width:30%;-ms-flex:0 1 30%;flex:0 1 30%}.md-flex-offset-xsmall-and-up-30{margin-left:30%}.md-flex-xsmall-and-up-35{min-width:35%;-ms-flex:0 1 35%;flex:0 1 35%}.md-flex-offset-xsmall-and-up-35{margin-left:35%}.md-flex-xsmall-and-up-40{min-width:40%;-ms-flex:0 1 40%;flex:0 1 40%}.md-flex-offset-xsmall-and-up-40{margin-left:40%}.md-flex-xsmall-and-up-45{min-width:45%;-ms-flex:0 1 45%;flex:0 1 45%}.md-flex-offset-xsmall-and-up-45{margin-left:45%}.md-flex-xsmall-and-up-50{min-width:50%;-ms-flex:0 1 50%;flex:0 1 50%}.md-flex-offset-xsmall-and-up-50{margin-left:50%}.md-flex-xsmall-and-up-55{min-width:55%;-ms-flex:0 1 55%;flex:0 1 55%}.md-flex-offset-xsmall-and-up-55{margin-left:55%}.md-flex-xsmall-and-up-60{min-width:60%;-ms-flex:0 1 60%;flex:0 1 60%}.md-flex-offset-xsmall-and-up-60{margin-left:60%}.md-flex-xsmall-and-up-65{min-width:65%;-ms-flex:0 1 65%;flex:0 1 65%}.md-flex-offset-xsmall-and-up-65{margin-left:65%}.md-flex-xsmall-and-up-70{min-width:70%;-ms-flex:0 1 70%;flex:0 1 70%}.md-flex-offset-xsmall-and-up-70{margin-left:70%}.md-flex-xsmall-and-up-75{min-width:75%;-ms-flex:0 1 75%;flex:0 1 75%}.md-flex-offset-xsmall-and-up-75{margin-left:75%}.md-flex-xsmall-and-up-80{min-width:80%;-ms-flex:0 1 80%;flex:0 1 80%}.md-flex-offset-xsmall-and-up-80{margin-left:80%}.md-flex-xsmall-and-up-85{min-width:85%;-ms-flex:0 1 85%;flex:0 1 85%}.md-flex-offset-xsmall-and-up-85{margin-left:85%}.md-flex-xsmall-and-up-90{min-width:90%;-ms-flex:0 1 90%;flex:0 1 90%}.md-flex-offset-xsmall-and-up-90{margin-left:90%}.md-flex-xsmall-and-up-95{min-width:95%;-ms-flex:0 1 95%;flex:0 1 95%}.md-flex-offset-xsmall-and-up-95{margin-left:95%}.md-flex-xsmall-and-up-100{min-width:100%;-ms-flex:0 1 100%;flex:0 1 100%}.md-flex-offset-xsmall-and-up-100{margin-left:100%}.md-align-xsmall-and-up-start{-ms-flex-pack:start;justify-content:flex-start}.md-align-xsmall-and-up-center{-ms-flex-pack:center;justify-content:center}.md-align-xsmall-and-up-end{-ms-flex-pack:end;justify-content:flex-end}.md-hide-xsmall-and-up{display:none}}.md-list{margin:0;padding:8px 0;display:-ms-flexbox;display:flex;-ms-flex-flow:column nowrap;flex-flow:column nowrap;position:relative;list-style:none}.md-list.md-dense{padding:4px 0}.md-list.md-dense .md-list-item.md-inset .md-list-item-container{padding-left:72px}.md-list.md-dense .md-list-item .md-list-item-container{min-height:40px;font-size:13px}.md-list.md-dense .md-list-item .md-list-item-container .md-avatar:first-child,.md-list.md-dense .md-list-item .md-list-item-container .md-list-action:first-child{margin-right:24px}.md-list.md-dense .md-avatar{width:32px;min-width:32px;height:32px;min-height:32px}.md-list.md-dense .md-list-item-expand{min-height:40px}.md-list.md-double-line.md-dense .md-list-item .md-list-item-container{min-height:60px}.md-list.md-double-line.md-dense .md-list-item .md-avatar{width:36px;min-width:36px;height:36px;min-height:36px}.md-list.md-double-line.md-dense .md-list-item .md-avatar .md-avatar:first-child,.md-list.md-double-line.md-dense .md-list-item .md-avatar .md-list-action:first-child{margin-right:20px}.md-list.md-double-line.md-dense .md-list-text-container>:first-child,.md-list.md-double-line.md-dense .md-list-text-container>:nth-child(2){font-size:13px}.md-list.md-double-line .md-list-item .md-list-item-container{min-height:72px}.md-list.md-triple-line.md-dense .md-list-item .md-list-item-container{min-height:76px}.md-list.md-triple-line.md-dense .md-list-item .md-avatar{width:36px;min-width:36px;height:36px;min-height:36px}.md-list.md-triple-line.md-dense .md-list-item .md-avatar .md-avatar:first-child,.md-list.md-triple-line.md-dense .md-list-item .md-avatar .md-list-action:first-child{margin-right:20px}.md-list.md-triple-line.md-dense .md-list-text-container>:first-child,.md-list.md-triple-line.md-dense .md-list-text-container>:nth-child(2){font-size:13px}.md-list.md-triple-line .md-list-item .md-list-item-container{min-height:88px}.md-list.md-triple-line .md-avatar{margin:0}.md-list .md-subheader.md-inset{padding-left:72px}.md-list>.md-subheader:first-of-type{margin-top:-8px}.md-list-item{height:auto;position:relative;z-index:2}.md-list-item.md-disabled{cursor:default;pointer-events:none}.md-list-item.md-inset .md-list-item-container{padding-left:72px}.md-list-item .md-button-ghost{width:100%;margin:0;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:0}.md-list-item .md-button:not(.md-button-ghost):not(.md-list-item-container){position:relative;z-index:2}.md-list-item .md-button:not(.md-button-ghost):not(.md-list-item-container) .md-icon{position:relative}.md-list-item .md-list-item-container{min-height:48px;margin:0;padding:0 16px;display:-ms-flexbox;display:flex;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;-ms-flex:1;flex:1;position:relative;font-size:16px;font-weight:400;text-align:left;text-transform:none}.md-list-item .md-list-item-container:hover{text-decoration:none}.md-list-item .md-list-item-container>.md-icon:first-child{margin-right:32px}.md-list-item .md-list-item-container .md-avatar:first-child,.md-list-item .md-list-item-container .md-list-action:first-child{margin-right:16px}.md-list-item .md-list-item-container .md-list-action{margin:0 -10px 0 0}.md-list-item .md-list-item-container .md-list-action:nth-child(3){margin:0 -10px 0 16px}.md-list-item .md-divider{position:absolute;bottom:0;right:0;left:0}.md-list-item .md-avatar,.md-list-item .md-icon,.md-list-item .md-list-action:first-child{margin:0}.md-list-item .md-avatar:first-of-type+*,.md-list-item .md-icon:first-of-type+*,.md-list-item .md-list-action:first-child:first-of-type+*{-ms-flex:1 1 auto;flex:1 1 auto}.md-list-item .md-avatar{margin-top:8px;margin-bottom:8px}.md-list-item .md-icon{color:rgba(0,0,0,.54)}.md-list-item .md-ink-ripple{border-radius:0}.md-list-item-expand{min-height:48px;-ms-flex-flow:column wrap;flex-flow:column wrap;overflow:hidden;transform:translate3D(0,0,0)}.md-list-item-expand:after,.md-list-item-expand:before{height:1px;position:absolute;right:0;left:0;z-index:3;transition:all .4s cubic-bezier(.25,.8,.25,1);content:\\\" \\\"}.md-list-item-expand:before{top:0}.md-list-item-expand:after{bottom:0}.md-list-item-expand.md-active{position:relative}.md-list-item-expand.md-active:after,.md-list-item-expand.md-active:before{background-color:rgba(0,0,0,.12)}.md-list-item-expand.md-active.md-active+.md-active:before,.md-list-item-expand.md-active:first-of-type:before,.md-list-item-expand.md-active:last-of-type:after{background:none}.md-list-item-expand.md-active>.md-list-item-container .md-list-expand-indicator{transform:rotate(180deg) translate3D(0,0,0)}.md-list-item-expand.md-active>.md-list-expand{margin-bottom:0!important}.md-list-item-expand .md-expansion-indicator,.md-list-item-expand .md-icon,.md-list-item-expand .md-list-item-container{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-list-item-expand .md-list-expand{position:relative;z-index:1;transform:translate3D(0,0,0);will-change:margin-bottom;transition:all .5s cubic-bezier(.35,0,.25,1)}.md-list-item-expand .md-list-expand.md-transition-off{transition:none!important}.md-list-item-expand .md-list-expand .md-list{padding:0}.md-list-text-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-ms-flex:1;flex:1;overflow:hidden;line-height:1.25em;white-space:normal}.md-list-text-container>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-list-text-container>:first-child{font-size:16px}.md-list-text-container>:nth-child(2),.md-list-text-container>:nth-child(3){margin:0;color:rgba(0,0,0,.54);font-size:14px}.md-list-text-container>:nth-child(2):not(:last-child){color:rgba(0,0,0,.87)}.md-menu{display:inline-block}.md-menu-content{width:168px;min-width:84px;max-width:392px;min-height:64px;max-height:calc(100vh - 32px);overflow-x:hidden;overflow-y:auto;position:absolute;z-index:131;transform:scale(.9,.85) translateZ(0);border-radius:2px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);opacity:0;transition:width .4s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.55,0,.55,.2),margin .3s cubic-bezier(.55,0,.55,.2),transform 0s cubic-bezier(.55,0,.55,.2) .4s;will-change:transform,opacity,width}.md-menu-content.md-direction-bottom-right{margin-top:-20px;margin-left:-8px;transform-origin:top left}.md-menu-content.md-direction-bottom-right.md-active{margin-top:-11px}.md-menu-content.md-direction-bottom-left{margin-top:-20px;margin-left:8px;transform-origin:top right}.md-menu-content.md-direction-bottom-left.md-active{margin-top:-11px}.md-menu-content.md-direction-top-right{margin-top:20px;margin-left:-8px;transform-origin:bottom left}.md-menu-content.md-direction-top-right.md-active{margin-top:11px}.md-menu-content.md-direction-top-left{margin-top:20px;margin-left:8px;transform-origin:bottom right}.md-menu-content.md-direction-top-left.md-active{margin-top:11px}.md-menu-content.md-align-trigger{margin:0}.md-menu-content.md-size-1{width:84px}.md-menu-content.md-size-2{width:112px}.md-menu-content.md-size-3{width:168px}.md-menu-content.md-size-4{width:224px}.md-menu-content.md-size-5{width:280px}.md-menu-content.md-size-6{width:336px}.md-menu-content.md-size-7{width:392px}.md-menu-content.md-active{pointer-events:auto;opacity:1;transform:scale(1) translateZ(0);transition:width .4s cubic-bezier(.25,.8,.25,1),opacity .4s cubic-bezier(.25,.8,.25,1),transform .3s cubic-bezier(.25,.8,.25,1)}.md-menu-content.md-active .md-list{opacity:1;transition:opacity .3s cubic-bezier(.25,.8,.25,1)}.md-menu-content .md-list{opacity:0;transition:opacity .3s cubic-bezier(.25,.8,.25,1)}.md-menu-item{cursor:pointer;font-size:16px;line-height:1.2em}.md-menu-item[disabled]{cursor:default}.md-menu-item .md-list-item-holder{overflow:hidden;text-overflow:ellipsis}.md-menu-backdrop{z-index:130}.md-boards{width:100%;height:100%!important;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;position:relative}.md-boards.md-transition-off *{transition:none!important}.md-boards.md-dynamic-height .md-boards-content{transition:height .4s cubic-bezier(.25,.8,.25,1)}.md-boards .md-boards-navigation{bottom:0;width:100%;height:48px;min-height:48px;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.md-boards .md-board-header,.md-boards .md-boards-navigation{position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-boards .md-board-header{min-width:24px;max-width:24px;margin:0;padding:0 12px;display:inline-block;cursor:pointer;border:0;background:none;font-family:inherit;font-size:14px;font-weight:500;text-transform:uppercase}.md-boards .md-board-header.md-disabled{cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-boards .md-board-header-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.md-boards .md-board-header-container .md-icon{margin:0}.md-boards .md-board-header-container .md-icon:not(.md-control){width:16px;min-width:16px;height:16px;min-height:16px;font-size:16px}.md-boards .md-boards-content{width:100%;position:relative;overflow:hidden}.md-boards .md-boards-wrapper{width:9999em;height:100%!important;position:absolute;top:0;right:0;bottom:0;left:0;transform:translateZ(0);transition:transform .4s cubic-bezier(.25,.8,.25,1)}.md-boards .md-board{padding:16px;position:absolute;top:0;left:0;right:0}.md-progress{width:100%;height:4px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-progress.md-indeterminate .md-progress-track{right:0}.md-progress.md-indeterminate .md-progress-track:after,.md-progress.md-indeterminate .md-progress-track:before{position:absolute;top:0;bottom:0;left:0;will-change:left,right;content:\\\"\\\"}.md-progress.md-indeterminate .md-progress-track:before{animation:progress-indeterminate 2.3s cubic-bezier(.65,.815,.735,.395) infinite}.md-progress.md-indeterminate .md-progress-track:after{animation:progress-indeterminate-short 2.3s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.md-progress.md-progress-enter,.md-progress.md-progress-leave-active{opacity:0;transform:scaleY(0) translateZ(0)}.md-progress.md-progress-enter-active{transform:scaleY(1) translateZ(0)}.md-progress-track{position:absolute;top:0;bottom:0;left:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}@keyframes progress-indeterminate{0%{right:100%;left:-35%}60%{right:-100%;left:100%}to{right:-100%;left:100%}}@keyframes progress-indeterminate-short{0%{right:100%;left:-200%}60%{right:-8%;left:107%}to{right:-8%;left:107%}}.md-radio{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-radio:not(.md-disabled),.md-radio:not(.md-disabled) .md-radio-label{cursor:pointer}.md-radio .md-radio-container{width:20px;height:20px;position:relative;border-radius:50%;border:2px solid rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-radio .md-radio-container:before{width:48px;height:48px;top:50%;left:50%;transform:translate(-50%,-50%)}.md-radio .md-radio-container:after,.md-radio .md-radio-container:before{position:absolute;border-radius:50%;transition:all .3s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-radio .md-radio-container:after{top:3px;right:3px;bottom:3px;left:3px;opacity:0;transform:scale3D(.38,.38,1)}.md-radio .md-radio-container input{position:absolute;left:-999em}.md-radio .md-radio-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-radio .md-radio-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-radio .md-radio-label{height:20px;padding-left:8px;line-height:20px}.md-radio.md-checked .md-radio-container:after{opacity:1;transform:scale3D(1,1,1);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-rating-bar{width:auto;display:-ms-flexbox;display:flex;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:3px;border-radius:2px}.md-rating-bar>.md-full-icon{overflow-x:hidden;display:inherit}.md-rating-bar>.md-empty-icon>.md-icon,.md-rating-bar>.md-full-icon>.md-icon{margin:0;white-space:nowrap;cursor:pointer}.md-rating-bar:not([disabled]):hover{background-color:hsla(0,0%,60%,.2)}.md-rating-bar[disabled]>.md-empty-icon>.md-icon,.md-rating-bar[disabled]>.md-full-icon>.md-icon{cursor:default}.md-select{width:100%;min-width:128px;height:32px;position:relative}.md-select:focus{outline:none}.md-select:not(.md-select-icon):after{margin-top:2px;position:absolute;top:50%;right:0;transform:translateY(-50%) scaleY(.45) scaleX(.85);transition:all .15s linear;content:\\\"\\\\25BC\\\"}.md-select.md-active .md-select-menu{top:-8px;pointer-events:auto;opacity:1;transform:translateY(-8px) scale3D(1,1,1);transform-origin:center top;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.25s;transition-property:opacity,transform,top}.md-select.md-active .md-select-menu>*{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.15s;transition-delay:.1s}.md-select.md-disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;user-drag:none}.md-select.md-disabled input,.md-select.md-disabled label,.md-select.md-disabled span,.md-select.md-disabled textarea{color:rgba(0,0,0,.38)}.md-select select{position:absolute;left:-999em}.md-select .md-menu,.md-select .md-select-value{width:100%;height:32px;display:block;position:relative}.md-select .md-select-value{padding-right:24px;cursor:pointer;overflow:hidden;z-index:2;font-size:16px;line-height:33px;text-overflow:ellipsis;white-space:nowrap}.md-select .md-subheader{color:hsla(0,0%,46%,.87);text-transform:uppercase}.md-select .md-subheader:first-child{margin-top:-8px}.md-select-content{width:auto;max-height:256px}.md-select-content.md-direction-bottom-right{margin-top:-15px;margin-left:-16px}.md-select-content .md-option[disabled]{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;user-drag:none}.md-select-content .md-menu-item .md-list-item-holder{overflow:visible;-ms-flex-pack:start;justify-content:flex-start}.md-select-content.md-multiple .md-checkbox{margin:0}.md-select-content.md-multiple .md-checkbox-label{padding-left:16px;cursor:pointer}.md-sidenav.md-left .md-sidenav-content{left:0;transform:translate3D(-100%,0,0)}.md-sidenav.md-right .md-sidenav-content{right:0;transform:translate3D(100%,0,0)}.md-sidenav.md-fixed .md-sidenav-backdrop,.md-sidenav.md-fixed .md-sidenav-content{position:fixed}.md-sidenav .md-sidenav-content{width:304px;position:absolute;top:0;bottom:0;z-index:100;pointer-events:none;overflow:auto;-webkit-overflow-scrolling:touch;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:transform;will-change:transform}.md-sidenav .md-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:99;pointer-events:none;background-color:rgba(0,0,0,.54);opacity:0;transition:all .5s cubic-bezier(.35,0,.25,1);transition-property:opacity;will-change:opacity}.md-sidenav.md-active .md-sidenav-content{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12);pointer-events:auto;transform:translate3D(0,0,0)}.md-sidenav.md-active .md-sidenav-backdrop{opacity:1;pointer-events:auto}.md-snackbar{display:-ms-flexbox;display:flex;position:fixed;right:0;left:0;z-index:120;pointer-events:none;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:margin-top,margin-bottom}.md-snackbar.md-position-bottom-center,.md-snackbar.md-position-top-center{-ms-flex-pack:center;justify-content:center}.md-snackbar.md-position-bottom-right,.md-snackbar.md-position-top-right{margin-right:24px;-ms-flex-pack:end;justify-content:flex-end}.md-snackbar.md-position-bottom-left,.md-snackbar.md-position-top-left{margin-left:24px;-ms-flex-pack:start;justify-content:flex-start}.md-snackbar.md-position-top-center,.md-snackbar.md-position-top-left,.md-snackbar.md-position-top-right{margin-top:24px}.md-snackbar.md-position-bottom-left,.md-snackbar.md-position-bottom-right{margin-bottom:24px}.md-snackbar.md-position-top-center,.md-snackbar.md-position-top-left,.md-snackbar.md-position-top-right{top:0}.md-snackbar.md-position-top-center .md-snackbar-container,.md-snackbar.md-position-top-left .md-snackbar-container,.md-snackbar.md-position-top-right .md-snackbar-container{transform:translate3D(0,calc(-100% - 24px),0)}.md-snackbar.md-position-bottom-center,.md-snackbar.md-position-bottom-left,.md-snackbar.md-position-bottom-right{bottom:0}.md-snackbar.md-position-bottom-center .md-snackbar-container,.md-snackbar.md-position-bottom-left .md-snackbar-container,.md-snackbar.md-position-bottom-right .md-snackbar-container{transform:translate3D(0,calc(100% + 24px),0)}.md-snackbar.md-active .md-snackbar-container{transform:translate3D(0,0,0)}.md-snackbar.md-active .md-snackbar-content{opacity:1;transition:opacity .4s cubic-bezier(.25,.8,.25,1) .1s}.md-snackbar .md-snackbar-content{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;opacity:0;transition:opacity .2s cubic-bezier(.25,.8,.25,1);will-change:opacity}.md-snackbar .md-button{min-width:64px;margin:-8px -16px}.md-snackbar .md-button:last-child{margin-left:48px}.md-snackbar-container{width:auto;min-width:288px;max-width:568px;min-height:48px;padding:14px 24px;overflow:hidden;pointer-events:auto;border-radius:2px;background-color:#323232;transition:all .4s cubic-bezier(.25,.8,.25,1);color:#fff;font-size:14px}.md-has-toast-top-right .md-fab.md-fab-top-right{transform:translate3D(0,68px,0)}.md-has-toast-top-center .md-fab.md-fab-top-center{transform:translate3D(-50%,68px,0)}.md-has-toast-top-left .md-fab.md-fab-top-left{transform:translate3D(0,68px,0)}.md-has-toast-bottom-right .md-fab.md-fab-bottom-right{transform:translate3D(0,-68px,0)}.md-has-toast-bottom-center .md-fab.md-fab-bottom-center{transform:translate3D(-50%,-68px,0)}.md-has-toast-bottom-left .md-fab.md-fab-bottom-left{transform:translate3D(0,-68px,0)}@media (max-width:600px){.md-snackbar{margin:0!important}.md-snackbar-container{width:100%;max-width:100%;border-radius:0}.md-has-toast-top-right .md-fab.md-fab-top-right{transform:translate3D(0,48px,0)}.md-has-toast-top-center .md-fab.md-fab-top-center{transform:translate3D(-50%,48px,0)}.md-has-toast-top-left .md-fab.md-fab-top-left{transform:translate3D(0,48px,0)}.md-has-toast-bottom-right .md-fab.md-fab-bottom-right{transform:translate3D(0,-48px,0)}.md-has-toast-bottom-center .md-fab.md-fab-bottom-center{transform:translate3D(-50%,-48px,0)}.md-has-toast-bottom-left .md-fab.md-fab-bottom-left{transform:translate3D(0,-48px,0)}}.md-speed-dial{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center}.md-speed-dial.md-direction-top.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(0,80%,0)}.md-speed-dial.md-direction-top [md-fab-trigger]{margin-top:8px}.md-speed-dial.md-direction-top [md-fab-trigger]~.md-button{margin-bottom:16px}.md-speed-dial.md-direction-right{-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center}.md-speed-dial.md-direction-right.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(-80%,0,0)}.md-speed-dial.md-direction-right [md-fab-trigger]{margin-right:8px}.md-speed-dial.md-direction-right [md-fab-trigger]~.md-button{margin-left:16px}.md-speed-dial.md-direction-bottom{-ms-flex-direction:column;flex-direction:column}.md-speed-dial.md-direction-bottom.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(0,-80%,0)}.md-speed-dial.md-direction-bottom [md-fab-trigger]{margin-bottom:8px}.md-speed-dial.md-direction-bottom [md-fab-trigger]~.md-button{margin-top:16px}.md-speed-dial.md-direction-left{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:center;justify-content:center}.md-speed-dial.md-direction-left.md-mode-fling [md-fab-trigger]~.md-button{transform:scale(.95) translate3D(80%,0,0)}.md-speed-dial.md-direction-left [md-fab-trigger]{margin-left:8px}.md-speed-dial.md-direction-left [md-fab-trigger]~.md-button{margin-right:16px}.md-speed-dial.md-mode-scale [md-fab-trigger]~.md-button{transform:scale(.6)}.md-speed-dial.md-active [md-fab-trigger]~.md-button{opacity:1;pointer-events:auto;transform:translate3D(0,0,0)!important}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(2){transition-delay:.05s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(3){transition-delay:.1s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(4){transition-delay:.15s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(5){transition-delay:.2s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(6){transition-delay:.25s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(7){transition-delay:.3s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(8){transition-delay:.35s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(9){transition-delay:.4s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(10){transition-delay:.45s}.md-speed-dial.md-active [md-fab-trigger]~.md-button:nth-child(11){transition-delay:.5s}.md-speed-dial.md-active [md-fab-trigger] [md-icon-morph]{transform:rotate(0);opacity:1}.md-speed-dial.md-active [md-fab-trigger] [md-icon-morph]+.md-icon{transform:rotate(90deg) scale(.8);opacity:0}.md-speed-dial .md-button{margin:0}.md-speed-dial [md-fab-trigger]{position:relative;z-index:2}.md-speed-dial [md-fab-trigger]~.md-button{position:relative;z-index:1;opacity:0;pointer-events:none;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(2){transition-delay:.05s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(3){transition-delay:.1s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(4){transition-delay:.15s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(5){transition-delay:.2s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(6){transition-delay:.25s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(7){transition-delay:.3s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(8){transition-delay:.35s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(9){transition-delay:.4s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(10){transition-delay:.45s}.md-speed-dial [md-fab-trigger]~.md-button:nth-last-child(11){transition-delay:.5s}.md-speed-dial [md-icon-morph],.md-speed-dial [md-icon-morph]+.md-icon{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-speed-dial [md-icon-morph]{opacity:0;transform:rotate(-90deg) scale(.8)}.md-spinner{display:inline-block;position:relative;pointer-events:none;will-change:transform,opacity}.md-spinner.md-indeterminate .md-spinner-draw{animation:spinner-rotate 1.9s linear infinite;transform:rotate(0deg) translateZ(0)}.md-spinner.md-indeterminate .md-spinner-path{stroke-dasharray:2,200;animation:spinner-dash 1.425s ease-in-out infinite}.md-spinner.md-spinner-leave-active{opacity:0;transform:scale(.8) translateZ(0);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-spinner:not(.md-indeterminate).md-spinner-enter-active{transition-duration:2s}.md-spinner:not(.md-indeterminate).md-spinner-enter-active .md-spinner-draw{animation:spinner-initial-rotate 1.98s cubic-bezier(.25,.8,.25,1) forwards}.md-spinner-draw{width:100%;height:100%;margin:auto;position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(270deg) translateZ(0);transform-origin:center center;will-change:transform,opacity}.md-spinner-path{fill:none;stroke-dashoffset:0;stroke-miterlimit:10;transition:all .4s cubic-bezier(.25,.8,.25,1)}@keyframes spinner-rotate{to{transform:rotate(1turn) translateZ(0)}}@keyframes spinner-initial-rotate{0%{opacity:0;transform:rotate(-90deg) translateZ(0)}20%{opacity:1}to{transform:rotate(270deg) translateZ(0)}}@keyframes spinner-dash{0%{stroke-dasharray:2,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.md-stepper{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;position:relative;width:100%}.md-stepper .md-step-header{background:none;border:0;cursor:pointer;-ms-flex-negative:0;flex-shrink:0;font-family:inherit;font-size:12px;font-weight:500;margin:0;max-height:72px;padding:24px;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-stepper .md-step-header .md-step-icons,.md-stepper .md-step-header .md-step-titles{display:inline-block;vertical-align:middle}.md-stepper .md-step-header.md-has-sub-message{padding:15px 24px}.md-stepper .md-step-header.md-has-sub-message .md-step-title{margin-bottom:-4px}.md-stepper .md-step-header .md-step-icon{border-radius:50%;font-size:12px;padding:0 6px}.md-stepper .md-step-header .md-step-error,.md-stepper .md-step-header .md-step-icon{height:24px;line-height:24px;margin-right:8px;min-width:24px;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:24px}.md-stepper .md-step-header .md-step-number{border-radius:50%;display:inline-block;font-size:12px;margin-right:8px;width:24px}.md-stepper .md-step-header .md-step-number span{display:block;line-height:24px;text-align:center}.md-stepper .md-step-header .md-step-title{font-size:inherit}.md-stepper .md-step-header.md-disabled{cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-stepper .md-steps-navigation{display:-ms-flexbox;display:flex;height:72px;min-height:72px;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);z-index:1}.md-stepper .md-steps-navigation.md-alternate-labels{height:104px;min-height:104px}.md-stepper .md-steps-navigation .md-steps-navigation-container{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;width:100%}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-divider{margin:36px 0;position:relative;width:100%}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels{max-height:104px;text-align:center}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels.md-has-sub-message{padding:24px}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels .md-step-icons,.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels .md-step-titles{display:block}.md-stepper .md-steps-navigation .md-steps-navigation-container .md-step-header.md-alternate-labels .md-step-titles{margin-top:10px}.md-stepper .md-steps-container{height:0;overflow:hidden;position:relative;width:100%}.md-stepper .md-steps-container .md-steps-wrapper{bottom:0;left:0;position:absolute;right:0;top:0;transform:translateZ(0);transition:transform .4s cubic-bezier(.25,.8,.25,1);width:9999em}.md-stepper .md-steps-container .md-steps-wrapper .md-step{left:0;padding:16px;position:absolute;right:0;top:0}.md-stepper .md-steps-container .md-steps-wrapper .md-step .md-step-content{padding:16px;font-size:14px;line-height:22px}.md-stepper .md-steps-container .md-steps-wrapper .md-step .md-step-content:last-child{padding-bottom:24px}.md-stepper .md-steps-vertical-container .md-step .md-step-header{padding-bottom:8px}.md-stepper .md-steps-vertical-container .md-step:not(:first-of-type) .md-step-header{padding-top:8px}.md-stepper .md-steps-vertical-container .md-step .md-step-content{margin:0 24px 0 34px;padding-bottom:32px;padding-left:24px;padding-top:8px}.md-stepper .md-steps-vertical-container .md-step:not(:last-of-type) .md-step-content{border-left:1px solid #bdbdbd}@media (min-width:601px){.md-stepper .md-steps-navigation .md-steps-navigation-container{margin-bottom:-15px}}.md-subheader{min-height:48px;padding:0 16px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-flow:row wrap;flex-flow:row wrap;color:rgba(0,0,0,.54);font-size:14px;font-weight:500}.md-switch{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-switch .md-switch-container{width:34px;height:14px;position:relative;border-radius:14px;transition:all .4s cubic-bezier(.25,.8,.25,1);background-color:rgba(0,0,0,.38)}.md-switch .md-switch-container .md-switch-thumb{width:20px;height:20px;position:absolute;top:50%;left:0;background-color:#fafafa;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:all .15s linear}.md-switch .md-switch-container input{position:absolute;left:-999em}.md-switch .md-switch-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-switch .md-switch-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-switch .md-switch-container .md-switch-holder{width:40px;height:40px;margin:0;padding:0;position:absolute;top:50%;left:50%;z-index:2;background:none;border:none;transform:translate(-50%,-50%)}.md-switch .md-switch-container .md-switch-holder:focus{outline:none}.md-switch .md-switch-label{height:14px;padding-left:8px;line-height:14px}.md-switch.md-dragging .md-switch-thumb{cursor:grabbing}.md-switch.md-disabled .md-switch-thumb{cursor:default}.md-table{display:-ms-flexbox;display:flex;-ms-flex-flow:column wrap;flex-flow:column wrap;overflow-x:auto}.md-table.md-transition-off .md-checkbox .md-checkbox-container,.md-table.md-transition-off .md-checkbox .md-checkbox-container:after,.md-table.md-transition-off .md-table-cell{transition:none!important}.md-table table{width:100%;border-spacing:0;border-collapse:collapse;overflow:hidden}.md-table tbody .md-table-row{border-top:1px solid #e0e0e0}.md-table tbody .md-table-row.md-selected .md-table-cell{background-color:#f5f5f5}.md-table tbody .md-table-row:hover .md-table-cell{background-color:#eee}.md-table .md-table-head{padding:0;position:relative;color:rgba(0,0,0,.54);font-size:12px;line-height:16px;text-align:left}.md-table .md-table-head:last-child .md-table-head-container .md-table-head-text{padding-right:24px}.md-table .md-table-head.md-numeric{text-align:right}.md-table .md-table-head .md-icon{width:16px;min-width:16px;height:16px;min-height:16px;font-size:16px;color:rgba(0,0,0,.54)}.md-table .md-table-head .md-icon:not(.md-sortable-icon){margin:0 4px}.md-table .md-table-head .md-icon:first-child{margin-left:0}.md-table .md-table-head .md-icon:last-child{margin-right:0}.md-table .md-table-head-container{height:56px;padding:14px 0;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-table .md-table-head-text{height:28px;padding-right:32px;padding-left:24px;display:inline-block;position:relative;overflow:hidden;line-height:28px;text-overflow:ellipsis;white-space:nowrap}.md-table .md-sortable{cursor:pointer}.md-table .md-sortable:first-of-type .md-sortable-icon{left:auto;right:10px}.md-table .md-sortable.md-sorted,.md-table .md-sortable:hover{color:rgba(0,0,0,.87)}.md-table .md-sortable.md-sorted .md-sortable-icon,.md-table .md-sortable:hover .md-sortable-icon{opacity:1}.md-table .md-sortable.md-sorted .md-sortable-icon{color:rgba(0,0,0,.87)}.md-table .md-sortable.md-sorted-descending .md-sortable-icon{transform:translateY(-50%) rotate(180deg)}.md-table .md-sortable .md-sortable-icon{position:absolute;top:50%;left:2px;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translateY(-50%);opacity:0;color:rgba(0,0,0,.38)}.md-table .md-sortable .md-ink-ripple{color:rgba(0,0,0,.87)}.md-table .md-table-cell{height:48px;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);color:rgba(0,0,0,.87);font-size:13px;line-height:18px}.md-table .md-table-cell:last-child .md-table-cell-container{padding-right:24px}.md-table .md-table-cell.md-numeric{text-align:right}.md-table .md-table-cell.md-numeric .md-icon{margin:0}.md-table .md-table-cell.md-numeric .md-table-cell-container{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.md-table .md-table-cell.md-numeric .md-table-cell-container .md-button .md-icon,.md-table .md-table-cell.md-numeric .md-table-cell-container .md-icon{margin:auto}.md-table .md-table-cell.md-has-action .md-table-cell-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.md-table .md-table-cell .md-table-cell-container{padding:6px 32px 6px 24px}.md-table .md-table-cell .md-button{width:36px;min-width:36px;height:36px;min-height:36px}.md-table .md-table-cell .md-button:last-child{margin:0 -10px 0 0}.md-table .md-table-cell .md-button .md-icon{margin:auto;width:18px;min-width:18px;height:18px;min-height:18px;color:rgba(0,0,0,.54);font-size:18px}.md-table .md-table-selection{width:60px;position:relative;vertical-align:middle}.md-table .md-table-selection+.md-table-cell .md-table-cell-container,.md-table .md-table-selection+.md-table-head .md-table-head-container .md-table-head-text{padding-left:8px}.md-table .md-table-selection .md-table-cell-container{padding-right:16px;padding-left:24px}.md-table .md-table-selection .md-checkbox{margin:0}.md-table .md-table-selection .md-checkbox-container{width:18px;height:18px;margin-top:1px}.md-table .md-table-selection .md-checkbox-container:after{top:-1px;left:4px}.md-table .md-select{min-width:84px}.md-table .md-option,.md-table .md-select-value{font-size:13px}.md-table-edit-trigger{display:inline-block;cursor:pointer;color:rgba(0,0,0,.38)}.md-table-edit-trigger.md-edited{color:rgba(0,0,0,.87)}.md-table-dialog{max-height:0;margin:0;padding:0 24px 2px;position:absolute;top:0;right:0;left:24px;z-index:60;overflow:hidden;pointer-events:none;border-radius:2px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);background-color:#fff;opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1),max-height 0s .5s;transition-duration:.3s;transform:translate3D(0,-8px,0)}.md-table-dialog.md-active{max-height:400px;pointer-events:auto;transform:translate3D(#000);opacity:1;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s}.md-table-dialog.md-large{padding:12px 24px 2px}.md-table-dialog .md-input-container{margin-top:0;margin-bottom:16px}.md-table-dialog .md-input-container.md-input-placeholder input{font-size:13px}.md-table-dialog .md-input-container.md-input-placeholder input::-webkit-input-placeholder{font-size:13px}.md-table-dialog .md-char-counter{font-size:13.5px;color:rgba(0,0,0,.54)}.md-table-dialog .md-button{min-width:64px}.md-table-card{overflow:visible}.md-table-card .md-toolbar{padding-left:16px;background-color:#fff}.md-table-card .md-title{-ms-flex:1;flex:1;font-size:20px}.md-table-card .md-table-pagination{height:56px;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;border-top:1px solid #e0e0e0;color:rgba(0,0,0,.54);font-size:12px}.md-table-card .md-table-pagination .md-table-pagination-previous{margin-right:2px;margin-left:18px}.md-table-card .md-table-pagination .md-select{width:auto;min-width:36px;margin:0 32px}.md-table-card .md-table-pagination .md-select:after{margin-top:0}.md-table-card .md-table-pagination .md-select .md-select-value{padding:0;border:none;font-size:13px}.md-table-card .md-table-pagination .md-button:not([disabled]){color:rgba(0,0,0,.87)}.md-table-card .md-table-pagination .md-button[disabled] .md-icon{color:rgba(0,0,0,.26)}.md-pagination-select.md-direction-bottom-right{margin-top:-16px}.md-pagination-select .md-list-item-holder{font-size:13px}.md-table-alternate-header{position:absolute;top:0;right:0;left:0;z-index:10;pointer-events:none;opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s}.md-table-alternate-header.md-active{pointer-events:auto;opacity:1;transform:translate3D(#000)}.md-table-alternate-header .md-counter{margin-left:8px;-ms-flex:1;flex:1}.md-tabs{width:100%;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;position:relative}.md-tabs.md-transition-off *{transition:none!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .4s cubic-bezier(.25,.8,.25,1)}.md-tabs .md-tabs-navigation{height:48px;min-height:48px;position:relative;z-index:1;display:-ms-flexbox;display:flex;transition:all .4s cubic-bezier(.25,.8,.25,1);overflow:hidden}.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tab-header-navigation-button.md-left{-ms-flex-order:1;order:1}.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tabs-navigation-container{-ms-flex-order:2;order:2}.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tab-header-navigation-button.md-right{-ms-flex-order:3;order:3}.md-tabs .md-tabs-navigation.md-has-icon.md-has-label{min-height:72px}.md-tabs .md-tabs-navigation.md-has-icon.md-has-label .md-icon{margin-bottom:10px}.md-tabs .md-tabs-navigation.md-centered{-ms-flex-pack:center;justify-content:center}.md-tabs .md-tabs-navigation.md-fixed .md-tabs-navigation-container,.md-tabs .md-tabs-navigation.md-fixed .md-tabs-navigation-scroll-container{-ms-flex:1;flex:1}.md-tabs .md-tabs-navigation.md-fixed .md-tab-header{-ms-flex:1;flex:1;max-width:none}.md-tabs .md-tabs-navigation.md-right{-ms-flex-pack:end;justify-content:flex-end}.md-tabs .md-tabs-navigation-container{display:-ms-flexbox;display:flex;overflow-x:auto}.md-tabs .md-tabs-navigation-scroll-container{display:-ms-flexbox;display:flex}.md-tabs .md-tab-header{min-width:72px;max-width:264px;margin:0;padding:0 12px;position:relative;cursor:pointer;border:0;background:none;transition:all .4s cubic-bezier(.25,.8,.25,1);font-family:inherit;font-size:14px;font-weight:500;text-transform:uppercase;-ms-flex-negative:0;flex-shrink:0}.md-tabs .md-tab-header.md-disabled{cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.md-tabs .md-tab-header-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.md-tabs .md-tab-header-container .md-icon{margin:0}.md-tabs .md-tab-indicator{height:2px;position:absolute;bottom:0;left:0;transform:translate3D(0,0,0)}.md-tabs .md-tab-indicator.md-transition-off{transition:none!important}.md-tabs .md-tab-indicator.md-to-right{transition:all .4s cubic-bezier(.25,.8,.25,1),left .3s cubic-bezier(.35,0,.25,1),right .15s cubic-bezier(.35,0,.25,1)}.md-tabs .md-tab-indicator.md-to-left{transition:all .4s cubic-bezier(.25,.8,.25,1),right .3s cubic-bezier(.35,0,.25,1),left .15s cubic-bezier(.35,0,.25,1)}.md-tabs .md-tab-header-navigation-button{border:none;height:100%;cursor:pointer;position:relative}.md-tabs .md-tab-header-navigation-button.md-left{left:0}.md-tabs .md-tab-header-navigation-button.md-right{right:0}.md-tabs .md-tab-header-navigation-button.md-disabled{pointer-events:none;opacity:.4}.md-tabs .md-tabs-content{width:100%;height:0;position:relative;overflow:hidden}.md-tabs .md-tabs-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;transform:translateZ(0);transition:transform .4s cubic-bezier(.25,.8,.25,1)}.md-tabs .md-tab{padding:16px;position:absolute;top:0;left:0;right:0}@media (min-width:601px){.md-tabs .md-tabs-navigation.md-has-navigation-scroll .md-tabs-navigation-container{margin-bottom:-15px}}.md-toolbar{min-height:64px;padding:0 8px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center;-ms-flex-flow:row wrap;flex-flow:row wrap;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate3D(0,0,0)}.md-toolbar.md-dense{min-height:48px}.md-toolbar.md-dense.md-medium{min-height:72px}.md-toolbar.md-dense.md-large{min-height:96px}.md-toolbar.md-dense .md-toolbar-container{height:48px}.md-toolbar.md-medium{min-height:88px}.md-toolbar.md-medium .md-toolbar-container:nth-child(2) .md-title:first-child{margin-left:56px}.md-toolbar.md-large{min-height:128px;-ms-flex-line-pack:inherit;align-content:inherit}.md-toolbar.md-large .md-toolbar-container:nth-child(2) .md-title:first-child{margin-left:56px}.md-toolbar.md-account-header{min-height:164px}.md-toolbar.md-account-header .md-ink-ripple{color:#fff}.md-toolbar.md-account-header .md-list-item-container:hover:not([disabled]){background-color:hsla(0,0%,100%,.12)}.md-toolbar.md-account-header .md-avatar-list{margin:16px 0 8px}.md-toolbar.md-account-header .md-avatar-list .md-list-item-container{-ms-flex-align:start;align-items:flex-start}.md-toolbar.md-account-header .md-avatar-list .md-avatar+.md-avatar{margin-left:16px}.md-toolbar .md-toolbar-container{width:100%;height:64px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-item-align:start;align-self:flex-start}.md-toolbar .md-toolbar-container>.md-button:first-child{margin-left:0;margin-right:16px}.md-toolbar .md-toolbar-container>.md-button+.md-button{margin-left:0}.md-toolbar>.md-button:first-child{margin-left:0;margin-right:16px}.md-toolbar>.md-button+.md-button{margin-left:0}.md-toolbar .md-button:hover:not([disabled]):not(.md-raised):not(.md-icon-button):not(.md-fab){background-color:hsla(0,0%,100%,.1)}.md-toolbar .md-title{margin:0;font-size:20px;font-weight:400}.md-toolbar .md-title:first-child{margin-left:8px}.md-toolbar .md-title+.md-input-container{margin-left:24px}.md-toolbar .md-input-container{min-height:32px;margin-top:0;margin-bottom:0;padding-top:0}.md-toolbar .md-list{padding:0;margin:0 -8px;-ms-flex:1;flex:1}.md-tooltip{height:20px;padding:0 8px;position:fixed;z-index:200;pointer-events:none;background-color:rgba(97,97,97,.87);border-radius:2px;opacity:0;transform-origin:center top;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s;transition-delay:0s;color:#fff;font-family:Roboto,Noto Sans,Noto,sans-serif;font-size:10px;line-height:20px;text-transform:none;white-space:nowrap;letter-spacing:.1em}.md-tooltip.md-active{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.3s}.md-tooltip:not(.md-active){transition-delay:0s!important}.md-tooltip.md-transition-off{transition:none!important}.md-tooltip.md-tooltip-top{margin-top:-14px;transform:translate(-50%,8px)}.md-tooltip.md-tooltip-top.md-active{transform:translate(-50%)}.md-tooltip.md-tooltip-right{margin-left:14px;transform:translate(-8px,50%)}.md-tooltip.md-tooltip-right.md-active{transform:translateY(50%)}.md-tooltip.md-tooltip-bottom{margin-top:14px;transform:translate(-50%,-8px)}.md-tooltip.md-tooltip-bottom.md-active{transform:translate(-50%)}.md-tooltip.md-tooltip-left{margin-left:-14px;transform:translate(8px,50%)}.md-tooltip.md-tooltip-left.md-active{transform:translateY(50%)}.md-whiteframe{position:relative;z-index:1}.md-whiteframe-1dp{box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.md-whiteframe-2dp{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-whiteframe-3dp{box-shadow:0 1px 8px rgba(0,0,0,.2),0 3px 4px rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.12)}.md-whiteframe-4dp{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px rgba(0,0,0,.14),0 1px 10px rgba(0,0,0,.12)}.md-whiteframe-5dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.md-whiteframe-6dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px rgba(0,0,0,.14),0 1px 18px rgba(0,0,0,.12)}.md-whiteframe-7dp{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.md-whiteframe-8dp{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-whiteframe-9dp{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.md-whiteframe-10dp{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.md-whiteframe-11dp{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.md-whiteframe-12dp{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-whiteframe-13dp{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.md-whiteframe-14dp{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.md-whiteframe-15dp{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.md-whiteframe-16dp{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-whiteframe-17dp{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.md-whiteframe-18dp{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.md-whiteframe-19dp{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.md-whiteframe-20dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.md-whiteframe-21dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.md-whiteframe-22dp{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.md-whiteframe-23dp{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.md-whiteframe-24dp{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader!./~/vue-material/dist/vue-material.css\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../demo-src/node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".vue-google-map[data-v-3074bd5c]{position:relative}.vue-google-map .map-view[data-v-3074bd5c]{left:0;right:0;top:0;bottom:0;position:absolute}.vue-google-map .hidden-content[data-v-3074bd5c]{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader!../dist/vue-googlemaps.css\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".demo[data-v-3dd34410]{height:100%;display:flex;flex-direction:column}.panes[data-v-3dd34410]{flex:1;display:flex;flex-direction:row;align-items:stretch}.map[data-v-3dd34410]{flex:1}.results-pane[data-v-3dd34410]{overflow:auto;width:400px;position:relative}.results-pane .photo[data-v-3dd34410]{background:#eee}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-3dd34410\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LocationGeocoder.vue\n// module id = 25\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".demo[data-v-475ae8fc]{height:100%;display:flex;flex-direction:column}.panes[data-v-475ae8fc]{flex:1;display:flex;flex-direction:row;align-items:stretch}.map[data-v-475ae8fc]{flex:1}.results-pane[data-v-475ae8fc]{overflow:auto;width:400px;position:relative}.results-pane .details>div[data-v-475ae8fc]{padding:8px 16px}.results-pane .details .name[data-v-475ae8fc]{font-size:20px;margin-top:12px}.results-pane .details .address[data-v-475ae8fc]{color:#888}.results-pane .details .photos[data-v-475ae8fc]{padding:0;display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;align-items:center;background:#333}.results-pane .details .photos .photo[data-v-475ae8fc]{flex:auto 0 0;overflow:hidden}.results-pane .details .rating[data-v-475ae8fc]{pointer-events:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-475ae8fc\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/PlaceDetails.vue\n// module id = 26\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".demo[data-v-649f4bf2]{height:100%;display:flex;flex-direction:column}.panes[data-v-649f4bf2]{flex:1;display:flex;flex-direction:row;align-items:stretch}.map[data-v-649f4bf2]{flex:1}.results-pane[data-v-649f4bf2]{overflow-x:auto;overflow-y:auto;width:400px;height:calc(100vh - 64px);position:relative}.results-pane .photo[data-v-649f4bf2]{background:#eee}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-649f4bf2\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/NearbyPlaces.vue\n// module id = 27\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \"#app,body,html{height:100%}body{margin:0;font-family:Roboto,Helvetica,Arial,sans-serif}.tip{padding:12px;font-size:16px;color:#aaa;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.tip.overlay{position:absolute;top:0;bottom:0;left:0;right:0}.tip .md-icon{margin-top:0;margin-bottom:16px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-64aef02a\",\"scoped\":false,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/App.vue\n// module id = 28\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".demo[data-v-688f0713]{height:100%;display:flex;flex-direction:column}.map[data-v-688f0713]{flex:100% 1 1}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-688f0713\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/SimpleMap.vue\n// module id = 29\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".loading-overlay[data-v-e887690a]{position:absolute;top:0;bottom:0;left:0;right:0;background:hsla(0,0%,100%,.7);display:flex;align-items:center;justify-content:center;z-index:100}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader?minimize!./~/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-e887690a\",\"scoped\":true,\"hasInlineConfig\":false}!./~/stylus-loader!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LoadingOverlay.vue\n// module id = 30\n// module chunks = 0","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/process/browser.js\n// module id = 31\n// module chunks = 0","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a