From 021f950f593d410f9d19f4fa6190cd09ee190b34 Mon Sep 17 00:00:00 2001 From: Jack Hadrill Date: Sat, 15 Feb 2020 17:56:50 +0000 Subject: [PATCH] Initial website. --- css/style.css | 15 + dist/bulma/bulma.css.map | 1 + dist/bulma/bulma.min.css | 1 + dist/fa/css/all.css | 4463 +++++++++++++++++++++++ dist/fa/css/all.min.css | 5 + dist/fa/css/brands.css | 15 + dist/fa/css/brands.min.css | 5 + dist/fa/css/fontawesome.css | 4429 +++++++++++++++++++++++ dist/fa/css/fontawesome.min.css | 5 + dist/fa/css/regular.css | 15 + dist/fa/css/regular.min.css | 5 + dist/fa/css/solid.css | 16 + dist/fa/css/solid.min.css | 5 + dist/fa/css/svg-with-js.css | 371 ++ dist/fa/css/svg-with-js.min.css | 5 + dist/fa/css/v4-shims.css | 2172 ++++++++++++ dist/fa/css/v4-shims.min.css | 5 + dist/fa/webfonts/fa-brands-400.eot | Bin 0 -> 133034 bytes dist/fa/webfonts/fa-brands-400.svg | 3570 +++++++++++++++++++ dist/fa/webfonts/fa-brands-400.ttf | Bin 0 -> 132728 bytes dist/fa/webfonts/fa-brands-400.woff | Bin 0 -> 89824 bytes dist/fa/webfonts/fa-brands-400.woff2 | Bin 0 -> 76548 bytes dist/fa/webfonts/fa-regular-400.eot | Bin 0 -> 34390 bytes dist/fa/webfonts/fa-regular-400.svg | 803 +++++ dist/fa/webfonts/fa-regular-400.ttf | Bin 0 -> 34092 bytes dist/fa/webfonts/fa-regular-400.woff | Bin 0 -> 16800 bytes dist/fa/webfonts/fa-regular-400.woff2 | Bin 0 -> 13600 bytes dist/fa/webfonts/fa-solid-900.eot | Bin 0 -> 194078 bytes dist/fa/webfonts/fa-solid-900.svg | 4700 +++++++++++++++++++++++++ dist/fa/webfonts/fa-solid-900.ttf | Bin 0 -> 193792 bytes dist/fa/webfonts/fa-solid-900.woff | Bin 0 -> 99004 bytes dist/fa/webfonts/fa-solid-900.woff2 | Bin 0 -> 76120 bytes dist/ol/ol.css | 2 + dist/ol/ol.css.map | 1 + dist/ol/ol.js | 2 + dist/ol/ol.js.map | 1 + index.html | 60 + js/map.js | 25 + 38 files changed, 20697 insertions(+) create mode 100644 css/style.css create mode 100644 dist/bulma/bulma.css.map create mode 100644 dist/bulma/bulma.min.css create mode 100644 dist/fa/css/all.css create mode 100644 dist/fa/css/all.min.css create mode 100644 dist/fa/css/brands.css create mode 100644 dist/fa/css/brands.min.css create mode 100644 dist/fa/css/fontawesome.css create mode 100644 dist/fa/css/fontawesome.min.css create mode 100644 dist/fa/css/regular.css create mode 100644 dist/fa/css/regular.min.css create mode 100644 dist/fa/css/solid.css create mode 100644 dist/fa/css/solid.min.css create mode 100644 dist/fa/css/svg-with-js.css create mode 100644 dist/fa/css/svg-with-js.min.css create mode 100644 dist/fa/css/v4-shims.css create mode 100644 dist/fa/css/v4-shims.min.css create mode 100644 dist/fa/webfonts/fa-brands-400.eot create mode 100644 dist/fa/webfonts/fa-brands-400.svg create mode 100644 dist/fa/webfonts/fa-brands-400.ttf create mode 100644 dist/fa/webfonts/fa-brands-400.woff create mode 100644 dist/fa/webfonts/fa-brands-400.woff2 create mode 100644 dist/fa/webfonts/fa-regular-400.eot create mode 100644 dist/fa/webfonts/fa-regular-400.svg create mode 100644 dist/fa/webfonts/fa-regular-400.ttf create mode 100644 dist/fa/webfonts/fa-regular-400.woff create mode 100644 dist/fa/webfonts/fa-regular-400.woff2 create mode 100644 dist/fa/webfonts/fa-solid-900.eot create mode 100644 dist/fa/webfonts/fa-solid-900.svg create mode 100644 dist/fa/webfonts/fa-solid-900.ttf create mode 100644 dist/fa/webfonts/fa-solid-900.woff create mode 100644 dist/fa/webfonts/fa-solid-900.woff2 create mode 100644 dist/ol/ol.css create mode 100644 dist/ol/ol.css.map create mode 100644 dist/ol/ol.js create mode 100644 dist/ol/ol.js.map create mode 100644 index.html create mode 100644 js/map.js diff --git a/css/style.css b/css/style.css new file mode 100644 index 0000000..d4882e0 --- /dev/null +++ b/css/style.css @@ -0,0 +1,15 @@ +* { + font-family: "Raleway", sans-serif; +} +html, body, .map { + height: 100%; + width: 100%; + overflow: hidden; +} +.columns.is-fullheight, .columns.is-fullheight .column { + height: 100%; +} +.columns .column.is-vcentered { + display: flex; + align-items: center; +} \ No newline at end of file diff --git a/dist/bulma/bulma.css.map b/dist/bulma/bulma.css.map new file mode 100644 index 0000000..3e30f21 --- /dev/null +++ b/dist/bulma/bulma.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../bulma.sass","../sass/utilities/animations.sass","bulma.css","../sass/utilities/mixins.sass","../sass/utilities/initial-variables.sass","../sass/utilities/controls.sass","../sass/base/minireset.sass","../sass/base/generic.sass","../sass/base/helpers.sass","../sass/elements/box.sass","../sass/elements/button.sass","../sass/utilities/functions.sass","../sass/elements/container.sass","../sass/elements/content.sass","../sass/elements/icon.sass","../sass/elements/image.sass","../sass/elements/notification.sass","../sass/elements/progress.sass","../sass/elements/table.sass","../sass/elements/tag.sass","../sass/elements/title.sass","../sass/elements/other.sass","../sass/form/shared.sass","../sass/form/input-textarea.sass","../sass/form/checkbox-radio.sass","../sass/form/select.sass","../sass/form/file.sass","../sass/form/tools.sass","../sass/components/breadcrumb.sass","../sass/components/card.sass","../sass/components/dropdown.sass","../sass/components/level.sass","../sass/components/list.sass","../sass/components/media.sass","../sass/components/menu.sass","../sass/components/message.sass","../sass/components/modal.sass","../sass/components/navbar.sass","../sass/components/pagination.sass","../sass/components/panel.sass","../sass/components/tabs.sass","../sass/grid/columns.sass","../sass/grid/tiles.sass","../sass/layout/hero.sass","../sass/layout/section.sass","../sass/layout/footer.sass"],"names":[],"mappings":"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6BAA2B;EN8d/B;AACF;;ACraE;EK3DE;IACE,0BAA2B;ENoe/B;EMreE;IACE,4BAA2B;ENue/B;EMxeE;IACE,0BAA2B;EN0e/B;EM3eE;IACE,4BAA2B;EN6e/B;EM9eE;IACE,6BAA2B;ENgf/B;EMjfE;IACE,0BAA2B;ENmf/B;EMpfE;IACE,6BAA2B;ENsf/B;AACF;;ACrbE;EKnEE;IACE,0BAA2B;EN4f/B;EM7fE;IACE,4BAA2B;EN+f/B;EMhgBE;IACE,0BAA2B;ENkgB/B;EMngBE;IACE,4BAA2B;ENqgB/B;EMtgBE;IACE,6BAA2B;ENwgB/B;EMzgBE;IACE,0BAA2B;EN2gB/B;EM5gBE;IACE,6BAA2B;EN8gB/B;AACF;;ACzcE;EKvEE;IACE,0BAA2B;ENohB/B;EMrhBE;IACE,4BAA2B;ENuhB/B;EMxhBE;IACE,0BAA2B;EN0hB/B;EM3hBE;IACE,4BAA2B;EN6hB/B;EM9hBE;IACE,6BAA2B;ENgiB/B;EMjiBE;IACE,0BAA2B;ENmiB/B;EMpiBE;IACE,6BAA2B;ENsiB/B;AACF;;ACldI;EKtFA;IACE,0BAA2B;EN4iB/B;EM7iBE;IACE,4BAA2B;EN+iB/B;EMhjBE;IACE,0BAA2B;ENkjB/B;EMnjBE;IACE,4BAA2B;ENqjB/B;EMtjBE;IACE,6BAA2B;ENwjB/B;EMzjBE;IACE,0BAA2B;EN2jB/B;EM5jBE;IACE,6BAA2B;EN8jB/B;AACF;;AC3dI;EKrGA;IACE,0BAA2B;ENokB/B;EMrkBE;IACE,4BAA2B;ENukB/B;EMxkBE;IACE,0BAA2B;EN0kB/B;EM3kBE;IACE,4BAA2B;EN6kB/B;EM9kBE;IACE,6BAA2B;ENglB/B;EMjlBE;IACE,0BAA2B;ENmlB/B;EMplBE;IACE,6BAA2B;ENslB/B;AACF;;AM9jBE;EACE,6BAAqC;ANikBzC;;AMlkBE;EACE,8BAAqC;ANqkBzC;;AMtkBE;EACE,2BAAqC;ANykBzC;;AM1kBE;EACE,4BAAqC;AN6kBzC;;ACjjBE;EKxBE;IACE,6BAAqC;EN6kBzC;AACF;;ACnjBE;EKzBE;IACE,6BAAqC;ENglBzC;AACF;;ACrjBE;EK1BE;IACE,6BAAqC;ENmlBzC;AACF;;ACvjBE;EK3BE;IACE,6BAAqC;ENslBzC;AACF;;ACzjBE;EK5BE;IACE,6BAAqC;ENylBzC;AACF;;AC1jBI;EK9BA;IACE,6BAAqC;EN4lBzC;AACF;;ACtjBI;EKrCA;IACE,6BAAqC;EN+lBzC;AACF;;ACvjBI;EKvCA;IACE,6BAAqC;ENkmBzC;AACF;;ACnjBI;EK9CA;IACE,6BAAqC;ENqmBzC;AACF;;ACvmBE;EKxBE;IACE,8BAAqC;ENmoBzC;AACF;;ACzmBE;EKzBE;IACE,8BAAqC;ENsoBzC;AACF;;AC3mBE;EK1BE;IACE,8BAAqC;ENyoBzC;AACF;;AC7mBE;EK3BE;IACE,8BAAqC;EN4oBzC;AACF;;AC/mBE;EK5BE;IACE,8BAAqC;EN+oBzC;AACF;;AChnBI;EK9BA;IACE,8BAAqC;ENkpBzC;AACF;;AC5mBI;EKrCA;IACE,8BAAqC;ENqpBzC;AACF;;AC7mBI;EKvCA;IACE,8BAAqC;ENwpBzC;AACF;;ACzmBI;EK9CA;IACE,8BAAqC;EN2pBzC;AACF;;AC7pBE;EKxBE;IACE,2BAAqC;ENyrBzC;AACF;;AC/pBE;EKzBE;IACE,2BAAqC;EN4rBzC;AACF;;ACjqBE;EK1BE;IACE,2BAAqC;EN+rBzC;AACF;;ACnqBE;EK3BE;IACE,2BAAqC;ENksBzC;AACF;;ACrqBE;EK5BE;IACE,2BAAqC;ENqsBzC;AACF;;ACtqBI;EK9BA;IACE,2BAAqC;ENwsBzC;AACF;;AClqBI;EKrCA;IACE,2BAAqC;EN2sBzC;AACF;;ACnqBI;EKvCA;IACE,2BAAqC;EN8sBzC;AACF;;AC/pBI;EK9CA;IACE,2BAAqC;ENitBzC;AACF;;ACntBE;EKxBE;IACE,4BAAqC;EN+uBzC;AACF;;ACrtBE;EKzBE;IACE,4BAAqC;ENkvBzC;AACF;;ACvtBE;EK1BE;IACE,4BAAqC;ENqvBzC;AACF;;ACztBE;EK3BE;IACE,4BAAqC;ENwvBzC;AACF;;AC3tBE;EK5BE;IACE,4BAAqC;EN2vBzC;AACF;;AC5tBI;EK9BA;IACE,4BAAqC;EN8vBzC;AACF;;ACxtBI;EKrCA;IACE,4BAAqC;ENiwBzC;AACF;;ACztBI;EKvCA;IACE,4BAAqC;ENowBzC;AACF;;ACrtBI;EK9CA;IACE,4BAAqC;ENuwBzC;AACF;;AMtwBA;EACE,qCAAqC;ANywBvC;;AMvwBA;EACE,oCAAoC;AN0wBtC;;AMxwBA;EACE,oCAAoC;AN2wBtC;;AMzwBA;EACE,6BAA6B;AN4wB/B;;AMxwBE;EACE,uBAAwB;AN2wB5B;;AM1wBE;EAGI,yBAAqC;AN2wB3C;;AM1wBE;EACE,kCAAmC;AN6wBvC;;AMpxBE;EACE,yBAAwB;ANuxB5B;;AMtxBE;EAGI,uBAAqC;ANuxB3C;;AMtxBE;EACE,oCAAmC;ANyxBvC;;AMhyBE;EACE,4BAAwB;ANmyB5B;;AMlyBE;EAGI,yBAAqC;ANmyB3C;;AMlyBE;EACE,uCAAmC;ANqyBvC;;AM5yBE;EACE,yBAAwB;AN+yB5B;;AM9yBE;EAGI,yBAAqC;AN+yB3C;;AM9yBE;EACE,oCAAmC;ANizBvC;;AMxzBE;EACE,yBAAwB;AN2zB5B;;AM1zBE;EAGI,yBAAqC;AN2zB3C;;AM1zBE;EACE,oCAAmC;AN6zBvC;;AMp0BE;EACE,yBAAwB;ANu0B5B;;AMt0BE;EAGI,yBAAqC;ANu0B3C;;AMt0BE;EACE,oCAAmC;ANy0BvC;;AMh1BE;EACE,yBAAwB;ANm1B5B;;AMl1BE;EAGI,yBAAqC;ANm1B3C;;AMl1BE;EACE,oCAAmC;ANq1BvC;;AM51BE;EACE,yBAAwB;AN+1B5B;;AM91BE;EAGI,yBAAqC;AN+1B3C;;AM91BE;EACE,oCAAmC;ANi2BvC;;AMx2BE;EACE,yBAAwB;AN22B5B;;AM12BE;EAGI,yBAAqC;AN22B3C;;AM12BE;EACE,oCAAmC;AN62BvC;;AMp3BE;EACE,yBAAwB;ANu3B5B;;AMt3BE;EAGI,yBAAqC;ANu3B3C;;AMt3BE;EACE,oCAAmC;ANy3BvC;;AMt3BE;EACE,yBAAwB;ANy3B5B;;AMx3BE;EACE,oCAAmC;AN23BvC;;AM93BE;EACE,yBAAwB;ANi4B5B;;AMh4BE;EACE,oCAAmC;ANm4BvC;;AMt4BE;EACE,yBAAwB;ANy4B5B;;AMx4BE;EACE,oCAAmC;AN24BvC;;AM94BE;EACE,yBAAwB;ANi5B5B;;AMh5BE;EACE,oCAAmC;ANm5BvC;;AMt5BE;EACE,yBAAwB;ANy5B5B;;AMx5BE;EACE,oCAAmC;AN25BvC;;AM95BE;EACE,yBAAwB;ANi6B5B;;AMh6BE;EACE,oCAAmC;ANm6BvC;;AMt6BE;EACE,yBAAwB;ANy6B5B;;AMx6BE;EACE,oCAAmC;AN26BvC;;AM96BE;EACE,4BAAwB;ANi7B5B;;AMh7BE;EACE,uCAAmC;ANm7BvC;;AMt7BE;EACE,yBAAwB;ANy7B5B;;AMx7BE;EACE,oCAAmC;AN27BvC;;AMz7BA;EACE,2BAAqC;AN47BvC;;AM37BA;EACE,2BAAsC;AN87BxC;;AM77BA;EACE,2BAAsC;ANg8BxC;;AM/7BA;EACE,2BAAwC;ANk8B1C;;AMj8BA;EACE,2BAAoC;ANo8BtC;;AMl8BA;EACE,+LAAuC;ANq8BzC;;AMn8BA;EACE,+LAAyC;ANs8B3C;;AMp8BA;EACE,+LAA0C;ANu8B5C;;AMr8BA;EACE,iCAAyC;ANw8B3C;;AMt8BA;EACE,iCAAoC;ANy8BtC;;AMl8BE;EACE,yBAA+B;ANq8BnC;;ACrgCE;EKkEE;IACE,yBAA+B;ENu8BnC;AACF;;ACvgCE;EKiEE;IACE,yBAA+B;EN08BnC;AACF;;ACzgCE;EKgEE;IACE,yBAA+B;EN68BnC;AACF;;AC3gCE;EK+DE;IACE,yBAA+B;ENg9BnC;AACF;;AC7gCE;EK8DE;IACE,yBAA+B;ENm9BnC;AACF;;AC9gCI;EK4DA;IACE,yBAA+B;ENs9BnC;AACF;;AC1gCI;EKqDA;IACE,yBAA+B;ENy9BnC;AACF;;AC3gCI;EKmDA;IACE,yBAA+B;EN49BnC;AACF;;ACvgCI;EK4CA;IACE,yBAA+B;EN+9BnC;AACF;;AM5/BE;EACE,wBAA+B;AN+/BnC;;AC/jCE;EKkEE;IACE,wBAA+B;ENigCnC;AACF;;ACjkCE;EKiEE;IACE,wBAA+B;ENogCnC;AACF;;ACnkCE;EKgEE;IACE,wBAA+B;ENugCnC;AACF;;ACrkCE;EK+DE;IACE,wBAA+B;EN0gCnC;AACF;;ACvkCE;EK8DE;IACE,wBAA+B;EN6gCnC;AACF;;ACxkCI;EK4DA;IACE,wBAA+B;ENghCnC;AACF;;ACpkCI;EKqDA;IACE,wBAA+B;ENmhCnC;AACF;;ACrkCI;EKmDA;IACE,wBAA+B;ENshCnC;AACF;;ACjkCI;EK4CA;IACE,wBAA+B;ENyhCnC;AACF;;AMtjCE;EACE,0BAA+B;ANyjCnC;;ACznCE;EKkEE;IACE,0BAA+B;EN2jCnC;AACF;;AC3nCE;EKiEE;IACE,0BAA+B;EN8jCnC;AACF;;AC7nCE;EKgEE;IACE,0BAA+B;ENikCnC;AACF;;AC/nCE;EK+DE;IACE,0BAA+B;ENokCnC;AACF;;ACjoCE;EK8DE;IACE,0BAA+B;ENukCnC;AACF;;ACloCI;EK4DA;IACE,0BAA+B;EN0kCnC;AACF;;AC9nCI;EKqDA;IACE,0BAA+B;EN6kCnC;AACF;;AC/nCI;EKmDA;IACE,0BAA+B;ENglCnC;AACF;;AC3nCI;EK4CA;IACE,0BAA+B;ENmlCnC;AACF;;AMhnCE;EACE,gCAA+B;ANmnCnC;;ACnrCE;EKkEE;IACE,gCAA+B;ENqnCnC;AACF;;ACrrCE;EKiEE;IACE,gCAA+B;ENwnCnC;AACF;;ACvrCE;EKgEE;IACE,gCAA+B;EN2nCnC;AACF;;ACzrCE;EK+DE;IACE,gCAA+B;EN8nCnC;AACF;;AC3rCE;EK8DE;IACE,gCAA+B;ENioCnC;AACF;;AC5rCI;EK4DA;IACE,gCAA+B;ENooCnC;AACF;;ACxrCI;EKqDA;IACE,gCAA+B;ENuoCnC;AACF;;ACzrCI;EKmDA;IACE,gCAA+B;EN0oCnC;AACF;;ACrrCI;EK4CA;IACE,gCAA+B;EN6oCnC;AACF;;AM1qCE;EACE,+BAA+B;AN6qCnC;;AC7uCE;EKkEE;IACE,+BAA+B;EN+qCnC;AACF;;AC/uCE;EKiEE;IACE,+BAA+B;ENkrCnC;AACF;;ACjvCE;EKgEE;IACE,+BAA+B;ENqrCnC;AACF;;ACnvCE;EK+DE;IACE,+BAA+B;ENwrCnC;AACF;;ACrvCE;EK8DE;IACE,+BAA+B;EN2rCnC;AACF;;ACtvCI;EK4DA;IACE,+BAA+B;EN8rCnC;AACF;;AClvCI;EKqDA;IACE,+BAA+B;ENisCnC;AACF;;ACnvCI;EKmDA;IACE,+BAA+B;ENosCnC;AACF;;AC/uCI;EK4CA;IACE,+BAA+B;ENusCnC;AACF;;AMtsCA;EACE,wBAAwB;ANysC1B;;AMvsCA;EACE,uBAAuB;EACvB,iCAAiC;EACjC,yBAAyB;EACzB,2BAA2B;EAC3B,qBAAqB;EACrB,6BAA6B;EAC7B,8BAA8B;EAC9B,wBAAwB;AN0sC1B;;AClzCE;EK2GA;IACE,wBAAwB;EN2sC1B;AACF;;ACpzCE;EK2GA;IACE,wBAAwB;EN6sC1B;AACF;;ACtzCE;EK2GA;IACE,wBAAwB;EN+sC1B;AACF;;ACxzCE;EK2GA;IACE,wBAAwB;ENitC1B;AACF;;AC1zCE;EK2GA;IACE,wBAAwB;ENmtC1B;AACF;;AC3zCI;EK0GF;IACE,wBAAwB;ENqtC1B;AACF;;ACvzCI;EKoGF;IACE,wBAAwB;ENutC1B;AACF;;ACxzCI;EKmGF;IACE,wBAAwB;ENytC1B;AACF;;ACpzCI;EK6FF;IACE,wBAAwB;EN2tC1B;AACF;;AM1tCA;EACE,6BAA6B;AN6tC/B;;AC52CE;EKkJA;IACE,6BAA6B;EN8tC/B;AACF;;AC92CE;EKkJA;IACE,6BAA6B;ENguC/B;AACF;;ACh3CE;EKkJA;IACE,6BAA6B;ENkuC/B;AACF;;ACl3CE;EKkJA;IACE,6BAA6B;ENouC/B;AACF;;ACp3CE;EKkJA;IACE,6BAA6B;ENsuC/B;AACF;;ACr3CI;EKiJF;IACE,6BAA6B;ENwuC/B;AACF;;ACj3CI;EK2IF;IACE,6BAA6B;EN0uC/B;AACF;;ACl3CI;EK0IF;IACE,6BAA6B;EN4uC/B;AACF;;AC92CI;EKoIF;IACE,6BAA6B;EN8uC/B;AACF;;AM3uCA;EACE,oBAAoB;AN8uCtB;;AM5uCA;EACE,qBAAqB;AN+uCvB;;AM7uCA;EACE,2BAA2B;ANgvC7B;;AM9uCA;EACE,2BAA2B;ANivC7B;;AM5uCA;EACE,6BAA6B;AN+uC/B;;AO9/CA;EAEE,uBLI6B;EKH7B,kBL0DgB;EKzDhB,0FLX2B;EKY3B,cLP4B;EKQ5B,cAAc;EACd,gBAZmB;AP4gDrB;;AO9/CA;EAGI,yELC8B;AF8/ClC;;AOlgDA;EAKI,oELD8B;AFkgDlC;;AQ3+CA;EAGE,uBNjC6B;EMkC7B,qBNvC4B;EMwC5B,iBL/CwB;EKgDxB,cN7C4B;EM8C5B,eAAe;EAGf,uBAAuB;EACvB,iCAjD6D;EAkD7D,iBAjD6B;EAkD7B,kBAlD6B;EAmD7B,8BApD6D;EAqD7D,kBAAkB;EAClB,mBAAmB;AR0+CrB;;AQ1/CA;EAkBI,cAAc;AR4+ClB;;AQ9/CA;EAwBM,aAAa;EACb,YAAY;AR0+ClB;;AQngDA;EA2BM,+BAAmF;EACnF,oBAA4C;AR4+ClD;;AQxgDA;EA8BM,mBAA2C;EAC3C,gCAAoF;AR8+C1F;;AQ7gDA;EAiCM,+BAAmF;EACnF,gCAAoF;ARg/C1F;;AQlhDA;EAsCI,qBN1E0B;EM2E1B,cN9E0B;AF8jD9B;;AQvhDA;EA0CI,qBNjE8B;EMkE9B,cNlF0B;AFmkD9B;;AQ5hDA;EA6CM,kDNpE4B;AFujDlC;;AQhiDA;EAgDI,qBNtF0B;EMuF1B,cNxF0B;AF4kD9B;;AQriDA;EAoDI,6BAA6B;EAC7B,yBAAyB;EACzB,cN5F0B;EM6F1B,0BAA0B;ARq/C9B;;AQ5iDA;EA4DM,4BN5FwB;EM6FxB,cNpGwB;AFwlD9B;;AQjjDA;EAgEM,yBAAiE;EACjE,cNxGwB;AF6lD9B;;AQtjDA;;EAoEM,6BAA6B;EAC7B,yBAAyB;EACzB,gBAAgB;ARu/CtB;;AQ7jDA;EA2EM,uBNzGyB;EM0GzB,yBAAyB;EACzB,cNxHuB;AF8mD7B;;AQnkDA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,cN7HqB;AFonD7B;;AQzkDA;EAqFQ,yBAAyB;EACzB,cNjIqB;AFynD7B;;AQ9kDA;EAwFU,mDNtHqB;AFgnD/B;;AQllDA;EA2FQ,yBAAoC;EACpC,yBAAyB;EACzB,cNxIqB;AFmoD7B;;AQxlDA;;EAgGQ,uBN9HuB;EM+HvB,yBAAyB;EACzB,gBAAgB;AR6/CxB;;AQ/lDA;EAoGQ,yBN/IqB;EMgJrB,YNnIuB;AFkoD/B;;AQpmDA;EAwGU,uBAA2C;ARggDrD;;AQxmDA;;EA2GU,yBNtJmB;EMuJnB,yBAAyB;EACzB,gBAAgB;EAChB,YN5IqB;AF8oD/B;;AQhnDA;EAiHU,gEAA4E;ARmgDtF;;AQpnDA;EAmHQ,6BAA6B;EAC7B,mBNlJuB;EMmJvB,YNnJuB;AFwpD/B;;AQ1nDA;EA0HU,uBNxJqB;EMyJrB,mBNzJqB;EM0JrB,cNvKmB;AF2qD7B;;AQhoDA;EA+HY,4DAA8D;ARqgD1E;;AQpoDA;EAqIc,gEAA4E;ARmgD1F;;AQxoDA;;EAwIU,6BAA6B;EAC7B,mBNvKqB;EMwKrB,gBAAgB;EAChB,YNzKqB;AF8qD/B;;AQhpDA;EA6IQ,6BAA6B;EAC7B,qBNzLqB;EM0LrB,cN1LqB;AFisD7B;;AQtpDA;EAoJU,yBN/LmB;EMgMnB,YNnLqB;AFyrD/B;;AQ3pDA;EA4Jc,4DAA8D;ARmgD5E;;AQ/pDA;;EA+JU,6BAA6B;EAC7B,qBN3MmB;EM4MnB,gBAAgB;EAChB,cN7MmB;AFktD7B;;AQvqDA;EA2EM,yBNtHuB;EMuHvB,yBAAyB;EACzB,YN3GyB;AF2sD/B;;AQ7qDA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,YNhHuB;AFitD/B;;AQnrDA;EAqFQ,yBAAyB;EACzB,YNpHuB;AFstD/B;;AQxrDA;EAwFU,gDNnImB;AFuuD7B;;AQ5rDA;EA2FQ,uBAAoC;EACpC,yBAAyB;EACzB,YN3HuB;AFguD/B;;AQlsDA;;EAgGQ,yBN3IqB;EM4IrB,yBAAyB;EACzB,gBAAgB;ARumDxB;;AQzsDA;EAoGQ,uBNlIuB;EMmIvB,cNhJqB;AFyvD7B;;AQ9sDA;EAwGU,yBAA2C;AR0mDrD;;AQltDA;;EA2GU,uBNzIqB;EM0IrB,yBAAyB;EACzB,gBAAgB;EAChB,cNzJmB;AFqwD7B;;AQ1tDA;EAiHU,4DAA4E;AR6mDtF;;AQ9tDA;EAmHQ,6BAA6B;EAC7B,qBN/JqB;EMgKrB,cNhKqB;AF+wD7B;;AQpuDA;EA0HU,yBNrKmB;EMsKnB,qBNtKmB;EMuKnB,YN1JqB;AFwwD/B;;AQ1uDA;EA+HY,gEAA8D;AR+mD1E;;AQ9uDA;EAqIc,4DAA4E;AR6mD1F;;AQlvDA;;EAwIU,6BAA6B;EAC7B,qBNpLmB;EMqLnB,gBAAgB;EAChB,cNtLmB;AFqyD7B;;AQ1vDA;EA6IQ,6BAA6B;EAC7B,mBN5KuB;EM6KvB,YN7KuB;AF8xD/B;;AQhwDA;EAoJU,uBNlLqB;EMmLrB,cNhMmB;AFgzD7B;;AQrwDA;EA4Jc,gEAA8D;AR6mD5E;;AQzwDA;;EA+JU,6BAA6B;EAC7B,mBN9LqB;EM+LrB,gBAAgB;EAChB,YNhMqB;AF+yD/B;;AQjxDA;EA2EM,4BN3GwB;EM4GxB,yBAAyB;EACzB,yBC5Ce;ATsvDrB;;AQvxDA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,yBCjDa;AT4vDrB;;AQ7xDA;EAqFQ,yBAAyB;EACzB,yBCrDa;ATiwDrB;;AQlyDA;EAwFU,mDNxHoB;AFs0D9B;;AQtyDA;EA2FQ,yBAAoC;EACpC,yBAAyB;EACzB,yBC5Da;AT2wDrB;;AQ5yDA;;EAgGQ,4BNhIsB;EMiItB,yBAAyB;EACzB,gBAAgB;ARitDxB;;AQnzDA;EAoGQ,oCCnEa;EDoEb,iBNrIsB;AFw1D9B;;AQxzDA;EAwGU,oCAA2C;ARotDrD;;AQ5zDA;;EA2GU,oCC1EW;ED2EX,yBAAyB;EACzB,gBAAgB;EAChB,iBN9IoB;AFo2D9B;;AQp0DA;EAiHU,sFAA4E;ARutDtF;;AQx0DA;EAmHQ,6BAA6B;EAC7B,wBNpJsB;EMqJtB,iBNrJsB;AF82D9B;;AQ90DA;EA0HU,4BN1JoB;EM2JpB,wBN3JoB;EM4JpB,yBC3FW;ATmzDrB;;AQp1DA;EA+HY,sEAA8D;ARytD1E;;AQx1DA;EAqIc,sFAA4E;ARutD1F;;AQ51DA;;EAwIU,6BAA6B;EAC7B,wBNzKoB;EM0KpB,gBAAgB;EAChB,iBN3KoB;AFo4D9B;;AQp2DA;EA6IQ,6BAA6B;EAC7B,gCC7Ga;ED8Gb,yBC9Ga;ATy0DrB;;AQ12DA;EAoJU,oCCnHW;EDoHX,iBNrLoB;AF+4D9B;;AQ/2DA;EA4Jc,sEAA8D;ARutD5E;;AQn3DA;;EA+JU,6BAA6B;EAC7B,gCC/HW;EDgIX,gBAAgB;EAChB,yBCjIW;AT01DrB;;AQ33DA;EA2EM,yBNlHwB;EMmHxB,yBAAyB;EACzB,WC1CU;AT81DhB;;AQj4DA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,WC/CQ;ATo2DhB;;AQv4DA;EAqFQ,yBAAyB;EACzB,WCnDQ;ATy2DhB;;AQ54DA;EAwFU,gDN/HoB;AFu7D9B;;AQh5DA;EA2FQ,yBAAoC;EACpC,yBAAyB;EACzB,WC1DQ;ATm3DhB;;AQt5DA;;EAgGQ,yBNvIsB;EMwItB,yBAAyB;EACzB,gBAAgB;AR2zDxB;;AQ75DA;EAoGQ,sBCjEQ;EDkER,cN5IsB;AFy8D9B;;AQl6DA;EAwGU,yBAA2C;AR8zDrD;;AQt6DA;;EA2GU,sBCxEM;EDyEN,yBAAyB;EACzB,gBAAgB;EAChB,cNrJoB;AFq9D9B;;AQ96DA;EAiHU,0DAA4E;ARi0DtF;;AQl7DA;EAmHQ,6BAA6B;EAC7B,qBN3JsB;EM4JtB,cN5JsB;AF+9D9B;;AQx7DA;EA0HU,yBNjKoB;EMkKpB,qBNlKoB;EMmKpB,WCzFM;AT25DhB;;AQ97DA;EA+HY,gEAA8D;ARm0D1E;;AQl8DA;EAqIc,0DAA4E;ARi0D1F;;AQt8DA;;EAwIU,6BAA6B;EAC7B,qBNhLoB;EMiLpB,gBAAgB;EAChB,cNlLoB;AFq/D9B;;AQ98DA;EA6IQ,6BAA6B;EAC7B,kBC3GQ;ED4GR,WC5GQ;ATi7DhB;;AQp9DA;EAoJU,sBCjHM;EDkHN,cN5LoB;AFggE9B;;AQz9DA;EA4Jc,gEAA8D;ARi0D5E;;AQ79DA;;EA+JU,6BAA6B;EAC7B,kBC7HM;ED8HN,gBAAgB;EAChB,WC/HM;ATk8DhB;;AQr+DA;EA2EM,yBNpG4B;EMqG5B,yBAAyB;EACzB,WC1CU;ATw8DhB;;AQ3+DA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,WC/CQ;AT88DhB;;AQj/DA;EAqFQ,yBAAyB;EACzB,WCnDQ;ATm9DhB;;AQt/DA;EAwFU,iDNjHwB;AFmhElC;;AQ1/DA;EA2FQ,yBAAoC;EACpC,yBAAyB;EACzB,WC1DQ;AT69DhB;;AQhgEA;;EAgGQ,yBNzH0B;EM0H1B,yBAAyB;EACzB,gBAAgB;ARq6DxB;;AQvgEA;EAoGQ,sBCjEQ;EDkER,cN9H0B;AFqiElC;;AQ5gEA;EAwGU,yBAA2C;ARw6DrD;;AQhhEA;;EA2GU,sBCxEM;EDyEN,yBAAyB;EACzB,gBAAgB;EAChB,cNvIwB;AFijElC;;AQxhEA;EAiHU,0DAA4E;AR26DtF;;AQ5hEA;EAmHQ,6BAA6B;EAC7B,qBN7I0B;EM8I1B,cN9I0B;AF2jElC;;AQliEA;EA0HU,yBNnJwB;EMoJxB,qBNpJwB;EMqJxB,WCzFM;ATqgEhB;;AQxiEA;EA+HY,gEAA8D;AR66D1E;;AQ5iEA;EAqIc,0DAA4E;AR26D1F;;AQhjEA;;EAwIU,6BAA6B;EAC7B,qBNlKwB;EMmKxB,gBAAgB;EAChB,cNpKwB;AFilElC;;AQxjEA;EA6IQ,6BAA6B;EAC7B,kBC3GQ;ED4GR,WC5GQ;AT2hEhB;;AQ9jEA;EAoJU,sBCjHM;EDkHN,cN9KwB;AF4lElC;;AQnkEA;EA4Jc,gEAA8D;AR26D5E;;AQvkEA;;EA+JU,6BAA6B;EAC7B,kBC7HM;ED8HN,gBAAgB;EAChB,WC/HM;AT4iEhB;;AQ/kEA;EAwKU,yBC9HsC;ED+HtC,cCtH2D;ATiiErE;;AQplEA;EA4KY,yBAA4C;EAC5C,yBAAyB;EACzB,cC3HyD;ATuiErE;;AQ1lEA;EAiLY,yBAA0C;EAC1C,yBAAyB;EACzB,cChIyD;AT6iErE;;AQhmEA;EA2EM,yBNlG4B;EMmG5B,yBAAyB;EACzB,WC1CU;ATmkEhB;;AQtmEA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,WC/CQ;ATykEhB;;AQ5mEA;EAqFQ,yBAAyB;EACzB,WCnDQ;AT8kEhB;;AQjnEA;EAwFU,kDN/GwB;AF4oElC;;AQrnEA;EA2FQ,yBAAoC;EACpC,yBAAyB;EACzB,WC1DQ;ATwlEhB;;AQ3nEA;;EAgGQ,yBNvH0B;EMwH1B,yBAAyB;EACzB,gBAAgB;ARgiExB;;AQloEA;EAoGQ,sBCjEQ;EDkER,cN5H0B;AF8pElC;;AQvoEA;EAwGU,yBAA2C;ARmiErD;;AQ3oEA;;EA2GU,sBCxEM;EDyEN,yBAAyB;EACzB,gBAAgB;EAChB,cNrIwB;AF0qElC;;AQnpEA;EAiHU,0DAA4E;ARsiEtF;;AQvpEA;EAmHQ,6BAA6B;EAC7B,qBN3I0B;EM4I1B,cN5I0B;AForElC;;AQ7pEA;EA0HU,yBNjJwB;EMkJxB,qBNlJwB;EMmJxB,WCzFM;ATgoEhB;;AQnqEA;EA+HY,gEAA8D;ARwiE1E;;AQvqEA;EAqIc,0DAA4E;ARsiE1F;;AQ3qEA;;EAwIU,6BAA6B;EAC7B,qBNhKwB;EMiKxB,gBAAgB;EAChB,cNlKwB;AF0sElC;;AQnrEA;EA6IQ,6BAA6B;EAC7B,kBC3GQ;ED4GR,WC5GQ;ATspEhB;;AQzrEA;EAoJU,sBCjHM;EDkHN,cN5KwB;AFqtElC;;AQ9rEA;EA4Jc,gEAA8D;ARsiE5E;;AQlsEA;;EA+JU,6BAA6B;EAC7B,kBC7HM;ED8HN,gBAAgB;EAChB,WC/HM;ATuqEhB;;AQ1sEA;EAwKU,yBC9HsC;ED+HtC,cCtH2D;AT4pErE;;AQ/sEA;EA4KY,yBAA4C;EAC5C,yBAAyB;EACzB,cC3HyD;ATkqErE;;AQrtEA;EAiLY,yBAA0C;EAC1C,yBAAyB;EACzB,cChIyD;ATwqErE;;AQ3tEA;EA2EM,yBNnG4B;EMoG5B,yBAAyB;EACzB,WC1CU;AT8rEhB;;AQjuEA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,WC/CQ;ATosEhB;;AQvuEA;EAqFQ,yBAAyB;EACzB,WCnDQ;ATysEhB;;AQ5uEA;EAwFU,kDNhHwB;AFwwElC;;AQhvEA;EA2FQ,yBAAoC;EACpC,yBAAyB;EACzB,WC1DQ;ATmtEhB;;AQtvEA;;EAgGQ,yBNxH0B;EMyH1B,yBAAyB;EACzB,gBAAgB;AR2pExB;;AQ7vEA;EAoGQ,sBCjEQ;EDkER,cN7H0B;AF0xElC;;AQlwEA;EAwGU,yBAA2C;AR8pErD;;AQtwEA;;EA2GU,sBCxEM;EDyEN,yBAAyB;EACzB,gBAAgB;EAChB,cNtIwB;AFsyElC;;AQ9wEA;EAiHU,0DAA4E;ARiqEtF;;AQlxEA;EAmHQ,6BAA6B;EAC7B,qBN5I0B;EM6I1B,cN7I0B;AFgzElC;;AQxxEA;EA0HU,yBNlJwB;EMmJxB,qBNnJwB;EMoJxB,WCzFM;AT2vEhB;;AQ9xEA;EA+HY,gEAA8D;ARmqE1E;;AQlyEA;EAqIc,0DAA4E;ARiqE1F;;AQtyEA;;EAwIU,6BAA6B;EAC7B,qBNjKwB;EMkKxB,gBAAgB;EAChB,cNnKwB;AFs0ElC;;AQ9yEA;EA6IQ,6BAA6B;EAC7B,kBC3GQ;ED4GR,WC5GQ;ATixEhB;;AQpzEA;EAoJU,sBCjHM;EDkHN,cN7KwB;AFi1ElC;;AQzzEA;EA4Jc,gEAA8D;ARiqE5E;;AQ7zEA;;EA+JU,6BAA6B;EAC7B,kBC7HM;ED8HN,gBAAgB;EAChB,WC/HM;ATkyEhB;;AQr0EA;EAwKU,yBC9HsC;ED+HtC,cCtH2D;ATuxErE;;AQ10EA;EA4KY,yBAA4C;EAC5C,yBAAyB;EACzB,cC3HyD;AT6xErE;;AQh1EA;EAiLY,yBAA0C;EAC1C,yBAAyB;EACzB,cChIyD;ATmyErE;;AQt1EA;EA2EM,yBNrG4B;EMsG5B,yBAAyB;EACzB,WC1CU;ATyzEhB;;AQ51EA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,WC/CQ;AT+zEhB;;AQl2EA;EAqFQ,yBAAyB;EACzB,WCnDQ;ATo0EhB;;AQv2EA;EAwFU,kDNlHwB;AFq4ElC;;AQ32EA;EA2FQ,yBAAoC;EACpC,yBAAyB;EACzB,WC1DQ;AT80EhB;;AQj3EA;;EAgGQ,yBN1H0B;EM2H1B,yBAAyB;EACzB,gBAAgB;ARsxExB;;AQx3EA;EAoGQ,sBCjEQ;EDkER,cN/H0B;AFu5ElC;;AQ73EA;EAwGU,yBAA2C;ARyxErD;;AQj4EA;;EA2GU,sBCxEM;EDyEN,yBAAyB;EACzB,gBAAgB;EAChB,cNxIwB;AFm6ElC;;AQz4EA;EAiHU,0DAA4E;AR4xEtF;;AQ74EA;EAmHQ,6BAA6B;EAC7B,qBN9I0B;EM+I1B,cN/I0B;AF66ElC;;AQn5EA;EA0HU,yBNpJwB;EMqJxB,qBNrJwB;EMsJxB,WCzFM;ATs3EhB;;AQz5EA;EA+HY,gEAA8D;AR8xE1E;;AQ75EA;EAqIc,0DAA4E;AR4xE1F;;AQj6EA;;EAwIU,6BAA6B;EAC7B,qBNnKwB;EMoKxB,gBAAgB;EAChB,cNrKwB;AFm8ElC;;AQz6EA;EA6IQ,6BAA6B;EAC7B,kBC3GQ;ED4GR,WC5GQ;AT44EhB;;AQ/6EA;EAoJU,sBCjHM;EDkHN,cN/KwB;AF88ElC;;AQp7EA;EA4Jc,gEAA8D;AR4xE5E;;AQx7EA;;EA+JU,6BAA6B;EAC7B,kBC7HM;ED8HN,gBAAgB;EAChB,WC/HM;AT65EhB;;AQh8EA;EAwKU,yBC9HsC;ED+HtC,cCtH2D;ATk5ErE;;AQr8EA;EA4KY,yBAA4C;EAC5C,yBAAyB;EACzB,cC3HyD;ATw5ErE;;AQ38EA;EAiLY,yBAA0C;EAC1C,yBAAyB;EACzB,cChIyD;AT85ErE;;AQj9EA;EA2EM,yBNtG4B;EMuG5B,yBAAyB;EACzB,yBC5Ce;ATs7ErB;;AQv9EA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,yBCjDa;AT47ErB;;AQ79EA;EAqFQ,yBAAyB;EACzB,yBCrDa;ATi8ErB;;AQl+EA;EAwFU,kDNnHwB;AFigFlC;;AQt+EA;EA2FQ,yBAAoC;EACpC,yBAAyB;EACzB,yBC5Da;AT28ErB;;AQ5+EA;;EAgGQ,yBN3H0B;EM4H1B,yBAAyB;EACzB,gBAAgB;ARi5ExB;;AQn/EA;EAoGQ,oCCnEa;EDoEb,cNhI0B;AFmhFlC;;AQx/EA;EAwGU,oCAA2C;ARo5ErD;;AQ5/EA;;EA2GU,oCC1EW;ED2EX,yBAAyB;EACzB,gBAAgB;EAChB,cNzIwB;AF+hFlC;;AQpgFA;EAiHU,sFAA4E;ARu5EtF;;AQxgFA;EAmHQ,6BAA6B;EAC7B,qBN/I0B;EMgJ1B,cNhJ0B;AFyiFlC;;AQ9gFA;EA0HU,yBNrJwB;EMsJxB,qBNtJwB;EMuJxB,yBC3FW;ATm/ErB;;AQphFA;EA+HY,gEAA8D;ARy5E1E;;AQxhFA;EAqIc,sFAA4E;ARu5E1F;;AQ5hFA;;EAwIU,6BAA6B;EAC7B,qBNpKwB;EMqKxB,gBAAgB;EAChB,cNtKwB;AF+jFlC;;AQpiFA;EA6IQ,6BAA6B;EAC7B,gCC7Ga;ED8Gb,yBC9Ga;ATygFrB;;AQ1iFA;EAoJU,oCCnHW;EDoHX,cNhLwB;AF0kFlC;;AQ/iFA;EA4Jc,gEAA8D;ARu5E5E;;AQnjFA;;EA+JU,6BAA6B;EAC7B,gCC/HW;EDgIX,gBAAgB;EAChB,yBCjIW;AT0hFrB;;AQ3jFA;EAwKU,yBC9HsC;ED+HtC,cCtH2D;AT6gFrE;;AQhkFA;EA4KY,yBAA4C;EAC5C,yBAAyB;EACzB,cC3HyD;ATmhFrE;;AQtkFA;EAiLY,yBAA0C;EAC1C,yBAAyB;EACzB,cChIyD;ATyhFrE;;AQ5kFA;EA2EM,yBNhG2B;EMiG3B,yBAAyB;EACzB,WC1CU;AT+iFhB;;AQllFA;EAgFQ,yBAAsC;EACtC,yBAAyB;EACzB,WC/CQ;ATqjFhB;;AQxlFA;EAqFQ,yBAAyB;EACzB,WCnDQ;AT0jFhB;;AQ7lFA;EAwFU,kDN7GuB;AFsnFjC;;AQjmFA;EA2FQ,yBAAoC;EACpC,yBAAyB;EACzB,WC1DQ;ATokFhB;;AQvmFA;;EAgGQ,yBNrHyB;EMsHzB,yBAAyB;EACzB,gBAAgB;AR4gFxB;;AQ9mFA;EAoGQ,sBCjEQ;EDkER,cN1HyB;AFwoFjC;;AQnnFA;EAwGU,yBAA2C;AR+gFrD;;AQvnFA;;EA2GU,sBCxEM;EDyEN,yBAAyB;EACzB,gBAAgB;EAChB,cNnIuB;AFopFjC;;AQ/nFA;EAiHU,0DAA4E;ARkhFtF;;AQnoFA;EAmHQ,6BAA6B;EAC7B,qBNzIyB;EM0IzB,cN1IyB;AF8pFjC;;AQzoFA;EA0HU,yBN/IuB;EMgJvB,qBNhJuB;EMiJvB,WCzFM;AT4mFhB;;AQ/oFA;EA+HY,gEAA8D;ARohF1E;;AQnpFA;EAqIc,0DAA4E;ARkhF1F;;AQvpFA;;EAwIU,6BAA6B;EAC7B,qBN9JuB;EM+JvB,gBAAgB;EAChB,cNhKuB;AForFjC;;AQ/pFA;EA6IQ,6BAA6B;EAC7B,kBC3GQ;ED4GR,WC5GQ;ATkoFhB;;AQrqFA;EAoJU,sBCjHM;EDkHN,cN1KuB;AF+rFjC;;AQ1qFA;EA4Jc,gEAA8D;ARkhF5E;;AQ9qFA;;EA+JU,6BAA6B;EAC7B,kBC7HM;ED8HN,gBAAgB;EAChB,WC/HM;ATmpFhB;;AQtrFA;EAwKU,yBC9HsC;ED+HtC,cCtH2D;ATwoFrE;;AQ3rFA;EA4KY,yBAA4C;EAC5C,yBAAyB;EACzB,cC3HyD;AT8oFrE;;AQjsFA;EAiLY,yBAA0C;EAC1C,y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BAAgB;AbsqGpB;;AartGA;EAiDI,qBAAqB;AbwqGzB;;AaztGA;EAmDI,iBAAiB;Ab0qGrB;;Aa7tGA;EAqDI,sBAAsB;Ab4qG1B;;AajuGA;EAuDI,iBAAiB;Ab8qGrB;;AaruGA;EAyDI,sBAAsB;AbgrG1B;;AazuGA;EA2DI,sBAAsB;AbkrG1B;;Aa7uGA;EA6DI,iBAAiB;AborGrB;;AajvGA;EA+DI,iBAAiB;AbsrGrB;;AarvGA;EAmEM,YAAwB;EACxB,WAAuB;AbsrG7B;;Aa1vGA;EAmEM,YAAwB;EACxB,WAAuB;Ab2rG7B;;Aa/vGA;EAmEM,YAAwB;EACxB,WAAuB;AbgsG7B;;AapwGA;EAmEM,YAAwB;EACxB,WAAuB;AbqsG7B;;AazwGA;EAmEM,YAAwB;EACxB,WAAuB;Ab0sG7B;;Aa9wGA;EAmEM,YAAwB;EACxB,WAAuB;Ab+sG7B;;AanxGA;EAmEM,aAAwB;EACxB,YAAuB;AbotG7B;;AcrxGA;EAEE,4BZM4B;EYL5B,kBZ6DU;EY5DV,sCANkD;EAOlD,kBAAkB;AduxGpB;;Ac5xGA;EAOI,mBAAmB;EACnB,0BAA0B;AdyxG9B;;AcjyGA;EAUI,mBAAmB;Ad2xGvB;;AcryGA;;EAaI,iBZH2B;AFgyG/B;;Ac1yGA;EAeI,uBAAuB;Ad+xG3B;;Ac9yGA;EAiBI,kBAAkB;EAClB,aAAa;EACb,WAAW;AdiyGf;;AcpzGA;;;EAuBI,mBAAmB;AdmyGvB;;Ac1zGA;EA6BM,uBZnByB;EYoBzB,cZjCuB;AFk0G7B;;Ac/zGA;EA6BM,yBZhCuB;EYiCvB,YZpByB;AF0zG/B;;Acp0GA;EA6BM,4BZrBwB;EYsBxB,yBL2Ce;ATgwGrB;;Acz0GA;EA6BM,yBZ5BwB;EY6BxB,WL6CU;ATmwGhB;;Ac90GA;EA6BM,yBZd4B;EYe5B,WL6CU;ATwwGhB;;Acn1GA;EA6BM,yBZZ4B;EYa5B,WL6CU;AT6wGhB;;Acx1GA;EA6BM,yBZb4B;EYc5B,WL6CU;ATkxGhB;;Ac71GA;EA6BM,yBZf4B;EYgB5B,WL6CU;ATuxGhB;;Acl2GA;EA6BM,yBZhB4B;EYiB5B,yBL2Ce;AT8xGrB;;Acv2GA;EA6BM,yBZV2B;EYW3B,WL6CU;ATiyGhB;;Ae32GA;EAEE,qBAAqB;EACrB,wBAAwB;EACxB,YAAY;EACZ,uBb4DuB;Ea3DvB,cAAc;EACd,YbwBW;EavBX,gBAAgB;EAChB,UAAU;EACV,WAAW;Af62Gb;;Aev3GA;EAYI,yBbP2B;AFs3G/B;;Ae33GA;EAcI,yBbb0B;AF83G9B;;Ae/3GA;EAgBI,yBbf0B;AFk4G9B;;Aen4GA;EAkBI,yBbjB0B;EakB1B,YAAY;Afq3GhB;;Aex4GA;EAyBQ,uBbhBuB;AFm4G/B;;Ae54GA;EA2BQ,uBblBuB;AFu4G/B;;Aeh5GA;EA6BQ,uBbpBuB;AF24G/B;;Aep5GA;EA+BQ,mEAA2F;Afy3GnG;;Aex5GA;EAyBQ,yBb7BqB;AFg6G7B;;Ae55GA;EA2BQ,yBb/BqB;AFo6G7B;;Aeh6GA;EA6BQ,yBbjCqB;AFw6G7B;;Aep6GA;EA+BQ,qEAA2F;Afy4GnG;;Aex6GA;EAyBQ,4BblBsB;AFq6G9B;;Ae56GA;EA2BQ,4BbpBsB;AFy6G9B;;Aeh7GA;EA6BQ,4BbtBsB;AF66G9B;;Aep7GA;EA+BQ,wEAA2F;Afy5GnG;;Aex7GA;EAyBQ,yBbzBsB;AF47G9B;;Ae57GA;EA2BQ,yBb3BsB;AFg8G9B;;Aeh8GA;EA6BQ,yBb7BsB;AFo8G9B;;Aep8GA;EA+BQ,qEAA2F;Afy6GnG;;Aex8GA;EAyBQ,yBbX0B;AF87GlC;;Ae58GA;EA2BQ,yBbb0B;AFk8GlC;;Aeh9GA;EA6BQ,yBbf0B;AFs8GlC;;Aep9GA;EA+BQ,qEAA2F;Afy7GnG;;Aex9GA;EAyBQ,yBbT0B;AF48GlC;;Ae59GA;EA2BQ,yBbX0B;AFg9GlC;;Aeh+GA;EA6BQ,yBbb0B;AFo9GlC;;Aep+GA;EA+BQ,qEAA2F;Afy8GnG;;Aex+GA;EAyBQ,yBbV0B;AF69GlC;;Ae5+GA;EA2BQ,yBbZ0B;AFi+GlC;;Aeh/GA;EA6BQ,yBbd0B;AFq+GlC;;Aep/GA;EA+BQ,qEAA2F;Afy9GnG;;Aex/GA;EAyBQ,yBbZ0B;AF++GlC;;Ae5/GA;EA2BQ,yBbd0B;AFm/GlC;;AehgHA;EA6BQ,yBbhB0B;AFu/GlC;;AepgHA;EA+BQ,qEAA2F;Afy+GnG;;AexgHA;EAyBQ,yBbb0B;AFggHlC;;Ae5gHA;EA2BQ,yBbf0B;AFogHlC;;AehhHA;EA6BQ,yBbjB0B;AFwgHlC;;AephHA;EA+BQ,qEAA2F;Afy/GnG;;AexhHA;EAyBQ,yBbPyB;AF0gHjC;;Ae5hHA;EA2BQ,yBbTyB;AF8gHjC;;AehiHA;EA6BQ,yBbXyB;AFkhHjC;;AepiHA;EA+BQ,qEAA2F;AfygHnG;;AexiHA;EAkCI,gCApCkC;UAoClC,wBApCkC;EAqClC,2CAAmC;UAAnC,mCAAmC;EACnC,yCAAiC;UAAjC,iCAAiC;EACjC,yCAAiC;UAAjC,iCAAiC;EACjC,yBbjC2B;EakC3B,qEAA0F;EAC1F,6BAA6B;EAC7B,4BAA4B;EAC5B,0BAA0B;Af0gH9B;;AepjHA;EA4CM,6BAA6B;Af4gHnC;;AexjHA;EA8CM,6BAA6B;Af8gHnC;;Ae5jHA;EAkDI,eblBY;AFgiHhB;;AehkHA;EAoDI,ebtBY;AFsiHhB;;AepkHA;EAsDI,cbzBW;AF2iHf;;AehhHA;EACE;IACE,2BAA2B;EfmhH7B;EelhHA;IACE,4BAA4B;EfohH9B;AACF;;AezhHA;EACE;IACE,2BAA2B;EfmhH7B;EelhHA;IACE,4BAA4B;EfohH9B;AACF;;AgB9jHA;EAEE,uBdZ6B;Eca7B,cdtB4B;AFslH9B;;AgBnkHA;;EAMI,yBdrB0B;EcsB1B,qBA5B6B;EA6B7B,qBA5B6B;EA6B7B,mBAAmB;AhBkkHvB;;AgB3kHA;;EAeQ,uBdzBuB;Ec0BvB,mBd1BuB;Ec2BvB,cdxCqB;AFymH7B;;AgBllHA;;EAeQ,yBdtCqB;EcuCrB,qBdvCqB;EcwCrB,Yd3BuB;AFmmH/B;;AgBzlHA;;EAeQ,4Bd3BsB;Ec4BtB,wBd5BsB;Ec6BtB,yBPoCa;AT2iHrB;;AgBhmHA;;EAeQ,yBdlCsB;EcmCtB,qBdnCsB;EcoCtB,WPsCQ;ATgjHhB;;AgBvmHA;;EAeQ,yBdpB0B;EcqB1B,qBdrB0B;EcsB1B,WPsCQ;ATujHhB;;AgB9mHA;;EAeQ,yBdlB0B;EcmB1B,qBdnB0B;EcoB1B,WPsCQ;AT8jHhB;;AgBrnHA;;EAeQ,yBdnB0B;EcoB1B,qBdpB0B;EcqB1B,WPsCQ;ATqkHhB;;AgB5nHA;;EAeQ,yBdrB0B;EcsB1B,qBdtB0B;EcuB1B,WPsCQ;AT4kHhB;;AgBnoHA;;EAeQ,yBdtB0B;EcuB1B,qBdvB0B;EcwB1B,yBPoCa;ATqlHrB;;AgB1oHA;;EAeQ,yBdhByB;EciBzB,qBdjByB;EckBzB,WPsCQ;AT0lHhB;;AgBjpHA;;EAoBM,mBAAmB;EACnB,SAAS;AhBkoHf;;AgBvpHA;;EAuBM,yBd5B4B;Ec6B5B,WP+BU;ATsmHhB;;AgB7pHA;;;;EA2BQ,mBAAmB;AhByoH3B;;AgBpqHA;EA6BI,cdhD0B;AF2rH9B;;AgBxqHA;EA+BM,gBAAgB;AhB6oHtB;;AgB5qHA;EAkCM,yBdvC4B;EcwC5B,WPoBU;AT0nHhB;;AgBjrHA;;EAsCQ,mBAAmB;AhBgpH3B;;AgBtrHA;;EAyCQ,kBPcQ;EObR,mBAAmB;AhBkpH3B;;AgB5rHA;EA4CI,6BAxDqC;AhB4sHzC;;AgBhsHA;;EA+CM,qBAhEgC;EAiEhC,cdnEwB;AFytH9B;;AgBtsHA;EAkDI,6BA5DqC;AhBotHzC;;AgB1sHA;;EAqDM,qBApEgC;EAqEhC,cdzEwB;AFmuH9B;;AgBhtHA;EAwDI,6BAnEqC;AhB+tHzC;;AgBptHA;;EA6DU,sBAAsB;AhB4pHhC;;AgBztHA;;EAkEM,iBAAiB;AhB4pHvB;;AgB9tHA;;EAuEU,wBAAwB;AhB4pHlC;;AgBnuHA;EAyEI,WAAW;AhB8pHf;;AgBvuHA;EA8EU,yBdzFoB;AFsvH9B;;AgB3uHA;EAmFY,yBd9FkB;AF0vH9B;;AgB/uHA;EAqFc,4BdjGgB;AF+vH9B;;AgBnvHA;;EAyFM,qBAAqB;AhB+pH3B;;AgBxvHA;EA8FU,yBdzGoB;AFuwH9B;;AgB5pHA;Ef3DE,iCAAiC;Ee8DjC,cAAc;EACd,kBAAkB;EAClB,eAAe;AhB8pHjB;;AiBvxHA;EACE,mBAAmB;EACnB,aAAa;EACb,eAAe;EACf,2BAA2B;AjB0xH7B;;AiB9xHA;EAMI,qBAAqB;AjB4xHzB;;AiBlyHA;EAQM,oBAAoB;AjB8xH1B;;AiBtyHA;EAUI,sBAAsB;AjBgyH1B;;AiB1yHA;EAYI,mBAAmB;AjBkyHvB;;AiB9yHA;EAgBM,efgBO;AFkxHb;;AiBlzHA;EAmBM,kBfYU;AFuxHhB;;AiBtzHA;EAqBI,uBAAuB;AjBqyH3B;;AiB1zHA;EAuBM,qBAAqB;EACrB,oBAAoB;AjBuyH1B;;AiB/zHA;EA0BI,yBAAyB;AjByyH7B;;AiBn0HA;EA6BQ,mBAAmB;AjB0yH3B;;AiBv0HA;EA+BQ,eAAe;AjB4yHvB;;AiB30HA;EAkCM,eAAe;AjB6yHrB;;AiB/0HA;EAoCQ,cAAc;EACd,4BAA4B;EAC5B,yBAAyB;AjB+yHjC;;AiBr1HA;EAwCQ,6BAA6B;EAC7B,0BAA0B;AjBizHlC;;AiB/yHA;EACE,mBAAmB;EACnB,4BfrC4B;EesC5B,kBfkBU;EejBV,cf7C4B;Ee8C5B,oBAAoB;EACpB,kBfhBc;EeiBd,WAAW;EACX,uBAAuB;EACvB,gBAAgB;EAChB,oBAAoB;EACpB,qBAAqB;EACrB,mBAAmB;AjBkzHrB;;AiB9zHA;EAcI,oBAAoB;EACpB,uBAAuB;AjBozH3B;;AiBn0HA;EAqBM,uBftDyB;EeuDzB,cfpEuB;AFs3H7B;;AiBx0HA;EAqBM,yBfnEuB;EeoEvB,YfvDyB;AF82H/B;;AiB70HA;EAqBM,4BfxDwB;EeyDxB,yBRQe;ATozHrB;;AiBl1HA;EAqBM,yBf/DwB;EegExB,WRUU;ATuzHhB;;AiBv1HA;EAqBM,yBfjD4B;EekD5B,WRUU;AT4zHhB;;AiB51HA;EA4BU,yBRWsC;EQVtC,cRmB2D;ATizHrE;;AiBj2HA;EAqBM,yBf/C4B;EegD5B,WRUU;ATs0HhB;;AiBt2HA;EA4BU,yBRWsC;EQVtC,cRmB2D;AT2zHrE;;AiB32HA;EAqBM,yBfhD4B;EeiD5B,WRUU;ATg1HhB;;AiBh3HA;EA4BU,yBRWsC;EQVtC,cRmB2D;ATq0HrE;;AiBr3HA;EAqBM,yBflD4B;EemD5B,WRUU;AT01HhB;;AiB13HA;EA4BU,yBRWsC;EQVtC,cRmB2D;AT+0HrE;;AiB/3HA;EAqBM,yBfnD4B;EeoD5B,yBRQe;ATs2HrB;;AiBp4HA;EA4BU,yBRWsC;EQVtC,cRmB2D;ATy1HrE;;AiBz4HA;EAqBM,yBf7C2B;Ee8C3B,WRUU;AT82HhB;;AiB94HA;EA4BU,yBRWsC;EQVtC,cRmB2D;ATm2HrE;;AiBn5HA;EAgCI,kBf1CY;AFi6HhB;;AiBv5HA;EAkCI,ef7CS;AFs6Hb;;AiB35HA;EAoCI,kBfhDY;AF26HhB;;AiB/5HA;EAuCM,qBAAqB;EACrB,sBAAsB;AjB43H5B;;AiBp6HA;EA0CM,qBAAqB;EACrB,sBAAsB;AjB83H5B;;AiBz6HA;EA6CM,qBAAqB;EACrB,sBAAsB;AjBg4H5B;;AiB96HA;EAiDI,gBA9FmB;EA+FnB,UAAU;EACV,kBAAkB;EAClB,UAAU;AjBi4Hd;;AiBr7HA;EAuDM,8BAA8B;EAC9B,WAAW;EACX,cAAc;EACd,SAAS;EACT,kBAAkB;EAClB,QAAQ;EACR,0DAA0D;EAC1D,+BAA+B;AjBk4HrC;;AiBh8HA;EAgEM,WAAW;EACX,UAAU;AjBo4HhB;;AiBr8HA;EAmEM,WAAW;EACX,UAAU;AjBs4HhB;;AiB18HA;EAuEM,yBAAmD;AjBu4HzD;;AiB98HA;EAyEM,yBAAoD;AjBy4H1D;;AiBl9HA;EA2EI,uBfpDqB;AF+7HzB;;AiBz4HA;EAEI,0BAA0B;AjB24H9B;;AkBv/HA;;EAGE,sBAAsB;AlBy/HxB;;AkB5/HA;;;;EAMI,oBAAoB;AlB6/HxB;;AkBngIA;;EAQI,iBApBmB;AlBohIvB;;AkBxgIA;;EAUI,iBArBmB;AlBwhIvB;;AkB7gIA;;EAYI,sBAAsB;AlBsgI1B;;AkBpgIA;EACE,chB5B4B;EgB+B5B,ehBHW;EgBIX,gBhBKmB;EgBJnB,kBAnCuB;AlBwiIzB;;AkB3gIA;EAQI,cApCwB;EAqCxB,oBApCyB;AlB2iI7B;;AkBhhIA;EAWI,oBAAoB;AlBygIxB;;AkBphIA;EAaI,oBA7B+B;AlBwiInC;;AkBxhIA;EAkBM,ehBnBO;AF6hIb;;AkB5hIA;EAkBM,iBhBlBS;AFgiIf;;AkBhiIA;EAkBM,ehBjBO;AFmiIb;;AkBpiIA;EAkBM,iBhBhBS;AFsiIf;;AkBxiIA;EAkBM,kBhBfU;AFyiIhB;;AkB5iIA;EAkBM,ehBdO;AF4iIb;;AkBhjIA;EAkBM,kBhBbU;AF+iIhB;;AkBhiIA;EACE,chB/C4B;EgBkD5B,kBhBrBc;EgBsBd,gBhBjBiB;EgBkBjB,iBA7CyB;AlB8kI3B;;AkBviIA;EAQI,chBvD0B;EgBwD1B,gBhBnBiB;AFsjIrB;;AkB5iIA;EAWI,oBA/C+B;AlBolInC;;AkBhjIA;EAgBM,ehBrCO;AFykIb;;AkBpjIA;EAgBM,iBhBpCS;AF4kIf;;AkBxjIA;EAgBM,ehBnCO;AF+kIb;;AkB5jIA;EAgBM,iBhBlCS;AFklIf;;AkBhkIA;EAgBM,kBhBjCU;AFqlIhB;;AkBpkIA;EAgBM,ehBhCO;AFwlIb;;AkBxkIA;EAgBM,kBhB/BU;AF2lIhB;;AmB3nIA;EACE,cAAc;EACd,eAAe;EACf,mBAAmB;EACnB,kBAAkB;EAClB,yBAAyB;AnB8nI3B;;AmB5nIA;EAEE,gBjB0BiB;EiBzBjB,eAAe;EACf,gBAAgB;EAChB,UAAU;AnB8nIZ;;AmBnoIA;EAOI,cAAc;EACd,eAAe;AnBgoInB;;AmB3nIA;EACE,mBAAmB;EACnB,4BjBf4B;EiBgB5B,uBjB0CuB;EiBzCvB,oBAAoB;EACpB,kBjBKc;EiBJd,WAAW;EACX,uBAAuB;EACvB,oBAAoB;EACpB,gBAAgB;EAChB,uBAAuB;EACvB,kBAAkB;EAClB,mBAAmB;AnB8nIrB;;AoB/mIA;EAxBE,uBlBd6B;EkBe7B,qBlBpB4B;EkBqB5B,kBlBsCU;EkBrCV,clB1B4B;AFqqI9B;;ACxmII;EmBjCA,4BlB5B0B;AFyqI9B;;AC5mII;EmBjCA,4BlB5B0B;AF6qI9B;;AChnII;EmBjCA,4BlB5B0B;AFirI9B;;ACpnII;EmBjCA,4BlB5B0B;AFqrI9B;;AoBxpIE;EAEE,qBlB5B0B;AFsrI9B;;AoBzpIE;EAIE,qBlBpB8B;EkBqB9B,kDlBrB8B;AF8qIlC;;AoBxpIE;;;;;EAEE,4BlBjC0B;EkBkC1B,wBlBlC0B;EkBmC1B,gBAAgB;EAChB,clBzC0B;AFusI9B;;AC5oII;;;;;EmBhBE,+BlB3CwB;AF+sI9B;;ACppII;;;;;EmBhBE,+BlB3CwB;AFutI9B;;AC5pII;;;;;EmBhBE,+BlB3CwB;AF+tI9B;;ACpqII;;;;;EmBhBE,+BlB3CwB;AFuuI9B;;AqB3uIA;EAEE,2DnBJ2B;EmBK3B,eAAe;EACf,WAAW;ArB6uIb;;AqB5uIE;EACE,gBAAgB;ArB+uIpB;;AqB3uII;EACE,mBnBAyB;AF8uI/B;;AqB/uIK;EAMG,mDnBLuB;AFkvI/B;;AqBnvII;EACE,qBnBbuB;AFmwI7B;;AqBvvIK;EAMG,gDnBlBqB;AFuwI7B;;AqB3vII;EACE,wBnBFwB;AFgwI9B;;AqB/vIK;EAMG,mDnBPsB;AFowI9B;;AqBnwII;EACE,qBnBTwB;AF+wI9B;;AqBvwIK;EAMG,gDnBdsB;AFmxI9B;;AqB3wII;EACE,qBnBK4B;AFywIlC;;AqB/wIK;EAMG,iDnBA0B;AF6wIlC;;AqBnxII;EACE,qBnBO4B;AF+wIlC;;AqBvxIK;EAMG,kDnBE0B;AFmxIlC;;AqB3xII;EACE,qBnBM4B;AFwxIlC;;AqB/xIK;EAMG,kDnBC0B;AF4xIlC;;AqBnyII;EACE,qBnBI4B;AFkyIlC;;AqBvyIK;EAMG,kDnBD0B;AFsyIlC;;AqB3yII;EACE,qBnBG4B;AF2yIlC;;AqB/yIK;EAMG,kDnBF0B;AF+yIlC;;AqBnzII;EACE,qBnBS2B;AF6yIjC;;AqBvzIK;EAMG,kDnBIyB;AFizIjC;;AqBnzIE;ElBsBA,kBDwBgB;ECvBhB,kBDPc;AFwyIhB;;AqBtzIE;ElBuBA,kBDXc;AF8yIhB;;AqBxzIE;ElBuBA,iBDda;AFmzIf;;AqBzzIE;EACE,cAAc;EACd,WAAW;ArB4zIf;;AqB3zIE;EACE,eAAe;EACf,WAAW;ArB8zIf;;AqB5zIA;EAGI,uBnBgCqB;EmB/BrB,gDAA4D;EAC5D,iDAA6D;ArB6zIjE;;AqBl0IA;EAOI,6BAA6B;EAC7B,yBAAyB;EACzB,gBAAgB;EAChB,eAAe;EACf,gBAAgB;ArB+zIpB;;AqB7zIA;EAEE,cAAc;EACd,eAAe;EACf,eAAe;EACf,2BlB7CkE;EkB8ClE,gBAAgB;ArB+zIlB;;AqBr0IA;EAQI,gBAxDsB;EAyDtB,eAxDqB;ArBy3IzB;;AqB10IA;EAWI,eAAe;ArBm0InB;;AqB90IA;EAcI,YAAY;ArBo0IhB;;AsBn4IA;EACE,eAAe;EACf,qBAAqB;EACrB,iBAAiB;EACjB,kBAAkB;AtBs4IpB;;AsBr4IE;EACE,eAAe;AtBw4InB;;AsBv4IE;EACE,cpBF0B;AF44I9B;;AsBz4IE;;;EAEE,cpBH0B;EoBI1B,mBAAmB;AtB64IvB;;AsBx4IA;EAGI,kBAAkB;AtBy4ItB;;AuB75IA;EACE,qBAAqB;EACrB,eAAe;EACf,kBAAkB;EAClB,mBAAmB;AvBg6IrB;;AuBp6IA;EAMI,apBDkB;AHm6ItB;;AuBx6IA;EAUM,qBrBY4B;EqBX5B,cAAc;EACd,UAAU;AvBk6IhB;;AuB96IA;EAeM,uBrBwDmB;EqBvDnB,iBAAiB;AvBm6IvB;;AuBn7IA;EAmBI,eAAe;EACf,cAAc;EACd,cAAc;EACd,eAAe;EACf,aAAa;AvBo6IjB;;AuB37IA;EAyBM,aAAa;AvBs6InB;;AuB/7IA;;EA4BM,wBrBfwB;AFu7I9B;;AuBp8IA;EA8BM,oBAAoB;AvB06I1B;;AuBx8IA;EAgCM,YAAY;EACZ,UAAU;AvB46IhB;;AuB78IA;EAmCQ,kBAAkB;AvB86I1B;;AuBj9IA;EAuCM,qBrBjCwB;AF+8I9B;;AuBr9IA;EA6CQ,mBrB9BuB;AF08I/B;;AuBz9IA;EA+CQ,mBrBhCuB;AF88I/B;;AuB79IA;EAkDU,qBAAgC;AvB+6I1C;;AuBj+IA;EAuDU,mDrBxCqB;AFs9I/B;;AuBr+IA;EA6CQ,qBrB3CqB;AFu+I7B;;AuBz+IA;EA+CQ,qBrB7CqB;AF2+I7B;;AuB7+IA;EAkDU,mBAAgC;AvB+7I1C;;AuBj/IA;EAuDU,gDrBrDmB;AFm/I7B;;AuBr/IA;EA6CQ,wBrBhCsB;AF4+I9B;;AuBz/IA;EA+CQ,wBrBlCsB;AFg/I9B;;AuB7/IA;EAkDU,qBAAgC;AvB+8I1C;;AuBjgJA;EAuDU,mDrB1CoB;AFw/I9B;;AuBrgJA;EA6CQ,qBrBvCsB;AFmgJ9B;;AuBzgJA;EA+CQ,qBrBzCsB;AFugJ9B;;AuB7gJA;EAkDU,qBAAgC;AvB+9I1C;;AuBjhJA;EAuDU,gDrBjDoB;AF+gJ9B;;AuBrhJA;EA6CQ,qBrBzB0B;AFqgJlC;;AuBzhJA;EA+CQ,qBrB3B0B;AFygJlC;;AuB7hJA;EAkDU,qBAAgC;AvB++I1C;;AuBjiJA;EAuDU,iDrBnCwB;AFihJlC;;AuBriJA;EA6CQ,qBrBvB0B;AFmhJlC;;AuBziJA;EA+CQ,qBrBzB0B;AFuhJlC;;AuB7iJA;EAkDU,qBAAgC;AvB+/I1C;;AuBjjJA;EAuDU,kDrBjCwB;AF+hJlC;;AuBrjJA;EA6CQ,qBrBxB0B;AFoiJlC;;AuBzjJA;EA+CQ,qBrB1B0B;AFwiJlC;;AuB7jJA;EAkDU,qBAAgC;AvB+gJ1C;;AuBjkJA;EAuDU,kDrBlCwB;AFgjJlC;;AuBrkJA;EA6CQ,qBrB1B0B;AFsjJlC;;AuBzkJA;EA+CQ,qBrB5B0B;AF0jJlC;;AuB7kJA;EAkDU,qBAAgC;AvB+hJ1C;;AuBjlJA;EAuDU,kDrBpCwB;AFkkJlC;;AuBrlJA;EA6CQ,qBrB3B0B;AFukJlC;;AuBzlJA;EA+CQ,qBrB7B0B;AF2kJlC;;AuB7lJA;EAkDU,qBAAgC;AvB+iJ1C;;AuBjmJA;EAuDU,kDrBrCwB;AFmlJlC;;AuBrmJA;EA6CQ,qBrBrByB;AFilJjC;;AuBzmJA;EA+CQ,qBrBvByB;AFqlJjC;;AuB7mJA;EAkDU,qBAAgC;AvB+jJ1C;;AuBjnJA;EAuDU,kDrB/BuB;AF6lJjC;;AuBrnJA;EpB4CE,kBDwBgB;ECvBhB,kBDPc;AFolJhB;;AuB1nJA;EpB+CE,kBDXc;AF0lJhB;;AuB9nJA;EpBiDE,iBDda;AF+lJf;;AuBloJA;EAkEM,qBrB1DwB;AF8nJ9B;;AuBtoJA;EAoEI,WAAW;AvBskJf;;AuB1oJA;EAsEM,WAAW;AvBwkJjB;;AuB9oJA;EA0EM,aAAa;EACb,kBAAkB;EAClB,cAAc;EACd,YAAY;EACZ,eAAe;AvBwkJrB;;AuBtpJA;EAgFM,kBrB1CU;AFonJhB;;AuB1pJA;EAkFM,kBrB9CU;AF0nJhB;;AuB9pJA;EAoFM,iBrBjDS;AF+nJf;;AwBrpJA;EAEE,oBAAoB;EACpB,aAAa;EACb,2BAA2B;EAC3B,kBAAkB;AxBupJpB;;AwB5pJA;EAYQ,uBtBVuB;EsBWvB,yBAAyB;EACzB,ctBzBqB;AF6qJ7B;;AwBlqJA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,ctB/BmB;AFmrJ7B;;AwBxqJA;EAwBU,yBAAyB;EACzB,+CtBvBqB;EsBwBrB,ctBrCmB;AFyrJ7B;;AwB9qJA;EA8BU,yBAAoC;EACpC,yBAAyB;EACzB,ctB3CmB;AF+rJ7B;;AwBprJA;EAYQ,yBtBvBqB;EsBwBrB,yBAAyB;EACzB,YtBZuB;AFwrJ/B;;AwB1rJA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,YtBlBqB;AF8rJ/B;;AwBhsJA;EAwBU,yBAAyB;EACzB,4CtBpCmB;EsBqCnB,YtBxBqB;AFosJ/B;;AwBtsJA;EA8BU,uBAAoC;EACpC,yBAAyB;EACzB,YtB9BqB;AF0sJ/B;;AwB5sJA;EAYQ,4BtBZsB;EsBatB,yBAAyB;EACzB,yBfmDa;ATipJrB;;AwBltJA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,yBf6CW;ATupJrB;;AwBxtJA;EAwBU,yBAAyB;EACzB,+CtBzBoB;EsB0BpB,yBfuCW;AT6pJrB;;AwB9tJA;EA8BU,yBAAoC;EACpC,yBAAyB;EACzB,yBfiCW;ATmqJrB;;AwBpuJA;EAYQ,yBtBnBsB;EsBoBtB,yBAAyB;EACzB,WfqDQ;ATuqJhB;;AwB1uJA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,Wf+CM;AT6qJhB;;AwBhvJA;EAwBU,yBAAyB;EACzB,4CtBhCoB;EsBiCpB,WfyCM;ATmrJhB;;AwBtvJA;EA8BU,yBAAoC;EACpC,yBAAyB;EACzB,WfmCM;ATyrJhB;;AwB5vJA;EAYQ,yBtBL0B;EsBM1B,yBAAyB;EACzB,WfqDQ;AT+rJhB;;AwBlwJA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,Wf+CM;ATqsJhB;;AwBxwJA;EAwBU,yBAAyB;EACzB,6CtBlBwB;EsBmBxB,WfyCM;AT2sJhB;;AwB9wJA;EA8BU,yBAAoC;EACpC,yBAAyB;EACzB,WfmCM;ATitJhB;;AwBpxJA;EAYQ,yBtBH0B;EsBI1B,yBAAyB;EACzB,WfqDQ;ATutJhB;;AwB1xJA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,Wf+CM;AT6tJhB;;AwBhyJA;EAwBU,yBAAyB;EACzB,8CtBhBwB;EsBiBxB,WfyCM;ATmuJhB;;AwBtyJA;EA8BU,yBAAoC;EACpC,yBAAyB;EACzB,WfmCM;ATyuJhB;;AwB5yJA;EAYQ,yBtBJ0B;EsBK1B,yBAAyB;EACzB,WfqDQ;AT+uJhB;;AwBlzJA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,Wf+CM;ATqvJhB;;AwBxzJA;EAwBU,yBAAyB;EACzB,8CtBjBwB;EsBkBxB,WfyCM;AT2vJhB;;AwB9zJA;EA8BU,yBAAoC;EACpC,yBAAyB;EACzB,WfmCM;ATiwJhB;;AwBp0JA;EAYQ,yBtBN0B;EsBO1B,yBAAyB;EACzB,WfqDQ;ATuwJhB;;AwB10JA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,Wf+CM;AT6wJhB;;AwBh1JA;EAwBU,yBAAyB;EACzB,8CtBnBwB;EsBoBxB,WfyCM;ATmxJhB;;AwBt1JA;EA8BU,yBAAoC;EACpC,yBAAyB;EACzB,WfmCM;ATyxJhB;;AwB51JA;EAYQ,yBtBP0B;EsBQ1B,yBAAyB;EACzB,yBfmDa;ATiyJrB;;AwBl2JA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,yBf6CW;ATuyJrB;;AwBx2JA;EAwBU,yBAAyB;EACzB,8CtBpBwB;EsBqBxB,yBfuCW;AT6yJrB;;AwB92JA;EA8BU,yBAAoC;EACpC,yBAAyB;EACzB,yBfiCW;ATmzJrB;;AwBp3JA;EAYQ,yBtBDyB;EsBEzB,yBAAyB;EACzB,WfqDQ;ATuzJhB;;AwB13JA;EAkBU,yBAAsC;EACtC,yBAAyB;EACzB,Wf+CM;AT6zJhB;;AwBh4JA;EAwBU,yBAAyB;EACzB,8CtBduB;EsBevB,WfyCM;ATm0JhB;;AwBt4JA;EA8BU,yBAAoC;EACpC,yBAAyB;EACzB,WfmCM;ATy0JhB;;AwB54JA;EAmCI,kBtBVY;AFu3JhB;;AwBh5JA;EAqCI,kBtBdY;AF63JhB;;AwBp5JA;EAwCQ,eAAe;AxBg3JvB;;AwBx5JA;EA0CI,iBtBpBW;AFs4Jf;;AwB55JA;EA6CQ,eAAe;AxBm3JvB;;AwBh6JA;EAiDM,6BAA6B;EAC7B,0BAA0B;AxBm3JhC;;AwBr6JA;EAoDM,4BAA4B;EAC5B,yBAAyB;AxBq3J/B;;AwB16JA;EAwDQ,kBtBAI;AFs3JZ;;AwB96JA;EA0DQ,aAAa;AxBw3JrB;;AwBl7JA;EA6DM,sBAAsB;AxBy3J5B;;AwBt7JA;EA+DM,sBAAsB;EACtB,YAAY;EACZ,gBAAgB;AxB23JtB;;AwB57JA;EAmEM,uBAAuB;AxB63J7B;;AwBh8JA;EAqEM,aAAa;EACb,YAAY;AxB+3JlB;;AwBr8JA;EAwEQ,eAAe;AxBi4JvB;;AwBz8JA;EA2EQ,eAAe;AxBk4JvB;;AwB78JA;EA8EQ,eAAe;AxBm4JvB;;AwBj9JA;EAiFQ,eAAe;AxBo4JvB;;AwBr9JA;EAoFQ,0BAA4C;AxBq4JpD;;AwBz9JA;EAsFQ,0BtB9BI;EsB+BJ,uBAAuB;AxBu4J/B;;AwB99JA;EAyFI,uBAAuB;AxBy4J3B;;AwBl+JA;EA4FM,WAAW;AxB04JjB;;AwBt+JA;EA8FM,YAAY;EACZ,eAAe;AxB44JrB;;AwB3+JA;EAiGI,yBAAyB;AxB84J7B;;AwB/+JA;EAmGM,0BAA4C;AxBg5JlD;;AwBn/JA;EAqGM,0BtB7CM;EsB8CN,2BAA2B;EAC3B,SAAS;AxBk5Jf;;AwBh5JA;EACE,oBAAoB;EACpB,aAAa;EACb,eAAe;EACf,2BAA2B;EAC3B,gBAAgB;EAChB,kBAAkB;AxBm5JpB;;AwBz5JA;EASM,yBAA0D;EAC1D,ctB1HwB;AF8gK9B;;AwB95JA;EAYM,qBAAmD;AxBs5JzD;;AwBl6JA;EAeM,yBAAwD;EACxD,ctBhIwB;AFuhK9B;;AwBv6JA;EAkBM,qBAAiD;AxBy5JvD;;AwBv5JA;EACE,YAAY;EACZ,OAAO;EACP,UAAU;EACV,aAAa;EACb,kBAAkB;EAClB,MAAM;EACN,WAAW;AxB05Jb;;AwBx5JA;;EAGE,qBtB5I4B;EsB6I5B,kBtBlFU;EsBmFV,cAAc;EACd,iBAAiB;EACjB,kBAAkB;EAClB,mBAAmB;AxB05JrB;;AwBx5JA;EACE,4BtBjJ4B;EsBkJ5B,ctBxJ4B;AFmjK9B;;AwBz5JA;EACE,qBtBxJ4B;EsByJ5B,mBA1J4B;EA2J5B,2BA1JoC;EA2JpC,cAAc;EACd,eA3JwB;EA4JxB,gBAAgB;EAChB,gBAAgB;EAChB,uBAAuB;AxB45JzB;;AwB15JA;EACE,mBAAmB;EACnB,aAAa;EACb,WAAW;EACX,uBAAuB;EACvB,mBAAmB;EACnB,UAAU;AxB65JZ;;AwBn6JA;EAQI,eAAe;AxB+5JnB;;AyB7kKA;EACE,cvBA4B;EuBC5B,cAAc;EACd,evB6BW;EuB5BX,gBvBmCe;AF6iKjB;;AyBplKA;EAMI,oBAAoB;AzBklKxB;;AyBxlKA;EASI,kBvBwBY;AF2jKhB;;AyB5lKA;EAWI,kBvBoBY;AFikKhB;;AyBhmKA;EAaI,iBvBiBW;AFskKf;;AyBrlKA;EACE,cAAc;EACd,kBvBgBc;EuBfd,mBAAmB;AzBwlKrB;;AyB3lKA;EAOM,YvBZyB;AFomK/B;;AyB/lKA;EAOM,cvBzBuB;AFqnK7B;;AyBnmKA;EAOM,iBvBdwB;AF8mK9B;;AyBvmKA;EAOM,cvBrBwB;AFynK9B;;AyB3mKA;EAOM,cvBP4B;AF+mKlC;;AyB/mKA;EAOM,cvBL4B;AFinKlC;;AyBnnKA;EAOM,cvBN4B;AFsnKlC;;AyBvnKA;EAOM,cvBR4B;AF4nKlC;;AyB3nKA;EAOM,cvBT4B;AFioKlC;;AyB/nKA;EAOM,cvBH2B;AF+nKjC;;AyBxnKA;EAEI,sBAAsB;AzB0nK1B;;AyB5nKA;EAKI,aAAa;EACb,2BAA2B;AzB2nK/B;;AyBjoKA;EASQ,kBAAkB;AzB4nK1B;;AyBroKA;;;EAcU,gBAAgB;AzB6nK1B;;AyB3oKA;;;EAmBU,6BAA6B;EAC7B,0BAA0B;AzB8nKpC;;AyBlpKA;;;EAyBU,4BAA4B;EAC5B,yBAAyB;AzB+nKnC;;AyBzpKA;;;;;EAiCY,UAAU;AzBgoKtB;;AyBjqKA;;;;;;;;;EAsCY,UAAU;AzBuoKtB;;AyB7qKA;;;;;;;;;EAwCc,UAAU;AzBipKxB;;AyBzrKA;EA0CQ,YAAY;EACZ,cAAc;AzBmpKtB;;AyB9rKA;EA6CM,uBAAuB;AzBqpK7B;;AyBlsKA;EA+CM,yBAAyB;AzBupK/B;;AyBtsKA;EAkDQ,YAAY;EACZ,cAAc;AzBwpKtB;;AyB3sKA;EAqDI,aAAa;EACb,2BAA2B;AzB0pK/B;;AyBhtKA;EAwDM,cAAc;AzB4pKpB;;AyBptKA;EA0DQ,gBAAgB;EAChB,qBAAqB;AzB8pK7B;;AyBztKA;EA6DQ,YAAY;EACZ,cAAc;AzBgqKtB;;AyB9tKA;EAgEM,uBAAuB;AzBkqK7B;;AyBluKA;EAkEM,yBAAyB;AzBoqK/B;;AyBtuKA;EAoEM,eAAe;AzBsqKrB;;AyB1uKA;EAwEU,sBAAsB;AzBsqKhC;;AyB9uKA;EA0EQ,uBAAuB;AzBwqK/B;;AyBlvKA;EA4EQ,gBAAgB;AzB0qKxB;;AChsKE;EwBtDF;IA+EM,aAAa;EzB4qKjB;AACF;;AyB3qKA;EAEI,kBAAkB;AzB6qKtB;;AC9sKE;EwB+BF;IAII,qBAAqB;EzBgrKvB;AACF;;AChtKE;EwB2BF;IAMI,aAAa;IACb,YAAY;IACZ,cAAc;IACd,oBAAoB;IACpB,iBAAiB;EzBorKnB;EyB9rKF;IAYM,kBvBtFU;IuBuFV,oBAAoB;EzBqrKxB;EyBlsKF;IAeM,oBAAoB;EzBsrKxB;EyBrsKF;IAiBM,kBvB7FU;IuB8FV,oBAAoB;EzBurKxB;EyBzsKF;IAoBM,iBvBjGS;IuBkGT,oBAAoB;EzBwrKxB;AACF;;AyBvrKA;EAEI,gBAAgB;AzByrKpB;;AC7uKE;EwBkDF;IAII,aAAa;IACb,aAAa;IACb,YAAY;IACZ,cAAc;EzB4rKhB;EyBnsKF;IASM,gBAAgB;EzB6rKpB;EyBtsKF;IAWM,cAAc;EzB8rKlB;EyBzsKF;IAaQ,YAAY;EzB+rKlB;EyB5sKF;IAeQ,qBAAqB;EzBgsK3B;AACF;;AyB/rKA;EACE,sBAAsB;EACtB,WAAW;EACX,evBtHW;EuBuHX,kBAAkB;EAClB,gBAAgB;AzBksKlB;;AyBvsKA;;;EAaU,cvB9JoB;AF81K9B;;AyB7sKA;;;EAeQ,kBvBjIQ;AFq0KhB;;AyBntKA;;;EAiBQ,kBvBrIQ;AF60KhB;;AyBztKA;;;EAmBQ,iBvBxIO;AFo1Kf;;AyB/tKA;EAqBM,cvBnKwB;EuBoKxB,atBzKgB;EsB0KhB,oBAAoB;EACpB,kBAAkB;EAClB,MAAM;EACN,YtB7KgB;EsB8KhB,UAAU;AzB8sKhB;;AyBzuKA;;EA+BM,mBtBlLgB;AHi4KtB;;AyB9uKA;EAiCM,OAAO;AzBitKb;;AyBlvKA;;EAqCM,oBtBxLgB;AH04KtB;;AyBvvKA;EAuCM,QAAQ;AzBotKd;;AyB3vKA;EA2CM,6BAA6B;EAC7B,cAAc;EACd,YAAY;EACZ,UAAU;AzBotKhB;;AyBlwKA;EAgDM,kBvBlKU;AFw3KhB;;AyBtwKA;EAkDM,kBvBtKU;AF83KhB;;AyB1wKA;EAoDM,iBvBzKS;AFm4Kf;;A0B75KA;EAGE,exByBW;EwBxBX,mBAAmB;A1B85KrB;;A0Bl6KA;EAMI,mBAAmB;EACnB,cxBM8B;EwBL9B,aAAa;EACb,uBAAuB;EACvB,iBAduC;A1B86K3C;;A0B16KA;EAYM,cxBfwB;AFi7K9B;;A0B96KA;EAcI,mBAAmB;EACnB,aAAa;A1Bo6KjB;;A0Bn7KA;EAiBM,eAAe;A1Bs6KrB;;A0Bv7KA;EAoBQ,cxBvBsB;EwBwBtB,eAAe;EACf,oBAAoB;A1Bu6K5B;;A0B77KA;EAwBM,cxBxBwB;EwByBxB,iBAAiB;A1By6KvB;;A0Bl8KA;;EA4BI,uBAAuB;EACvB,aAAa;EACb,eAAe;EACf,2BAA2B;A1B26K/B;;A0B18KA;EAkCM,mBAAmB;A1B46KzB;;A0B98KA;EAoCM,kBAAkB;A1B86KxB;;A0Bl9KA;;EAyCM,uBAAuB;A1B86K7B;;A0Bv9KA;;EA6CM,yBAAyB;A1B+6K/B;;A0B59KA;EAgDI,kBxBnBY;AFm8KhB;;A0Bh+KA;EAkDI,kBxBvBY;AFy8KhB;;A0Bp+KA;EAoDI,iBxB1BW;AF88Kf;;A0Bx+KA;EAwDM,iBAAiB;A1Bo7KvB;;A0B5+KA;EA2DM,iBAAiB;A1Bq7KvB;;A0Bh/KA;EA8DM,iBAAiB;A1Bs7KvB;;A0Bp/KA;EAiEM,iBAAiB;A1Bu7KvB;;A2B9+KA;EACE,uBzBL6B;EyBM7B,0FzBnB2B;EyBoB3B,czBf4B;EyBgB5B,eAAe;EACf,kBAAkB;A3Bi/KpB;;A2B/+KA;EACE,6BAvBwC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tLhB;;A8BnwLA;EACE,4B5BxB4B;E4ByB5B,eAAe;A9BswLjB;;A+B1yLA;EACE,uBAAuB;EACvB,aAAa;EACb,gBAAgB;A/B6yLlB;;A+BhzLA;EAKI,sBAAsB;A/B+yL1B;;A+BpzLA;EAOI,8C7BC0B;E6BA1B,aAAa;EACb,oBAAoB;A/BizLxB;;A+B1zLA;;EAYM,qBAAqB;A/BmzL3B;;A+B/zLA;EAcM,mBAAmB;A/BqzLzB;;A+Bn0LA;EAgBQ,kBAAkB;A/BuzL1B;;A+Bv0LA;EAkBI,8C7BV0B;E6BW1B,gBAAgB;EAChB,iBAAiB;A/ByzLrB;;A+B70LA;EAwBM,kBAAkB;EAClB,mBAAmB;A/ByzLzB;;A+BvzLA;;EAEE,gBAAgB;EAChB,YAAY;EACZ,cAAc;A/B0zLhB;;A+BxzLA;EACE,kBAAkB;A/B2zLpB;;A+BzzLA;EACE,iBAAiB;A/B4zLnB;;A+B1zLA;EACE,gBAAgB;EAChB,YAAY;EACZ,cAAc;EACd,gBAAgB;A/B6zLlB;;ACzxLE;E8BxCF;IAQI,gBAAgB;E/B8zLlB;AACF;;AgC91LA;EACE,e9BkBW;AF+0Lb;;AgCl2LA;EAII,kB9BgBY;AFk1LhB;;AgCt2LA;EAMI,kB9BYY;AFw1LhB;;AgC12LA;EAQI,iB9BSW;AF61Lf;;AgCp2LA;EACE,iBArB0B;AhC43L5B;;AgCx2LA;EAGI,kB9BqCc;E8BpCd,c9BzB0B;E8B0B1B,cAAc;EACd,qBAzBiC;AhCk4LrC;;AgC/2LA;EAQM,4B9BvBwB;E8BwBxB,c9B/BwB;AF04L9B;;AgCp3LA;EAYM,yB9BlB4B;E8BmB5B,WvBuCU;ATq0LhB;;AgCz3LA;EAgBM,8B9BlCwB;E8BmCxB,cAnC0B;EAoC1B,oBAnCgC;AhCg5LtC;;AgC32LA;EACE,c9BzC4B;E8B0C5B,iBApC2B;EAqC3B,qBApC+B;EAqC/B,yBAAyB;AhC82L3B;;AgCl3LA;EAMI,eAtCoB;AhCs5LxB;;AgCt3LA;EAQI,kBAxCoB;AhC05LxB;;AiCr5LA;EAEE,4B/BV4B;E+BW5B,kB/B6CU;E+B5CV,e/BYW;AF24Lb;;AiC35LA;EAMI,mBAAmB;AjCy5LvB;;AiC/5LA;EAQI,mBAAmB;EACnB,0BAA0B;AjC25L9B;;AiCp6LA;EAYI,kB/BKY;AFu5LhB;;AiCx6LA;EAcI,kB/BCY;AF65LhB;;AiC56LA;EAgBI,iB/BFW;AFk6Lf;;AiCh7LA;EAsCM,uBAH+C;AjCi5LrD;;AiCp7LA;EAwCQ,uB/B9CuB;E+B+CvB,c/B5DqB;AF48L7B;;AiCz7LA;EA2CQ,mB/BjDuB;AFm8L/B;;AiC77LA;EAsCM,yBAH+C;AjC85LrD;;AiCj8LA;EAwCQ,yB/B3DqB;E+B4DrB,Y/B/CuB;AF48L/B;;AiCt8LA;EA2CQ,qB/B9DqB;AF69L7B;;AiC18LA;EAsCM,yBAH+C;AjC26LrD;;AiC98LA;EAwCQ,4B/BhDsB;E+BiDtB,yBxBgBa;AT05LrB;;AiCn9LA;EA2CQ,wB/BnDsB;AF+9L9B;;AiCv9LA;EAsCM,yBAH+C;AjCw7LrD;;AiC39LA;EAwCQ,yB/BvDsB;E+BwDtB,WxBkBQ;ATq6LhB;;AiCh+LA;EA2CQ,qB/B1DsB;AFm/L9B;;AiCp+LA;EAsCM,yBxB4B0C;ATs6LhD;;AiCx+LA;EAwCQ,yB/BzC0B;E+B0C1B,WxBkBQ;ATk7LhB;;AiC7+LA;EA2CQ,qB/B5C0B;E+B6C1B,cxB+B6D;ATu6LrE;;AiCl/LA;EAsCM,yBxB4B0C;ATo7LhD;;AiCt/LA;EAwCQ,yB/BvC0B;E+BwC1B,WxBkBQ;ATg8LhB;;AiC3/LA;EA2CQ,qB/B1C0B;E+B2C1B,cxB+B6D;ATq7LrE;;AiChgMA;EAsCM,yBxB4B0C;ATk8LhD;;AiCpgMA;EAwCQ,yB/BxC0B;E+ByC1B,WxBkBQ;AT88LhB;;AiCzgMA;EA2CQ,qB/B3C0B;E+B4C1B,cxB+B6D;ATm8LrE;;AiC9gMA;EAsCM,yBxB4B0C;ATg9LhD;;AiClhMA;EAwCQ,yB/B1C0B;E+B2C1B,WxBkBQ;AT49LhB;;AiCvhMA;EA2CQ,qB/B7C0B;E+B8C1B,cxB+B6D;ATi9LrE;;AiC5hMA;EAsCM,yBxB4B0C;AT89LhD;;AiChiMA;EAwCQ,yB/B3C0B;E+B4C1B,yBxBgBa;AT4+LrB;;AiCriMA;EA2CQ,qB/B9C0B;E+B+C1B,cxB+B6D;AT+9LrE;;AiC1iMA;EAsCM,yBxB4B0C;AT4+LhD;;AiC9iMA;EAwCQ,yB/BrCyB;E+BsCzB,WxBkBQ;ATw/LhB;;AiCnjMA;EA2CQ,qB/BxCyB;E+ByCzB,cxB+B6D;AT6+LrE;;AiC1gMA;EACE,mBAAmB;EACnB,yB/B9D4B;E+B+D5B,0BAAgE;EAChE,WxBSc;EwBRd,aAAa;EACb,gB/B7Be;E+B8Bf,8BAA8B;EAC9B,iBAAiB;EACjB,mBAtEiC;EAuEjC,kBAAkB;AjC6gMpB;;AiCvhMA;EAYI,YAAY;EACZ,cAAc;EACd,mBAAmB;AjC+gMvB;;AiC7hMA;EAgBI,eAjEgC;EAkEhC,yBAAyB;EACzB,0BAA0B;AjCihM9B;;AiC/gMA;EACE,qB/B9E4B;E+B+E5B,kB/BpBU;E+BqBV,mBAAmB;EACnB,uBAjFmC;EAkFnC,c/BrF4B;E+BsF5B,qBAjFiC;AjCmmMnC;;AiCxhMA;;EASI,uB/BjF2B;AFqmM/B;;AiC7hMA;EAWI,6BAlFgD;AjCwmMpD;;AkC1lMA;EAEE,mBAAmB;EACnB,aAAa;EACb,sBAAsB;EACtB,uBAAuB;EACvB,gBAAgB;EAChB,eAAe;EACf,WAtCU;AlCkoMZ;;AkCpmMA;EAWI,aAAa;AlC6lMjB;;AkC3lMA;EAEE,wChC3C2B;AFwoM7B;;AkC3lMA;;EAEE,cA5CgC;EA6ChC,+BAA0D;EAC1D,cAAc;EACd,kBAAkB;EAClB,WAAW;AlC8lMb;;AC9jME;EiCtCF;;IASI,cAAc;IACd,8BAA0D;IAC1D,YAtDuB;ElCupMzB;AACF;;AkChmMA;EAEE,gBAAgB;EAChB,YAtD2B;EAuD3B,eAAe;EACf,WAvDsB;EAwDtB,SAvDoB;EAwDpB,WA1D2B;AlC4pM7B;;AkChmMA;EACE,aAAa;EACb,sBAAsB;EACtB,8BAAgD;EAChD,gBAAgB;EAChB,uBAAuB;AlCmmMzB;;AkCjmMA;;EAEE,mBAAmB;EACnB,4BhClE4B;EgCmE5B,aAAa;EACb,cAAc;EACd,2BAA2B;EAC3B,aAlE4B;EAmE5B,kBAAkB;AlComMpB;;AkClmMA;EACE,gChC7E4B;EgC8E5B,2BhClBgB;EgCmBhB,4BhCnBgB;AFwnMlB;;AkCnmMA;EACE,chCtF4B;EgCuF5B,YAAY;EACZ,cAAc;EACd,iBhC5Da;EgC6Db,cA3E8B;AlCirMhC;;AkCpmMA;EACE,8BhC7BgB;EgC8BhB,+BhC9BgB;EgC+BhB,6BhC3F4B;AFksM9B;;AkC1mMA;EAMM,mBAAmB;AlCwmMzB;;AkCtmMA;EjC5CE,iCAAiC;EiC8CjC,uBhC7F6B;EgC8F7B,YAAY;EACZ,cAAc;EACd,cAAc;EACd,aApF4B;AlC6rM9B;;AmCnqMA;EACE,uBjCxC6B;EiCyC7B,mBArDqB;EAsDrB,kBAAkB;EAClB,WApDW;AnC0tMb;;AmC1qMA;EASM,uBjChDyB;EiCiDzB,cjC9DuB;AFmuM7B;;AmC/qMA;;EAcU,cjClEmB;AFwuM7B;;AmCprMA;;;;EAoBY,yBAAoC;EACpC,cjCzEiB;AFgvM7B;;AmC5rMA;EAwBY,qBjC5EiB;AFovM7B;;AmChsMA;EA0BQ,cjC9EqB;AFwvM7B;;ACjrME;EkCnBF;;;;IAgCY,cjCpFiB;EFgwM3B;EmC5sMF;;;;;;;;;;IAsCc,yBAAoC;IACpC,cjC3Fe;EF6wM3B;EmCztMF;;IA0Cc,qBjC9Fe;EFixM3B;EmC7tMF;;;IA8CU,yBAAoC;IACpC,cjCnGmB;EFuxM3B;EmCnuMF;IAmDc,uBjC1FiB;IiC2FjB,cjCxGe;EF2xM3B;AACF;;AmCxuMA;EASM,yBjC7DuB;EiC8DvB,YjCjDyB;AFoxM/B;;AmC7uMA;;EAcU,YjCrDqB;AFyxM/B;;AmClvMA;;;;EAoBY,uBAAoC;EACpC,YjC5DmB;AFiyM/B;;AmC1vMA;EAwBY,mBjC/DmB;AFqyM/B;;AmC9vMA;EA0BQ,YjCjEuB;AFyyM/B;;AC/uME;EkCnBF;;;;IAgCY,YjCvEmB;EFizM7B;EmC1wMF;;;;;;;;;;IAsCc,uBAAoC;IACpC,YjC9EiB;EF8zM7B;EmCvxMF;;IA0Cc,mBjCjFiB;EFk0M7B;EmC3xMF;;;IA8CU,uBAAoC;IACpC,YjCtFqB;EFw0M7B;EmCjyMF;IAmDc,yBjCvGe;IiCwGf,YjC3FiB;EF40M7B;AACF;;AmCtyMA;EASM,4BjClDwB;EiCmDxB,yB1Bce;ATmxMrB;;AmC3yMA;;EAcU,yB1BUW;ATwxMrB;;AmChzMA;;;;EAoBY,yBAAoC;EACpC,yB1BGS;ATgyMrB;;AmCxzMA;EAwBY,gC1BAS;AToyMrB;;AmC5zMA;EA0BQ,yB1BFa;ATwyMrB;;AC7yME;EkCnBF;;;;IAgCY,yB1BRS;ETgzMnB;EmCx0MF;;;;;;;;;;IAsCc,yBAAoC;IACpC,yB1BfO;ET6zMnB;EmCr1MF;;IA0Cc,gC1BlBO;ETi0MnB;EmCz1MF;;;IA8CU,yBAAoC;IACpC,yB1BvBW;ETu0MnB;EmC/1MF;IAmDc,4BjC5FgB;IiC6FhB,yB1B5BO;ET20MnB;AACF;;AmCp2MA;EASM,yBjCzDwB;EiC0DxB,W1BgBU;AT+0MhB;;AmCz2MA;;EAcU,W1BYM;ATo1MhB;;AmC92MA;;;;EAoBY,yBAAoC;EACpC,W1BKI;AT41MhB;;AmCt3MA;EAwBY,kB1BEI;ATg2MhB;;AmC13MA;EA0BQ,W1BAQ;ATo2MhB;;AC32ME;EkCnBF;;;;IAgCY,W1BNI;ET42Md;EmCt4MF;;;;;;;;;;IAsCc,yBAAoC;IACpC,W1BbE;ETy3Md;EmCn5MF;;IA0Cc,kB1BhBE;ET63Md;EmCv5MF;;;IA8CU,yBAAoC;IACpC,W1BrBM;ETm4Md;EmC75MF;IAmDc,yBjCnGgB;IiCoGhB,W1B1BE;ETu4Md;AACF;;AmCl6MA;EASM,yBjC3C4B;EiC4C5B,W1BgBU;AT64MhB;;AmCv6MA;;EAcU,W1BYM;ATk5MhB;;AmC56MA;;;;EAoBY,yBAAoC;EACpC,W1BKI;AT05MhB;;AmCp7MA;EAwBY,kB1BEI;AT85MhB;;AmCx7MA;EA0BQ,W1BAQ;ATk6MhB;;ACz6ME;EkCnBF;;;;IAgCY,W1BNI;ET06Md;EmCp8MF;;;;;;;;;;IAsCc,yBAAoC;IACpC,W1BbE;ETu7Md;EmCj9MF;;IA0Cc,kB1BhBE;ET27Md;EmCr9MF;;;IA8CU,yBAAoC;IACpC,W1BrBM;ETi8Md;EmC39MF;IAmDc,yBjCrFoB;IiCsFpB,W1B1BE;ETq8Md;AACF;;AmCh+MA;EASM,yBjCzC4B;EiC0C5B,W1BgBU;AT28MhB;;AmCr+MA;;EAcU,W1BYM;ATg9MhB;;AmC1+MA;;;;EAoBY,yBAAoC;EACpC,W1BKI;ATw9MhB;;AmCl/MA;EAwBY,kB1BEI;AT49MhB;;AmCt/MA;EA0BQ,W1BAQ;ATg+MhB;;ACv+ME;EkCnBF;;;;IAgCY,W1BNI;ETw+Md;EmClgNF;;;;;;;;;;IAsCc,yBAAoC;IACpC,W1BbE;ETq/Md;EmC/gNF;;IA0Cc,kB1BhBE;ETy/Md;EmCnhNF;;;IA8CU,yBAAoC;IACpC,W1BrBM;ET+/Md;EmCzhNF;IAmDc,yBjCnFoB;IiCoFpB,W1B1BE;ETmgNd;AACF;;AmC9hNA;EASM,yBjC1C4B;EiC2C5B,W1BgBU;ATygNhB;;AmCniNA;;EAcU,W1BYM;AT8gNhB;;AmCxiNA;;;;EAoBY,yBAAoC;EACpC,W1BKI;ATshNhB;;AmChjNA;EAwBY,kB1BEI;AT0hNhB;;AmCpjNA;EA0BQ,W1BAQ;AT8hNhB;;ACriNE;EkCnBF;;;;IAgCY,W1BNI;ETsiNd;EmChkNF;;;;;;;;;;IAsCc,yBAAoC;IACpC,W1BbE;ETmjNd;EmC7kNF;;IA0Cc,kB1BhBE;ETujNd;EmCjlNF;;;IA8CU,yBAAoC;IACpC,W1BrBM;ET6jNd;EmCvlNF;IAmDc,yBjCpFoB;IiCqFpB,W1B1BE;ETikNd;AACF;;AmC5lNA;EASM,yBjC5C4B;EiC6C5B,W1BgBU;ATukNhB;;AmCjmNA;;EAcU,W1BYM;AT4kNhB;;AmCtmNA;;;;EAoBY,yBAAoC;EACpC,W1BKI;ATolNhB;;AmC9mNA;EAwBY,kB1BEI;ATwlNhB;;AmClnNA;EA0BQ,W1BAQ;AT4lNhB;;ACnmNE;EkCnBF;;;;IAgCY,W1BNI;ETomNd;EmC9nNF;;;;;;;;;;IAsCc,yBAAoC;IACpC,W1BbE;ETinNd;EmC3oNF;;IA0Cc,kB1BhBE;ETqnNd;EmC/oNF;;;IA8CU,yBAAoC;IACpC,W1BrBM;ET2nNd;EmCrpNF;IAmDc,yBjCtFoB;IiCuFpB,W1B1BE;ET+nNd;AACF;;AmC1pNA;EASM,yBjC7C4B;EiC8C5B,yB1Bce;ATuoNrB;;AmC/pNA;;EAcU,yB1BUW;AT4oNrB;;AmCpqNA;;;;EAoBY,yBAAoC;EACpC,yB1BGS;ATopNrB;;AmC5qNA;EAwBY,gC1BAS;ATwpNrB;;AmChrNA;EA0BQ,yB1BFa;AT4pNrB;;ACjqNE;EkCnBF;;;;IAgCY,yB1BRS;EToqNnB;EmC5rNF;;;;;;;;;;IAsCc,yBAAoC;IACpC,yB1BfO;ETirNnB;EmCzsNF;;IA0Cc,gC1BlBO;ETqrNnB;EmC7sNF;;;IA8CU,yBAAoC;IACpC,yB1BvBW;ET2rNnB;EmCntNF;IAmDc,yBjCvFoB;IiCwFpB,yB1B5BO;ET+rNnB;AACF;;AmCxtNA;EASM,yBjCvC2B;EiCwC3B,W1BgBU;ATmsNhB;;AmC7tNA;;EAcU,W1BYM;ATwsNhB;;AmCluNA;;;;EAoBY,yBAAoC;EACpC,W1BKI;ATgtNhB;;AmC1uNA;EAwBY,kB1BEI;ATotNhB;;AmC9uNA;EA0BQ,W1BAQ;ATwtNhB;;AC/tNE;EkCnBF;;;;IAgCY,W1BNI;ETguNd;EmC1vNF;;;;;;;;;;IAsCc,yBAAoC;IACpC,W1BbE;ET6uNd;EmCvwNF;;IA0Cc,kB1BhBE;ETivNd;EmC3wNF;;;IA8CU,yBAAoC;IACpC,W1BrBM;ETuvNd;EmCjxNF;IAmDc,yBjCjFmB;IiCkFnB,W1B1BE;ET2vNd;AACF;;AmCtxNA;EAsDI,oBAAoB;EACpB,aAAa;EACb,mBA3GmB;EA4GnB,WAAW;AnCouNf;;AmC7xNA;EA2DI,gCjCpG0B;AF00N9B;;AmCjyNA;EALE,OAAO;EACP,eAAe;EACf,QAAQ;EACR,WA7CiB;AnCu1NnB;;AmCxyNA;EAgEI,SAAS;AnC4uNb;;AmC5yNA;EAkEM,iCjC3GwB;AFy1N9B;;AmChzNA;EAoEI,MAAM;AnCgvNV;;AmC9uNA;;EAGI,oBA5HmB;AnC42NvB;;AmCnvNA;;EAKI,uBA9HmB;AnCi3NvB;;AmCjvNA;;EAEE,oBAAoB;EACpB,aAAa;EACb,cAAc;EACd,mBArIqB;AnCy3NvB;;AmClvNA;EAIM,6BAA6B;AnCkvNnC;;AmChvNA;ElClFE,iCAAiC;EkCoFjC,gBAAgB;EAChB,gBAAgB;EAChB,kBAAkB;AnCmvNpB;;AmCjvNA;EACE,cjChJ4B;EDoB5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oCxvOA;EAMI,kBlCCY;AFqvOhB;;AoC5vOA;EAQI,kBlCHY;AF2vOhB;;AoChwOA;EAUI,iBlCNW;AFgwOf;;AoCpwOA;;EAcM,iBAAiB;EACjB,kBAAkB;EAClB,uBlCwBmB;AFmuOzB;;AoC3wOA;EAkBM,uBlCsBmB;AFuuOzB;;AoC3vOA;;EAEE,mBAAmB;EACnB,aAAa;EACb,uBAAuB;EACvB,kBAAkB;ApC8vOpB;;AoC5vOA;;;;EAME,cA3D6B;EA4D7B,uBAAuB;EACvB,eA5D8B;EA6D9B,mBA5DkC;EA6DlC,oBA5DmC;EA6DnC,kBAAkB;ApC6vOpB;;AoC3vOA;;;EAGE,qBlChE4B;EkCiE5B,clCrE4B;EkCsE5B,gBjCvEoB;AHq0OtB;;AoCnwOA;;;EAOI,qBlCrE0B;EkCsE1B,clCzE0B;AF20O9B;;AoC1wOA;;;EAUI,qBlC3D8B;AFi0OlC;;AoChxOA;;;EAYI,iDlCjFyB;AF21O7B;;AoCtxOA;;;EAcI,yBlC3E0B;EkC4E1B,qBlC5E0B;EkC6E1B,gBAAgB;EAChB,clChF0B;EkCiF1B,YAAY;ApC8wOhB;;AoC5wOA;;EAEE,oBAAoB;EACpB,qBAAqB;EACrB,mBAAmB;ApC+wOrB;;AoC7wOA;EAEI,yBlC7E8B;EkC8E9B,qBlC9E8B;EkC+E9B,W3BrBY;AToyOhB;;AoC7wOA;EACE,clC/F4B;EkCgG5B,oBAAoB;ApCgxOtB;;AoC9wOA;EACE,eAAe;ApCixOjB;;AC5yOE;EmClDF;IAiFI,eAAe;EpCkxOjB;EoCvyOF;;IAwBI,YAAY;IACZ,cAAc;EpCmxOhB;EoClxOA;IAEI,YAAY;IACZ,cAAc;EpCmxOlB;AACF;;ACvzOE;EmCsBF;IAiBI,YAAY;IACZ,cAAc;IACd,2BAA2B;IAC3B,QAAQ;EpCqxOV;EoCpxOA;IACE,QAAQ;EpCsxOV;EoCrxOA;IACE,QAAQ;EpCuxOV;EoC33OF;IAsGI,8BAA8B;EpCwxOhC;EoCzxOA;IAIM,QAAQ;EpCwxOd;EoC5xOA;IAMM,uBAAuB;IACvB,QAAQ;EpCyxOd;EoChyOA;IASM,QAAQ;EpC0xOd;EoCnyOA;IAYM,QAAQ;EpC0xOd;EoCtyOA;IAcM,QAAQ;EpC2xOd;EoCzyOA;IAgBM,yBAAyB;IACzB,QAAQ;EpC4xOd;AACF;;AqCr5OA;EACE,kBnCwCgB;EmCvChB,0FnC7B2B;EmC8B3B,enCKW;AFm5Ob;;AqC35OA;EAKI,qBnCckB;AF44OtB;;AqC/5OA;EAYQ,uBnC1BuB;EmC2BvB,cnCxCqB;AF+7O7B;;AqCp6OA;EAeQ,0BnC7BuB;AFs7O/B;;AqCx6OA;EAiBQ,YnC/BuB;AF07O/B;;AqC56OA;EAYQ,yBnCvCqB;EmCwCrB,YnC3BuB;AF+7O/B;;AqCj7OA;EAeQ,4BnC1CqB;AFg9O7B;;AqCr7OA;EAiBQ,cnC5CqB;AFo9O7B;;AqCz7OA;EAYQ,4BnC5BsB;EmC6BtB,yB5BoCa;AT64OrB;;AqC97OA;EAeQ,+BnC/BsB;AFk9O9B;;AqCl8OA;EAiBQ,iBnCjCsB;AFs9O9B;;AqCt8OA;EAYQ,yBnCnCsB;EmCoCtB,W5BsCQ;ATw5OhB;;AqC38OA;EAeQ,4BnCtCsB;AFs+O9B;;AqC/8OA;EAiBQ,cnCxCsB;AF0+O9B;;AqCn9OA;EAYQ,yBnCrB0B;EmCsB1B,W5BsCQ;ATq6OhB;;AqCx9OA;EAeQ,4BnCxB0B;AFq+OlC;;AqC59OA;EAiBQ,cnC1B0B;AFy+OlC;;AqCh+OA;EAYQ,yBnCnB0B;EmCoB1B,W5BsCQ;ATk7OhB;;AqCr+OA;EAeQ,4BnCtB0B;AFg/OlC;;AqCz+OA;EAiBQ,cnCxB0B;AFo/OlC;;AqC7+OA;EAYQ,yBnCpB0B;EmCqB1B,W5BsCQ;AT+7OhB;;AqCl/OA;EAeQ,4BnCvB0B;AF8/OlC;;AqCt/OA;EAiBQ,cnCzB0B;AFkgPlC;;AqC1/OA;EAYQ,yBnCtB0B;EmCuB1B,W5BsCQ;AT48OhB;;AqC//OA;EAeQ,4BnCzB0B;AF6gPlC;;AqCngPA;EAiBQ,cnC3B0B;AFihPlC;;AqCvgPA;EAYQ,yBnCvB0B;EmCwB1B,yB5BoCa;AT29OrB;;AqC5gPA;EAeQ,4BnC1B0B;AF2hPlC;;AqChhPA;EAiBQ,cnC5B0B;AF+hPlC;;AqCphPA;EAYQ,yBnCjByB;EmCkBzB,W5BsCQ;ATs+OhB;;AqCzhPA;EAeQ,4BnCpByB;AFkiPjC;;AqC7hPA;EAiBQ,cnCtByB;AFsiPjC;;AqC9gPA;;EAGI,gCnCxC2B;AFwjP/B;;AqC9gPA;EACE,yBnC3C6B;EmC4C7B,0BAA8C;EAC9C,cnClD4B;EmCmD5B,iBA/CyB;EAgDzB,gBnCde;EmCef,iBApD8B;EAqD9B,mBApDgC;ArCqkPlC;;AqC/gPA;EACE,qBAAqB;EACrB,aAAa;EACb,kBApD4B;EAqD5B,uBAAuB;ArCkhPzB;;AqCthPA;EAMI,gCnC1D0B;EmC2D1B,mBAAmB;EACnB,cAAc;ArCohPlB;;AqC5hPA;EAWM,4BnClEwB;EmCmExB,cnCpEwB;AFylP9B;;AqCnhPA;EAEI,cnCvE0B;AF4lP9B;;AqCvhPA;EAIM,cnC1D4B;AFilPlC;;AqCrhPA;EACE,mBAAmB;EACnB,cnC9E4B;EmC+E5B,aAAa;EACb,2BAA2B;EAC3B,qBAAqB;ArCwhPvB;;AqC7hPA;EAOI,oBAAoB;ArC0hPxB;;AqCjiPA;EASI,YAAY;EACZ,cAAc;EACd,WAAW;ArC4hPf;;AqCviPA;EAaI,eAAe;ArC8hPnB;;AqC3iPA;EAeI,0BnC3E8B;EmC4E9B,cnC5F0B;AF4nP9B;;AqChjPA;EAkBM,cnC9E4B;AFgnPlC;;AqCpjPA;EAoBI,8BnChCc;EmCiCd,+BnCjCc;AFqkPlB;;AqCliPA;;EAEE,eAAe;ArCqiPjB;;AqCviPA;;EAII,4BnChG0B;AFwoP9B;;AqCtiPA;EpC7FE,qBAAqB;EACrB,eoC6FgB;EpC5FhB,WoC4FqB;EpC3FrB,gBoC2FqB;EpC1FrB,kBAAkB;EAClB,mBAAmB;EACnB,UoCwFqB;EACrB,cnCzG4B;EmC0G5B,oBAAoB;ArC+iPtB;;AqCljPA;EAKI,kBAAkB;EAClB,oBAAoB;ArCijPxB;;AsC1oPA;ErCkCE,iCAAiC;EqC9BjC,oBAAoB;EACpB,aAAa;EACb,epCGW;EoCFX,8BAA8B;EAC9B,gBAAgB;EAChB,gBAAgB;EAChB,mBAAmB;AtC2oPrB;;AsCrpPA;EAYI,mBAAmB;EACnB,4BpC/B0B;EoCgC1B,0BAzC4B;EA0C5B,wBAzC0B;EA0C1B,cpCrC0B;EoCsC1B,aAAa;EACb,uBAAuB;EACvB,mBAA6C;EAC7C,kBAxCyB;EAyCzB,mBAAmB;AtC6oPvB;;AsClqPA;EAuBM,4BpC7CwB;EoC8CxB,cpC9CwB;AF6rP9B;;AsCvqPA;EA0BI,cAAc;AtCipPlB;;AsC3qPA;EA6BQ,4BpCnC0B;EoCoC1B,cpCpC0B;AFsrPlC;;AsChrPA;EAgCI,mBAAmB;EACnB,4BpCnD0B;EoCoD1B,0BA7D4B;EA8D5B,wBA7D0B;EA8D1B,aAAa;EACb,YAAY;EACZ,cAAc;EACd,2BAA2B;AtCopP/B;;AsC3rPA;EAyCM,qBAAqB;AtCspP3B;;AsC/rPA;EA2CM,UAAU;EACV,uBAAuB;EACvB,oBAAoB;EACpB,qBAAqB;AtCwpP3B;;AsCtsPA;EAgDM,yBAAyB;EACzB,oBAAoB;AtC0pP1B;;AsC3sPA;EAoDM,mBAAmB;AtC2pPzB;;AsC/sPA;EAsDM,kBAAkB;AtC6pPxB;;AsCntPA;EA0DM,uBAAuB;AtC6pP7B;;AsCvtPA;EA6DM,yBAAyB;AtC8pP/B;;AsC3tPA;EAiEM,6BAA6B;EAC7B,0BAAkE;AtC8pPxE;;AsChuPA;EAoEQ,4BpCnFsB;EoCoFtB,4BpCvFsB;AFuvP9B;;AsCruPA;EAyEU,uBpCtFqB;EoCuFrB,qBpC5FoB;EoC6FpB,2CAA2E;AtCgqPrF;;AsC3uPA;EA8EM,YAAY;EACZ,cAAc;AtCiqPpB;;AsChvPA;EAkFM,qBpCpGwB;EoCqGxB,mBA5F+B;EA6F/B,iBA5F6B;EA6F7B,gBAAgB;EAChB,kBAAkB;AtCkqPxB;;AsCxvPA;EAwFQ,4BpCvGsB;EoCwGtB,qBpC5GsB;EoC6GtB,UAAU;AtCoqPlB;;AsC9vPA;EA6FQ,iBAAgD;AtCqqPxD;;AsClwPA;EA+FQ,0BpCtDI;AF6tPZ;;AsCtwPA;EAiGQ,0BAAoE;AtCyqP5E;;AsC1wPA;EAoGU,yBpC1GwB;EoC2GxB,qBpC3GwB;EoC4GxB,W7BlDM;E6BmDN,UAAU;AtC0qPpB;;AsCjxPA;EAyGM,mBAAmB;AtC4qPzB;;AsCrxPA;EA6GU,mCpClEe;EoCmEf,gCpCnEe;EoCoEf,oBAAoB;AtC4qP9B;;AsC3x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CgnRpB;AACF;;ACz/RE;EsCsXA;IAqBQ,iBAAY;EvCmnRpB;AACF;;AC3/RE;EsCkXA;IAwBQ,iBAAY;EvCsnRpB;AACF;;AC5/RI;EsC6WF;IA2BQ,iBAAY;EvCynRpB;AACF;;ACx/RI;EsCmWF;IA8BQ,iBAAY;EvC4nRpB;AACF;;ACz/RI;EsC8VF;IAiCQ,iBAAY;EvC+nRpB;AACF;;ACr/RI;EsCoVF;IAoCQ,iBAAY;EvCkoRpB;AACF;;AuCvqRE;EASM,oBAAY;AvCkqRpB;;AC7iSE;EsCkYA;IAYQ,oBAAY;EvCoqRpB;AACF;;AC/iSE;EsC8XA;IAeQ,oBAAY;EvCuqRpB;AACF;;ACjjSE;EsC0XA;IAkBQ,oBAAY;EvC0qRpB;AACF;;ACnjSE;EsCsXA;IAqBQ,oBAAY;EvC6qRpB;AACF;;ACrjSE;EsCkXA;IAwBQ,oBAAY;EvCgrRpB;AACF;;ACtjSI;EsC6WF;IA2BQ,oBAAY;EvCmrRpB;AACF;;ACljSI;EsCmWF;IA8BQ,oBAAY;EvCsrRpB;AACF;;ACnjSI;EsC8VF;IAiCQ,oBAAY;EvCyrRpB;AACF;;AC/iSI;EsCoVF;IAoCQ,oBAAY;EvC4rRpB;AACF;;AuCjuRE;EASM,mBAAY;AvC4tRpB;;ACvmSE;EsCkYA;IAYQ,mBAAY;EvC8tRpB;AACF;;ACzmSE;EsC8XA;IAeQ,mBAAY;EvCiuRpB;AACF;;AC3mSE;EsC0XA;IAkBQ,mBAAY;EvCouRpB;AACF;;AC7mSE;EsCsXA;IAqBQ,mBAAY;EvCuuRpB;AACF;;AC/mSE;EsCkXA;IAwBQ,mBAAY;EvC0uRpB;AACF;;AChnSI;EsC6WF;IA2BQ,mBAAY;EvC6uRpB;AACF;;AC5mSI;EsCmWF;IA8BQ,mBAAY;EvCgvRpB;AACF;;AC7mSI;EsC8VF;IAiCQ,mBAAY;EvCmvRpB;AACF;;ACzmSI;EsCoVF;IAoCQ,mBAAY;EvCsvRpB;AACF;;AuC3xRE;EASM,oBAAY;AvCsxRpB;;ACjqSE;EsCkYA;IAYQ,oBAAY;EvCwxRpB;AACF;;ACnqSE;EsC8XA;IAeQ,oBAAY;EvC2xRpB;AACF;;ACrqSE;EsC0XA;IAkBQ,oBAAY;EvC8xRpB;AACF;;ACvqSE;EsCsXA;IAqBQ,oBAAY;EvCiyRpB;AACF;;ACzqSE;EsCkXA;IAwBQ,oBAAY;EvCoyRpB;AACF;;AC1qSI;EsC6WF;IA2BQ,oBAAY;EvCuyRpB;AACF;;ACtqSI;EsCmWF;IA8BQ,oBAAY;EvC0yRpB;AACF;;ACvqSI;EsC8VF;IAiCQ,oBAAY;EvC6yRpB;AACF;;ACnqSI;EsCoVF;IAoCQ,oBAAY;EvCgzRpB;AACF;;AuCr1RE;EASM,iBAAY;AvCg1RpB;;AC3tSE;EsCkYA;IAYQ,iBAAY;EvCk1RpB;AACF;;AC7tSE;EsC8XA;IAeQ,iBAAY;EvCq1RpB;AACF;;AC/tSE;EsC0XA;IAkBQ,iBAAY;EvCw1RpB;AACF;;ACjuSE;EsCsXA;IAqBQ,iBAAY;EvC21RpB;AACF;;ACnuSE;EsCkXA;IAwBQ,iBAAY;EvC81RpB;AACF;;ACpuSI;EsC6WF;IA2BQ,iBAAY;EvCi2RpB;AACF;;AChuSI;EsCmWF;IA8BQ,iBAAY;EvCo2RpB;AACF;;ACjuSI;EsC8VF;IAiCQ,iBAAY;EvCu2RpB;AACF;;AC7tSI;EsCoVF;IAoCQ,iBAAY;EvC02RpB;AACF;;AuC/4RE;EASM,oBAAY;AvC04RpB;;ACrxSE;EsCkYA;IAYQ,oBAAY;EvC44RpB;AACF;;ACvxSE;EsC8XA;IAeQ,oBAAY;EvC+4RpB;AACF;;ACzxSE;EsC0XA;IAkBQ,oBAAY;EvCk5RpB;AACF;;AC3xSE;EsCsXA;IAqBQ,oBAAY;EvCq5RpB;AACF;;AC7xSE;EsCkXA;IAwBQ,oBAAY;EvCw5RpB;AACF;;AC9xSI;EsC6WF;IA2BQ,oBAAY;EvC25RpB;AACF;;AC1xSI;EsCmWF;IA8BQ,oBAAY;EvC85RpB;AACF;;AC3xSI;EsC8VF;IAiCQ,oBAAY;EvCi6RpB;AACF;;ACvxSI;EsCoVF;IAoCQ,oBAAY;EvCo6RpB;AACF;;AuCz8RE;EASM,mBAAY;AvCo8RpB;;AC/0SE;EsCkYA;IAYQ,mBAAY;EvCs8RpB;AACF;;ACj1SE;EsC8XA;IAeQ,mBAAY;EvCy8RpB;AACF;;ACn1SE;EsC0XA;IAkBQ,mBAAY;EvC48RpB;AACF;;ACr1SE;EsCs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AAU;AzC2rTtB;;AyC1uTA;EAmDY,cvCnDiB;AF8uT7B;;AyC9uTA;EAqDc,uCvCrDe;AFkvT7B;;AyClvTA;EAyDc,yBvCzDe;EuC0Df,qBvC1De;EuC2Df,YvC9CiB;AF2uT/B;;AyCxvTA;EAgEQ,4EAAyG;AzC4rTjH;;AC7qTE;EwC/EF;IAmEY,4EAAyG;EzC8rTnH;AACF;;AyClwTA;EAeM,yBvCfuB;EuCgBvB,YvCHyB;AF0vT/B;;AyCvwTA;;EAmBQ,cAAc;AzCyvTtB;;AyC5wTA;EAqBQ,YvCRuB;AFmwT/B;;AyChxTA;EAuBQ,+BvCVuB;AFuwT/B;;AyCpxTA;;EA0BU,YvCbqB;AF4wT/B;;AC9rTE;EwC3FF;IA6BU,yBvC7BmB;EF8xT3B;AACF;;AyC/xTA;;EAgCQ,+BvCnBuB;AFuxT/B;;AyCpyTA;;;EAqCU,uBAAoC;EACpC,YvCzBqB;AF8xT/B;;AyC3yTA;EAyCU,YvC5BqB;EuC6BrB,YAAY;AzCswTtB;;AyChzTA;EA4CY,UAAU;AzCwwTtB;;AyCpzTA;EA+CY,UAAU;AzCywTtB;;AyCxzTA;EAmDY,YvCtCmB;AF+yT/B;;AyC5zTA;EAqDc,uCvCrDe;AFg0T7B;;AyCh0TA;EAyDc,uBvC5CiB;EuC6CjB,mBvC7CiB;EuC8CjB,cvC3De;AFs0T7B;;AyCt0TA;EAgEQ,8EAAyG;AzC0wTjH;;AC3vTE;EwC/EF;IAmEY,8EAAyG;EzC4wTnH;AACF;;AyCh1TA;EAeM,4BvCJwB;EuCKxB,yBhC4De;ATywTrB;;AyCr1TA;;EAmBQ,cAAc;AzCu0TtB;;AyC11TA;EAqBQ,yBhCuDa;ATkxTrB;;AyC91TA;EAuBQ,yBhCqDa;ATsxTrB;;AyCl2TA;;EA0BU,yBhCkDW;AT2xTrB;;AC5wTE;EwC3FF;IA6BU,4BvClBoB;EFi2T5B;AACF;;AyC72TA;;EAgCQ,yBhC4Ca;ATsyTrB;;AyCl3TA;;;EAqCU,yBAAoC;EACpC,yBhCsCW;AT6yTrB;;AyCz3TA;EAyCU,yBhCmCW;EgClCX,YAAY;AzCo1TtB;;AyC93TA;EA4CY,UAAU;AzCs1TtB;;AyCl4TA;EA+CY,UAAU;AzCu1TtB;;AyCt4TA;EAmDY,yBhCyBS;AT8zTrB;;AyC14TA;EAqDc,uCvCrDe;AF84T7B;;AyC94TA;EAyDc,oChCmBO;EgClBP,gChCkBO;EgCjBP,iBvChDgB;AFy4T9B;;AyCp5TA;EAgEQ,iFAAyG;AzCw1TjH;;ACz0TE;EwC/EF;IAmEY,iFAAyG;EzC01TnH;AACF;;AyC95TA;EAeM,yBvCXwB;EuCYxB,WhC8DU;ATq1ThB;;AyCn6TA;;EAmBQ,cAAc;AzCq5TtB;;AyCx6TA;EAqBQ,WhCyDQ;AT81ThB;;AyC56TA;EAuBQ,+BhCuDQ;ATk2ThB;;AyCh7TA;;EA0BU,WhCoDM;ATu2ThB;;AC11TE;EwC3FF;IA6BU,yBvCzBoB;EFs7T5B;AACF;;AyC37TA;;EAgCQ,+BhC8CQ;ATk3ThB;;AyCh8TA;;;EAqCU,yBAAoC;EACpC,WhCwCM;ATy3ThB;;AyCv8TA;EAyCU,WhCqCM;EgCpCN,YAAY;AzCk6TtB;;AyC58TA;EA4CY,UAAU;AzCo6TtB;;AyCh9TA;EA+CY,UAAU;AzCq6TtB;;AyCp9TA;EAmDY,WhC2BI;AT04ThB;;AyCx9TA;EAqDc,uCvCrDe;AF49T7B;;AyC59TA;EAyDc,sBhCqBE;EgCpBF,kBhCoBE;EgCnBF,cvCvDgB;AF89T9B;;AyCl+TA;EAgEQ,gFAAyG;AzCs6TjH;;ACv5TE;EwC/EF;IAmEY,gFAAyG;EzCw6TnH;AACF;;AyC5+TA;EAeM,yBvCG4B;EuCF5B,WhC8DU;ATm6ThB;;AyCj/TA;;EAmBQ,cAAc;AzCm+TtB;;AyCt/TA;EAqBQ,WhCyDQ;AT46ThB;;AyC1/TA;EAuBQ,+BhCuDQ;ATg7ThB;;AyC9/TA;;EA0BU,WhCoDM;ATq7ThB;;ACx6TE;EwC3FF;IA6BU,yBvCXwB;EFs/ThC;AACF;;AyCzgUA;;EAgCQ,+BhC8CQ;ATg8ThB;;AyC9gUA;;;EAqCU,yBAAoC;EACpC,WhCwCM;ATu8ThB;;AyCrhUA;EAyCU,WhCqCM;EgCpCN,YAAY;AzCg/TtB;;AyC1hUA;EA4CY,UAAU;AzCk/TtB;;AyC9hUA;EA+CY,UAAU;AzCm/TtB;;AyCliUA;EAmDY,WhC2BI;ATw9ThB;;AyCtiUA;EAqDc,uCvCrDe;AF0iU7B;;AyC1iUA;EAyDc,sBhCqBE;EgCpBF,kBhCoBE;EgCnBF,cvCzCoB;AF8hUlC;;AyChjUA;EAgEQ,gFAAyG;AzCo/TjH;;ACr+TE;EwC/EF;IAmEY,gFAAyG;EzCs/TnH;AACF;;AyC1jUA;EAeM,yBvCK4B;EuCJ5B,WhC8DU;ATi/ThB;;AyC/jUA;;EAmBQ,cAAc;AzCijUtB;;AyCpkUA;EAqBQ,WhCyDQ;AT0/ThB;;AyCxkUA;EAuBQ,+BhCuDQ;AT8/ThB;;AyC5kUA;;EA0BU,WhCoDM;ATmgUhB;;ACt/TE;EwC3FF;IA6BU,yBvCTwB;EFkkUhC;AACF;;AyCvlUA;;EAgCQ,+BhC8CQ;AT8gUhB;;AyC5lUA;;;EAqCU,yBAAoC;EACpC,WhCwCM;ATqhUhB;;AyCnmUA;EAyCU,WhCqCM;EgCpCN,YAAY;AzC8jUtB;;AyCxmUA;EA4CY,UAAU;AzCgkUtB;;AyC5mUA;EA+CY,UAAU;AzCikUtB;;AyChnUA;EAmDY,WhC2BI;ATsiUhB;;AyCpnUA;EAqDc,uCvCrDe;AFwnU7B;;AyCxnUA;EAyDc,sBhCqBE;EgCpBF,kBhCoBE;EgCnBF,cvCvCoB;AF0mUlC;;AyC9nUA;EAgEQ,gFAAyG;AzCkkUjH;;ACnjUE;EwC/EF;IAmEY,gFAAyG;EzCokUnH;AACF;;AyCxoUA;EAeM,yBvCI4B;EuCH5B,WhC8DU;AT+jUhB;;AyC7oUA;;EAmBQ,cAAc;AzC+nUtB;;AyClpUA;EAqBQ,WhCyDQ;ATwkUhB;;AyCtpUA;EAuBQ,+BhCuDQ;AT4kUhB;;AyC1pUA;;EA0BU,WhCoDM;ATilUhB;;ACpkUE;EwC3FF;IA6BU,yBvCVwB;EFipUhC;AACF;;AyCrqUA;;EAgCQ,+BhC8CQ;AT4lUhB;;AyC1qUA;;;EAqCU,yBAAoC;EACpC,WhCwCM;ATmmUhB;;AyCjrUA;EAyCU,WhCqCM;EgCpCN,YAAY;AzC4oUtB;;AyCtrUA;EA4CY,UAAU;AzC8oUtB;;AyC1rUA;EA+CY,UAAU;AzC+oUtB;;AyC9rUA;EAmDY,WhC2BI;ATonUhB;;AyClsUA;EAqDc,uCvCrDe;AFssU7B;;AyCtsUA;EAyDc,sBhCqBE;EgCpBF,kBhCoBE;EgCnBF,cvCxCoB;AFyrUlC;;AyC5sUA;EAgEQ,gFAAyG;AzCgpUjH;;ACjoUE;EwC/EF;IAmEY,gFAAyG;EzCkpUnH;AACF;;AyCttUA;EAeM,yBvCE4B;EuCD5B,WhC8DU;AT6oUhB;;AyC3tUA;;EAmBQ,cAAc;AzC6sUtB;;AyChuUA;EAqBQ,WhCyDQ;ATspUhB;;AyCpuUA;EAuBQ,+BhCuDQ;AT0pUhB;;AyCxuUA;;EA0BU,WhCoDM;AT+pUhB;;AClpUE;EwC3FF;IA6BU,yBvCZwB;EFiuUhC;AACF;;AyCnvUA;;EAgCQ,+BhC8CQ;AT0qUhB;;AyCxvUA;;;EAqCU,yBAAoC;EACpC,WhCwCM;ATirUhB;;AyC/vUA;EAyCU,WhCqCM;EgCpCN,YAAY;AzC0tUtB;;AyCpwUA;EA4CY,UAAU;AzC4tUtB;;AyCxwUA;EA+CY,UAAU;AzC6tUtB;;AyC5wUA;EAmDY,WhC2BI;ATksUhB;;AyChxUA;EAqDc,uCvCrDe;AFoxU7B;;AyCpxUA;EAyDc,sBhCqBE;EgCpBF,kBhCoBE;EgCnBF,cvC1CoB;AFywUlC;;AyC1xUA;EAgEQ,gFAAyG;AzC8tUjH;;AC/sUE;EwC/EF;IAmEY,gFAAyG;EzCguUnH;AACF;;AyCpyUA;EAeM,yBvCC4B;EuCA5B,yBhC4De;AT6tUrB;;AyCzyUA;;EAmBQ,cAAc;AzC2xUtB;;AyC9yUA;EAqBQ,yBhCuDa;ATsuUrB;;AyClzUA;EAuBQ,yBhCqDa;AT0uUrB;;AyCtzUA;;EA0BU,yBhCkDW;AT+uUrB;;AChuUE;EwC3FF;IA6BU,yBvCbwB;EFgzUhC;AACF;;AyCj0UA;;EAgCQ,yBhC4Ca;AT0vUrB;;AyCt0UA;;;EAqCU,yBAAoC;EACpC,yBhCsCW;ATiwUrB;;AyC70UA;EAyCU,yBhCmCW;EgClCX,YAAY;AzCwyUtB;;AyCl1UA;EA4CY,UAAU;AzC0yUtB;;AyCt1UA;EA+CY,UAAU;AzC2yUtB;;AyC11UA;EAmDY,yBhCyBS;ATkxUrB;;AyC91UA;EAqDc,uCvCrDe;AFk2U7B;;AyCl2UA;EAyDc,oChCmBO;EgClBP,gChCkBO;EgCjBP,cvC3CoB;AFw1UlC;;AyCx2UA;EAgEQ,gFAAyG;AzC4yUjH;;AC7xUE;EwC/EF;IAmEY,gFAAyG;EzC8yUnH;AACF;;AyCl3UA;EAeM,yBvCO2B;EuCN3B,WhC8DU;ATyyUhB;;AyCv3UA;;EAmBQ,cAAc;AzCy2UtB;;AyC53UA;EAqBQ,WhCyDQ;ATkzUhB;;AyCh4UA;EAuBQ,+BhCuDQ;ATszUhB;;AyCp4UA;;EA0BU,WhCoDM;AT2zUhB;;AC9yUE;EwC3FF;IA6BU,yBvCPuB;EFw3U/B;AACF;;AyC/4UA;;EAgCQ,+BhC8CQ;ATs0UhB;;AyCp5UA;;;EAqCU,yBAAoC;EACpC,WhCwCM;AT60UhB;;AyC35UA;EAyCU,WhCqCM;EgCpCN,YAAY;AzCs3UtB;;AyCh6UA;EA4CY,UAAU;AzCw3UtB;;AyCp6UA;EA+CY,UAAU;AzCy3UtB;;AyCx6UA;EAmDY,WhC2BI;AT81UhB;;AyC56UA;EAqDc,uCvCrDe;AFg7U7B;;AyCh7UA;EAyDc,sBhCqBE;EgCpBF,kBhCoBE;EgCnBF,cvCrCmB;AFg6UjC;;AyCt7UA;EAgEQ,gFAAyG;AzC03UjH;;AC32UE;EwC/EF;IAmEY,gFAAyG;EzC43UnH;AACF;;AyCh8UA;EAuEM,sBAAsB;EACtB,mBAAmB;AzC63UzB;;ACl3UE;EwCnFF;IA4EQ,oBAAoB;IACpB,iBAAiB;EzC83UvB;AACF;;ACz3UE;EwCnFF;IAiFQ,qBAAqB;IACrB,kBAAkB;EzCg4UxB;AACF;;AyCn9UA;EAuFM,mBAAmB;EACnB,aAAa;AzCg4UnB;;AyCx9UA;EA0FQ,YAAY;EACZ,cAAc;AzCk4UtB;;AyC79UA;EA6FI,gBAAgB;AzCo4UpB;;AyCj+UA;EA+FI,iBAAiB;AzCs4UrB;;AyCl4UA;EAEE,gBAAgB;AzCo4UlB;;AyCt4UA;EAII,SAAS;EACT,gBAAgB;EAChB,eAAe;EACf,kBAAkB;EAClB,QAAQ;EACR,qCAAqC;AzCs4UzC;;AyC/4UA;EAYI,YAAY;AzCu4UhB;;ACv6UE;EwCoBF;IAeI,aAAa;EzCy4Uf;AACF;;AyCx4UA;EACE,kBAAkB;AzC24UpB;;ACj7UE;EwCqCF;IAKM,aAAa;EzC44UjB;EyCj5UF;IAOQ,sBAAsB;EzC64U5B;AACF;;ACt7UE;EwCiCF;IASI,aAAa;IACb,uBAAuB;EzCi5UzB;EyC35UF;IAYM,oBAAoB;EzCk5UxB;AACF;;AyC/4UA;;EAEE,YAAY;EACZ,cAAc;AzCk5UhB;;AyCh5UA;EACE,YAAY;EACZ,cAAc;EACd,oBAAoB;AzCm5UtB;;A0C7hVA;EACE,oBAL2B;A1CqiV7B;;ACp8UE;EyC7FF;IAMM,oBAT8B;E1CyiVlC;E0CtiVF;IAQM,qBAV8B;E1C2iVlC;AACF;;A2C1iVA;EACE,yBzCS4B;EyCR5B,yBAJ+B;A3CijVjC","file":"bulma.css"} \ No newline at end of file diff --git a/dist/bulma/bulma.min.css b/dist/bulma/bulma.min.css new file mode 100644 index 0000000..d0570ff --- /dev/null +++ b/dist/bulma/bulma.min.css @@ -0,0 +1 @@ +/*! bulma.io v0.8.0 | MIT License | github.com/jgthms/bulma */@-webkit-keyframes spinAround{from{transform:rotate(0)}to{transform:rotate(359deg)}}@keyframes spinAround{from{transform:rotate(0)}to{transform:rotate(359deg)}}.breadcrumb,.button,.delete,.file,.is-unselectable,.modal-close,.pagination-ellipsis,.pagination-link,.pagination-next,.pagination-previous,.tabs{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.navbar-link:not(.is-arrowless)::after,.select:not(.is-multiple):not(.is-loading)::after{border:3px solid transparent;border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:.625em;margin-top:-.4375em;pointer-events:none;position:absolute;top:50%;transform:rotate(-45deg);transform-origin:center;width:.625em}.block:not(:last-child),.box:not(:last-child),.breadcrumb:not(:last-child),.content:not(:last-child),.highlight:not(:last-child),.level:not(:last-child),.list:not(:last-child),.message:not(:last-child),.notification:not(:last-child),.pagination:not(:last-child),.progress:not(:last-child),.subtitle:not(:last-child),.table-container:not(:last-child),.table:not(:last-child),.tabs:not(:last-child),.title:not(:last-child){margin-bottom:1.5rem}.delete,.modal-close{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,.2);border:none;border-radius:290486px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:0;position:relative;vertical-align:top;width:20px}.delete::after,.delete::before,.modal-close::after,.modal-close::before{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.delete::before,.modal-close::before{height:2px;width:50%}.delete::after,.modal-close::after{height:50%;width:2px}.delete:focus,.delete:hover,.modal-close:focus,.modal-close:hover{background-color:rgba(10,10,10,.3)}.delete:active,.modal-close:active{background-color:rgba(10,10,10,.4)}.is-small.delete,.is-small.modal-close{height:16px;max-height:16px;max-width:16px;min-height:16px;min-width:16px;width:16px}.is-medium.delete,.is-medium.modal-close{height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;width:24px}.is-large.delete,.is-large.modal-close{height:32px;max-height:32px;max-width:32px;min-height:32px;min-width:32px;width:32px}.button.is-loading::after,.control.is-loading::after,.loader,.select.is-loading::after{-webkit-animation:spinAround .5s infinite linear;animation:spinAround .5s infinite linear;border:2px solid #dbdbdb;border-radius:290486px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}.hero-video,.image.is-16by9 .has-ratio,.image.is-16by9 img,.image.is-1by1 .has-ratio,.image.is-1by1 img,.image.is-1by2 .has-ratio,.image.is-1by2 img,.image.is-1by3 .has-ratio,.image.is-1by3 img,.image.is-2by1 .has-ratio,.image.is-2by1 img,.image.is-2by3 .has-ratio,.image.is-2by3 img,.image.is-3by1 .has-ratio,.image.is-3by1 img,.image.is-3by2 .has-ratio,.image.is-3by2 img,.image.is-3by4 .has-ratio,.image.is-3by4 img,.image.is-3by5 .has-ratio,.image.is-3by5 img,.image.is-4by3 .has-ratio,.image.is-4by3 img,.image.is-4by5 .has-ratio,.image.is-4by5 img,.image.is-5by3 .has-ratio,.image.is-5by3 img,.image.is-5by4 .has-ratio,.image.is-5by4 img,.image.is-9by16 .has-ratio,.image.is-9by16 img,.image.is-square .has-ratio,.image.is-square img,.is-overlay,.modal,.modal-background{bottom:0;left:0;position:absolute;right:0;top:0}.button,.file-cta,.file-name,.input,.pagination-ellipsis,.pagination-link,.pagination-next,.pagination-previous,.select select,.textarea{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:4px;box-shadow:none;display:inline-flex;font-size:1rem;height:2.5em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(.5em - 1px);padding-left:calc(.75em - 1px);padding-right:calc(.75em - 1px);padding-top:calc(.5em - 1px);position:relative;vertical-align:top}.button:active,.button:focus,.file-cta:active,.file-cta:focus,.file-name:active,.file-name:focus,.input:active,.input:focus,.is-active.button,.is-active.file-cta,.is-active.file-name,.is-active.input,.is-active.pagination-ellipsis,.is-active.pagination-link,.is-active.pagination-next,.is-active.pagination-previous,.is-active.textarea,.is-focused.button,.is-focused.file-cta,.is-focused.file-name,.is-focused.input,.is-focused.pagination-ellipsis,.is-focused.pagination-link,.is-focused.pagination-next,.is-focused.pagination-previous,.is-focused.textarea,.pagination-ellipsis:active,.pagination-ellipsis:focus,.pagination-link:active,.pagination-link:focus,.pagination-next:active,.pagination-next:focus,.pagination-previous:active,.pagination-previous:focus,.select select.is-active,.select select.is-focused,.select select:active,.select select:focus,.textarea:active,.textarea:focus{outline:0}.button[disabled],.file-cta[disabled],.file-name[disabled],.input[disabled],.pagination-ellipsis[disabled],.pagination-link[disabled],.pagination-next[disabled],.pagination-previous[disabled],.select fieldset[disabled] select,.select select[disabled],.textarea[disabled],fieldset[disabled] .button,fieldset[disabled] .file-cta,fieldset[disabled] .file-name,fieldset[disabled] .input,fieldset[disabled] .pagination-ellipsis,fieldset[disabled] .pagination-link,fieldset[disabled] .pagination-next,fieldset[disabled] .pagination-previous,fieldset[disabled] .select select,fieldset[disabled] .textarea{cursor:not-allowed}/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */blockquote,body,dd,dl,dt,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,html,iframe,legend,li,ol,p,pre,textarea,ul{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,::after,::before{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:left}html{background-color:#fff;font-size:16px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;min-width:300px;overflow-x:hidden;overflow-y:scroll;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}article,aside,figure,footer,header,hgroup,section{display:block}body,button,input,select,textarea{font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif}code,pre{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto;font-family:monospace}body{color:#4a4a4a;font-size:1em;font-weight:400;line-height:1.5}a{color:#3273dc;cursor:pointer;text-decoration:none}a strong{color:currentColor}a:hover{color:#363636}code{background-color:#f5f5f5;color:#f14668;font-size:.875em;font-weight:400;padding:.25em .5em .25em}hr{background-color:#f5f5f5;border:none;display:block;height:2px;margin:1.5rem 0}img{height:auto;max-width:100%}input[type=checkbox],input[type=radio]{vertical-align:baseline}small{font-size:.875em}span{font-style:inherit;font-weight:inherit}strong{color:#363636;font-weight:700}fieldset{border:none}pre{-webkit-overflow-scrolling:touch;background-color:#f5f5f5;color:#4a4a4a;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}table td,table th{vertical-align:top}table td:not([align]),table th:not([align]){text-align:left}table th{color:#363636}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left!important}.is-pulled-right{float:right!important}.is-clipped{overflow:hidden!important}.is-size-1{font-size:3rem!important}.is-size-2{font-size:2.5rem!important}.is-size-3{font-size:2rem!important}.is-size-4{font-size:1.5rem!important}.is-size-5{font-size:1.25rem!important}.is-size-6{font-size:1rem!important}.is-size-7{font-size:.75rem!important}@media screen and (max-width:768px){.is-size-1-mobile{font-size:3rem!important}.is-size-2-mobile{font-size:2.5rem!important}.is-size-3-mobile{font-size:2rem!important}.is-size-4-mobile{font-size:1.5rem!important}.is-size-5-mobile{font-size:1.25rem!important}.is-size-6-mobile{font-size:1rem!important}.is-size-7-mobile{font-size:.75rem!important}}@media screen and (min-width:769px),print{.is-size-1-tablet{font-size:3rem!important}.is-size-2-tablet{font-size:2.5rem!important}.is-size-3-tablet{font-size:2rem!important}.is-size-4-tablet{font-size:1.5rem!important}.is-size-5-tablet{font-size:1.25rem!important}.is-size-6-tablet{font-size:1rem!important}.is-size-7-tablet{font-size:.75rem!important}}@media screen and (max-width:1023px){.is-size-1-touch{font-size:3rem!important}.is-size-2-touch{font-size:2.5rem!important}.is-size-3-touch{font-size:2rem!important}.is-size-4-touch{font-size:1.5rem!important}.is-size-5-touch{font-size:1.25rem!important}.is-size-6-touch{font-size:1rem!important}.is-size-7-touch{font-size:.75rem!important}}@media screen and (min-width:1024px){.is-size-1-desktop{font-size:3rem!important}.is-size-2-desktop{font-size:2.5rem!important}.is-size-3-desktop{font-size:2rem!important}.is-size-4-desktop{font-size:1.5rem!important}.is-size-5-desktop{font-size:1.25rem!important}.is-size-6-desktop{font-size:1rem!important}.is-size-7-desktop{font-size:.75rem!important}}@media screen and (min-width:1216px){.is-size-1-widescreen{font-size:3rem!important}.is-size-2-widescreen{font-size:2.5rem!important}.is-size-3-widescreen{font-size:2rem!important}.is-size-4-widescreen{font-size:1.5rem!important}.is-size-5-widescreen{font-size:1.25rem!important}.is-size-6-widescreen{font-size:1rem!important}.is-size-7-widescreen{font-size:.75rem!important}}@media screen and (min-width:1408px){.is-size-1-fullhd{font-size:3rem!important}.is-size-2-fullhd{font-size:2.5rem!important}.is-size-3-fullhd{font-size:2rem!important}.is-size-4-fullhd{font-size:1.5rem!important}.is-size-5-fullhd{font-size:1.25rem!important}.is-size-6-fullhd{font-size:1rem!important}.is-size-7-fullhd{font-size:.75rem!important}}.has-text-centered{text-align:center!important}.has-text-justified{text-align:justify!important}.has-text-left{text-align:left!important}.has-text-right{text-align:right!important}@media screen and (max-width:768px){.has-text-centered-mobile{text-align:center!important}}@media screen and (min-width:769px),print{.has-text-centered-tablet{text-align:center!important}}@media screen and (min-width:769px) and (max-width:1023px){.has-text-centered-tablet-only{text-align:center!important}}@media screen and (max-width:1023px){.has-text-centered-touch{text-align:center!important}}@media screen and (min-width:1024px){.has-text-centered-desktop{text-align:center!important}}@media screen and (min-width:1024px) and (max-width:1215px){.has-text-centered-desktop-only{text-align:center!important}}@media screen and (min-width:1216px){.has-text-centered-widescreen{text-align:center!important}}@media screen and (min-width:1216px) and (max-width:1407px){.has-text-centered-widescreen-only{text-align:center!important}}@media screen and (min-width:1408px){.has-text-centered-fullhd{text-align:center!important}}@media screen and (max-width:768px){.has-text-justified-mobile{text-align:justify!important}}@media screen and (min-width:769px),print{.has-text-justified-tablet{text-align:justify!important}}@media screen and (min-width:769px) and (max-width:1023px){.has-text-justified-tablet-only{text-align:justify!important}}@media screen and (max-width:1023px){.has-text-justified-touch{text-align:justify!important}}@media screen and (min-width:1024px){.has-text-justified-desktop{text-align:justify!important}}@media screen and (min-width:1024px) and (max-width:1215px){.has-text-justified-desktop-only{text-align:justify!important}}@media screen and (min-width:1216px){.has-text-justified-widescreen{text-align:justify!important}}@media screen and (min-width:1216px) and (max-width:1407px){.has-text-justified-widescreen-only{text-align:justify!important}}@media screen and (min-width:1408px){.has-text-justified-fullhd{text-align:justify!important}}@media screen and (max-width:768px){.has-text-left-mobile{text-align:left!important}}@media screen and (min-width:769px),print{.has-text-left-tablet{text-align:left!important}}@media screen and (min-width:769px) and (max-width:1023px){.has-text-left-tablet-only{text-align:left!important}}@media screen and (max-width:1023px){.has-text-left-touch{text-align:left!important}}@media screen and (min-width:1024px){.has-text-left-desktop{text-align:left!important}}@media screen and (min-width:1024px) and (max-width:1215px){.has-text-left-desktop-only{text-align:left!important}}@media screen and (min-width:1216px){.has-text-left-widescreen{text-align:left!important}}@media screen and (min-width:1216px) and (max-width:1407px){.has-text-left-widescreen-only{text-align:left!important}}@media screen and (min-width:1408px){.has-text-left-fullhd{text-align:left!important}}@media screen and (max-width:768px){.has-text-right-mobile{text-align:right!important}}@media screen and (min-width:769px),print{.has-text-right-tablet{text-align:right!important}}@media screen and (min-width:769px) and (max-width:1023px){.has-text-right-tablet-only{text-align:right!important}}@media screen and (max-width:1023px){.has-text-right-touch{text-align:right!important}}@media screen and (min-width:1024px){.has-text-right-desktop{text-align:right!important}}@media screen and (min-width:1024px) and (max-width:1215px){.has-text-right-desktop-only{text-align:right!important}}@media screen and (min-width:1216px){.has-text-right-widescreen{text-align:right!important}}@media screen and (min-width:1216px) and (max-width:1407px){.has-text-right-widescreen-only{text-align:right!important}}@media screen and (min-width:1408px){.has-text-right-fullhd{text-align:right!important}}.is-capitalized{text-transform:capitalize!important}.is-lowercase{text-transform:lowercase!important}.is-uppercase{text-transform:uppercase!important}.is-italic{font-style:italic!important}.has-text-white{color:#fff!important}a.has-text-white:focus,a.has-text-white:hover{color:#e6e6e6!important}.has-background-white{background-color:#fff!important}.has-text-black{color:#0a0a0a!important}a.has-text-black:focus,a.has-text-black:hover{color:#000!important}.has-background-black{background-color:#0a0a0a!important}.has-text-light{color:#f5f5f5!important}a.has-text-light:focus,a.has-text-light:hover{color:#dbdbdb!important}.has-background-light{background-color:#f5f5f5!important}.has-text-dark{color:#363636!important}a.has-text-dark:focus,a.has-text-dark:hover{color:#1c1c1c!important}.has-background-dark{background-color:#363636!important}.has-text-primary{color:#00d1b2!important}a.has-text-primary:focus,a.has-text-primary:hover{color:#009e86!important}.has-background-primary{background-color:#00d1b2!important}.has-text-link{color:#3273dc!important}a.has-text-link:focus,a.has-text-link:hover{color:#205bbc!important}.has-background-link{background-color:#3273dc!important}.has-text-info{color:#3298dc!important}a.has-text-info:focus,a.has-text-info:hover{color:#207dbc!important}.has-background-info{background-color:#3298dc!important}.has-text-success{color:#48c774!important}a.has-text-success:focus,a.has-text-success:hover{color:#34a85c!important}.has-background-success{background-color:#48c774!important}.has-text-warning{color:#ffdd57!important}a.has-text-warning:focus,a.has-text-warning:hover{color:#ffd324!important}.has-background-warning{background-color:#ffdd57!important}.has-text-danger{color:#f14668!important}a.has-text-danger:focus,a.has-text-danger:hover{color:#ee1742!important}.has-background-danger{background-color:#f14668!important}.has-text-black-bis{color:#121212!important}.has-background-black-bis{background-color:#121212!important}.has-text-black-ter{color:#242424!important}.has-background-black-ter{background-color:#242424!important}.has-text-grey-darker{color:#363636!important}.has-background-grey-darker{background-color:#363636!important}.has-text-grey-dark{color:#4a4a4a!important}.has-background-grey-dark{background-color:#4a4a4a!important}.has-text-grey{color:#7a7a7a!important}.has-background-grey{background-color:#7a7a7a!important}.has-text-grey-light{color:#b5b5b5!important}.has-background-grey-light{background-color:#b5b5b5!important}.has-text-grey-lighter{color:#dbdbdb!important}.has-background-grey-lighter{background-color:#dbdbdb!important}.has-text-white-ter{color:#f5f5f5!important}.has-background-white-ter{background-color:#f5f5f5!important}.has-text-white-bis{color:#fafafa!important}.has-background-white-bis{background-color:#fafafa!important}.has-text-weight-light{font-weight:300!important}.has-text-weight-normal{font-weight:400!important}.has-text-weight-medium{font-weight:500!important}.has-text-weight-semibold{font-weight:600!important}.has-text-weight-bold{font-weight:700!important}.is-family-primary{font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif!important}.is-family-secondary{font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif!important}.is-family-sans-serif{font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif!important}.is-family-monospace{font-family:monospace!important}.is-family-code{font-family:monospace!important}.is-block{display:block!important}@media screen and (max-width:768px){.is-block-mobile{display:block!important}}@media screen and (min-width:769px),print{.is-block-tablet{display:block!important}}@media screen and (min-width:769px) and (max-width:1023px){.is-block-tablet-only{display:block!important}}@media screen and (max-width:1023px){.is-block-touch{display:block!important}}@media screen and (min-width:1024px){.is-block-desktop{display:block!important}}@media screen and (min-width:1024px) and (max-width:1215px){.is-block-desktop-only{display:block!important}}@media screen and (min-width:1216px){.is-block-widescreen{display:block!important}}@media screen and (min-width:1216px) and (max-width:1407px){.is-block-widescreen-only{display:block!important}}@media screen and (min-width:1408px){.is-block-fullhd{display:block!important}}.is-flex{display:flex!important}@media screen and (max-width:768px){.is-flex-mobile{display:flex!important}}@media screen and (min-width:769px),print{.is-flex-tablet{display:flex!important}}@media screen and (min-width:769px) and (max-width:1023px){.is-flex-tablet-only{display:flex!important}}@media screen and (max-width:1023px){.is-flex-touch{display:flex!important}}@media screen and (min-width:1024px){.is-flex-desktop{display:flex!important}}@media screen and (min-width:1024px) and (max-width:1215px){.is-flex-desktop-only{display:flex!important}}@media screen and (min-width:1216px){.is-flex-widescreen{display:flex!important}}@media screen and (min-width:1216px) and (max-width:1407px){.is-flex-widescreen-only{display:flex!important}}@media screen and (min-width:1408px){.is-flex-fullhd{display:flex!important}}.is-inline{display:inline!important}@media screen and (max-width:768px){.is-inline-mobile{display:inline!important}}@media screen and (min-width:769px),print{.is-inline-tablet{display:inline!important}}@media screen and (min-width:769px) and (max-width:1023px){.is-inline-tablet-only{display:inline!important}}@media screen and (max-width:1023px){.is-inline-touch{display:inline!important}}@media screen and (min-width:1024px){.is-inline-desktop{display:inline!important}}@media screen and (min-width:1024px) and (max-width:1215px){.is-inline-desktop-only{display:inline!important}}@media screen and (min-width:1216px){.is-inline-widescreen{display:inline!important}}@media screen and (min-width:1216px) and (max-width:1407px){.is-inline-widescreen-only{display:inline!important}}@media screen and (min-width:1408px){.is-inline-fullhd{display:inline!important}}.is-inline-block{display:inline-block!important}@media screen and (max-width:768px){.is-inline-block-mobile{display:inline-block!important}}@media screen and (min-width:769px),print{.is-inline-block-tablet{display:inline-block!important}}@media screen and (min-width:769px) and (max-width:1023px){.is-inline-block-tablet-only{display:inline-block!important}}@media screen and (max-width:1023px){.is-inline-block-touch{display:inline-block!important}}@media screen and (min-width:1024px){.is-inline-block-desktop{display:inline-block!important}}@media screen and (min-width:1024px) and (max-width:1215px){.is-inline-block-desktop-only{display:inline-block!important}}@media screen and (min-width:1216px){.is-inline-block-widescreen{display:inline-block!important}}@media screen and (min-width:1216px) and (max-width:1407px){.is-inline-block-widescreen-only{display:inline-block!important}}@media screen and (min-width:1408px){.is-inline-block-fullhd{display:inline-block!important}}.is-inline-flex{display:inline-flex!important}@media screen and (max-width:768px){.is-inline-flex-mobile{display:inline-flex!important}}@media screen and (min-width:769px),print{.is-inline-flex-tablet{display:inline-flex!important}}@media screen and (min-width:769px) and (max-width:1023px){.is-inline-flex-tablet-only{display:inline-flex!important}}@media screen and (max-width:1023px){.is-inline-flex-touch{display:inline-flex!important}}@media screen and (min-width:1024px){.is-inline-flex-desktop{display:inline-flex!important}}@media screen and (min-width:1024px) and (max-width:1215px){.is-inline-flex-desktop-only{display:inline-flex!important}}@media screen and (min-width:1216px){.is-inline-flex-widescreen{display:inline-flex!important}}@media screen and (min-width:1216px) and (max-width:1407px){.is-inline-flex-widescreen-only{display:inline-flex!important}}@media screen and (min-width:1408px){.is-inline-flex-fullhd{display:inline-flex!important}}.is-hidden{display:none!important}.is-sr-only{border:none!important;clip:rect(0,0,0,0)!important;height:.01em!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:.01em!important}@media screen and (max-width:768px){.is-hidden-mobile{display:none!important}}@media screen and (min-width:769px),print{.is-hidden-tablet{display:none!important}}@media screen and (min-width:769px) and (max-width:1023px){.is-hidden-tablet-only{display:none!important}}@media screen and (max-width:1023px){.is-hidden-touch{display:none!important}}@media screen and (min-width:1024px){.is-hidden-desktop{display:none!important}}@media screen and (min-width:1024px) and (max-width:1215px){.is-hidden-desktop-only{display:none!important}}@media screen and (min-width:1216px){.is-hidden-widescreen{display:none!important}}@media screen and (min-width:1216px) and (max-width:1407px){.is-hidden-widescreen-only{display:none!important}}@media screen and (min-width:1408px){.is-hidden-fullhd{display:none!important}}.is-invisible{visibility:hidden!important}@media screen and (max-width:768px){.is-invisible-mobile{visibility:hidden!important}}@media screen and (min-width:769px),print{.is-invisible-tablet{visibility:hidden!important}}@media screen and (min-width:769px) and (max-width:1023px){.is-invisible-tablet-only{visibility:hidden!important}}@media screen and (max-width:1023px){.is-invisible-touch{visibility:hidden!important}}@media screen and (min-width:1024px){.is-invisible-desktop{visibility:hidden!important}}@media screen and (min-width:1024px) and (max-width:1215px){.is-invisible-desktop-only{visibility:hidden!important}}@media screen and (min-width:1216px){.is-invisible-widescreen{visibility:hidden!important}}@media screen and (min-width:1216px) and (max-width:1407px){.is-invisible-widescreen-only{visibility:hidden!important}}@media screen and (min-width:1408px){.is-invisible-fullhd{visibility:hidden!important}}.is-marginless{margin:0!important}.is-paddingless{padding:0!important}.is-radiusless{border-radius:0!important}.is-shadowless{box-shadow:none!important}.is-relative{position:relative!important}.box{background-color:#fff;border-radius:6px;box-shadow:0 .5em 1em -.125em rgba(10,10,10,.1),0 0 0 1px rgba(10,10,10,.02);color:#4a4a4a;display:block;padding:1.25rem}a.box:focus,a.box:hover{box-shadow:0 .5em 1em -.125em rgba(10,10,10,.1),0 0 0 1px #3273dc}a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,.2),0 0 0 1px #3273dc}.button{background-color:#fff;border-color:#dbdbdb;border-width:1px;color:#363636;cursor:pointer;justify-content:center;padding-bottom:calc(.5em - 1px);padding-left:1em;padding-right:1em;padding-top:calc(.5em - 1px);text-align:center;white-space:nowrap}.button strong{color:inherit}.button .icon,.button .icon.is-large,.button .icon.is-medium,.button .icon.is-small{height:1.5em;width:1.5em}.button .icon:first-child:not(:last-child){margin-left:calc(-.5em - 1px);margin-right:.25em}.button .icon:last-child:not(:first-child){margin-left:.25em;margin-right:calc(-.5em - 1px)}.button .icon:first-child:last-child{margin-left:calc(-.5em - 1px);margin-right:calc(-.5em - 1px)}.button.is-hovered,.button:hover{border-color:#b5b5b5;color:#363636}.button.is-focused,.button:focus{border-color:#3273dc;color:#363636}.button.is-focused:not(:active),.button:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.button.is-active,.button:active{border-color:#4a4a4a;color:#363636}.button.is-text{background-color:transparent;border-color:transparent;color:#4a4a4a;text-decoration:underline}.button.is-text.is-focused,.button.is-text.is-hovered,.button.is-text:focus,.button.is-text:hover{background-color:#f5f5f5;color:#363636}.button.is-text.is-active,.button.is-text:active{background-color:#e8e8e8;color:#363636}.button.is-text[disabled],fieldset[disabled] .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}.button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}.button.is-white.is-hovered,.button.is-white:hover{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.button.is-white.is-focused,.button.is-white:focus{border-color:transparent;color:#0a0a0a}.button.is-white.is-focused:not(:active),.button.is-white:focus:not(:active){box-shadow:0 0 0 .125em rgba(255,255,255,.25)}.button.is-white.is-active,.button.is-white:active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.button.is-white[disabled],fieldset[disabled] .button.is-white{background-color:#fff;border-color:transparent;box-shadow:none}.button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}.button.is-white.is-inverted.is-hovered,.button.is-white.is-inverted:hover{background-color:#000}.button.is-white.is-inverted[disabled],fieldset[disabled] .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}.button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a!important}.button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-white.is-outlined.is-focused,.button.is-white.is-outlined.is-hovered,.button.is-white.is-outlined:focus,.button.is-white.is-outlined:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}.button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff!important}.button.is-white.is-outlined.is-loading.is-focused::after,.button.is-white.is-outlined.is-loading.is-hovered::after,.button.is-white.is-outlined.is-loading:focus::after,.button.is-white.is-outlined.is-loading:hover::after{border-color:transparent transparent #0a0a0a #0a0a0a!important}.button.is-white.is-outlined[disabled],fieldset[disabled] .button.is-white.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}.button.is-white.is-inverted.is-outlined.is-focused,.button.is-white.is-inverted.is-outlined.is-hovered,.button.is-white.is-inverted.is-outlined:focus,.button.is-white.is-inverted.is-outlined:hover{background-color:#0a0a0a;color:#fff}.button.is-white.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-white.is-inverted.is-outlined.is-loading:focus::after,.button.is-white.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #fff #fff!important}.button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}.button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}.button.is-black.is-hovered,.button.is-black:hover{background-color:#040404;border-color:transparent;color:#fff}.button.is-black.is-focused,.button.is-black:focus{border-color:transparent;color:#fff}.button.is-black.is-focused:not(:active),.button.is-black:focus:not(:active){box-shadow:0 0 0 .125em rgba(10,10,10,.25)}.button.is-black.is-active,.button.is-black:active{background-color:#000;border-color:transparent;color:#fff}.button.is-black[disabled],fieldset[disabled] .button.is-black{background-color:#0a0a0a;border-color:transparent;box-shadow:none}.button.is-black.is-inverted{background-color:#fff;color:#0a0a0a}.button.is-black.is-inverted.is-hovered,.button.is-black.is-inverted:hover{background-color:#f2f2f2}.button.is-black.is-inverted[disabled],fieldset[disabled] .button.is-black.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}.button.is-black.is-loading::after{border-color:transparent transparent #fff #fff!important}.button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}.button.is-black.is-outlined.is-focused,.button.is-black.is-outlined.is-hovered,.button.is-black.is-outlined:focus,.button.is-black.is-outlined:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.button.is-black.is-outlined.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a!important}.button.is-black.is-outlined.is-loading.is-focused::after,.button.is-black.is-outlined.is-loading.is-hovered::after,.button.is-black.is-outlined.is-loading:focus::after,.button.is-black.is-outlined.is-loading:hover::after{border-color:transparent transparent #fff #fff!important}.button.is-black.is-outlined[disabled],fieldset[disabled] .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}.button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-black.is-inverted.is-outlined.is-focused,.button.is-black.is-inverted.is-outlined.is-hovered,.button.is-black.is-inverted.is-outlined:focus,.button.is-black.is-inverted.is-outlined:hover{background-color:#fff;color:#0a0a0a}.button.is-black.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-black.is-inverted.is-outlined.is-loading:focus::after,.button.is-black.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #0a0a0a #0a0a0a!important}.button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-light{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,.7)}.button.is-light.is-hovered,.button.is-light:hover{background-color:#eee;border-color:transparent;color:rgba(0,0,0,.7)}.button.is-light.is-focused,.button.is-light:focus{border-color:transparent;color:rgba(0,0,0,.7)}.button.is-light.is-focused:not(:active),.button.is-light:focus:not(:active){box-shadow:0 0 0 .125em rgba(245,245,245,.25)}.button.is-light.is-active,.button.is-light:active{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,.7)}.button.is-light[disabled],fieldset[disabled] .button.is-light{background-color:#f5f5f5;border-color:transparent;box-shadow:none}.button.is-light.is-inverted{background-color:rgba(0,0,0,.7);color:#f5f5f5}.button.is-light.is-inverted.is-hovered,.button.is-light.is-inverted:hover{background-color:rgba(0,0,0,.7)}.button.is-light.is-inverted[disabled],fieldset[disabled] .button.is-light.is-inverted{background-color:rgba(0,0,0,.7);border-color:transparent;box-shadow:none;color:#f5f5f5}.button.is-light.is-loading::after{border-color:transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important}.button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;color:#f5f5f5}.button.is-light.is-outlined.is-focused,.button.is-light.is-outlined.is-hovered,.button.is-light.is-outlined:focus,.button.is-light.is-outlined:hover{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,.7)}.button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5!important}.button.is-light.is-outlined.is-loading.is-focused::after,.button.is-light.is-outlined.is-loading.is-hovered::after,.button.is-light.is-outlined.is-loading:focus::after,.button.is-light.is-outlined.is-loading:hover::after{border-color:transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important}.button.is-light.is-outlined[disabled],fieldset[disabled] .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;box-shadow:none;color:#f5f5f5}.button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,.7);color:rgba(0,0,0,.7)}.button.is-light.is-inverted.is-outlined.is-focused,.button.is-light.is-inverted.is-outlined.is-hovered,.button.is-light.is-inverted.is-outlined:focus,.button.is-light.is-inverted.is-outlined:hover{background-color:rgba(0,0,0,.7);color:#f5f5f5}.button.is-light.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-light.is-inverted.is-outlined.is-loading:focus::after,.button.is-light.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #f5f5f5 #f5f5f5!important}.button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,.7);box-shadow:none;color:rgba(0,0,0,.7)}.button.is-dark{background-color:#363636;border-color:transparent;color:#fff}.button.is-dark.is-hovered,.button.is-dark:hover{background-color:#2f2f2f;border-color:transparent;color:#fff}.button.is-dark.is-focused,.button.is-dark:focus{border-color:transparent;color:#fff}.button.is-dark.is-focused:not(:active),.button.is-dark:focus:not(:active){box-shadow:0 0 0 .125em rgba(54,54,54,.25)}.button.is-dark.is-active,.button.is-dark:active{background-color:#292929;border-color:transparent;color:#fff}.button.is-dark[disabled],fieldset[disabled] .button.is-dark{background-color:#363636;border-color:transparent;box-shadow:none}.button.is-dark.is-inverted{background-color:#fff;color:#363636}.button.is-dark.is-inverted.is-hovered,.button.is-dark.is-inverted:hover{background-color:#f2f2f2}.button.is-dark.is-inverted[disabled],fieldset[disabled] .button.is-dark.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#363636}.button.is-dark.is-loading::after{border-color:transparent transparent #fff #fff!important}.button.is-dark.is-outlined{background-color:transparent;border-color:#363636;color:#363636}.button.is-dark.is-outlined.is-focused,.button.is-dark.is-outlined.is-hovered,.button.is-dark.is-outlined:focus,.button.is-dark.is-outlined:hover{background-color:#363636;border-color:#363636;color:#fff}.button.is-dark.is-outlined.is-loading::after{border-color:transparent transparent #363636 #363636!important}.button.is-dark.is-outlined.is-loading.is-focused::after,.button.is-dark.is-outlined.is-loading.is-hovered::after,.button.is-dark.is-outlined.is-loading:focus::after,.button.is-dark.is-outlined.is-loading:hover::after{border-color:transparent transparent #fff #fff!important}.button.is-dark.is-outlined[disabled],fieldset[disabled] .button.is-dark.is-outlined{background-color:transparent;border-color:#363636;box-shadow:none;color:#363636}.button.is-dark.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-dark.is-inverted.is-outlined.is-focused,.button.is-dark.is-inverted.is-outlined.is-hovered,.button.is-dark.is-inverted.is-outlined:focus,.button.is-dark.is-inverted.is-outlined:hover{background-color:#fff;color:#363636}.button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-dark.is-inverted.is-outlined.is-loading:focus::after,.button.is-dark.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #363636 #363636!important}.button.is-dark.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-dark.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-primary{background-color:#00d1b2;border-color:transparent;color:#fff}.button.is-primary.is-hovered,.button.is-primary:hover{background-color:#00c4a7;border-color:transparent;color:#fff}.button.is-primary.is-focused,.button.is-primary:focus{border-color:transparent;color:#fff}.button.is-primary.is-focused:not(:active),.button.is-primary:focus:not(:active){box-shadow:0 0 0 .125em rgba(0,209,178,.25)}.button.is-primary.is-active,.button.is-primary:active{background-color:#00b89c;border-color:transparent;color:#fff}.button.is-primary[disabled],fieldset[disabled] .button.is-primary{background-color:#00d1b2;border-color:transparent;box-shadow:none}.button.is-primary.is-inverted{background-color:#fff;color:#00d1b2}.button.is-primary.is-inverted.is-hovered,.button.is-primary.is-inverted:hover{background-color:#f2f2f2}.button.is-primary.is-inverted[disabled],fieldset[disabled] .button.is-primary.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#00d1b2}.button.is-primary.is-loading::after{border-color:transparent transparent #fff #fff!important}.button.is-primary.is-outlined{background-color:transparent;border-color:#00d1b2;color:#00d1b2}.button.is-primary.is-outlined.is-focused,.button.is-primary.is-outlined.is-hovered,.button.is-primary.is-outlined:focus,.button.is-primary.is-outlined:hover{background-color:#00d1b2;border-color:#00d1b2;color:#fff}.button.is-primary.is-outlined.is-loading::after{border-color:transparent transparent #00d1b2 #00d1b2!important}.button.is-primary.is-outlined.is-loading.is-focused::after,.button.is-primary.is-outlined.is-loading.is-hovered::after,.button.is-primary.is-outlined.is-loading:focus::after,.button.is-primary.is-outlined.is-loading:hover::after{border-color:transparent transparent #fff #fff!important}.button.is-primary.is-outlined[disabled],fieldset[disabled] .button.is-primary.is-outlined{background-color:transparent;border-color:#00d1b2;box-shadow:none;color:#00d1b2}.button.is-primary.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-primary.is-inverted.is-outlined.is-focused,.button.is-primary.is-inverted.is-outlined.is-hovered,.button.is-primary.is-inverted.is-outlined:focus,.button.is-primary.is-inverted.is-outlined:hover{background-color:#fff;color:#00d1b2}.button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-primary.is-inverted.is-outlined.is-loading:focus::after,.button.is-primary.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #00d1b2 #00d1b2!important}.button.is-primary.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-primary.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-primary.is-light{background-color:#ebfffc;color:#00947e}.button.is-primary.is-light.is-hovered,.button.is-primary.is-light:hover{background-color:#defffa;border-color:transparent;color:#00947e}.button.is-primary.is-light.is-active,.button.is-primary.is-light:active{background-color:#d1fff8;border-color:transparent;color:#00947e}.button.is-link{background-color:#3273dc;border-color:transparent;color:#fff}.button.is-link.is-hovered,.button.is-link:hover{background-color:#276cda;border-color:transparent;color:#fff}.button.is-link.is-focused,.button.is-link:focus{border-color:transparent;color:#fff}.button.is-link.is-focused:not(:active),.button.is-link:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.button.is-link.is-active,.button.is-link:active{background-color:#2366d1;border-color:transparent;color:#fff}.button.is-link[disabled],fieldset[disabled] .button.is-link{background-color:#3273dc;border-color:transparent;box-shadow:none}.button.is-link.is-inverted{background-color:#fff;color:#3273dc}.button.is-link.is-inverted.is-hovered,.button.is-link.is-inverted:hover{background-color:#f2f2f2}.button.is-link.is-inverted[disabled],fieldset[disabled] .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#3273dc}.button.is-link.is-loading::after{border-color:transparent transparent #fff #fff!important}.button.is-link.is-outlined{background-color:transparent;border-color:#3273dc;color:#3273dc}.button.is-link.is-outlined.is-focused,.button.is-link.is-outlined.is-hovered,.button.is-link.is-outlined:focus,.button.is-link.is-outlined:hover{background-color:#3273dc;border-color:#3273dc;color:#fff}.button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #3273dc #3273dc!important}.button.is-link.is-outlined.is-loading.is-focused::after,.button.is-link.is-outlined.is-loading.is-hovered::after,.button.is-link.is-outlined.is-loading:focus::after,.button.is-link.is-outlined.is-loading:hover::after{border-color:transparent transparent #fff #fff!important}.button.is-link.is-outlined[disabled],fieldset[disabled] .button.is-link.is-outlined{background-color:transparent;border-color:#3273dc;box-shadow:none;color:#3273dc}.button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-link.is-inverted.is-outlined.is-focused,.button.is-link.is-inverted.is-outlined.is-hovered,.button.is-link.is-inverted.is-outlined:focus,.button.is-link.is-inverted.is-outlined:hover{background-color:#fff;color:#3273dc}.button.is-link.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-link.is-inverted.is-outlined.is-loading:focus::after,.button.is-link.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #3273dc #3273dc!important}.button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-link.is-light{background-color:#eef3fc;color:#2160c4}.button.is-link.is-light.is-hovered,.button.is-link.is-light:hover{background-color:#e3ecfa;border-color:transparent;color:#2160c4}.button.is-link.is-light.is-active,.button.is-link.is-light:active{background-color:#d8e4f8;border-color:transparent;color:#2160c4}.button.is-info{background-color:#3298dc;border-color:transparent;color:#fff}.button.is-info.is-hovered,.button.is-info:hover{background-color:#2793da;border-color:transparent;color:#fff}.button.is-info.is-focused,.button.is-info:focus{border-color:transparent;color:#fff}.button.is-info.is-focused:not(:active),.button.is-info:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,152,220,.25)}.button.is-info.is-active,.button.is-info:active{background-color:#238cd1;border-color:transparent;color:#fff}.button.is-info[disabled],fieldset[disabled] .button.is-info{background-color:#3298dc;border-color:transparent;box-shadow:none}.button.is-info.is-inverted{background-color:#fff;color:#3298dc}.button.is-info.is-inverted.is-hovered,.button.is-info.is-inverted:hover{background-color:#f2f2f2}.button.is-info.is-inverted[disabled],fieldset[disabled] .button.is-info.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#3298dc}.button.is-info.is-loading::after{border-color:transparent transparent #fff #fff!important}.button.is-info.is-outlined{background-color:transparent;border-color:#3298dc;color:#3298dc}.button.is-info.is-outlined.is-focused,.button.is-info.is-outlined.is-hovered,.button.is-info.is-outlined:focus,.button.is-info.is-outlined:hover{background-color:#3298dc;border-color:#3298dc;color:#fff}.button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #3298dc #3298dc!important}.button.is-info.is-outlined.is-loading.is-focused::after,.button.is-info.is-outlined.is-loading.is-hovered::after,.button.is-info.is-outlined.is-loading:focus::after,.button.is-info.is-outlined.is-loading:hover::after{border-color:transparent transparent #fff #fff!important}.button.is-info.is-outlined[disabled],fieldset[disabled] .button.is-info.is-outlined{background-color:transparent;border-color:#3298dc;box-shadow:none;color:#3298dc}.button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-info.is-inverted.is-outlined.is-focused,.button.is-info.is-inverted.is-outlined.is-hovered,.button.is-info.is-inverted.is-outlined:focus,.button.is-info.is-inverted.is-outlined:hover{background-color:#fff;color:#3298dc}.button.is-info.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-info.is-inverted.is-outlined.is-loading:focus::after,.button.is-info.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #3298dc #3298dc!important}.button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-info.is-light{background-color:#eef6fc;color:#1d72aa}.button.is-info.is-light.is-hovered,.button.is-info.is-light:hover{background-color:#e3f1fa;border-color:transparent;color:#1d72aa}.button.is-info.is-light.is-active,.button.is-info.is-light:active{background-color:#d8ebf8;border-color:transparent;color:#1d72aa}.button.is-success{background-color:#48c774;border-color:transparent;color:#fff}.button.is-success.is-hovered,.button.is-success:hover{background-color:#3ec46d;border-color:transparent;color:#fff}.button.is-success.is-focused,.button.is-success:focus{border-color:transparent;color:#fff}.button.is-success.is-focused:not(:active),.button.is-success:focus:not(:active){box-shadow:0 0 0 .125em rgba(72,199,116,.25)}.button.is-success.is-active,.button.is-success:active{background-color:#3abb67;border-color:transparent;color:#fff}.button.is-success[disabled],fieldset[disabled] .button.is-success{background-color:#48c774;border-color:transparent;box-shadow:none}.button.is-success.is-inverted{background-color:#fff;color:#48c774}.button.is-success.is-inverted.is-hovered,.button.is-success.is-inverted:hover{background-color:#f2f2f2}.button.is-success.is-inverted[disabled],fieldset[disabled] .button.is-success.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#48c774}.button.is-success.is-loading::after{border-color:transparent transparent #fff #fff!important}.button.is-success.is-outlined{background-color:transparent;border-color:#48c774;color:#48c774}.button.is-success.is-outlined.is-focused,.button.is-success.is-outlined.is-hovered,.button.is-success.is-outlined:focus,.button.is-success.is-outlined:hover{background-color:#48c774;border-color:#48c774;color:#fff}.button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #48c774 #48c774!important}.button.is-success.is-outlined.is-loading.is-focused::after,.button.is-success.is-outlined.is-loading.is-hovered::after,.button.is-success.is-outlined.is-loading:focus::after,.button.is-success.is-outlined.is-loading:hover::after{border-color:transparent transparent #fff #fff!important}.button.is-success.is-outlined[disabled],fieldset[disabled] .button.is-success.is-outlined{background-color:transparent;border-color:#48c774;box-shadow:none;color:#48c774}.button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-success.is-inverted.is-outlined.is-focused,.button.is-success.is-inverted.is-outlined.is-hovered,.button.is-success.is-inverted.is-outlined:focus,.button.is-success.is-inverted.is-outlined:hover{background-color:#fff;color:#48c774}.button.is-success.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-success.is-inverted.is-outlined.is-loading:focus::after,.button.is-success.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #48c774 #48c774!important}.button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-success.is-light{background-color:#effaf3;color:#257942}.button.is-success.is-light.is-hovered,.button.is-success.is-light:hover{background-color:#e6f7ec;border-color:transparent;color:#257942}.button.is-success.is-light.is-active,.button.is-success.is-light:active{background-color:#dcf4e4;border-color:transparent;color:#257942}.button.is-warning{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,.7)}.button.is-warning.is-hovered,.button.is-warning:hover{background-color:#ffdb4a;border-color:transparent;color:rgba(0,0,0,.7)}.button.is-warning.is-focused,.button.is-warning:focus{border-color:transparent;color:rgba(0,0,0,.7)}.button.is-warning.is-focused:not(:active),.button.is-warning:focus:not(:active){box-shadow:0 0 0 .125em rgba(255,221,87,.25)}.button.is-warning.is-active,.button.is-warning:active{background-color:#ffd83d;border-color:transparent;color:rgba(0,0,0,.7)}.button.is-warning[disabled],fieldset[disabled] .button.is-warning{background-color:#ffdd57;border-color:transparent;box-shadow:none}.button.is-warning.is-inverted{background-color:rgba(0,0,0,.7);color:#ffdd57}.button.is-warning.is-inverted.is-hovered,.button.is-warning.is-inverted:hover{background-color:rgba(0,0,0,.7)}.button.is-warning.is-inverted[disabled],fieldset[disabled] .button.is-warning.is-inverted{background-color:rgba(0,0,0,.7);border-color:transparent;box-shadow:none;color:#ffdd57}.button.is-warning.is-loading::after{border-color:transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important}.button.is-warning.is-outlined{background-color:transparent;border-color:#ffdd57;color:#ffdd57}.button.is-warning.is-outlined.is-focused,.button.is-warning.is-outlined.is-hovered,.button.is-warning.is-outlined:focus,.button.is-warning.is-outlined:hover{background-color:#ffdd57;border-color:#ffdd57;color:rgba(0,0,0,.7)}.button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #ffdd57 #ffdd57!important}.button.is-warning.is-outlined.is-loading.is-focused::after,.button.is-warning.is-outlined.is-loading.is-hovered::after,.button.is-warning.is-outlined.is-loading:focus::after,.button.is-warning.is-outlined.is-loading:hover::after{border-color:transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important}.button.is-warning.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-outlined{background-color:transparent;border-color:#ffdd57;box-shadow:none;color:#ffdd57}.button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,.7);color:rgba(0,0,0,.7)}.button.is-warning.is-inverted.is-outlined.is-focused,.button.is-warning.is-inverted.is-outlined.is-hovered,.button.is-warning.is-inverted.is-outlined:focus,.button.is-warning.is-inverted.is-outlined:hover{background-color:rgba(0,0,0,.7);color:#ffdd57}.button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-warning.is-inverted.is-outlined.is-loading:focus::after,.button.is-warning.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #ffdd57 #ffdd57!important}.button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,.7);box-shadow:none;color:rgba(0,0,0,.7)}.button.is-warning.is-light{background-color:#fffbeb;color:#947600}.button.is-warning.is-light.is-hovered,.button.is-warning.is-light:hover{background-color:#fff8de;border-color:transparent;color:#947600}.button.is-warning.is-light.is-active,.button.is-warning.is-light:active{background-color:#fff6d1;border-color:transparent;color:#947600}.button.is-danger{background-color:#f14668;border-color:transparent;color:#fff}.button.is-danger.is-hovered,.button.is-danger:hover{background-color:#f03a5f;border-color:transparent;color:#fff}.button.is-danger.is-focused,.button.is-danger:focus{border-color:transparent;color:#fff}.button.is-danger.is-focused:not(:active),.button.is-danger:focus:not(:active){box-shadow:0 0 0 .125em rgba(241,70,104,.25)}.button.is-danger.is-active,.button.is-danger:active{background-color:#ef2e55;border-color:transparent;color:#fff}.button.is-danger[disabled],fieldset[disabled] .button.is-danger{background-color:#f14668;border-color:transparent;box-shadow:none}.button.is-danger.is-inverted{background-color:#fff;color:#f14668}.button.is-danger.is-inverted.is-hovered,.button.is-danger.is-inverted:hover{background-color:#f2f2f2}.button.is-danger.is-inverted[disabled],fieldset[disabled] .button.is-danger.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#f14668}.button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff!important}.button.is-danger.is-outlined{background-color:transparent;border-color:#f14668;color:#f14668}.button.is-danger.is-outlined.is-focused,.button.is-danger.is-outlined.is-hovered,.button.is-danger.is-outlined:focus,.button.is-danger.is-outlined:hover{background-color:#f14668;border-color:#f14668;color:#fff}.button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #f14668 #f14668!important}.button.is-danger.is-outlined.is-loading.is-focused::after,.button.is-danger.is-outlined.is-loading.is-hovered::after,.button.is-danger.is-outlined.is-loading:focus::after,.button.is-danger.is-outlined.is-loading:hover::after{border-color:transparent transparent #fff #fff!important}.button.is-danger.is-outlined[disabled],fieldset[disabled] .button.is-danger.is-outlined{background-color:transparent;border-color:#f14668;box-shadow:none;color:#f14668}.button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-danger.is-inverted.is-outlined.is-focused,.button.is-danger.is-inverted.is-outlined.is-hovered,.button.is-danger.is-inverted.is-outlined:focus,.button.is-danger.is-inverted.is-outlined:hover{background-color:#fff;color:#f14668}.button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after,.button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-danger.is-inverted.is-outlined.is-loading:focus::after,.button.is-danger.is-inverted.is-outlined.is-loading:hover::after{border-color:transparent transparent #f14668 #f14668!important}.button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-danger.is-light{background-color:#feecf0;color:#cc0f35}.button.is-danger.is-light.is-hovered,.button.is-danger.is-light:hover{background-color:#fde0e6;border-color:transparent;color:#cc0f35}.button.is-danger.is-light.is-active,.button.is-danger.is-light:active{background-color:#fcd4dc;border-color:transparent;color:#cc0f35}.button.is-small{border-radius:2px;font-size:.75rem}.button.is-normal{font-size:1rem}.button.is-medium{font-size:1.25rem}.button.is-large{font-size:1.5rem}.button[disabled],fieldset[disabled] .button{background-color:#fff;border-color:#dbdbdb;box-shadow:none;opacity:.5}.button.is-fullwidth{display:flex;width:100%}.button.is-loading{color:transparent!important;pointer-events:none}.button.is-loading::after{position:absolute;left:calc(50% - (1em / 2));top:calc(50% - (1em / 2));position:absolute!important}.button.is-static{background-color:#f5f5f5;border-color:#dbdbdb;color:#7a7a7a;box-shadow:none;pointer-events:none}.button.is-rounded{border-radius:290486px;padding-left:calc(1em + .25em);padding-right:calc(1em + .25em)}.buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.buttons .button{margin-bottom:.5rem}.buttons .button:not(:last-child):not(.is-fullwidth){margin-right:.5rem}.buttons:last-child{margin-bottom:-.5rem}.buttons:not(:last-child){margin-bottom:1rem}.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){border-radius:2px;font-size:.75rem}.buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}.buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}.buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}.buttons.has-addons .button:last-child{margin-right:0}.buttons.has-addons .button.is-hovered,.buttons.has-addons .button:hover{z-index:2}.buttons.has-addons .button.is-active,.buttons.has-addons .button.is-focused,.buttons.has-addons .button.is-selected,.buttons.has-addons .button:active,.buttons.has-addons .button:focus{z-index:3}.buttons.has-addons .button.is-active:hover,.buttons.has-addons .button.is-focused:hover,.buttons.has-addons .button.is-selected:hover,.buttons.has-addons .button:active:hover,.buttons.has-addons .button:focus:hover{z-index:4}.buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}.buttons.is-centered{justify-content:center}.buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:.25rem;margin-right:.25rem}.buttons.is-right{justify-content:flex-end}.buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:.25rem;margin-right:.25rem}.container{flex-grow:1;margin:0 auto;position:relative;width:auto}.container.is-fluid{max-width:none;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width:1024px){.container{max-width:960px}}@media screen and (max-width:1215px){.container.is-widescreen{max-width:1152px}}@media screen and (max-width:1407px){.container.is-fullhd{max-width:1344px}}@media screen and (min-width:1216px){.container{max-width:1152px}}@media screen and (min-width:1408px){.container{max-width:1344px}}.content li+li{margin-top:.25em}.content blockquote:not(:last-child),.content dl:not(:last-child),.content ol:not(:last-child),.content p:not(:last-child),.content pre:not(:last-child),.content table:not(:last-child),.content ul:not(:last-child){margin-bottom:1em}.content h1,.content h2,.content h3,.content h4,.content h5,.content h6{color:#363636;font-weight:600;line-height:1.125}.content h1{font-size:2em;margin-bottom:.5em}.content h1:not(:first-child){margin-top:1em}.content h2{font-size:1.75em;margin-bottom:.5714em}.content h2:not(:first-child){margin-top:1.1428em}.content h3{font-size:1.5em;margin-bottom:.6666em}.content h3:not(:first-child){margin-top:1.3333em}.content h4{font-size:1.25em;margin-bottom:.8em}.content h5{font-size:1.125em;margin-bottom:.8888em}.content h6{font-size:1em;margin-bottom:1em}.content blockquote{background-color:#f5f5f5;border-left:5px solid #dbdbdb;padding:1.25em 1.5em}.content ol{list-style-position:outside;margin-left:2em;margin-top:1em}.content ol:not([type]){list-style-type:decimal}.content ol:not([type]).is-lower-alpha{list-style-type:lower-alpha}.content ol:not([type]).is-lower-roman{list-style-type:lower-roman}.content ol:not([type]).is-upper-alpha{list-style-type:upper-alpha}.content ol:not([type]).is-upper-roman{list-style-type:upper-roman}.content ul{list-style:disc outside;margin-left:2em;margin-top:1em}.content ul ul{list-style-type:circle;margin-top:.5em}.content ul ul ul{list-style-type:square}.content dd{margin-left:2em}.content figure{margin-left:2em;margin-right:2em;text-align:center}.content figure:not(:first-child){margin-top:2em}.content figure:not(:last-child){margin-bottom:2em}.content figure img{display:inline-block}.content figure figcaption{font-style:italic}.content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:1.25em 1.5em;white-space:pre;word-wrap:normal}.content sub,.content sup{font-size:75%}.content table{width:100%}.content table td,.content table th{border:1px solid #dbdbdb;border-width:0 0 1px;padding:.5em .75em;vertical-align:top}.content table th{color:#363636}.content table th:not([align]){text-align:left}.content table thead td,.content table thead th{border-width:0 0 2px;color:#363636}.content table tfoot td,.content table tfoot th{border-width:2px 0 0;color:#363636}.content table tbody tr:last-child td,.content table tbody tr:last-child th{border-bottom-width:0}.content .tabs li+li{margin-top:0}.content.is-small{font-size:.75rem}.content.is-medium{font-size:1.25rem}.content.is-large{font-size:1.5rem}.icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}.icon.is-small{height:1rem;width:1rem}.icon.is-medium{height:2rem;width:2rem}.icon.is-large{height:3rem;width:3rem}.image{display:block;position:relative}.image img{display:block;height:auto;width:100%}.image img.is-rounded{border-radius:290486px}.image.is-fullwidth{width:100%}.image.is-16by9 .has-ratio,.image.is-16by9 img,.image.is-1by1 .has-ratio,.image.is-1by1 img,.image.is-1by2 .has-ratio,.image.is-1by2 img,.image.is-1by3 .has-ratio,.image.is-1by3 img,.image.is-2by1 .has-ratio,.image.is-2by1 img,.image.is-2by3 .has-ratio,.image.is-2by3 img,.image.is-3by1 .has-ratio,.image.is-3by1 img,.image.is-3by2 .has-ratio,.image.is-3by2 img,.image.is-3by4 .has-ratio,.image.is-3by4 img,.image.is-3by5 .has-ratio,.image.is-3by5 img,.image.is-4by3 .has-ratio,.image.is-4by3 img,.image.is-4by5 .has-ratio,.image.is-4by5 img,.image.is-5by3 .has-ratio,.image.is-5by3 img,.image.is-5by4 .has-ratio,.image.is-5by4 img,.image.is-9by16 .has-ratio,.image.is-9by16 img,.image.is-square .has-ratio,.image.is-square img{height:100%;width:100%}.image.is-1by1,.image.is-square{padding-top:100%}.image.is-5by4{padding-top:80%}.image.is-4by3{padding-top:75%}.image.is-3by2{padding-top:66.6666%}.image.is-5by3{padding-top:60%}.image.is-16by9{padding-top:56.25%}.image.is-2by1{padding-top:50%}.image.is-3by1{padding-top:33.3333%}.image.is-4by5{padding-top:125%}.image.is-3by4{padding-top:133.3333%}.image.is-2by3{padding-top:150%}.image.is-3by5{padding-top:166.6666%}.image.is-9by16{padding-top:177.7777%}.image.is-1by2{padding-top:200%}.image.is-1by3{padding-top:300%}.image.is-16x16{height:16px;width:16px}.image.is-24x24{height:24px;width:24px}.image.is-32x32{height:32px;width:32px}.image.is-48x48{height:48px;width:48px}.image.is-64x64{height:64px;width:64px}.image.is-96x96{height:96px;width:96px}.image.is-128x128{height:128px;width:128px}.notification{background-color:#f5f5f5;border-radius:4px;padding:1.25rem 2.5rem 1.25rem 1.5rem;position:relative}.notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}.notification strong{color:currentColor}.notification code,.notification pre{background:#fff}.notification pre code{background:0 0}.notification>.delete{position:absolute;right:.5rem;top:.5rem}.notification .content,.notification .subtitle,.notification .title{color:currentColor}.notification.is-white{background-color:#fff;color:#0a0a0a}.notification.is-black{background-color:#0a0a0a;color:#fff}.notification.is-light{background-color:#f5f5f5;color:rgba(0,0,0,.7)}.notification.is-dark{background-color:#363636;color:#fff}.notification.is-primary{background-color:#00d1b2;color:#fff}.notification.is-link{background-color:#3273dc;color:#fff}.notification.is-info{background-color:#3298dc;color:#fff}.notification.is-success{background-color:#48c774;color:#fff}.notification.is-warning{background-color:#ffdd57;color:rgba(0,0,0,.7)}.notification.is-danger{background-color:#f14668;color:#fff}.progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:290486px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}.progress::-webkit-progress-bar{background-color:#ededed}.progress::-webkit-progress-value{background-color:#4a4a4a}.progress::-moz-progress-bar{background-color:#4a4a4a}.progress::-ms-fill{background-color:#4a4a4a;border:none}.progress.is-white::-webkit-progress-value{background-color:#fff}.progress.is-white::-moz-progress-bar{background-color:#fff}.progress.is-white::-ms-fill{background-color:#fff}.progress.is-white:indeterminate{background-image:linear-gradient(to right,#fff 30%,#ededed 30%)}.progress.is-black::-webkit-progress-value{background-color:#0a0a0a}.progress.is-black::-moz-progress-bar{background-color:#0a0a0a}.progress.is-black::-ms-fill{background-color:#0a0a0a}.progress.is-black:indeterminate{background-image:linear-gradient(to right,#0a0a0a 30%,#ededed 30%)}.progress.is-light::-webkit-progress-value{background-color:#f5f5f5}.progress.is-light::-moz-progress-bar{background-color:#f5f5f5}.progress.is-light::-ms-fill{background-color:#f5f5f5}.progress.is-light:indeterminate{background-image:linear-gradient(to right,#f5f5f5 30%,#ededed 30%)}.progress.is-dark::-webkit-progress-value{background-color:#363636}.progress.is-dark::-moz-progress-bar{background-color:#363636}.progress.is-dark::-ms-fill{background-color:#363636}.progress.is-dark:indeterminate{background-image:linear-gradient(to right,#363636 30%,#ededed 30%)}.progress.is-primary::-webkit-progress-value{background-color:#00d1b2}.progress.is-primary::-moz-progress-bar{background-color:#00d1b2}.progress.is-primary::-ms-fill{background-color:#00d1b2}.progress.is-primary:indeterminate{background-image:linear-gradient(to right,#00d1b2 30%,#ededed 30%)}.progress.is-link::-webkit-progress-value{background-color:#3273dc}.progress.is-link::-moz-progress-bar{background-color:#3273dc}.progress.is-link::-ms-fill{background-color:#3273dc}.progress.is-link:indeterminate{background-image:linear-gradient(to right,#3273dc 30%,#ededed 30%)}.progress.is-info::-webkit-progress-value{background-color:#3298dc}.progress.is-info::-moz-progress-bar{background-color:#3298dc}.progress.is-info::-ms-fill{background-color:#3298dc}.progress.is-info:indeterminate{background-image:linear-gradient(to right,#3298dc 30%,#ededed 30%)}.progress.is-success::-webkit-progress-value{background-color:#48c774}.progress.is-success::-moz-progress-bar{background-color:#48c774}.progress.is-success::-ms-fill{background-color:#48c774}.progress.is-success:indeterminate{background-image:linear-gradient(to right,#48c774 30%,#ededed 30%)}.progress.is-warning::-webkit-progress-value{background-color:#ffdd57}.progress.is-warning::-moz-progress-bar{background-color:#ffdd57}.progress.is-warning::-ms-fill{background-color:#ffdd57}.progress.is-warning:indeterminate{background-image:linear-gradient(to right,#ffdd57 30%,#ededed 30%)}.progress.is-danger::-webkit-progress-value{background-color:#f14668}.progress.is-danger::-moz-progress-bar{background-color:#f14668}.progress.is-danger::-ms-fill{background-color:#f14668}.progress.is-danger:indeterminate{background-image:linear-gradient(to right,#f14668 30%,#ededed 30%)}.progress:indeterminate{-webkit-animation-duration:1.5s;animation-duration:1.5s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-name:moveIndeterminate;animation-name:moveIndeterminate;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-color:#ededed;background-image:linear-gradient(to right,#4a4a4a 30%,#ededed 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}.progress:indeterminate::-webkit-progress-bar{background-color:transparent}.progress:indeterminate::-moz-progress-bar{background-color:transparent}.progress.is-small{height:.75rem}.progress.is-medium{height:1.25rem}.progress.is-large{height:1.5rem}@-webkit-keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}.table{background-color:#fff;color:#363636}.table td,.table th{border:1px solid #dbdbdb;border-width:0 0 1px;padding:.5em .75em;vertical-align:top}.table td.is-white,.table th.is-white{background-color:#fff;border-color:#fff;color:#0a0a0a}.table td.is-black,.table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.table td.is-light,.table th.is-light{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,.7)}.table td.is-dark,.table th.is-dark{background-color:#363636;border-color:#363636;color:#fff}.table td.is-primary,.table th.is-primary{background-color:#00d1b2;border-color:#00d1b2;color:#fff}.table td.is-link,.table th.is-link{background-color:#3273dc;border-color:#3273dc;color:#fff}.table td.is-info,.table th.is-info{background-color:#3298dc;border-color:#3298dc;color:#fff}.table td.is-success,.table th.is-success{background-color:#48c774;border-color:#48c774;color:#fff}.table td.is-warning,.table th.is-warning{background-color:#ffdd57;border-color:#ffdd57;color:rgba(0,0,0,.7)}.table td.is-danger,.table th.is-danger{background-color:#f14668;border-color:#f14668;color:#fff}.table td.is-narrow,.table th.is-narrow{white-space:nowrap;width:1%}.table td.is-selected,.table th.is-selected{background-color:#00d1b2;color:#fff}.table td.is-selected a,.table td.is-selected strong,.table th.is-selected a,.table th.is-selected strong{color:currentColor}.table th{color:#363636}.table th:not([align]){text-align:left}.table tr.is-selected{background-color:#00d1b2;color:#fff}.table tr.is-selected a,.table tr.is-selected strong{color:currentColor}.table tr.is-selected td,.table tr.is-selected th{border-color:#fff;color:currentColor}.table thead{background-color:transparent}.table thead td,.table thead th{border-width:0 0 2px;color:#363636}.table tfoot{background-color:transparent}.table tfoot td,.table tfoot th{border-width:2px 0 0;color:#363636}.table tbody{background-color:transparent}.table tbody tr:last-child td,.table tbody tr:last-child th{border-bottom-width:0}.table.is-bordered td,.table.is-bordered th{border-width:1px}.table.is-bordered tr:last-child td,.table.is-bordered tr:last-child th{border-bottom-width:1px}.table.is-fullwidth{width:100%}.table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#f5f5f5}.table.is-narrow td,.table.is-narrow th{padding:.25em .5em}.table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#fafafa}.table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}.tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.tags .tag{margin-bottom:.5rem}.tags .tag:not(:last-child){margin-right:.5rem}.tags:last-child{margin-bottom:-.5rem}.tags:not(:last-child){margin-bottom:1rem}.tags.are-medium .tag:not(.is-normal):not(.is-large){font-size:1rem}.tags.are-large .tag:not(.is-normal):not(.is-medium){font-size:1.25rem}.tags.is-centered{justify-content:center}.tags.is-centered .tag{margin-right:.25rem;margin-left:.25rem}.tags.is-right{justify-content:flex-end}.tags.is-right .tag:not(:first-child){margin-left:.5rem}.tags.is-right .tag:not(:last-child){margin-right:0}.tags.has-addons .tag{margin-right:0}.tags.has-addons .tag:not(:first-child){margin-left:0;border-bottom-left-radius:0;border-top-left-radius:0}.tags.has-addons .tag:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.tag:not(body){align-items:center;background-color:#f5f5f5;border-radius:4px;color:#4a4a4a;display:inline-flex;font-size:.75rem;height:2em;justify-content:center;line-height:1.5;padding-left:.75em;padding-right:.75em;white-space:nowrap}.tag:not(body) .delete{margin-left:.25rem;margin-right:-.375rem}.tag:not(body).is-white{background-color:#fff;color:#0a0a0a}.tag:not(body).is-black{background-color:#0a0a0a;color:#fff}.tag:not(body).is-light{background-color:#f5f5f5;color:rgba(0,0,0,.7)}.tag:not(body).is-dark{background-color:#363636;color:#fff}.tag:not(body).is-primary{background-color:#00d1b2;color:#fff}.tag:not(body).is-primary.is-light{background-color:#ebfffc;color:#00947e}.tag:not(body).is-link{background-color:#3273dc;color:#fff}.tag:not(body).is-link.is-light{background-color:#eef3fc;color:#2160c4}.tag:not(body).is-info{background-color:#3298dc;color:#fff}.tag:not(body).is-info.is-light{background-color:#eef6fc;color:#1d72aa}.tag:not(body).is-success{background-color:#48c774;color:#fff}.tag:not(body).is-success.is-light{background-color:#effaf3;color:#257942}.tag:not(body).is-warning{background-color:#ffdd57;color:rgba(0,0,0,.7)}.tag:not(body).is-warning.is-light{background-color:#fffbeb;color:#947600}.tag:not(body).is-danger{background-color:#f14668;color:#fff}.tag:not(body).is-danger.is-light{background-color:#feecf0;color:#cc0f35}.tag:not(body).is-normal{font-size:.75rem}.tag:not(body).is-medium{font-size:1rem}.tag:not(body).is-large{font-size:1.25rem}.tag:not(body) .icon:first-child:not(:last-child){margin-left:-.375em;margin-right:.1875em}.tag:not(body) .icon:last-child:not(:first-child){margin-left:.1875em;margin-right:-.375em}.tag:not(body) .icon:first-child:last-child{margin-left:-.375em;margin-right:-.375em}.tag:not(body).is-delete{margin-left:1px;padding:0;position:relative;width:2em}.tag:not(body).is-delete::after,.tag:not(body).is-delete::before{background-color:currentColor;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.tag:not(body).is-delete::before{height:1px;width:50%}.tag:not(body).is-delete::after{height:50%;width:1px}.tag:not(body).is-delete:focus,.tag:not(body).is-delete:hover{background-color:#e8e8e8}.tag:not(body).is-delete:active{background-color:#dbdbdb}.tag:not(body).is-rounded{border-radius:290486px}a.tag:hover{text-decoration:underline}.subtitle,.title{word-break:break-word}.subtitle em,.subtitle span,.title em,.title span{font-weight:inherit}.subtitle sub,.title sub{font-size:.75em}.subtitle sup,.title sup{font-size:.75em}.subtitle .tag,.title .tag{vertical-align:middle}.title{color:#363636;font-size:2rem;font-weight:600;line-height:1.125}.title strong{color:inherit;font-weight:inherit}.title+.highlight{margin-top:-.75rem}.title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}.title.is-1{font-size:3rem}.title.is-2{font-size:2.5rem}.title.is-3{font-size:2rem}.title.is-4{font-size:1.5rem}.title.is-5{font-size:1.25rem}.title.is-6{font-size:1rem}.title.is-7{font-size:.75rem}.subtitle{color:#4a4a4a;font-size:1.25rem;font-weight:400;line-height:1.25}.subtitle strong{color:#363636;font-weight:600}.subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}.subtitle.is-1{font-size:3rem}.subtitle.is-2{font-size:2.5rem}.subtitle.is-3{font-size:2rem}.subtitle.is-4{font-size:1.5rem}.subtitle.is-5{font-size:1.25rem}.subtitle.is-6{font-size:1rem}.subtitle.is-7{font-size:.75rem}.heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.highlight{font-weight:400;max-width:100%;overflow:hidden;padding:0}.highlight pre{overflow:auto;max-width:100%}.number{align-items:center;background-color:#f5f5f5;border-radius:290486px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:.25rem .5rem;text-align:center;vertical-align:top}.input,.select select,.textarea{background-color:#fff;border-color:#dbdbdb;border-radius:4px;color:#363636}.input::-moz-placeholder,.select select::-moz-placeholder,.textarea::-moz-placeholder{color:rgba(54,54,54,.3)}.input::-webkit-input-placeholder,.select select::-webkit-input-placeholder,.textarea::-webkit-input-placeholder{color:rgba(54,54,54,.3)}.input:-moz-placeholder,.select select:-moz-placeholder,.textarea:-moz-placeholder{color:rgba(54,54,54,.3)}.input:-ms-input-placeholder,.select select:-ms-input-placeholder,.textarea:-ms-input-placeholder{color:rgba(54,54,54,.3)}.input:hover,.is-hovered.input,.is-hovered.textarea,.select select.is-hovered,.select select:hover,.textarea:hover{border-color:#b5b5b5}.input:active,.input:focus,.is-active.input,.is-active.textarea,.is-focused.input,.is-focused.textarea,.select select.is-active,.select select.is-focused,.select select:active,.select select:focus,.textarea:active,.textarea:focus{border-color:#3273dc;box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.input[disabled],.select fieldset[disabled] select,.select select[disabled],.textarea[disabled],fieldset[disabled] .input,fieldset[disabled] .select select,fieldset[disabled] .textarea{background-color:#f5f5f5;border-color:#f5f5f5;box-shadow:none;color:#7a7a7a}.input[disabled]::-moz-placeholder,.select fieldset[disabled] select::-moz-placeholder,.select select[disabled]::-moz-placeholder,.textarea[disabled]::-moz-placeholder,fieldset[disabled] .input::-moz-placeholder,fieldset[disabled] .select select::-moz-placeholder,fieldset[disabled] .textarea::-moz-placeholder{color:rgba(122,122,122,.3)}.input[disabled]::-webkit-input-placeholder,.select fieldset[disabled] select::-webkit-input-placeholder,.select select[disabled]::-webkit-input-placeholder,.textarea[disabled]::-webkit-input-placeholder,fieldset[disabled] .input::-webkit-input-placeholder,fieldset[disabled] .select select::-webkit-input-placeholder,fieldset[disabled] .textarea::-webkit-input-placeholder{color:rgba(122,122,122,.3)}.input[disabled]:-moz-placeholder,.select fieldset[disabled] select:-moz-placeholder,.select select[disabled]:-moz-placeholder,.textarea[disabled]:-moz-placeholder,fieldset[disabled] .input:-moz-placeholder,fieldset[disabled] .select select:-moz-placeholder,fieldset[disabled] .textarea:-moz-placeholder{color:rgba(122,122,122,.3)}.input[disabled]:-ms-input-placeholder,.select fieldset[disabled] select:-ms-input-placeholder,.select select[disabled]:-ms-input-placeholder,.textarea[disabled]:-ms-input-placeholder,fieldset[disabled] .input:-ms-input-placeholder,fieldset[disabled] .select select:-ms-input-placeholder,fieldset[disabled] .textarea:-ms-input-placeholder{color:rgba(122,122,122,.3)}.input,.textarea{box-shadow:inset 0 .0625em .125em rgba(10,10,10,.05);max-width:100%;width:100%}.input[readonly],.textarea[readonly]{box-shadow:none}.is-white.input,.is-white.textarea{border-color:#fff}.is-white.input:active,.is-white.input:focus,.is-white.is-active.input,.is-white.is-active.textarea,.is-white.is-focused.input,.is-white.is-focused.textarea,.is-white.textarea:active,.is-white.textarea:focus{box-shadow:0 0 0 .125em rgba(255,255,255,.25)}.is-black.input,.is-black.textarea{border-color:#0a0a0a}.is-black.input:active,.is-black.input:focus,.is-black.is-active.input,.is-black.is-active.textarea,.is-black.is-focused.input,.is-black.is-focused.textarea,.is-black.textarea:active,.is-black.textarea:focus{box-shadow:0 0 0 .125em rgba(10,10,10,.25)}.is-light.input,.is-light.textarea{border-color:#f5f5f5}.is-light.input:active,.is-light.input:focus,.is-light.is-active.input,.is-light.is-active.textarea,.is-light.is-focused.input,.is-light.is-focused.textarea,.is-light.textarea:active,.is-light.textarea:focus{box-shadow:0 0 0 .125em rgba(245,245,245,.25)}.is-dark.input,.is-dark.textarea{border-color:#363636}.is-dark.input:active,.is-dark.input:focus,.is-dark.is-active.input,.is-dark.is-active.textarea,.is-dark.is-focused.input,.is-dark.is-focused.textarea,.is-dark.textarea:active,.is-dark.textarea:focus{box-shadow:0 0 0 .125em rgba(54,54,54,.25)}.is-primary.input,.is-primary.textarea{border-color:#00d1b2}.is-primary.input:active,.is-primary.input:focus,.is-primary.is-active.input,.is-primary.is-active.textarea,.is-primary.is-focused.input,.is-primary.is-focused.textarea,.is-primary.textarea:active,.is-primary.textarea:focus{box-shadow:0 0 0 .125em rgba(0,209,178,.25)}.is-link.input,.is-link.textarea{border-color:#3273dc}.is-link.input:active,.is-link.input:focus,.is-link.is-active.input,.is-link.is-active.textarea,.is-link.is-focused.input,.is-link.is-focused.textarea,.is-link.textarea:active,.is-link.textarea:focus{box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.is-info.input,.is-info.textarea{border-color:#3298dc}.is-info.input:active,.is-info.input:focus,.is-info.is-active.input,.is-info.is-active.textarea,.is-info.is-focused.input,.is-info.is-focused.textarea,.is-info.textarea:active,.is-info.textarea:focus{box-shadow:0 0 0 .125em rgba(50,152,220,.25)}.is-success.input,.is-success.textarea{border-color:#48c774}.is-success.input:active,.is-success.input:focus,.is-success.is-active.input,.is-success.is-active.textarea,.is-success.is-focused.input,.is-success.is-focused.textarea,.is-success.textarea:active,.is-success.textarea:focus{box-shadow:0 0 0 .125em rgba(72,199,116,.25)}.is-warning.input,.is-warning.textarea{border-color:#ffdd57}.is-warning.input:active,.is-warning.input:focus,.is-warning.is-active.input,.is-warning.is-active.textarea,.is-warning.is-focused.input,.is-warning.is-focused.textarea,.is-warning.textarea:active,.is-warning.textarea:focus{box-shadow:0 0 0 .125em rgba(255,221,87,.25)}.is-danger.input,.is-danger.textarea{border-color:#f14668}.is-danger.input:active,.is-danger.input:focus,.is-danger.is-active.input,.is-danger.is-active.textarea,.is-danger.is-focused.input,.is-danger.is-focused.textarea,.is-danger.textarea:active,.is-danger.textarea:focus{box-shadow:0 0 0 .125em rgba(241,70,104,.25)}.is-small.input,.is-small.textarea{border-radius:2px;font-size:.75rem}.is-medium.input,.is-medium.textarea{font-size:1.25rem}.is-large.input,.is-large.textarea{font-size:1.5rem}.is-fullwidth.input,.is-fullwidth.textarea{display:block;width:100%}.is-inline.input,.is-inline.textarea{display:inline;width:auto}.input.is-rounded{border-radius:290486px;padding-left:calc(calc(.75em - 1px) + .375em);padding-right:calc(calc(.75em - 1px) + .375em)}.input.is-static{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}.textarea{display:block;max-width:100%;min-width:100%;padding:calc(.75em - 1px);resize:vertical}.textarea:not([rows]){max-height:40em;min-height:8em}.textarea[rows]{height:initial}.textarea.has-fixed-size{resize:none}.checkbox,.radio{cursor:pointer;display:inline-block;line-height:1.25;position:relative}.checkbox input,.radio input{cursor:pointer}.checkbox:hover,.radio:hover{color:#363636}.checkbox[disabled],.radio[disabled],fieldset[disabled] .checkbox,fieldset[disabled] .radio{color:#7a7a7a;cursor:not-allowed}.radio+.radio{margin-left:.5em}.select{display:inline-block;max-width:100%;position:relative;vertical-align:top}.select:not(.is-multiple){height:2.5em}.select:not(.is-multiple):not(.is-loading)::after{border-color:#3273dc;right:1.125em;z-index:4}.select.is-rounded select{border-radius:290486px;padding-left:1em}.select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:0}.select select::-ms-expand{display:none}.select select[disabled]:hover,fieldset[disabled] .select select:hover{border-color:#f5f5f5}.select select:not([multiple]){padding-right:2.5em}.select select[multiple]{height:auto;padding:0}.select select[multiple] option{padding:.5em 1em}.select:not(.is-multiple):not(.is-loading):hover::after{border-color:#363636}.select.is-white:not(:hover)::after{border-color:#fff}.select.is-white select{border-color:#fff}.select.is-white select.is-hovered,.select.is-white select:hover{border-color:#f2f2f2}.select.is-white select.is-active,.select.is-white select.is-focused,.select.is-white select:active,.select.is-white select:focus{box-shadow:0 0 0 .125em rgba(255,255,255,.25)}.select.is-black:not(:hover)::after{border-color:#0a0a0a}.select.is-black select{border-color:#0a0a0a}.select.is-black select.is-hovered,.select.is-black select:hover{border-color:#000}.select.is-black select.is-active,.select.is-black select.is-focused,.select.is-black select:active,.select.is-black select:focus{box-shadow:0 0 0 .125em rgba(10,10,10,.25)}.select.is-light:not(:hover)::after{border-color:#f5f5f5}.select.is-light select{border-color:#f5f5f5}.select.is-light select.is-hovered,.select.is-light select:hover{border-color:#e8e8e8}.select.is-light select.is-active,.select.is-light select.is-focused,.select.is-light select:active,.select.is-light select:focus{box-shadow:0 0 0 .125em rgba(245,245,245,.25)}.select.is-dark:not(:hover)::after{border-color:#363636}.select.is-dark select{border-color:#363636}.select.is-dark select.is-hovered,.select.is-dark select:hover{border-color:#292929}.select.is-dark select.is-active,.select.is-dark select.is-focused,.select.is-dark select:active,.select.is-dark select:focus{box-shadow:0 0 0 .125em rgba(54,54,54,.25)}.select.is-primary:not(:hover)::after{border-color:#00d1b2}.select.is-primary select{border-color:#00d1b2}.select.is-primary select.is-hovered,.select.is-primary select:hover{border-color:#00b89c}.select.is-primary select.is-active,.select.is-primary select.is-focused,.select.is-primary select:active,.select.is-primary select:focus{box-shadow:0 0 0 .125em rgba(0,209,178,.25)}.select.is-link:not(:hover)::after{border-color:#3273dc}.select.is-link select{border-color:#3273dc}.select.is-link select.is-hovered,.select.is-link select:hover{border-color:#2366d1}.select.is-link select.is-active,.select.is-link select.is-focused,.select.is-link select:active,.select.is-link select:focus{box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.select.is-info:not(:hover)::after{border-color:#3298dc}.select.is-info select{border-color:#3298dc}.select.is-info select.is-hovered,.select.is-info select:hover{border-color:#238cd1}.select.is-info select.is-active,.select.is-info select.is-focused,.select.is-info select:active,.select.is-info select:focus{box-shadow:0 0 0 .125em rgba(50,152,220,.25)}.select.is-success:not(:hover)::after{border-color:#48c774}.select.is-success select{border-color:#48c774}.select.is-success select.is-hovered,.select.is-success select:hover{border-color:#3abb67}.select.is-success select.is-active,.select.is-success select.is-focused,.select.is-success select:active,.select.is-success select:focus{box-shadow:0 0 0 .125em rgba(72,199,116,.25)}.select.is-warning:not(:hover)::after{border-color:#ffdd57}.select.is-warning select{border-color:#ffdd57}.select.is-warning select.is-hovered,.select.is-warning select:hover{border-color:#ffd83d}.select.is-warning select.is-active,.select.is-warning select.is-focused,.select.is-warning select:active,.select.is-warning select:focus{box-shadow:0 0 0 .125em rgba(255,221,87,.25)}.select.is-danger:not(:hover)::after{border-color:#f14668}.select.is-danger select{border-color:#f14668}.select.is-danger select.is-hovered,.select.is-danger select:hover{border-color:#ef2e55}.select.is-danger select.is-active,.select.is-danger select.is-focused,.select.is-danger select:active,.select.is-danger select:focus{box-shadow:0 0 0 .125em rgba(241,70,104,.25)}.select.is-small{border-radius:2px;font-size:.75rem}.select.is-medium{font-size:1.25rem}.select.is-large{font-size:1.5rem}.select.is-disabled::after{border-color:#7a7a7a}.select.is-fullwidth{width:100%}.select.is-fullwidth select{width:100%}.select.is-loading::after{margin-top:0;position:absolute;right:.625em;top:.625em;transform:none}.select.is-loading.is-small:after{font-size:.75rem}.select.is-loading.is-medium:after{font-size:1.25rem}.select.is-loading.is-large:after{font-size:1.5rem}.file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}.file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}.file.is-white.is-hovered .file-cta,.file.is-white:hover .file-cta{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.file.is-white.is-focused .file-cta,.file.is-white:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(255,255,255,.25);color:#0a0a0a}.file.is-white.is-active .file-cta,.file.is-white:active .file-cta{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.file.is-black .file-cta{background-color:#0a0a0a;border-color:transparent;color:#fff}.file.is-black.is-hovered .file-cta,.file.is-black:hover .file-cta{background-color:#040404;border-color:transparent;color:#fff}.file.is-black.is-focused .file-cta,.file.is-black:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(10,10,10,.25);color:#fff}.file.is-black.is-active .file-cta,.file.is-black:active .file-cta{background-color:#000;border-color:transparent;color:#fff}.file.is-light .file-cta{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,.7)}.file.is-light.is-hovered .file-cta,.file.is-light:hover .file-cta{background-color:#eee;border-color:transparent;color:rgba(0,0,0,.7)}.file.is-light.is-focused .file-cta,.file.is-light:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(245,245,245,.25);color:rgba(0,0,0,.7)}.file.is-light.is-active .file-cta,.file.is-light:active .file-cta{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,.7)}.file.is-dark .file-cta{background-color:#363636;border-color:transparent;color:#fff}.file.is-dark.is-hovered .file-cta,.file.is-dark:hover .file-cta{background-color:#2f2f2f;border-color:transparent;color:#fff}.file.is-dark.is-focused .file-cta,.file.is-dark:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(54,54,54,.25);color:#fff}.file.is-dark.is-active .file-cta,.file.is-dark:active .file-cta{background-color:#292929;border-color:transparent;color:#fff}.file.is-primary .file-cta{background-color:#00d1b2;border-color:transparent;color:#fff}.file.is-primary.is-hovered .file-cta,.file.is-primary:hover .file-cta{background-color:#00c4a7;border-color:transparent;color:#fff}.file.is-primary.is-focused .file-cta,.file.is-primary:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(0,209,178,.25);color:#fff}.file.is-primary.is-active .file-cta,.file.is-primary:active .file-cta{background-color:#00b89c;border-color:transparent;color:#fff}.file.is-link .file-cta{background-color:#3273dc;border-color:transparent;color:#fff}.file.is-link.is-hovered .file-cta,.file.is-link:hover .file-cta{background-color:#276cda;border-color:transparent;color:#fff}.file.is-link.is-focused .file-cta,.file.is-link:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(50,115,220,.25);color:#fff}.file.is-link.is-active .file-cta,.file.is-link:active .file-cta{background-color:#2366d1;border-color:transparent;color:#fff}.file.is-info .file-cta{background-color:#3298dc;border-color:transparent;color:#fff}.file.is-info.is-hovered .file-cta,.file.is-info:hover .file-cta{background-color:#2793da;border-color:transparent;color:#fff}.file.is-info.is-focused .file-cta,.file.is-info:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(50,152,220,.25);color:#fff}.file.is-info.is-active .file-cta,.file.is-info:active .file-cta{background-color:#238cd1;border-color:transparent;color:#fff}.file.is-success .file-cta{background-color:#48c774;border-color:transparent;color:#fff}.file.is-success.is-hovered .file-cta,.file.is-success:hover .file-cta{background-color:#3ec46d;border-color:transparent;color:#fff}.file.is-success.is-focused .file-cta,.file.is-success:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(72,199,116,.25);color:#fff}.file.is-success.is-active .file-cta,.file.is-success:active .file-cta{background-color:#3abb67;border-color:transparent;color:#fff}.file.is-warning .file-cta{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,.7)}.file.is-warning.is-hovered .file-cta,.file.is-warning:hover .file-cta{background-color:#ffdb4a;border-color:transparent;color:rgba(0,0,0,.7)}.file.is-warning.is-focused .file-cta,.file.is-warning:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(255,221,87,.25);color:rgba(0,0,0,.7)}.file.is-warning.is-active .file-cta,.file.is-warning:active .file-cta{background-color:#ffd83d;border-color:transparent;color:rgba(0,0,0,.7)}.file.is-danger .file-cta{background-color:#f14668;border-color:transparent;color:#fff}.file.is-danger.is-hovered .file-cta,.file.is-danger:hover .file-cta{background-color:#f03a5f;border-color:transparent;color:#fff}.file.is-danger.is-focused .file-cta,.file.is-danger:focus .file-cta{border-color:transparent;box-shadow:0 0 .5em rgba(241,70,104,.25);color:#fff}.file.is-danger.is-active .file-cta,.file.is-danger:active .file-cta{background-color:#ef2e55;border-color:transparent;color:#fff}.file.is-small{font-size:.75rem}.file.is-medium{font-size:1.25rem}.file.is-medium .file-icon .fa{font-size:21px}.file.is-large{font-size:1.5rem}.file.is-large .file-icon .fa{font-size:28px}.file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}.file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}.file.has-name.is-empty .file-cta{border-radius:4px}.file.has-name.is-empty .file-name{display:none}.file.is-boxed .file-label{flex-direction:column}.file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}.file.is-boxed .file-name{border-width:0 1px 1px}.file.is-boxed .file-icon{height:1.5em;width:1.5em}.file.is-boxed .file-icon .fa{font-size:21px}.file.is-boxed.is-small .file-icon .fa{font-size:14px}.file.is-boxed.is-medium .file-icon .fa{font-size:28px}.file.is-boxed.is-large .file-icon .fa{font-size:35px}.file.is-boxed.has-name .file-cta{border-radius:4px 4px 0 0}.file.is-boxed.has-name .file-name{border-radius:0 0 4px 4px;border-width:0 1px 1px}.file.is-centered{justify-content:center}.file.is-fullwidth .file-label{width:100%}.file.is-fullwidth .file-name{flex-grow:1;max-width:none}.file.is-right{justify-content:flex-end}.file.is-right .file-cta{border-radius:0 4px 4px 0}.file.is-right .file-name{border-radius:4px 0 0 4px;border-width:1px 0 1px 1px;order:-1}.file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}.file-label:hover .file-cta{background-color:#eee;color:#363636}.file-label:hover .file-name{border-color:#d5d5d5}.file-label:active .file-cta{background-color:#e8e8e8;color:#363636}.file-label:active .file-name{border-color:#cfcfcf}.file-input{height:100%;left:0;opacity:0;outline:0;position:absolute;top:0;width:100%}.file-cta,.file-name{border-color:#dbdbdb;border-radius:4px;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}.file-cta{background-color:#f5f5f5;color:#4a4a4a}.file-name{border-color:#dbdbdb;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:left;text-overflow:ellipsis}.file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}.file-icon .fa{font-size:14px}.label{color:#363636;display:block;font-size:1rem;font-weight:700}.label:not(:last-child){margin-bottom:.5em}.label.is-small{font-size:.75rem}.label.is-medium{font-size:1.25rem}.label.is-large{font-size:1.5rem}.help{display:block;font-size:.75rem;margin-top:.25rem}.help.is-white{color:#fff}.help.is-black{color:#0a0a0a}.help.is-light{color:#f5f5f5}.help.is-dark{color:#363636}.help.is-primary{color:#00d1b2}.help.is-link{color:#3273dc}.help.is-info{color:#3298dc}.help.is-success{color:#48c774}.help.is-warning{color:#ffdd57}.help.is-danger{color:#f14668}.field:not(:last-child){margin-bottom:.75rem}.field.has-addons{display:flex;justify-content:flex-start}.field.has-addons .control:not(:last-child){margin-right:-1px}.field.has-addons .control:not(:first-child):not(:last-child) .button,.field.has-addons .control:not(:first-child):not(:last-child) .input,.field.has-addons .control:not(:first-child):not(:last-child) .select select{border-radius:0}.field.has-addons .control:first-child:not(:only-child) .button,.field.has-addons .control:first-child:not(:only-child) .input,.field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}.field.has-addons .control:last-child:not(:only-child) .button,.field.has-addons .control:last-child:not(:only-child) .input,.field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}.field.has-addons .control .button:not([disabled]).is-hovered,.field.has-addons .control .button:not([disabled]):hover,.field.has-addons .control .input:not([disabled]).is-hovered,.field.has-addons .control .input:not([disabled]):hover,.field.has-addons .control .select select:not([disabled]).is-hovered,.field.has-addons .control .select select:not([disabled]):hover{z-index:2}.field.has-addons .control .button:not([disabled]).is-active,.field.has-addons .control .button:not([disabled]).is-focused,.field.has-addons .control .button:not([disabled]):active,.field.has-addons .control .button:not([disabled]):focus,.field.has-addons .control .input:not([disabled]).is-active,.field.has-addons .control .input:not([disabled]).is-focused,.field.has-addons .control .input:not([disabled]):active,.field.has-addons .control .input:not([disabled]):focus,.field.has-addons .control .select select:not([disabled]).is-active,.field.has-addons .control .select select:not([disabled]).is-focused,.field.has-addons .control .select select:not([disabled]):active,.field.has-addons .control .select select:not([disabled]):focus{z-index:3}.field.has-addons .control .button:not([disabled]).is-active:hover,.field.has-addons .control .button:not([disabled]).is-focused:hover,.field.has-addons .control .button:not([disabled]):active:hover,.field.has-addons .control .button:not([disabled]):focus:hover,.field.has-addons .control .input:not([disabled]).is-active:hover,.field.has-addons .control .input:not([disabled]).is-focused:hover,.field.has-addons .control .input:not([disabled]):active:hover,.field.has-addons .control .input:not([disabled]):focus:hover,.field.has-addons .control .select select:not([disabled]).is-active:hover,.field.has-addons .control .select select:not([disabled]).is-focused:hover,.field.has-addons .control .select select:not([disabled]):active:hover,.field.has-addons .control .select select:not([disabled]):focus:hover{z-index:4}.field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}.field.has-addons.has-addons-centered{justify-content:center}.field.has-addons.has-addons-right{justify-content:flex-end}.field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}.field.is-grouped{display:flex;justify-content:flex-start}.field.is-grouped>.control{flex-shrink:0}.field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:.75rem}.field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}.field.is-grouped.is-grouped-centered{justify-content:center}.field.is-grouped.is-grouped-right{justify-content:flex-end}.field.is-grouped.is-grouped-multiline{flex-wrap:wrap}.field.is-grouped.is-grouped-multiline>.control:last-child,.field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:.75rem}.field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-.75rem}.field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width:769px),print{.field.is-horizontal{display:flex}}.field-label .label{font-size:inherit}@media screen and (max-width:768px){.field-label{margin-bottom:.5rem}}@media screen and (min-width:769px),print{.field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}.field-label.is-small{font-size:.75rem;padding-top:.375em}.field-label.is-normal{padding-top:.375em}.field-label.is-medium{font-size:1.25rem;padding-top:.375em}.field-label.is-large{font-size:1.5rem;padding-top:.375em}}.field-body .field .field{margin-bottom:0}@media screen and (min-width:769px),print{.field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}.field-body .field{margin-bottom:0}.field-body>.field{flex-shrink:1}.field-body>.field:not(.is-narrow){flex-grow:1}.field-body>.field:not(:last-child){margin-right:.75rem}}.control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:left}.control.has-icons-left .input:focus~.icon,.control.has-icons-left .select:focus~.icon,.control.has-icons-right .input:focus~.icon,.control.has-icons-right .select:focus~.icon{color:#4a4a4a}.control.has-icons-left .input.is-small~.icon,.control.has-icons-left .select.is-small~.icon,.control.has-icons-right .input.is-small~.icon,.control.has-icons-right .select.is-small~.icon{font-size:.75rem}.control.has-icons-left .input.is-medium~.icon,.control.has-icons-left .select.is-medium~.icon,.control.has-icons-right .input.is-medium~.icon,.control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}.control.has-icons-left .input.is-large~.icon,.control.has-icons-left .select.is-large~.icon,.control.has-icons-right .input.is-large~.icon,.control.has-icons-right .select.is-large~.icon{font-size:1.5rem}.control.has-icons-left .icon,.control.has-icons-right .icon{color:#dbdbdb;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}.control.has-icons-left .input,.control.has-icons-left .select select{padding-left:2.5em}.control.has-icons-left .icon.is-left{left:0}.control.has-icons-right .input,.control.has-icons-right .select select{padding-right:2.5em}.control.has-icons-right .icon.is-right{right:0}.control.is-loading::after{position:absolute!important;right:.625em;top:.625em;z-index:4}.control.is-loading.is-small:after{font-size:.75rem}.control.is-loading.is-medium:after{font-size:1.25rem}.control.is-loading.is-large:after{font-size:1.5rem}.breadcrumb{font-size:1rem;white-space:nowrap}.breadcrumb a{align-items:center;color:#3273dc;display:flex;justify-content:center;padding:0 .75em}.breadcrumb a:hover{color:#363636}.breadcrumb li{align-items:center;display:flex}.breadcrumb li:first-child a{padding-left:0}.breadcrumb li.is-active a{color:#363636;cursor:default;pointer-events:none}.breadcrumb li+li::before{color:#b5b5b5;content:"\0002f"}.breadcrumb ol,.breadcrumb ul{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}.breadcrumb .icon:first-child{margin-right:.5em}.breadcrumb .icon:last-child{margin-left:.5em}.breadcrumb.is-centered ol,.breadcrumb.is-centered ul{justify-content:center}.breadcrumb.is-right ol,.breadcrumb.is-right ul{justify-content:flex-end}.breadcrumb.is-small{font-size:.75rem}.breadcrumb.is-medium{font-size:1.25rem}.breadcrumb.is-large{font-size:1.5rem}.breadcrumb.has-arrow-separator li+li::before{content:"\02192"}.breadcrumb.has-bullet-separator li+li::before{content:"\02022"}.breadcrumb.has-dot-separator li+li::before{content:"\000b7"}.breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}.card{background-color:#fff;box-shadow:0 .5em 1em -.125em rgba(10,10,10,.1),0 0 0 1px rgba(10,10,10,.02);color:#4a4a4a;max-width:100%;position:relative}.card-header{background-color:transparent;align-items:stretch;box-shadow:0 .125em .25em rgba(10,10,10,.1);display:flex}.card-header-title{align-items:center;color:#363636;display:flex;flex-grow:1;font-weight:700;padding:.75rem 1rem}.card-header-title.is-centered{justify-content:center}.card-header-icon{align-items:center;cursor:pointer;display:flex;justify-content:center;padding:.75rem 1rem}.card-image{display:block;position:relative}.card-content{background-color:transparent;padding:1.5rem}.card-footer{background-color:transparent;border-top:1px solid #ededed;align-items:stretch;display:flex}.card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}.card-footer-item:not(:last-child){border-right:1px solid #ededed}.card .media:not(:last-child){margin-bottom:1.5rem}.dropdown{display:inline-flex;position:relative;vertical-align:top}.dropdown.is-active .dropdown-menu,.dropdown.is-hoverable:hover .dropdown-menu{display:block}.dropdown.is-right .dropdown-menu{left:auto;right:0}.dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}.dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}.dropdown-content{background-color:#fff;border-radius:4px;box-shadow:0 .5em 1em -.125em rgba(10,10,10,.1),0 0 0 1px rgba(10,10,10,.02);padding-bottom:.5rem;padding-top:.5rem}.dropdown-item{color:#4a4a4a;display:block;font-size:.875rem;line-height:1.5;padding:.375rem 1rem;position:relative}a.dropdown-item,button.dropdown-item{padding-right:3rem;text-align:left;white-space:nowrap;width:100%}a.dropdown-item:hover,button.dropdown-item:hover{background-color:#f5f5f5;color:#0a0a0a}a.dropdown-item.is-active,button.dropdown-item.is-active{background-color:#3273dc;color:#fff}.dropdown-divider{background-color:#ededed;border:none;display:block;height:1px;margin:.5rem 0}.level{align-items:center;justify-content:space-between}.level code{border-radius:4px}.level img{display:inline-block;vertical-align:top}.level.is-mobile{display:flex}.level.is-mobile .level-left,.level.is-mobile .level-right{display:flex}.level.is-mobile .level-left+.level-right{margin-top:0}.level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.75rem}.level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width:769px),print{.level{display:flex}.level>.level-item:not(.is-narrow){flex-grow:1}}.level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}.level-item .subtitle,.level-item .title{margin-bottom:0}@media screen and (max-width:768px){.level-item:not(:last-child){margin-bottom:.75rem}}.level-left,.level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.level-left .level-item.is-flexible,.level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width:769px),print{.level-left .level-item:not(:last-child),.level-right .level-item:not(:last-child){margin-right:.75rem}}.level-left{align-items:center;justify-content:flex-start}@media screen and (max-width:768px){.level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width:769px),print{.level-left{display:flex}}.level-right{align-items:center;justify-content:flex-end}@media screen and (min-width:769px),print{.level-right{display:flex}}.list{background-color:#fff;border-radius:4px;box-shadow:0 2px 3px rgba(10,10,10,.1),0 0 0 1px rgba(10,10,10,.1)}.list-item{display:block;padding:.5em 1em}.list-item:not(a){color:#4a4a4a}.list-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-item:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.list-item:not(:last-child){border-bottom:1px solid #dbdbdb}.list-item.is-active{background-color:#3273dc;color:#fff}a.list-item{background-color:#f5f5f5;cursor:pointer}.media{align-items:flex-start;display:flex;text-align:left}.media .content:not(:last-child){margin-bottom:.75rem}.media .media{border-top:1px solid rgba(219,219,219,.5);display:flex;padding-top:.75rem}.media .media .content:not(:last-child),.media .media .control:not(:last-child){margin-bottom:.5rem}.media .media .media{padding-top:.5rem}.media .media .media+.media{margin-top:.5rem}.media+.media{border-top:1px solid rgba(219,219,219,.5);margin-top:1rem;padding-top:1rem}.media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}.media-left,.media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.media-left{margin-right:1rem}.media-right{margin-left:1rem}.media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:left}@media screen and (max-width:768px){.media-content{overflow-x:auto}}.menu{font-size:1rem}.menu.is-small{font-size:.75rem}.menu.is-medium{font-size:1.25rem}.menu.is-large{font-size:1.5rem}.menu-list{line-height:1.25}.menu-list a{border-radius:2px;color:#4a4a4a;display:block;padding:.5em .75em}.menu-list a:hover{background-color:#f5f5f5;color:#363636}.menu-list a.is-active{background-color:#3273dc;color:#fff}.menu-list li ul{border-left:1px solid #dbdbdb;margin:.75em;padding-left:.75em}.menu-label{color:#7a7a7a;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}.menu-label:not(:first-child){margin-top:1em}.menu-label:not(:last-child){margin-bottom:1em}.message{background-color:#f5f5f5;border-radius:4px;font-size:1rem}.message strong{color:currentColor}.message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}.message.is-small{font-size:.75rem}.message.is-medium{font-size:1.25rem}.message.is-large{font-size:1.5rem}.message.is-white{background-color:#fff}.message.is-white .message-header{background-color:#fff;color:#0a0a0a}.message.is-white .message-body{border-color:#fff}.message.is-black{background-color:#fafafa}.message.is-black .message-header{background-color:#0a0a0a;color:#fff}.message.is-black .message-body{border-color:#0a0a0a}.message.is-light{background-color:#fafafa}.message.is-light .message-header{background-color:#f5f5f5;color:rgba(0,0,0,.7)}.message.is-light .message-body{border-color:#f5f5f5}.message.is-dark{background-color:#fafafa}.message.is-dark .message-header{background-color:#363636;color:#fff}.message.is-dark .message-body{border-color:#363636}.message.is-primary{background-color:#ebfffc}.message.is-primary .message-header{background-color:#00d1b2;color:#fff}.message.is-primary .message-body{border-color:#00d1b2;color:#00947e}.message.is-link{background-color:#eef3fc}.message.is-link .message-header{background-color:#3273dc;color:#fff}.message.is-link .message-body{border-color:#3273dc;color:#2160c4}.message.is-info{background-color:#eef6fc}.message.is-info .message-header{background-color:#3298dc;color:#fff}.message.is-info .message-body{border-color:#3298dc;color:#1d72aa}.message.is-success{background-color:#effaf3}.message.is-success .message-header{background-color:#48c774;color:#fff}.message.is-success .message-body{border-color:#48c774;color:#257942}.message.is-warning{background-color:#fffbeb}.message.is-warning .message-header{background-color:#ffdd57;color:rgba(0,0,0,.7)}.message.is-warning .message-body{border-color:#ffdd57;color:#947600}.message.is-danger{background-color:#feecf0}.message.is-danger .message-header{background-color:#f14668;color:#fff}.message.is-danger .message-body{border-color:#f14668;color:#cc0f35}.message-header{align-items:center;background-color:#4a4a4a;border-radius:4px 4px 0 0;color:#fff;display:flex;font-weight:700;justify-content:space-between;line-height:1.25;padding:.75em 1em;position:relative}.message-header .delete{flex-grow:0;flex-shrink:0;margin-left:.75em}.message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}.message-body{border-color:#dbdbdb;border-radius:4px;border-style:solid;border-width:0 0 0 4px;color:#4a4a4a;padding:1.25em 1.5em}.message-body code,.message-body pre{background-color:#fff}.message-body pre code{background-color:transparent}.modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:40}.modal.is-active{display:flex}.modal-background{background-color:rgba(10,10,10,.86)}.modal-card,.modal-content{margin:0 20px;max-height:calc(100vh - 160px);overflow:auto;position:relative;width:100%}@media screen and (min-width:769px),print{.modal-card,.modal-content{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}.modal-close{background:0 0;height:40px;position:fixed;right:20px;top:20px;width:40px}.modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}.modal-card-foot,.modal-card-head{align-items:center;background-color:#f5f5f5;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}.modal-card-head{border-bottom:1px solid #dbdbdb;border-top-left-radius:6px;border-top-right-radius:6px}.modal-card-title{color:#363636;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}.modal-card-foot{border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:1px solid #dbdbdb}.modal-card-foot .button:not(:last-child){margin-right:.5em}.modal-card-body{-webkit-overflow-scrolling:touch;background-color:#fff;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}.navbar{background-color:#fff;min-height:3.25rem;position:relative;z-index:30}.navbar.is-white{background-color:#fff;color:#0a0a0a}.navbar.is-white .navbar-brand .navbar-link,.navbar.is-white .navbar-brand>.navbar-item{color:#0a0a0a}.navbar.is-white .navbar-brand .navbar-link.is-active,.navbar.is-white .navbar-brand .navbar-link:focus,.navbar.is-white .navbar-brand .navbar-link:hover,.navbar.is-white .navbar-brand>a.navbar-item.is-active,.navbar.is-white .navbar-brand>a.navbar-item:focus,.navbar.is-white .navbar-brand>a.navbar-item:hover{background-color:#f2f2f2;color:#0a0a0a}.navbar.is-white .navbar-brand .navbar-link::after{border-color:#0a0a0a}.navbar.is-white .navbar-burger{color:#0a0a0a}@media screen and (min-width:1024px){.navbar.is-white .navbar-end .navbar-link,.navbar.is-white .navbar-end>.navbar-item,.navbar.is-white .navbar-start .navbar-link,.navbar.is-white .navbar-start>.navbar-item{color:#0a0a0a}.navbar.is-white .navbar-end .navbar-link.is-active,.navbar.is-white .navbar-end .navbar-link:focus,.navbar.is-white .navbar-end .navbar-link:hover,.navbar.is-white .navbar-end>a.navbar-item.is-active,.navbar.is-white .navbar-end>a.navbar-item:focus,.navbar.is-white .navbar-end>a.navbar-item:hover,.navbar.is-white .navbar-start .navbar-link.is-active,.navbar.is-white .navbar-start .navbar-link:focus,.navbar.is-white .navbar-start .navbar-link:hover,.navbar.is-white .navbar-start>a.navbar-item.is-active,.navbar.is-white .navbar-start>a.navbar-item:focus,.navbar.is-white .navbar-start>a.navbar-item:hover{background-color:#f2f2f2;color:#0a0a0a}.navbar.is-white .navbar-end .navbar-link::after,.navbar.is-white .navbar-start .navbar-link::after{border-color:#0a0a0a}.navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-white .navbar-item.has-dropdown:hover .navbar-link{background-color:#f2f2f2;color:#0a0a0a}.navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:#fff;color:#0a0a0a}}.navbar.is-black{background-color:#0a0a0a;color:#fff}.navbar.is-black .navbar-brand .navbar-link,.navbar.is-black .navbar-brand>.navbar-item{color:#fff}.navbar.is-black .navbar-brand .navbar-link.is-active,.navbar.is-black .navbar-brand .navbar-link:focus,.navbar.is-black .navbar-brand .navbar-link:hover,.navbar.is-black .navbar-brand>a.navbar-item.is-active,.navbar.is-black .navbar-brand>a.navbar-item:focus,.navbar.is-black .navbar-brand>a.navbar-item:hover{background-color:#000;color:#fff}.navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width:1024px){.navbar.is-black .navbar-end .navbar-link,.navbar.is-black .navbar-end>.navbar-item,.navbar.is-black .navbar-start .navbar-link,.navbar.is-black .navbar-start>.navbar-item{color:#fff}.navbar.is-black .navbar-end .navbar-link.is-active,.navbar.is-black .navbar-end .navbar-link:focus,.navbar.is-black .navbar-end .navbar-link:hover,.navbar.is-black .navbar-end>a.navbar-item.is-active,.navbar.is-black .navbar-end>a.navbar-item:focus,.navbar.is-black .navbar-end>a.navbar-item:hover,.navbar.is-black .navbar-start .navbar-link.is-active,.navbar.is-black .navbar-start .navbar-link:focus,.navbar.is-black .navbar-start .navbar-link:hover,.navbar.is-black .navbar-start>a.navbar-item.is-active,.navbar.is-black .navbar-start>a.navbar-item:focus,.navbar.is-black .navbar-start>a.navbar-item:hover{background-color:#000;color:#fff}.navbar.is-black .navbar-end .navbar-link::after,.navbar.is-black .navbar-start .navbar-link::after{border-color:#fff}.navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-black .navbar-item.has-dropdown:hover .navbar-link{background-color:#000;color:#fff}.navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}.navbar.is-light{background-color:#f5f5f5;color:rgba(0,0,0,.7)}.navbar.is-light .navbar-brand .navbar-link,.navbar.is-light .navbar-brand>.navbar-item{color:rgba(0,0,0,.7)}.navbar.is-light .navbar-brand .navbar-link.is-active,.navbar.is-light .navbar-brand .navbar-link:focus,.navbar.is-light .navbar-brand .navbar-link:hover,.navbar.is-light .navbar-brand>a.navbar-item.is-active,.navbar.is-light .navbar-brand>a.navbar-item:focus,.navbar.is-light .navbar-brand>a.navbar-item:hover{background-color:#e8e8e8;color:rgba(0,0,0,.7)}.navbar.is-light .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,.7)}.navbar.is-light .navbar-burger{color:rgba(0,0,0,.7)}@media screen and (min-width:1024px){.navbar.is-light .navbar-end .navbar-link,.navbar.is-light .navbar-end>.navbar-item,.navbar.is-light .navbar-start .navbar-link,.navbar.is-light .navbar-start>.navbar-item{color:rgba(0,0,0,.7)}.navbar.is-light .navbar-end .navbar-link.is-active,.navbar.is-light .navbar-end .navbar-link:focus,.navbar.is-light .navbar-end .navbar-link:hover,.navbar.is-light .navbar-end>a.navbar-item.is-active,.navbar.is-light .navbar-end>a.navbar-item:focus,.navbar.is-light .navbar-end>a.navbar-item:hover,.navbar.is-light .navbar-start .navbar-link.is-active,.navbar.is-light .navbar-start .navbar-link:focus,.navbar.is-light .navbar-start .navbar-link:hover,.navbar.is-light .navbar-start>a.navbar-item.is-active,.navbar.is-light .navbar-start>a.navbar-item:focus,.navbar.is-light .navbar-start>a.navbar-item:hover{background-color:#e8e8e8;color:rgba(0,0,0,.7)}.navbar.is-light .navbar-end .navbar-link::after,.navbar.is-light .navbar-start .navbar-link::after{border-color:rgba(0,0,0,.7)}.navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-light .navbar-item.has-dropdown:hover .navbar-link{background-color:#e8e8e8;color:rgba(0,0,0,.7)}.navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:rgba(0,0,0,.7)}}.navbar.is-dark{background-color:#363636;color:#fff}.navbar.is-dark .navbar-brand .navbar-link,.navbar.is-dark .navbar-brand>.navbar-item{color:#fff}.navbar.is-dark .navbar-brand .navbar-link.is-active,.navbar.is-dark .navbar-brand .navbar-link:focus,.navbar.is-dark .navbar-brand .navbar-link:hover,.navbar.is-dark .navbar-brand>a.navbar-item.is-active,.navbar.is-dark .navbar-brand>a.navbar-item:focus,.navbar.is-dark .navbar-brand>a.navbar-item:hover{background-color:#292929;color:#fff}.navbar.is-dark .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-dark .navbar-burger{color:#fff}@media screen and (min-width:1024px){.navbar.is-dark .navbar-end .navbar-link,.navbar.is-dark .navbar-end>.navbar-item,.navbar.is-dark .navbar-start .navbar-link,.navbar.is-dark .navbar-start>.navbar-item{color:#fff}.navbar.is-dark .navbar-end .navbar-link.is-active,.navbar.is-dark .navbar-end .navbar-link:focus,.navbar.is-dark .navbar-end .navbar-link:hover,.navbar.is-dark .navbar-end>a.navbar-item.is-active,.navbar.is-dark .navbar-end>a.navbar-item:focus,.navbar.is-dark .navbar-end>a.navbar-item:hover,.navbar.is-dark .navbar-start .navbar-link.is-active,.navbar.is-dark .navbar-start .navbar-link:focus,.navbar.is-dark .navbar-start .navbar-link:hover,.navbar.is-dark .navbar-start>a.navbar-item.is-active,.navbar.is-dark .navbar-start>a.navbar-item:focus,.navbar.is-dark .navbar-start>a.navbar-item:hover{background-color:#292929;color:#fff}.navbar.is-dark .navbar-end .navbar-link::after,.navbar.is-dark .navbar-start .navbar-link::after{border-color:#fff}.navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link{background-color:#292929;color:#fff}.navbar.is-dark .navbar-dropdown a.navbar-item.is-active{background-color:#363636;color:#fff}}.navbar.is-primary{background-color:#00d1b2;color:#fff}.navbar.is-primary .navbar-brand .navbar-link,.navbar.is-primary .navbar-brand>.navbar-item{color:#fff}.navbar.is-primary .navbar-brand .navbar-link.is-active,.navbar.is-primary .navbar-brand .navbar-link:focus,.navbar.is-primary .navbar-brand .navbar-link:hover,.navbar.is-primary .navbar-brand>a.navbar-item.is-active,.navbar.is-primary .navbar-brand>a.navbar-item:focus,.navbar.is-primary .navbar-brand>a.navbar-item:hover{background-color:#00b89c;color:#fff}.navbar.is-primary .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-primary .navbar-burger{color:#fff}@media screen and (min-width:1024px){.navbar.is-primary .navbar-end .navbar-link,.navbar.is-primary .navbar-end>.navbar-item,.navbar.is-primary .navbar-start .navbar-link,.navbar.is-primary .navbar-start>.navbar-item{color:#fff}.navbar.is-primary .navbar-end .navbar-link.is-active,.navbar.is-primary .navbar-end .navbar-link:focus,.navbar.is-primary .navbar-end .navbar-link:hover,.navbar.is-primary .navbar-end>a.navbar-item.is-active,.navbar.is-primary .navbar-end>a.navbar-item:focus,.navbar.is-primary .navbar-end>a.navbar-item:hover,.navbar.is-primary .navbar-start .navbar-link.is-active,.navbar.is-primary .navbar-start .navbar-link:focus,.navbar.is-primary .navbar-start .navbar-link:hover,.navbar.is-primary .navbar-start>a.navbar-item.is-active,.navbar.is-primary .navbar-start>a.navbar-item:focus,.navbar.is-primary .navbar-start>a.navbar-item:hover{background-color:#00b89c;color:#fff}.navbar.is-primary .navbar-end .navbar-link::after,.navbar.is-primary .navbar-start .navbar-link::after{border-color:#fff}.navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link{background-color:#00b89c;color:#fff}.navbar.is-primary .navbar-dropdown a.navbar-item.is-active{background-color:#00d1b2;color:#fff}}.navbar.is-link{background-color:#3273dc;color:#fff}.navbar.is-link .navbar-brand .navbar-link,.navbar.is-link .navbar-brand>.navbar-item{color:#fff}.navbar.is-link .navbar-brand .navbar-link.is-active,.navbar.is-link .navbar-brand .navbar-link:focus,.navbar.is-link .navbar-brand .navbar-link:hover,.navbar.is-link .navbar-brand>a.navbar-item.is-active,.navbar.is-link .navbar-brand>a.navbar-item:focus,.navbar.is-link .navbar-brand>a.navbar-item:hover{background-color:#2366d1;color:#fff}.navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width:1024px){.navbar.is-link .navbar-end .navbar-link,.navbar.is-link .navbar-end>.navbar-item,.navbar.is-link .navbar-start .navbar-link,.navbar.is-link .navbar-start>.navbar-item{color:#fff}.navbar.is-link .navbar-end .navbar-link.is-active,.navbar.is-link .navbar-end .navbar-link:focus,.navbar.is-link .navbar-end .navbar-link:hover,.navbar.is-link .navbar-end>a.navbar-item.is-active,.navbar.is-link .navbar-end>a.navbar-item:focus,.navbar.is-link .navbar-end>a.navbar-item:hover,.navbar.is-link .navbar-start .navbar-link.is-active,.navbar.is-link .navbar-start .navbar-link:focus,.navbar.is-link .navbar-start .navbar-link:hover,.navbar.is-link .navbar-start>a.navbar-item.is-active,.navbar.is-link .navbar-start>a.navbar-item:focus,.navbar.is-link .navbar-start>a.navbar-item:hover{background-color:#2366d1;color:#fff}.navbar.is-link .navbar-end .navbar-link::after,.navbar.is-link .navbar-start .navbar-link::after{border-color:#fff}.navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-link .navbar-item.has-dropdown:hover .navbar-link{background-color:#2366d1;color:#fff}.navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#3273dc;color:#fff}}.navbar.is-info{background-color:#3298dc;color:#fff}.navbar.is-info .navbar-brand .navbar-link,.navbar.is-info .navbar-brand>.navbar-item{color:#fff}.navbar.is-info .navbar-brand .navbar-link.is-active,.navbar.is-info .navbar-brand .navbar-link:focus,.navbar.is-info .navbar-brand .navbar-link:hover,.navbar.is-info .navbar-brand>a.navbar-item.is-active,.navbar.is-info .navbar-brand>a.navbar-item:focus,.navbar.is-info .navbar-brand>a.navbar-item:hover{background-color:#238cd1;color:#fff}.navbar.is-info .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-info .navbar-burger{color:#fff}@media screen and (min-width:1024px){.navbar.is-info .navbar-end .navbar-link,.navbar.is-info .navbar-end>.navbar-item,.navbar.is-info .navbar-start .navbar-link,.navbar.is-info .navbar-start>.navbar-item{color:#fff}.navbar.is-info .navbar-end .navbar-link.is-active,.navbar.is-info .navbar-end .navbar-link:focus,.navbar.is-info .navbar-end .navbar-link:hover,.navbar.is-info .navbar-end>a.navbar-item.is-active,.navbar.is-info .navbar-end>a.navbar-item:focus,.navbar.is-info .navbar-end>a.navbar-item:hover,.navbar.is-info .navbar-start .navbar-link.is-active,.navbar.is-info .navbar-start .navbar-link:focus,.navbar.is-info .navbar-start .navbar-link:hover,.navbar.is-info .navbar-start>a.navbar-item.is-active,.navbar.is-info .navbar-start>a.navbar-item:focus,.navbar.is-info .navbar-start>a.navbar-item:hover{background-color:#238cd1;color:#fff}.navbar.is-info .navbar-end .navbar-link::after,.navbar.is-info .navbar-start .navbar-link::after{border-color:#fff}.navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-info .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-info .navbar-item.has-dropdown:hover .navbar-link{background-color:#238cd1;color:#fff}.navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#3298dc;color:#fff}}.navbar.is-success{background-color:#48c774;color:#fff}.navbar.is-success .navbar-brand .navbar-link,.navbar.is-success .navbar-brand>.navbar-item{color:#fff}.navbar.is-success .navbar-brand .navbar-link.is-active,.navbar.is-success .navbar-brand .navbar-link:focus,.navbar.is-success .navbar-brand .navbar-link:hover,.navbar.is-success .navbar-brand>a.navbar-item.is-active,.navbar.is-success .navbar-brand>a.navbar-item:focus,.navbar.is-success .navbar-brand>a.navbar-item:hover{background-color:#3abb67;color:#fff}.navbar.is-success .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-success .navbar-burger{color:#fff}@media screen and (min-width:1024px){.navbar.is-success .navbar-end .navbar-link,.navbar.is-success .navbar-end>.navbar-item,.navbar.is-success .navbar-start .navbar-link,.navbar.is-success .navbar-start>.navbar-item{color:#fff}.navbar.is-success .navbar-end .navbar-link.is-active,.navbar.is-success .navbar-end .navbar-link:focus,.navbar.is-success .navbar-end .navbar-link:hover,.navbar.is-success .navbar-end>a.navbar-item.is-active,.navbar.is-success .navbar-end>a.navbar-item:focus,.navbar.is-success .navbar-end>a.navbar-item:hover,.navbar.is-success .navbar-start .navbar-link.is-active,.navbar.is-success .navbar-start .navbar-link:focus,.navbar.is-success .navbar-start .navbar-link:hover,.navbar.is-success .navbar-start>a.navbar-item.is-active,.navbar.is-success .navbar-start>a.navbar-item:focus,.navbar.is-success .navbar-start>a.navbar-item:hover{background-color:#3abb67;color:#fff}.navbar.is-success .navbar-end .navbar-link::after,.navbar.is-success .navbar-start .navbar-link::after{border-color:#fff}.navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-success .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-success .navbar-item.has-dropdown:hover .navbar-link{background-color:#3abb67;color:#fff}.navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#48c774;color:#fff}}.navbar.is-warning{background-color:#ffdd57;color:rgba(0,0,0,.7)}.navbar.is-warning .navbar-brand .navbar-link,.navbar.is-warning .navbar-brand>.navbar-item{color:rgba(0,0,0,.7)}.navbar.is-warning .navbar-brand .navbar-link.is-active,.navbar.is-warning .navbar-brand .navbar-link:focus,.navbar.is-warning .navbar-brand .navbar-link:hover,.navbar.is-warning .navbar-brand>a.navbar-item.is-active,.navbar.is-warning .navbar-brand>a.navbar-item:focus,.navbar.is-warning .navbar-brand>a.navbar-item:hover{background-color:#ffd83d;color:rgba(0,0,0,.7)}.navbar.is-warning .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,.7)}.navbar.is-warning .navbar-burger{color:rgba(0,0,0,.7)}@media screen and (min-width:1024px){.navbar.is-warning .navbar-end .navbar-link,.navbar.is-warning .navbar-end>.navbar-item,.navbar.is-warning .navbar-start .navbar-link,.navbar.is-warning .navbar-start>.navbar-item{color:rgba(0,0,0,.7)}.navbar.is-warning .navbar-end .navbar-link.is-active,.navbar.is-warning .navbar-end .navbar-link:focus,.navbar.is-warning .navbar-end .navbar-link:hover,.navbar.is-warning .navbar-end>a.navbar-item.is-active,.navbar.is-warning .navbar-end>a.navbar-item:focus,.navbar.is-warning .navbar-end>a.navbar-item:hover,.navbar.is-warning .navbar-start .navbar-link.is-active,.navbar.is-warning .navbar-start .navbar-link:focus,.navbar.is-warning .navbar-start .navbar-link:hover,.navbar.is-warning .navbar-start>a.navbar-item.is-active,.navbar.is-warning .navbar-start>a.navbar-item:focus,.navbar.is-warning .navbar-start>a.navbar-item:hover{background-color:#ffd83d;color:rgba(0,0,0,.7)}.navbar.is-warning .navbar-end .navbar-link::after,.navbar.is-warning .navbar-start .navbar-link::after{border-color:rgba(0,0,0,.7)}.navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link{background-color:#ffd83d;color:rgba(0,0,0,.7)}.navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#ffdd57;color:rgba(0,0,0,.7)}}.navbar.is-danger{background-color:#f14668;color:#fff}.navbar.is-danger .navbar-brand .navbar-link,.navbar.is-danger .navbar-brand>.navbar-item{color:#fff}.navbar.is-danger .navbar-brand .navbar-link.is-active,.navbar.is-danger .navbar-brand .navbar-link:focus,.navbar.is-danger .navbar-brand .navbar-link:hover,.navbar.is-danger .navbar-brand>a.navbar-item.is-active,.navbar.is-danger .navbar-brand>a.navbar-item:focus,.navbar.is-danger .navbar-brand>a.navbar-item:hover{background-color:#ef2e55;color:#fff}.navbar.is-danger .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-danger .navbar-burger{color:#fff}@media screen and (min-width:1024px){.navbar.is-danger .navbar-end .navbar-link,.navbar.is-danger .navbar-end>.navbar-item,.navbar.is-danger .navbar-start .navbar-link,.navbar.is-danger .navbar-start>.navbar-item{color:#fff}.navbar.is-danger .navbar-end .navbar-link.is-active,.navbar.is-danger .navbar-end .navbar-link:focus,.navbar.is-danger .navbar-end .navbar-link:hover,.navbar.is-danger .navbar-end>a.navbar-item.is-active,.navbar.is-danger .navbar-end>a.navbar-item:focus,.navbar.is-danger .navbar-end>a.navbar-item:hover,.navbar.is-danger .navbar-start .navbar-link.is-active,.navbar.is-danger .navbar-start .navbar-link:focus,.navbar.is-danger .navbar-start .navbar-link:hover,.navbar.is-danger .navbar-start>a.navbar-item.is-active,.navbar.is-danger .navbar-start>a.navbar-item:focus,.navbar.is-danger .navbar-start>a.navbar-item:hover{background-color:#ef2e55;color:#fff}.navbar.is-danger .navbar-end .navbar-link::after,.navbar.is-danger .navbar-start .navbar-link::after{border-color:#fff}.navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link{background-color:#ef2e55;color:#fff}.navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#f14668;color:#fff}}.navbar>.container{align-items:stretch;display:flex;min-height:3.25rem;width:100%}.navbar.has-shadow{box-shadow:0 2px 0 0 #f5f5f5}.navbar.is-fixed-bottom,.navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom{bottom:0}.navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #f5f5f5}.navbar.is-fixed-top{top:0}body.has-navbar-fixed-top,html.has-navbar-fixed-top{padding-top:3.25rem}body.has-navbar-fixed-bottom,html.has-navbar-fixed-bottom{padding-bottom:3.25rem}.navbar-brand,.navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:3.25rem}.navbar-brand a.navbar-item:focus,.navbar-brand a.navbar-item:hover{background-color:transparent}.navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}.navbar-burger{color:#4a4a4a;cursor:pointer;display:block;height:3.25rem;position:relative;width:3.25rem;margin-left:auto}.navbar-burger span{background-color:currentColor;display:block;height:1px;left:calc(50% - 8px);position:absolute;transform-origin:center;transition-duration:86ms;transition-property:background-color,opacity,transform;transition-timing-function:ease-out;width:16px}.navbar-burger span:nth-child(1){top:calc(50% - 6px)}.navbar-burger span:nth-child(2){top:calc(50% - 1px)}.navbar-burger span:nth-child(3){top:calc(50% + 4px)}.navbar-burger:hover{background-color:rgba(0,0,0,.05)}.navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}.navbar-burger.is-active span:nth-child(2){opacity:0}.navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}.navbar-menu{display:none}.navbar-item,.navbar-link{color:#4a4a4a;display:block;line-height:1.5;padding:.5rem .75rem;position:relative}.navbar-item .icon:only-child,.navbar-link .icon:only-child{margin-left:-.25rem;margin-right:-.25rem}.navbar-link,a.navbar-item{cursor:pointer}.navbar-link.is-active,.navbar-link:focus,.navbar-link:focus-within,.navbar-link:hover,a.navbar-item.is-active,a.navbar-item:focus,a.navbar-item:focus-within,a.navbar-item:hover{background-color:#fafafa;color:#3273dc}.navbar-item{display:block;flex-grow:0;flex-shrink:0}.navbar-item img{max-height:1.75rem}.navbar-item.has-dropdown{padding:0}.navbar-item.is-expanded{flex-grow:1;flex-shrink:1}.navbar-item.is-tab{border-bottom:1px solid transparent;min-height:3.25rem;padding-bottom:calc(.5rem - 1px)}.navbar-item.is-tab:focus,.navbar-item.is-tab:hover{background-color:transparent;border-bottom-color:#3273dc}.navbar-item.is-tab.is-active{background-color:transparent;border-bottom-color:#3273dc;border-bottom-style:solid;border-bottom-width:3px;color:#3273dc;padding-bottom:calc(.5rem - 3px)}.navbar-content{flex-grow:1;flex-shrink:1}.navbar-link:not(.is-arrowless){padding-right:2.5em}.navbar-link:not(.is-arrowless)::after{border-color:#3273dc;margin-top:-.375em;right:1.125em}.navbar-dropdown{font-size:.875rem;padding-bottom:.5rem;padding-top:.5rem}.navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}.navbar-divider{background-color:#f5f5f5;border:none;display:none;height:2px;margin:.5rem 0}@media screen and (max-width:1023px){.navbar>.container{display:block}.navbar-brand .navbar-item,.navbar-tabs .navbar-item{align-items:center;display:flex}.navbar-link::after{display:none}.navbar-menu{background-color:#fff;box-shadow:0 8px 16px rgba(10,10,10,.1);padding:.5rem 0}.navbar-menu.is-active{display:block}.navbar.is-fixed-bottom-touch,.navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom-touch{bottom:0}.navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,.1)}.navbar.is-fixed-top-touch{top:0}.navbar.is-fixed-top .navbar-menu,.navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 3.25rem);overflow:auto}body.has-navbar-fixed-top-touch,html.has-navbar-fixed-top-touch{padding-top:3.25rem}body.has-navbar-fixed-bottom-touch,html.has-navbar-fixed-bottom-touch{padding-bottom:3.25rem}}@media screen and (min-width:1024px){.navbar,.navbar-end,.navbar-menu,.navbar-start{align-items:stretch;display:flex}.navbar{min-height:3.25rem}.navbar.is-spaced{padding:1rem 2rem}.navbar.is-spaced .navbar-end,.navbar.is-spaced .navbar-start{align-items:center}.navbar.is-spaced .navbar-link,.navbar.is-spaced a.navbar-item{border-radius:4px}.navbar.is-transparent .navbar-link.is-active,.navbar.is-transparent .navbar-link:focus,.navbar.is-transparent .navbar-link:hover,.navbar.is-transparent a.navbar-item.is-active,.navbar.is-transparent a.navbar-item:focus,.navbar.is-transparent a.navbar-item:hover{background-color:transparent!important}.navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent!important}.navbar.is-transparent .navbar-dropdown a.navbar-item:focus,.navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:#f5f5f5;color:#0a0a0a}.navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:#3273dc}.navbar-burger{display:none}.navbar-item,.navbar-link{align-items:center;display:flex}.navbar-item{display:flex}.navbar-item.has-dropdown{align-items:stretch}.navbar-item.has-dropdown-up .navbar-link::after{transform:rotate(135deg) translate(.25em,-.25em)}.navbar-item.has-dropdown-up .navbar-dropdown{border-bottom:2px solid #dbdbdb;border-radius:6px 6px 0 0;border-top:none;bottom:100%;box-shadow:0 -8px 8px rgba(10,10,10,.1);top:auto}.navbar-item.is-active .navbar-dropdown,.navbar-item.is-hoverable:focus .navbar-dropdown,.navbar-item.is-hoverable:focus-within .navbar-dropdown,.navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar-item.is-active .navbar-dropdown.is-boxed,.navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-active .navbar-dropdown,.navbar.is-spaced .navbar-item.is-hoverable:focus .navbar-dropdown,.navbar.is-spaced .navbar-item.is-hoverable:focus-within .navbar-dropdown,.navbar.is-spaced .navbar-item.is-hoverable:hover .navbar-dropdown{opacity:1;pointer-events:auto;transform:translateY(0)}.navbar-menu{flex-grow:1;flex-shrink:0}.navbar-start{justify-content:flex-start;margin-right:auto}.navbar-end{justify-content:flex-end;margin-left:auto}.navbar-dropdown{background-color:#fff;border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:2px solid #dbdbdb;box-shadow:0 8px 8px rgba(10,10,10,.1);display:none;font-size:.875rem;left:0;min-width:100%;position:absolute;top:100%;z-index:20}.navbar-dropdown .navbar-item{padding:.375rem 1rem;white-space:nowrap}.navbar-dropdown a.navbar-item{padding-right:3rem}.navbar-dropdown a.navbar-item:focus,.navbar-dropdown a.navbar-item:hover{background-color:#f5f5f5;color:#0a0a0a}.navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:#3273dc}.navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-dropdown{border-radius:6px;border-top:none;box-shadow:0 8px 8px rgba(10,10,10,.1),0 0 0 1px rgba(10,10,10,.1);display:block;opacity:0;pointer-events:none;top:calc(100% + (-4px));transform:translateY(-5px);transition-duration:86ms;transition-property:opacity,transform}.navbar-dropdown.is-right{left:auto;right:0}.navbar-divider{display:block}.container>.navbar .navbar-brand,.navbar>.container .navbar-brand{margin-left:-.75rem}.container>.navbar .navbar-menu,.navbar>.container .navbar-menu{margin-right:-.75rem}.navbar.is-fixed-bottom-desktop,.navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom-desktop{bottom:0}.navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,.1)}.navbar.is-fixed-top-desktop{top:0}body.has-navbar-fixed-top-desktop,html.has-navbar-fixed-top-desktop{padding-top:3.25rem}body.has-navbar-fixed-bottom-desktop,html.has-navbar-fixed-bottom-desktop{padding-bottom:3.25rem}body.has-spaced-navbar-fixed-top,html.has-spaced-navbar-fixed-top{padding-top:5.25rem}body.has-spaced-navbar-fixed-bottom,html.has-spaced-navbar-fixed-bottom{padding-bottom:5.25rem}.navbar-link.is-active,a.navbar-item.is-active{color:#0a0a0a}.navbar-link.is-active:not(:focus):not(:hover),a.navbar-item.is-active:not(:focus):not(:hover){background-color:transparent}.navbar-item.has-dropdown.is-active .navbar-link,.navbar-item.has-dropdown:focus .navbar-link,.navbar-item.has-dropdown:hover .navbar-link{background-color:#fafafa}}.hero.is-fullheight-with-navbar{min-height:calc(100vh - 3.25rem)}.pagination{font-size:1rem;margin:-.25rem}.pagination.is-small{font-size:.75rem}.pagination.is-medium{font-size:1.25rem}.pagination.is-large{font-size:1.5rem}.pagination.is-rounded .pagination-next,.pagination.is-rounded .pagination-previous{padding-left:1em;padding-right:1em;border-radius:290486px}.pagination.is-rounded .pagination-link{border-radius:290486px}.pagination,.pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}.pagination-ellipsis,.pagination-link,.pagination-next,.pagination-previous{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}.pagination-link,.pagination-next,.pagination-previous{border-color:#dbdbdb;color:#363636;min-width:2.5em}.pagination-link:hover,.pagination-next:hover,.pagination-previous:hover{border-color:#b5b5b5;color:#363636}.pagination-link:focus,.pagination-next:focus,.pagination-previous:focus{border-color:#3273dc}.pagination-link:active,.pagination-next:active,.pagination-previous:active{box-shadow:inset 0 1px 2px rgba(10,10,10,.2)}.pagination-link[disabled],.pagination-next[disabled],.pagination-previous[disabled]{background-color:#dbdbdb;border-color:#dbdbdb;box-shadow:none;color:#7a7a7a;opacity:.5}.pagination-next,.pagination-previous{padding-left:.75em;padding-right:.75em;white-space:nowrap}.pagination-link.is-current{background-color:#3273dc;border-color:#3273dc;color:#fff}.pagination-ellipsis{color:#b5b5b5;pointer-events:none}.pagination-list{flex-wrap:wrap}@media screen and (max-width:768px){.pagination{flex-wrap:wrap}.pagination-next,.pagination-previous{flex-grow:1;flex-shrink:1}.pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width:769px),print{.pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}.pagination-previous{order:2}.pagination-next{order:3}.pagination{justify-content:space-between}.pagination.is-centered .pagination-previous{order:1}.pagination.is-centered .pagination-list{justify-content:center;order:2}.pagination.is-centered .pagination-next{order:3}.pagination.is-right .pagination-previous{order:1}.pagination.is-right .pagination-next{order:2}.pagination.is-right .pagination-list{justify-content:flex-end;order:3}}.panel{border-radius:6px;box-shadow:0 .5em 1em -.125em rgba(10,10,10,.1),0 0 0 1px rgba(10,10,10,.02);font-size:1rem}.panel:not(:last-child){margin-bottom:1.5rem}.panel.is-white .panel-heading{background-color:#fff;color:#0a0a0a}.panel.is-white .panel-tabs a.is-active{border-bottom-color:#fff}.panel.is-white .panel-block.is-active .panel-icon{color:#fff}.panel.is-black .panel-heading{background-color:#0a0a0a;color:#fff}.panel.is-black .panel-tabs a.is-active{border-bottom-color:#0a0a0a}.panel.is-black .panel-block.is-active .panel-icon{color:#0a0a0a}.panel.is-light .panel-heading{background-color:#f5f5f5;color:rgba(0,0,0,.7)}.panel.is-light .panel-tabs a.is-active{border-bottom-color:#f5f5f5}.panel.is-light .panel-block.is-active .panel-icon{color:#f5f5f5}.panel.is-dark .panel-heading{background-color:#363636;color:#fff}.panel.is-dark .panel-tabs a.is-active{border-bottom-color:#363636}.panel.is-dark .panel-block.is-active .panel-icon{color:#363636}.panel.is-primary .panel-heading{background-color:#00d1b2;color:#fff}.panel.is-primary .panel-tabs a.is-active{border-bottom-color:#00d1b2}.panel.is-primary .panel-block.is-active .panel-icon{color:#00d1b2}.panel.is-link .panel-heading{background-color:#3273dc;color:#fff}.panel.is-link .panel-tabs a.is-active{border-bottom-color:#3273dc}.panel.is-link .panel-block.is-active .panel-icon{color:#3273dc}.panel.is-info .panel-heading{background-color:#3298dc;color:#fff}.panel.is-info .panel-tabs a.is-active{border-bottom-color:#3298dc}.panel.is-info .panel-block.is-active .panel-icon{color:#3298dc}.panel.is-success .panel-heading{background-color:#48c774;color:#fff}.panel.is-success .panel-tabs a.is-active{border-bottom-color:#48c774}.panel.is-success .panel-block.is-active .panel-icon{color:#48c774}.panel.is-warning .panel-heading{background-color:#ffdd57;color:rgba(0,0,0,.7)}.panel.is-warning .panel-tabs a.is-active{border-bottom-color:#ffdd57}.panel.is-warning .panel-block.is-active .panel-icon{color:#ffdd57}.panel.is-danger .panel-heading{background-color:#f14668;color:#fff}.panel.is-danger .panel-tabs a.is-active{border-bottom-color:#f14668}.panel.is-danger .panel-block.is-active .panel-icon{color:#f14668}.panel-block:not(:last-child),.panel-tabs:not(:last-child){border-bottom:1px solid #ededed}.panel-heading{background-color:#ededed;border-radius:6px 6px 0 0;color:#363636;font-size:1.25em;font-weight:700;line-height:1.25;padding:.75em 1em}.panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}.panel-tabs a{border-bottom:1px solid #dbdbdb;margin-bottom:-1px;padding:.5em}.panel-tabs a.is-active{border-bottom-color:#4a4a4a;color:#363636}.panel-list a{color:#4a4a4a}.panel-list a:hover{color:#3273dc}.panel-block{align-items:center;color:#363636;display:flex;justify-content:flex-start;padding:.5em .75em}.panel-block input[type=checkbox]{margin-right:.75em}.panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}.panel-block.is-wrapped{flex-wrap:wrap}.panel-block.is-active{border-left-color:#3273dc;color:#363636}.panel-block.is-active .panel-icon{color:#3273dc}.panel-block:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}a.panel-block,label.panel-block{cursor:pointer}a.panel-block:hover,label.panel-block:hover{background-color:#f5f5f5}.panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#7a7a7a;margin-right:.75em}.panel-icon .fa{font-size:inherit;line-height:inherit}.tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}.tabs a{align-items:center;border-bottom-color:#dbdbdb;border-bottom-style:solid;border-bottom-width:1px;color:#4a4a4a;display:flex;justify-content:center;margin-bottom:-1px;padding:.5em 1em;vertical-align:top}.tabs a:hover{border-bottom-color:#363636;color:#363636}.tabs li{display:block}.tabs li.is-active a{border-bottom-color:#3273dc;color:#3273dc}.tabs ul{align-items:center;border-bottom-color:#dbdbdb;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}.tabs ul.is-left{padding-right:.75em}.tabs ul.is-center{flex:none;justify-content:center;padding-left:.75em;padding-right:.75em}.tabs ul.is-right{justify-content:flex-end;padding-left:.75em}.tabs .icon:first-child{margin-right:.5em}.tabs .icon:last-child{margin-left:.5em}.tabs.is-centered ul{justify-content:center}.tabs.is-right ul{justify-content:flex-end}.tabs.is-boxed a{border:1px solid transparent;border-radius:4px 4px 0 0}.tabs.is-boxed a:hover{background-color:#f5f5f5;border-bottom-color:#dbdbdb}.tabs.is-boxed li.is-active a{background-color:#fff;border-color:#dbdbdb;border-bottom-color:transparent!important}.tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}.tabs.is-toggle a{border-color:#dbdbdb;border-style:solid;border-width:1px;margin-bottom:0;position:relative}.tabs.is-toggle a:hover{background-color:#f5f5f5;border-color:#b5b5b5;z-index:2}.tabs.is-toggle li+li{margin-left:-1px}.tabs.is-toggle li:first-child a{border-radius:4px 0 0 4px}.tabs.is-toggle li:last-child a{border-radius:0 4px 4px 0}.tabs.is-toggle li.is-active a{background-color:#3273dc;border-color:#3273dc;color:#fff;z-index:1}.tabs.is-toggle ul{border-bottom:none}.tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:290486px;border-top-left-radius:290486px;padding-left:1.25em}.tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:290486px;border-top-right-radius:290486px;padding-right:1.25em}.tabs.is-small{font-size:.75rem}.tabs.is-medium{font-size:1.25rem}.tabs.is-large{font-size:1.5rem}.column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>.column.is-narrow{flex:none}.columns.is-mobile>.column.is-full{flex:none;width:100%}.columns.is-mobile>.column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>.column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>.column.is-half{flex:none;width:50%}.columns.is-mobile>.column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>.column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>.column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>.column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>.column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>.column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>.column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>.column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>.column.is-offset-half{margin-left:50%}.columns.is-mobile>.column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>.column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>.column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>.column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>.column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>.column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>.column.is-0{flex:none;width:0%}.columns.is-mobile>.column.is-offset-0{margin-left:0}.columns.is-mobile>.column.is-1{flex:none;width:8.33333%}.columns.is-mobile>.column.is-offset-1{margin-left:8.33333%}.columns.is-mobile>.column.is-2{flex:none;width:16.66667%}.columns.is-mobile>.column.is-offset-2{margin-left:16.66667%}.columns.is-mobile>.column.is-3{flex:none;width:25%}.columns.is-mobile>.column.is-offset-3{margin-left:25%}.columns.is-mobile>.column.is-4{flex:none;width:33.33333%}.columns.is-mobile>.column.is-offset-4{margin-left:33.33333%}.columns.is-mobile>.column.is-5{flex:none;width:41.66667%}.columns.is-mobile>.column.is-offset-5{margin-left:41.66667%}.columns.is-mobile>.column.is-6{flex:none;width:50%}.columns.is-mobile>.column.is-offset-6{margin-left:50%}.columns.is-mobile>.column.is-7{flex:none;width:58.33333%}.columns.is-mobile>.column.is-offset-7{margin-left:58.33333%}.columns.is-mobile>.column.is-8{flex:none;width:66.66667%}.columns.is-mobile>.column.is-offset-8{margin-left:66.66667%}.columns.is-mobile>.column.is-9{flex:none;width:75%}.columns.is-mobile>.column.is-offset-9{margin-left:75%}.columns.is-mobile>.column.is-10{flex:none;width:83.33333%}.columns.is-mobile>.column.is-offset-10{margin-left:83.33333%}.columns.is-mobile>.column.is-11{flex:none;width:91.66667%}.columns.is-mobile>.column.is-offset-11{margin-left:91.66667%}.columns.is-mobile>.column.is-12{flex:none;width:100%}.columns.is-mobile>.column.is-offset-12{margin-left:100%}@media screen and (max-width:768px){.column.is-narrow-mobile{flex:none}.column.is-full-mobile{flex:none;width:100%}.column.is-three-quarters-mobile{flex:none;width:75%}.column.is-two-thirds-mobile{flex:none;width:66.6666%}.column.is-half-mobile{flex:none;width:50%}.column.is-one-third-mobile{flex:none;width:33.3333%}.column.is-one-quarter-mobile{flex:none;width:25%}.column.is-one-fifth-mobile{flex:none;width:20%}.column.is-two-fifths-mobile{flex:none;width:40%}.column.is-three-fifths-mobile{flex:none;width:60%}.column.is-four-fifths-mobile{flex:none;width:80%}.column.is-offset-three-quarters-mobile{margin-left:75%}.column.is-offset-two-thirds-mobile{margin-left:66.6666%}.column.is-offset-half-mobile{margin-left:50%}.column.is-offset-one-third-mobile{margin-left:33.3333%}.column.is-offset-one-quarter-mobile{margin-left:25%}.column.is-offset-one-fifth-mobile{margin-left:20%}.column.is-offset-two-fifths-mobile{margin-left:40%}.column.is-offset-three-fifths-mobile{margin-left:60%}.column.is-offset-four-fifths-mobile{margin-left:80%}.column.is-0-mobile{flex:none;width:0%}.column.is-offset-0-mobile{margin-left:0}.column.is-1-mobile{flex:none;width:8.33333%}.column.is-offset-1-mobile{margin-left:8.33333%}.column.is-2-mobile{flex:none;width:16.66667%}.column.is-offset-2-mobile{margin-left:16.66667%}.column.is-3-mobile{flex:none;width:25%}.column.is-offset-3-mobile{margin-left:25%}.column.is-4-mobile{flex:none;width:33.33333%}.column.is-offset-4-mobile{margin-left:33.33333%}.column.is-5-mobile{flex:none;width:41.66667%}.column.is-offset-5-mobile{margin-left:41.66667%}.column.is-6-mobile{flex:none;width:50%}.column.is-offset-6-mobile{margin-left:50%}.column.is-7-mobile{flex:none;width:58.33333%}.column.is-offset-7-mobile{margin-left:58.33333%}.column.is-8-mobile{flex:none;width:66.66667%}.column.is-offset-8-mobile{margin-left:66.66667%}.column.is-9-mobile{flex:none;width:75%}.column.is-offset-9-mobile{margin-left:75%}.column.is-10-mobile{flex:none;width:83.33333%}.column.is-offset-10-mobile{margin-left:83.33333%}.column.is-11-mobile{flex:none;width:91.66667%}.column.is-offset-11-mobile{margin-left:91.66667%}.column.is-12-mobile{flex:none;width:100%}.column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width:769px),print{.column.is-narrow,.column.is-narrow-tablet{flex:none}.column.is-full,.column.is-full-tablet{flex:none;width:100%}.column.is-three-quarters,.column.is-three-quarters-tablet{flex:none;width:75%}.column.is-two-thirds,.column.is-two-thirds-tablet{flex:none;width:66.6666%}.column.is-half,.column.is-half-tablet{flex:none;width:50%}.column.is-one-third,.column.is-one-third-tablet{flex:none;width:33.3333%}.column.is-one-quarter,.column.is-one-quarter-tablet{flex:none;width:25%}.column.is-one-fifth,.column.is-one-fifth-tablet{flex:none;width:20%}.column.is-two-fifths,.column.is-two-fifths-tablet{flex:none;width:40%}.column.is-three-fifths,.column.is-three-fifths-tablet{flex:none;width:60%}.column.is-four-fifths,.column.is-four-fifths-tablet{flex:none;width:80%}.column.is-offset-three-quarters,.column.is-offset-three-quarters-tablet{margin-left:75%}.column.is-offset-two-thirds,.column.is-offset-two-thirds-tablet{margin-left:66.6666%}.column.is-offset-half,.column.is-offset-half-tablet{margin-left:50%}.column.is-offset-one-third,.column.is-offset-one-third-tablet{margin-left:33.3333%}.column.is-offset-one-quarter,.column.is-offset-one-quarter-tablet{margin-left:25%}.column.is-offset-one-fifth,.column.is-offset-one-fifth-tablet{margin-left:20%}.column.is-offset-two-fifths,.column.is-offset-two-fifths-tablet{margin-left:40%}.column.is-offset-three-fifths,.column.is-offset-three-fifths-tablet{margin-left:60%}.column.is-offset-four-fifths,.column.is-offset-four-fifths-tablet{margin-left:80%}.column.is-0,.column.is-0-tablet{flex:none;width:0%}.column.is-offset-0,.column.is-offset-0-tablet{margin-left:0}.column.is-1,.column.is-1-tablet{flex:none;width:8.33333%}.column.is-offset-1,.column.is-offset-1-tablet{margin-left:8.33333%}.column.is-2,.column.is-2-tablet{flex:none;width:16.66667%}.column.is-offset-2,.column.is-offset-2-tablet{margin-left:16.66667%}.column.is-3,.column.is-3-tablet{flex:none;width:25%}.column.is-offset-3,.column.is-offset-3-tablet{margin-left:25%}.column.is-4,.column.is-4-tablet{flex:none;width:33.33333%}.column.is-offset-4,.column.is-offset-4-tablet{margin-left:33.33333%}.column.is-5,.column.is-5-tablet{flex:none;width:41.66667%}.column.is-offset-5,.column.is-offset-5-tablet{margin-left:41.66667%}.column.is-6,.column.is-6-tablet{flex:none;width:50%}.column.is-offset-6,.column.is-offset-6-tablet{margin-left:50%}.column.is-7,.column.is-7-tablet{flex:none;width:58.33333%}.column.is-offset-7,.column.is-offset-7-tablet{margin-left:58.33333%}.column.is-8,.column.is-8-tablet{flex:none;width:66.66667%}.column.is-offset-8,.column.is-offset-8-tablet{margin-left:66.66667%}.column.is-9,.column.is-9-tablet{flex:none;width:75%}.column.is-offset-9,.column.is-offset-9-tablet{margin-left:75%}.column.is-10,.column.is-10-tablet{flex:none;width:83.33333%}.column.is-offset-10,.column.is-offset-10-tablet{margin-left:83.33333%}.column.is-11,.column.is-11-tablet{flex:none;width:91.66667%}.column.is-offset-11,.column.is-offset-11-tablet{margin-left:91.66667%}.column.is-12,.column.is-12-tablet{flex:none;width:100%}.column.is-offset-12,.column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width:1023px){.column.is-narrow-touch{flex:none}.column.is-full-touch{flex:none;width:100%}.column.is-three-quarters-touch{flex:none;width:75%}.column.is-two-thirds-touch{flex:none;width:66.6666%}.column.is-half-touch{flex:none;width:50%}.column.is-one-third-touch{flex:none;width:33.3333%}.column.is-one-quarter-touch{flex:none;width:25%}.column.is-one-fifth-touch{flex:none;width:20%}.column.is-two-fifths-touch{flex:none;width:40%}.column.is-three-fifths-touch{flex:none;width:60%}.column.is-four-fifths-touch{flex:none;width:80%}.column.is-offset-three-quarters-touch{margin-left:75%}.column.is-offset-two-thirds-touch{margin-left:66.6666%}.column.is-offset-half-touch{margin-left:50%}.column.is-offset-one-third-touch{margin-left:33.3333%}.column.is-offset-one-quarter-touch{margin-left:25%}.column.is-offset-one-fifth-touch{margin-left:20%}.column.is-offset-two-fifths-touch{margin-left:40%}.column.is-offset-three-fifths-touch{margin-left:60%}.column.is-offset-four-fifths-touch{margin-left:80%}.column.is-0-touch{flex:none;width:0%}.column.is-offset-0-touch{margin-left:0}.column.is-1-touch{flex:none;width:8.33333%}.column.is-offset-1-touch{margin-left:8.33333%}.column.is-2-touch{flex:none;width:16.66667%}.column.is-offset-2-touch{margin-left:16.66667%}.column.is-3-touch{flex:none;width:25%}.column.is-offset-3-touch{margin-left:25%}.column.is-4-touch{flex:none;width:33.33333%}.column.is-offset-4-touch{margin-left:33.33333%}.column.is-5-touch{flex:none;width:41.66667%}.column.is-offset-5-touch{margin-left:41.66667%}.column.is-6-touch{flex:none;width:50%}.column.is-offset-6-touch{margin-left:50%}.column.is-7-touch{flex:none;width:58.33333%}.column.is-offset-7-touch{margin-left:58.33333%}.column.is-8-touch{flex:none;width:66.66667%}.column.is-offset-8-touch{margin-left:66.66667%}.column.is-9-touch{flex:none;width:75%}.column.is-offset-9-touch{margin-left:75%}.column.is-10-touch{flex:none;width:83.33333%}.column.is-offset-10-touch{margin-left:83.33333%}.column.is-11-touch{flex:none;width:91.66667%}.column.is-offset-11-touch{margin-left:91.66667%}.column.is-12-touch{flex:none;width:100%}.column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width:1024px){.column.is-narrow-desktop{flex:none}.column.is-full-desktop{flex:none;width:100%}.column.is-three-quarters-desktop{flex:none;width:75%}.column.is-two-thirds-desktop{flex:none;width:66.6666%}.column.is-half-desktop{flex:none;width:50%}.column.is-one-third-desktop{flex:none;width:33.3333%}.column.is-one-quarter-desktop{flex:none;width:25%}.column.is-one-fifth-desktop{flex:none;width:20%}.column.is-two-fifths-desktop{flex:none;width:40%}.column.is-three-fifths-desktop{flex:none;width:60%}.column.is-four-fifths-desktop{flex:none;width:80%}.column.is-offset-three-quarters-desktop{margin-left:75%}.column.is-offset-two-thirds-desktop{margin-left:66.6666%}.column.is-offset-half-desktop{margin-left:50%}.column.is-offset-one-third-desktop{margin-left:33.3333%}.column.is-offset-one-quarter-desktop{margin-left:25%}.column.is-offset-one-fifth-desktop{margin-left:20%}.column.is-offset-two-fifths-desktop{margin-left:40%}.column.is-offset-three-fifths-desktop{margin-left:60%}.column.is-offset-four-fifths-desktop{margin-left:80%}.column.is-0-desktop{flex:none;width:0%}.column.is-offset-0-desktop{margin-left:0}.column.is-1-desktop{flex:none;width:8.33333%}.column.is-offset-1-desktop{margin-left:8.33333%}.column.is-2-desktop{flex:none;width:16.66667%}.column.is-offset-2-desktop{margin-left:16.66667%}.column.is-3-desktop{flex:none;width:25%}.column.is-offset-3-desktop{margin-left:25%}.column.is-4-desktop{flex:none;width:33.33333%}.column.is-offset-4-desktop{margin-left:33.33333%}.column.is-5-desktop{flex:none;width:41.66667%}.column.is-offset-5-desktop{margin-left:41.66667%}.column.is-6-desktop{flex:none;width:50%}.column.is-offset-6-desktop{margin-left:50%}.column.is-7-desktop{flex:none;width:58.33333%}.column.is-offset-7-desktop{margin-left:58.33333%}.column.is-8-desktop{flex:none;width:66.66667%}.column.is-offset-8-desktop{margin-left:66.66667%}.column.is-9-desktop{flex:none;width:75%}.column.is-offset-9-desktop{margin-left:75%}.column.is-10-desktop{flex:none;width:83.33333%}.column.is-offset-10-desktop{margin-left:83.33333%}.column.is-11-desktop{flex:none;width:91.66667%}.column.is-offset-11-desktop{margin-left:91.66667%}.column.is-12-desktop{flex:none;width:100%}.column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width:1216px){.column.is-narrow-widescreen{flex:none}.column.is-full-widescreen{flex:none;width:100%}.column.is-three-quarters-widescreen{flex:none;width:75%}.column.is-two-thirds-widescreen{flex:none;width:66.6666%}.column.is-half-widescreen{flex:none;width:50%}.column.is-one-third-widescreen{flex:none;width:33.3333%}.column.is-one-quarter-widescreen{flex:none;width:25%}.column.is-one-fifth-widescreen{flex:none;width:20%}.column.is-two-fifths-widescreen{flex:none;width:40%}.column.is-three-fifths-widescreen{flex:none;width:60%}.column.is-four-fifths-widescreen{flex:none;width:80%}.column.is-offset-three-quarters-widescreen{margin-left:75%}.column.is-offset-two-thirds-widescreen{margin-left:66.6666%}.column.is-offset-half-widescreen{margin-left:50%}.column.is-offset-one-third-widescreen{margin-left:33.3333%}.column.is-offset-one-quarter-widescreen{margin-left:25%}.column.is-offset-one-fifth-widescreen{margin-left:20%}.column.is-offset-two-fifths-widescreen{margin-left:40%}.column.is-offset-three-fifths-widescreen{margin-left:60%}.column.is-offset-four-fifths-widescreen{margin-left:80%}.column.is-0-widescreen{flex:none;width:0%}.column.is-offset-0-widescreen{margin-left:0}.column.is-1-widescreen{flex:none;width:8.33333%}.column.is-offset-1-widescreen{margin-left:8.33333%}.column.is-2-widescreen{flex:none;width:16.66667%}.column.is-offset-2-widescreen{margin-left:16.66667%}.column.is-3-widescreen{flex:none;width:25%}.column.is-offset-3-widescreen{margin-left:25%}.column.is-4-widescreen{flex:none;width:33.33333%}.column.is-offset-4-widescreen{margin-left:33.33333%}.column.is-5-widescreen{flex:none;width:41.66667%}.column.is-offset-5-widescreen{margin-left:41.66667%}.column.is-6-widescreen{flex:none;width:50%}.column.is-offset-6-widescreen{margin-left:50%}.column.is-7-widescreen{flex:none;width:58.33333%}.column.is-offset-7-widescreen{margin-left:58.33333%}.column.is-8-widescreen{flex:none;width:66.66667%}.column.is-offset-8-widescreen{margin-left:66.66667%}.column.is-9-widescreen{flex:none;width:75%}.column.is-offset-9-widescreen{margin-left:75%}.column.is-10-widescreen{flex:none;width:83.33333%}.column.is-offset-10-widescreen{margin-left:83.33333%}.column.is-11-widescreen{flex:none;width:91.66667%}.column.is-offset-11-widescreen{margin-left:91.66667%}.column.is-12-widescreen{flex:none;width:100%}.column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width:1408px){.column.is-narrow-fullhd{flex:none}.column.is-full-fullhd{flex:none;width:100%}.column.is-three-quarters-fullhd{flex:none;width:75%}.column.is-two-thirds-fullhd{flex:none;width:66.6666%}.column.is-half-fullhd{flex:none;width:50%}.column.is-one-third-fullhd{flex:none;width:33.3333%}.column.is-one-quarter-fullhd{flex:none;width:25%}.column.is-one-fifth-fullhd{flex:none;width:20%}.column.is-two-fifths-fullhd{flex:none;width:40%}.column.is-three-fifths-fullhd{flex:none;width:60%}.column.is-four-fifths-fullhd{flex:none;width:80%}.column.is-offset-three-quarters-fullhd{margin-left:75%}.column.is-offset-two-thirds-fullhd{margin-left:66.6666%}.column.is-offset-half-fullhd{margin-left:50%}.column.is-offset-one-third-fullhd{margin-left:33.3333%}.column.is-offset-one-quarter-fullhd{margin-left:25%}.column.is-offset-one-fifth-fullhd{margin-left:20%}.column.is-offset-two-fifths-fullhd{margin-left:40%}.column.is-offset-three-fifths-fullhd{margin-left:60%}.column.is-offset-four-fifths-fullhd{margin-left:80%}.column.is-0-fullhd{flex:none;width:0%}.column.is-offset-0-fullhd{margin-left:0}.column.is-1-fullhd{flex:none;width:8.33333%}.column.is-offset-1-fullhd{margin-left:8.33333%}.column.is-2-fullhd{flex:none;width:16.66667%}.column.is-offset-2-fullhd{margin-left:16.66667%}.column.is-3-fullhd{flex:none;width:25%}.column.is-offset-3-fullhd{margin-left:25%}.column.is-4-fullhd{flex:none;width:33.33333%}.column.is-offset-4-fullhd{margin-left:33.33333%}.column.is-5-fullhd{flex:none;width:41.66667%}.column.is-offset-5-fullhd{margin-left:41.66667%}.column.is-6-fullhd{flex:none;width:50%}.column.is-offset-6-fullhd{margin-left:50%}.column.is-7-fullhd{flex:none;width:58.33333%}.column.is-offset-7-fullhd{margin-left:58.33333%}.column.is-8-fullhd{flex:none;width:66.66667%}.column.is-offset-8-fullhd{margin-left:66.66667%}.column.is-9-fullhd{flex:none;width:75%}.column.is-offset-9-fullhd{margin-left:75%}.column.is-10-fullhd{flex:none;width:83.33333%}.column.is-offset-10-fullhd{margin-left:83.33333%}.column.is-11-fullhd{flex:none;width:91.66667%}.column.is-offset-11-fullhd{margin-left:91.66667%}.column.is-12-fullhd{flex:none;width:100%}.column.is-offset-12-fullhd{margin-left:100%}}.columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.columns:last-child{margin-bottom:-.75rem}.columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}.columns.is-centered{justify-content:center}.columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}.columns.is-gapless>.column{margin:0;padding:0!important}.columns.is-gapless:not(:last-child){margin-bottom:1.5rem}.columns.is-gapless:last-child{margin-bottom:0}.columns.is-mobile{display:flex}.columns.is-multiline{flex-wrap:wrap}.columns.is-vcentered{align-items:center}@media screen and (min-width:769px),print{.columns:not(.is-desktop){display:flex}}@media screen and (min-width:1024px){.columns.is-desktop{display:flex}}.columns.is-variable{--columnGap:0.75rem;margin-left:calc(-1 * var(--columnGap));margin-right:calc(-1 * var(--columnGap))}.columns.is-variable .column{padding-left:var(--columnGap);padding-right:var(--columnGap)}.columns.is-variable.is-0{--columnGap:0rem}@media screen and (max-width:768px){.columns.is-variable.is-0-mobile{--columnGap:0rem}}@media screen and (min-width:769px),print{.columns.is-variable.is-0-tablet{--columnGap:0rem}}@media screen and (min-width:769px) and (max-width:1023px){.columns.is-variable.is-0-tablet-only{--columnGap:0rem}}@media screen and (max-width:1023px){.columns.is-variable.is-0-touch{--columnGap:0rem}}@media screen and (min-width:1024px){.columns.is-variable.is-0-desktop{--columnGap:0rem}}@media screen and (min-width:1024px) and (max-width:1215px){.columns.is-variable.is-0-desktop-only{--columnGap:0rem}}@media screen and (min-width:1216px){.columns.is-variable.is-0-widescreen{--columnGap:0rem}}@media screen and (min-width:1216px) and (max-width:1407px){.columns.is-variable.is-0-widescreen-only{--columnGap:0rem}}@media screen and (min-width:1408px){.columns.is-variable.is-0-fullhd{--columnGap:0rem}}.columns.is-variable.is-1{--columnGap:0.25rem}@media screen and (max-width:768px){.columns.is-variable.is-1-mobile{--columnGap:0.25rem}}@media screen and (min-width:769px),print{.columns.is-variable.is-1-tablet{--columnGap:0.25rem}}@media screen and (min-width:769px) and (max-width:1023px){.columns.is-variable.is-1-tablet-only{--columnGap:0.25rem}}@media screen and (max-width:1023px){.columns.is-variable.is-1-touch{--columnGap:0.25rem}}@media screen and (min-width:1024px){.columns.is-variable.is-1-desktop{--columnGap:0.25rem}}@media screen and (min-width:1024px) and (max-width:1215px){.columns.is-variable.is-1-desktop-only{--columnGap:0.25rem}}@media screen and (min-width:1216px){.columns.is-variable.is-1-widescreen{--columnGap:0.25rem}}@media screen and (min-width:1216px) and (max-width:1407px){.columns.is-variable.is-1-widescreen-only{--columnGap:0.25rem}}@media screen and (min-width:1408px){.columns.is-variable.is-1-fullhd{--columnGap:0.25rem}}.columns.is-variable.is-2{--columnGap:0.5rem}@media screen and (max-width:768px){.columns.is-variable.is-2-mobile{--columnGap:0.5rem}}@media screen and (min-width:769px),print{.columns.is-variable.is-2-tablet{--columnGap:0.5rem}}@media screen and (min-width:769px) and (max-width:1023px){.columns.is-variable.is-2-tablet-only{--columnGap:0.5rem}}@media screen and (max-width:1023px){.columns.is-variable.is-2-touch{--columnGap:0.5rem}}@media screen and (min-width:1024px){.columns.is-variable.is-2-desktop{--columnGap:0.5rem}}@media screen and (min-width:1024px) and (max-width:1215px){.columns.is-variable.is-2-desktop-only{--columnGap:0.5rem}}@media screen and (min-width:1216px){.columns.is-variable.is-2-widescreen{--columnGap:0.5rem}}@media screen and (min-width:1216px) and (max-width:1407px){.columns.is-variable.is-2-widescreen-only{--columnGap:0.5rem}}@media screen and (min-width:1408px){.columns.is-variable.is-2-fullhd{--columnGap:0.5rem}}.columns.is-variable.is-3{--columnGap:0.75rem}@media screen and (max-width:768px){.columns.is-variable.is-3-mobile{--columnGap:0.75rem}}@media screen and (min-width:769px),print{.columns.is-variable.is-3-tablet{--columnGap:0.75rem}}@media screen and (min-width:769px) and (max-width:1023px){.columns.is-variable.is-3-tablet-only{--columnGap:0.75rem}}@media screen and (max-width:1023px){.columns.is-variable.is-3-touch{--columnGap:0.75rem}}@media screen and (min-width:1024px){.columns.is-variable.is-3-desktop{--columnGap:0.75rem}}@media screen and (min-width:1024px) and (max-width:1215px){.columns.is-variable.is-3-desktop-only{--columnGap:0.75rem}}@media screen and (min-width:1216px){.columns.is-variable.is-3-widescreen{--columnGap:0.75rem}}@media screen and (min-width:1216px) and (max-width:1407px){.columns.is-variable.is-3-widescreen-only{--columnGap:0.75rem}}@media screen and (min-width:1408px){.columns.is-variable.is-3-fullhd{--columnGap:0.75rem}}.columns.is-variable.is-4{--columnGap:1rem}@media screen and (max-width:768px){.columns.is-variable.is-4-mobile{--columnGap:1rem}}@media screen and (min-width:769px),print{.columns.is-variable.is-4-tablet{--columnGap:1rem}}@media screen and (min-width:769px) and (max-width:1023px){.columns.is-variable.is-4-tablet-only{--columnGap:1rem}}@media screen and (max-width:1023px){.columns.is-variable.is-4-touch{--columnGap:1rem}}@media screen and (min-width:1024px){.columns.is-variable.is-4-desktop{--columnGap:1rem}}@media screen and (min-width:1024px) and (max-width:1215px){.columns.is-variable.is-4-desktop-only{--columnGap:1rem}}@media screen and (min-width:1216px){.columns.is-variable.is-4-widescreen{--columnGap:1rem}}@media screen and (min-width:1216px) and (max-width:1407px){.columns.is-variable.is-4-widescreen-only{--columnGap:1rem}}@media screen and (min-width:1408px){.columns.is-variable.is-4-fullhd{--columnGap:1rem}}.columns.is-variable.is-5{--columnGap:1.25rem}@media screen and (max-width:768px){.columns.is-variable.is-5-mobile{--columnGap:1.25rem}}@media screen and (min-width:769px),print{.columns.is-variable.is-5-tablet{--columnGap:1.25rem}}@media screen and (min-width:769px) and (max-width:1023px){.columns.is-variable.is-5-tablet-only{--columnGap:1.25rem}}@media screen and (max-width:1023px){.columns.is-variable.is-5-touch{--columnGap:1.25rem}}@media screen and (min-width:1024px){.columns.is-variable.is-5-desktop{--columnGap:1.25rem}}@media screen and (min-width:1024px) and (max-width:1215px){.columns.is-variable.is-5-desktop-only{--columnGap:1.25rem}}@media screen and (min-width:1216px){.columns.is-variable.is-5-widescreen{--columnGap:1.25rem}}@media screen and (min-width:1216px) and (max-width:1407px){.columns.is-variable.is-5-widescreen-only{--columnGap:1.25rem}}@media screen and (min-width:1408px){.columns.is-variable.is-5-fullhd{--columnGap:1.25rem}}.columns.is-variable.is-6{--columnGap:1.5rem}@media screen and (max-width:768px){.columns.is-variable.is-6-mobile{--columnGap:1.5rem}}@media screen and (min-width:769px),print{.columns.is-variable.is-6-tablet{--columnGap:1.5rem}}@media screen and (min-width:769px) and (max-width:1023px){.columns.is-variable.is-6-tablet-only{--columnGap:1.5rem}}@media screen and (max-width:1023px){.columns.is-variable.is-6-touch{--columnGap:1.5rem}}@media screen and (min-width:1024px){.columns.is-variable.is-6-desktop{--columnGap:1.5rem}}@media screen and (min-width:1024px) and (max-width:1215px){.columns.is-variable.is-6-desktop-only{--columnGap:1.5rem}}@media screen and (min-width:1216px){.columns.is-variable.is-6-widescreen{--columnGap:1.5rem}}@media screen and (min-width:1216px) and (max-width:1407px){.columns.is-variable.is-6-widescreen-only{--columnGap:1.5rem}}@media screen and (min-width:1408px){.columns.is-variable.is-6-fullhd{--columnGap:1.5rem}}.columns.is-variable.is-7{--columnGap:1.75rem}@media screen and (max-width:768px){.columns.is-variable.is-7-mobile{--columnGap:1.75rem}}@media screen and (min-width:769px),print{.columns.is-variable.is-7-tablet{--columnGap:1.75rem}}@media screen and (min-width:769px) and (max-width:1023px){.columns.is-variable.is-7-tablet-only{--columnGap:1.75rem}}@media screen and (max-width:1023px){.columns.is-variable.is-7-touch{--columnGap:1.75rem}}@media screen and (min-width:1024px){.columns.is-variable.is-7-desktop{--columnGap:1.75rem}}@media screen and (min-width:1024px) and (max-width:1215px){.columns.is-variable.is-7-desktop-only{--columnGap:1.75rem}}@media screen and (min-width:1216px){.columns.is-variable.is-7-widescreen{--columnGap:1.75rem}}@media screen and (min-width:1216px) and (max-width:1407px){.columns.is-variable.is-7-widescreen-only{--columnGap:1.75rem}}@media screen and (min-width:1408px){.columns.is-variable.is-7-fullhd{--columnGap:1.75rem}}.columns.is-variable.is-8{--columnGap:2rem}@media screen and (max-width:768px){.columns.is-variable.is-8-mobile{--columnGap:2rem}}@media screen and (min-width:769px),print{.columns.is-variable.is-8-tablet{--columnGap:2rem}}@media screen and (min-width:769px) and (max-width:1023px){.columns.is-variable.is-8-tablet-only{--columnGap:2rem}}@media screen and (max-width:1023px){.columns.is-variable.is-8-touch{--columnGap:2rem}}@media screen and (min-width:1024px){.columns.is-variable.is-8-desktop{--columnGap:2rem}}@media screen and (min-width:1024px) and (max-width:1215px){.columns.is-variable.is-8-desktop-only{--columnGap:2rem}}@media screen and (min-width:1216px){.columns.is-variable.is-8-widescreen{--columnGap:2rem}}@media screen and (min-width:1216px) and (max-width:1407px){.columns.is-variable.is-8-widescreen-only{--columnGap:2rem}}@media screen and (min-width:1408px){.columns.is-variable.is-8-fullhd{--columnGap:2rem}}.tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:-webkit-min-content;min-height:-moz-min-content;min-height:min-content}.tile.is-ancestor{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.tile.is-ancestor:last-child{margin-bottom:-.75rem}.tile.is-ancestor:not(:last-child){margin-bottom:.75rem}.tile.is-child{margin:0!important}.tile.is-parent{padding:.75rem}.tile.is-vertical{flex-direction:column}.tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem!important}@media screen and (min-width:769px),print{.tile:not(.is-child){display:flex}.tile.is-1{flex:none;width:8.33333%}.tile.is-2{flex:none;width:16.66667%}.tile.is-3{flex:none;width:25%}.tile.is-4{flex:none;width:33.33333%}.tile.is-5{flex:none;width:41.66667%}.tile.is-6{flex:none;width:50%}.tile.is-7{flex:none;width:58.33333%}.tile.is-8{flex:none;width:66.66667%}.tile.is-9{flex:none;width:75%}.tile.is-10{flex:none;width:83.33333%}.tile.is-11{flex:none;width:91.66667%}.tile.is-12{flex:none;width:100%}}.hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}.hero .navbar{background:0 0}.hero .tabs ul{border-bottom:none}.hero.is-white{background-color:#fff;color:#0a0a0a}.hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-white strong{color:inherit}.hero.is-white .title{color:#0a0a0a}.hero.is-white .subtitle{color:rgba(10,10,10,.9)}.hero.is-white .subtitle a:not(.button),.hero.is-white .subtitle strong{color:#0a0a0a}@media screen and (max-width:1023px){.hero.is-white .navbar-menu{background-color:#fff}}.hero.is-white .navbar-item,.hero.is-white .navbar-link{color:rgba(10,10,10,.7)}.hero.is-white .navbar-link.is-active,.hero.is-white .navbar-link:hover,.hero.is-white a.navbar-item.is-active,.hero.is-white a.navbar-item:hover{background-color:#f2f2f2;color:#0a0a0a}.hero.is-white .tabs a{color:#0a0a0a;opacity:.9}.hero.is-white .tabs a:hover{opacity:1}.hero.is-white .tabs li.is-active a{opacity:1}.hero.is-white .tabs.is-boxed a,.hero.is-white .tabs.is-toggle a{color:#0a0a0a}.hero.is-white .tabs.is-boxed a:hover,.hero.is-white .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-white .tabs.is-boxed li.is-active a,.hero.is-white .tabs.is-boxed li.is-active a:hover,.hero.is-white .tabs.is-toggle li.is-active a,.hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.hero.is-white.is-bold{background-image:linear-gradient(141deg,#e6e6e6 0,#fff 71%,#fff 100%)}@media screen and (max-width:768px){.hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg,#e6e6e6 0,#fff 71%,#fff 100%)}}.hero.is-black{background-color:#0a0a0a;color:#fff}.hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-black strong{color:inherit}.hero.is-black .title{color:#fff}.hero.is-black .subtitle{color:rgba(255,255,255,.9)}.hero.is-black .subtitle a:not(.button),.hero.is-black .subtitle strong{color:#fff}@media screen and (max-width:1023px){.hero.is-black .navbar-menu{background-color:#0a0a0a}}.hero.is-black .navbar-item,.hero.is-black .navbar-link{color:rgba(255,255,255,.7)}.hero.is-black .navbar-link.is-active,.hero.is-black .navbar-link:hover,.hero.is-black a.navbar-item.is-active,.hero.is-black a.navbar-item:hover{background-color:#000;color:#fff}.hero.is-black .tabs a{color:#fff;opacity:.9}.hero.is-black .tabs a:hover{opacity:1}.hero.is-black .tabs li.is-active a{opacity:1}.hero.is-black .tabs.is-boxed a,.hero.is-black .tabs.is-toggle a{color:#fff}.hero.is-black .tabs.is-boxed a:hover,.hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-black .tabs.is-boxed li.is-active a,.hero.is-black .tabs.is-boxed li.is-active a:hover,.hero.is-black .tabs.is-toggle li.is-active a,.hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}.hero.is-black.is-bold{background-image:linear-gradient(141deg,#000 0,#0a0a0a 71%,#181616 100%)}@media screen and (max-width:768px){.hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg,#000 0,#0a0a0a 71%,#181616 100%)}}.hero.is-light{background-color:#f5f5f5;color:rgba(0,0,0,.7)}.hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-light strong{color:inherit}.hero.is-light .title{color:rgba(0,0,0,.7)}.hero.is-light .subtitle{color:rgba(0,0,0,.9)}.hero.is-light .subtitle a:not(.button),.hero.is-light .subtitle strong{color:rgba(0,0,0,.7)}@media screen and (max-width:1023px){.hero.is-light .navbar-menu{background-color:#f5f5f5}}.hero.is-light .navbar-item,.hero.is-light .navbar-link{color:rgba(0,0,0,.7)}.hero.is-light .navbar-link.is-active,.hero.is-light .navbar-link:hover,.hero.is-light a.navbar-item.is-active,.hero.is-light a.navbar-item:hover{background-color:#e8e8e8;color:rgba(0,0,0,.7)}.hero.is-light .tabs a{color:rgba(0,0,0,.7);opacity:.9}.hero.is-light .tabs a:hover{opacity:1}.hero.is-light .tabs li.is-active a{opacity:1}.hero.is-light .tabs.is-boxed a,.hero.is-light .tabs.is-toggle a{color:rgba(0,0,0,.7)}.hero.is-light .tabs.is-boxed a:hover,.hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-light .tabs.is-boxed li.is-active a,.hero.is-light .tabs.is-boxed li.is-active a:hover,.hero.is-light .tabs.is-toggle li.is-active a,.hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,.7);border-color:rgba(0,0,0,.7);color:#f5f5f5}.hero.is-light.is-bold{background-image:linear-gradient(141deg,#dfd8d9 0,#f5f5f5 71%,#fff 100%)}@media screen and (max-width:768px){.hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg,#dfd8d9 0,#f5f5f5 71%,#fff 100%)}}.hero.is-dark{background-color:#363636;color:#fff}.hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-dark strong{color:inherit}.hero.is-dark .title{color:#fff}.hero.is-dark .subtitle{color:rgba(255,255,255,.9)}.hero.is-dark .subtitle a:not(.button),.hero.is-dark .subtitle strong{color:#fff}@media screen and (max-width:1023px){.hero.is-dark .navbar-menu{background-color:#363636}}.hero.is-dark .navbar-item,.hero.is-dark .navbar-link{color:rgba(255,255,255,.7)}.hero.is-dark .navbar-link.is-active,.hero.is-dark .navbar-link:hover,.hero.is-dark a.navbar-item.is-active,.hero.is-dark a.navbar-item:hover{background-color:#292929;color:#fff}.hero.is-dark .tabs a{color:#fff;opacity:.9}.hero.is-dark .tabs a:hover{opacity:1}.hero.is-dark .tabs li.is-active a{opacity:1}.hero.is-dark .tabs.is-boxed a,.hero.is-dark .tabs.is-toggle a{color:#fff}.hero.is-dark .tabs.is-boxed a:hover,.hero.is-dark .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-dark .tabs.is-boxed li.is-active a,.hero.is-dark .tabs.is-boxed li.is-active a:hover,.hero.is-dark .tabs.is-toggle li.is-active a,.hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#363636}.hero.is-dark.is-bold{background-image:linear-gradient(141deg,#1f191a 0,#363636 71%,#46403f 100%)}@media screen and (max-width:768px){.hero.is-dark.is-bold .navbar-menu{background-image:linear-gradient(141deg,#1f191a 0,#363636 71%,#46403f 100%)}}.hero.is-primary{background-color:#00d1b2;color:#fff}.hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-primary strong{color:inherit}.hero.is-primary .title{color:#fff}.hero.is-primary .subtitle{color:rgba(255,255,255,.9)}.hero.is-primary .subtitle a:not(.button),.hero.is-primary .subtitle strong{color:#fff}@media screen and (max-width:1023px){.hero.is-primary .navbar-menu{background-color:#00d1b2}}.hero.is-primary .navbar-item,.hero.is-primary .navbar-link{color:rgba(255,255,255,.7)}.hero.is-primary .navbar-link.is-active,.hero.is-primary .navbar-link:hover,.hero.is-primary a.navbar-item.is-active,.hero.is-primary a.navbar-item:hover{background-color:#00b89c;color:#fff}.hero.is-primary .tabs a{color:#fff;opacity:.9}.hero.is-primary .tabs a:hover{opacity:1}.hero.is-primary .tabs li.is-active a{opacity:1}.hero.is-primary .tabs.is-boxed a,.hero.is-primary .tabs.is-toggle a{color:#fff}.hero.is-primary .tabs.is-boxed a:hover,.hero.is-primary .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-primary .tabs.is-boxed li.is-active a,.hero.is-primary .tabs.is-boxed li.is-active a:hover,.hero.is-primary .tabs.is-toggle li.is-active a,.hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#00d1b2}.hero.is-primary.is-bold{background-image:linear-gradient(141deg,#009e6c 0,#00d1b2 71%,#00e7eb 100%)}@media screen and (max-width:768px){.hero.is-primary.is-bold .navbar-menu{background-image:linear-gradient(141deg,#009e6c 0,#00d1b2 71%,#00e7eb 100%)}}.hero.is-link{background-color:#3273dc;color:#fff}.hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-link strong{color:inherit}.hero.is-link .title{color:#fff}.hero.is-link .subtitle{color:rgba(255,255,255,.9)}.hero.is-link .subtitle a:not(.button),.hero.is-link .subtitle strong{color:#fff}@media screen and (max-width:1023px){.hero.is-link .navbar-menu{background-color:#3273dc}}.hero.is-link .navbar-item,.hero.is-link .navbar-link{color:rgba(255,255,255,.7)}.hero.is-link .navbar-link.is-active,.hero.is-link .navbar-link:hover,.hero.is-link a.navbar-item.is-active,.hero.is-link a.navbar-item:hover{background-color:#2366d1;color:#fff}.hero.is-link .tabs a{color:#fff;opacity:.9}.hero.is-link .tabs a:hover{opacity:1}.hero.is-link .tabs li.is-active a{opacity:1}.hero.is-link .tabs.is-boxed a,.hero.is-link .tabs.is-toggle a{color:#fff}.hero.is-link .tabs.is-boxed a:hover,.hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-link .tabs.is-boxed li.is-active a,.hero.is-link .tabs.is-boxed li.is-active a:hover,.hero.is-link .tabs.is-toggle li.is-active a,.hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#3273dc}.hero.is-link.is-bold{background-image:linear-gradient(141deg,#1577c6 0,#3273dc 71%,#4366e5 100%)}@media screen and (max-width:768px){.hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg,#1577c6 0,#3273dc 71%,#4366e5 100%)}}.hero.is-info{background-color:#3298dc;color:#fff}.hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-info strong{color:inherit}.hero.is-info .title{color:#fff}.hero.is-info .subtitle{color:rgba(255,255,255,.9)}.hero.is-info .subtitle a:not(.button),.hero.is-info .subtitle strong{color:#fff}@media screen and (max-width:1023px){.hero.is-info .navbar-menu{background-color:#3298dc}}.hero.is-info .navbar-item,.hero.is-info .navbar-link{color:rgba(255,255,255,.7)}.hero.is-info .navbar-link.is-active,.hero.is-info .navbar-link:hover,.hero.is-info a.navbar-item.is-active,.hero.is-info a.navbar-item:hover{background-color:#238cd1;color:#fff}.hero.is-info .tabs a{color:#fff;opacity:.9}.hero.is-info .tabs a:hover{opacity:1}.hero.is-info .tabs li.is-active a{opacity:1}.hero.is-info .tabs.is-boxed a,.hero.is-info .tabs.is-toggle a{color:#fff}.hero.is-info .tabs.is-boxed a:hover,.hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-info .tabs.is-boxed li.is-active a,.hero.is-info .tabs.is-boxed li.is-active a:hover,.hero.is-info .tabs.is-toggle li.is-active a,.hero.is-info .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#3298dc}.hero.is-info.is-bold{background-image:linear-gradient(141deg,#159dc6 0,#3298dc 71%,#4389e5 100%)}@media screen and (max-width:768px){.hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg,#159dc6 0,#3298dc 71%,#4389e5 100%)}}.hero.is-success{background-color:#48c774;color:#fff}.hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-success strong{color:inherit}.hero.is-success .title{color:#fff}.hero.is-success .subtitle{color:rgba(255,255,255,.9)}.hero.is-success .subtitle a:not(.button),.hero.is-success .subtitle strong{color:#fff}@media screen and (max-width:1023px){.hero.is-success .navbar-menu{background-color:#48c774}}.hero.is-success .navbar-item,.hero.is-success .navbar-link{color:rgba(255,255,255,.7)}.hero.is-success .navbar-link.is-active,.hero.is-success .navbar-link:hover,.hero.is-success a.navbar-item.is-active,.hero.is-success a.navbar-item:hover{background-color:#3abb67;color:#fff}.hero.is-success .tabs a{color:#fff;opacity:.9}.hero.is-success .tabs a:hover{opacity:1}.hero.is-success .tabs li.is-active a{opacity:1}.hero.is-success .tabs.is-boxed a,.hero.is-success .tabs.is-toggle a{color:#fff}.hero.is-success .tabs.is-boxed a:hover,.hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-success .tabs.is-boxed li.is-active a,.hero.is-success .tabs.is-boxed li.is-active a:hover,.hero.is-success .tabs.is-toggle li.is-active a,.hero.is-success .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#48c774}.hero.is-success.is-bold{background-image:linear-gradient(141deg,#29b342 0,#48c774 71%,#56d296 100%)}@media screen and (max-width:768px){.hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg,#29b342 0,#48c774 71%,#56d296 100%)}}.hero.is-warning{background-color:#ffdd57;color:rgba(0,0,0,.7)}.hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-warning strong{color:inherit}.hero.is-warning .title{color:rgba(0,0,0,.7)}.hero.is-warning .subtitle{color:rgba(0,0,0,.9)}.hero.is-warning .subtitle a:not(.button),.hero.is-warning .subtitle strong{color:rgba(0,0,0,.7)}@media screen and (max-width:1023px){.hero.is-warning .navbar-menu{background-color:#ffdd57}}.hero.is-warning .navbar-item,.hero.is-warning .navbar-link{color:rgba(0,0,0,.7)}.hero.is-warning .navbar-link.is-active,.hero.is-warning .navbar-link:hover,.hero.is-warning a.navbar-item.is-active,.hero.is-warning a.navbar-item:hover{background-color:#ffd83d;color:rgba(0,0,0,.7)}.hero.is-warning .tabs a{color:rgba(0,0,0,.7);opacity:.9}.hero.is-warning .tabs a:hover{opacity:1}.hero.is-warning .tabs li.is-active a{opacity:1}.hero.is-warning .tabs.is-boxed a,.hero.is-warning .tabs.is-toggle a{color:rgba(0,0,0,.7)}.hero.is-warning .tabs.is-boxed a:hover,.hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-warning .tabs.is-boxed li.is-active a,.hero.is-warning .tabs.is-boxed li.is-active a:hover,.hero.is-warning .tabs.is-toggle li.is-active a,.hero.is-warning .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,.7);border-color:rgba(0,0,0,.7);color:#ffdd57}.hero.is-warning.is-bold{background-image:linear-gradient(141deg,#ffaf24 0,#ffdd57 71%,#fffa70 100%)}@media screen and (max-width:768px){.hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg,#ffaf24 0,#ffdd57 71%,#fffa70 100%)}}.hero.is-danger{background-color:#f14668;color:#fff}.hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-danger strong{color:inherit}.hero.is-danger .title{color:#fff}.hero.is-danger .subtitle{color:rgba(255,255,255,.9)}.hero.is-danger .subtitle a:not(.button),.hero.is-danger .subtitle strong{color:#fff}@media screen and (max-width:1023px){.hero.is-danger .navbar-menu{background-color:#f14668}}.hero.is-danger .navbar-item,.hero.is-danger .navbar-link{color:rgba(255,255,255,.7)}.hero.is-danger .navbar-link.is-active,.hero.is-danger .navbar-link:hover,.hero.is-danger a.navbar-item.is-active,.hero.is-danger a.navbar-item:hover{background-color:#ef2e55;color:#fff}.hero.is-danger .tabs a{color:#fff;opacity:.9}.hero.is-danger .tabs a:hover{opacity:1}.hero.is-danger .tabs li.is-active a{opacity:1}.hero.is-danger .tabs.is-boxed a,.hero.is-danger .tabs.is-toggle a{color:#fff}.hero.is-danger .tabs.is-boxed a:hover,.hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,.1)}.hero.is-danger .tabs.is-boxed li.is-active a,.hero.is-danger .tabs.is-boxed li.is-active a:hover,.hero.is-danger .tabs.is-toggle li.is-active a,.hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#f14668}.hero.is-danger.is-bold{background-image:linear-gradient(141deg,#fa0a62 0,#f14668 71%,#f7595f 100%)}@media screen and (max-width:768px){.hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg,#fa0a62 0,#f14668 71%,#f7595f 100%)}}.hero.is-small .hero-body{padding-bottom:1.5rem;padding-top:1.5rem}@media screen and (min-width:769px),print{.hero.is-medium .hero-body{padding-bottom:9rem;padding-top:9rem}}@media screen and (min-width:769px),print{.hero.is-large .hero-body{padding-bottom:18rem;padding-top:18rem}}.hero.is-fullheight .hero-body,.hero.is-fullheight-with-navbar .hero-body,.hero.is-halfheight .hero-body{align-items:center;display:flex}.hero.is-fullheight .hero-body>.container,.hero.is-fullheight-with-navbar .hero-body>.container,.hero.is-halfheight .hero-body>.container{flex-grow:1;flex-shrink:1}.hero.is-halfheight{min-height:50vh}.hero.is-fullheight{min-height:100vh}.hero-video{overflow:hidden}.hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%,-50%,0)}.hero-video.is-transparent{opacity:.3}@media screen and (max-width:768px){.hero-video{display:none}}.hero-buttons{margin-top:1.5rem}@media screen and (max-width:768px){.hero-buttons .button{display:flex}.hero-buttons .button:not(:last-child){margin-bottom:.75rem}}@media screen and (min-width:769px),print{.hero-buttons{display:flex;justify-content:center}.hero-buttons .button:not(:last-child){margin-right:1.5rem}}.hero-foot,.hero-head{flex-grow:0;flex-shrink:0}.hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}.section{padding:3rem 1.5rem}@media screen and (min-width:1024px){.section.is-medium{padding:9rem 1.5rem}.section.is-large{padding:18rem 1.5rem}}.footer{background-color:#fafafa;padding:3rem 1.5rem 6rem} \ No newline at end of file diff --git a/dist/fa/css/all.css b/dist/fa/css/all.css new file mode 100644 index 0000000..ba15e19 --- /dev/null +++ b/dist/fa/css/all.css @@ -0,0 +1,4463 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa, +.fas, +.far, +.fal, +.fad, +.fab { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: inline-block; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; } + +.fa-lg { + font-size: 1.33333em; + line-height: 0.75em; + vertical-align: -.0667em; } + +.fa-xs { + font-size: .75em; } + +.fa-sm { + font-size: .875em; } + +.fa-1x { + font-size: 1em; } + +.fa-2x { + font-size: 2em; } + +.fa-3x { + font-size: 3em; } + +.fa-4x { + font-size: 4em; } + +.fa-5x { + font-size: 5em; } + +.fa-6x { + font-size: 6em; } + +.fa-7x { + font-size: 7em; } + +.fa-8x { + font-size: 8em; } + +.fa-9x { + font-size: 9em; } + +.fa-10x { + font-size: 10em; } + +.fa-fw { + text-align: center; + width: 1.25em; } + +.fa-ul { + list-style-type: none; + margin-left: 2.5em; + padding-left: 0; } + .fa-ul > li { + position: relative; } + +.fa-li { + left: -2em; + position: absolute; + text-align: center; + width: 2em; + line-height: inherit; } + +.fa-border { + border: solid 0.08em #eee; + border-radius: .1em; + padding: .2em .25em .15em; } + +.fa-pull-left { + float: left; } + +.fa-pull-right { + float: right; } + +.fa.fa-pull-left, +.fas.fa-pull-left, +.far.fa-pull-left, +.fal.fa-pull-left, +.fab.fa-pull-left { + margin-right: .3em; } + +.fa.fa-pull-right, +.fas.fa-pull-right, +.far.fa-pull-right, +.fal.fa-pull-right, +.fab.fa-pull-right { + margin-left: .3em; } + +.fa-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; } + +.fa-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); } + +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +.fa-rotate-90 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; + -webkit-transform: rotate(90deg); + transform: rotate(90deg); } + +.fa-rotate-180 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; + -webkit-transform: rotate(180deg); + transform: rotate(180deg); } + +.fa-rotate-270 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + +.fa-flip-horizontal { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; + -webkit-transform: scale(-1, 1); + transform: scale(-1, 1); } + +.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(1, -1); + transform: scale(1, -1); } + +.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(-1, -1); + transform: scale(-1, -1); } + +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical, +:root .fa-flip-both { + -webkit-filter: none; + filter: none; } + +.fa-stack { + display: inline-block; + height: 2em; + line-height: 2em; + position: relative; + vertical-align: middle; + width: 2.5em; } + +.fa-stack-1x, +.fa-stack-2x { + left: 0; + position: absolute; + text-align: center; + width: 100%; } + +.fa-stack-1x { + line-height: inherit; } + +.fa-stack-2x { + font-size: 2em; } + +.fa-inverse { + color: #fff; } + +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen +readers do not read off random characters that represent icons */ +.fa-500px:before { + content: "\f26e"; } + +.fa-accessible-icon:before { + content: "\f368"; } + +.fa-accusoft:before { + content: "\f369"; } + +.fa-acquisitions-incorporated:before { + content: "\f6af"; } + +.fa-ad:before { + content: "\f641"; } + +.fa-address-book:before { + content: "\f2b9"; } + +.fa-address-card:before { + content: "\f2bb"; } + +.fa-adjust:before { + content: "\f042"; } + +.fa-adn:before { + content: "\f170"; } + +.fa-adobe:before { + content: "\f778"; } + +.fa-adversal:before { + content: "\f36a"; } + +.fa-affiliatetheme:before { + content: "\f36b"; } + +.fa-air-freshener:before { + content: "\f5d0"; } + +.fa-airbnb:before { + content: "\f834"; } + +.fa-algolia:before { + content: "\f36c"; } + +.fa-align-center:before { + content: "\f037"; } + +.fa-align-justify:before { + content: "\f039"; } + +.fa-align-left:before { + content: "\f036"; } + +.fa-align-right:before { + content: "\f038"; } + +.fa-alipay:before { + content: "\f642"; } + +.fa-allergies:before { + content: "\f461"; } + +.fa-amazon:before { + content: "\f270"; } + +.fa-amazon-pay:before { + content: "\f42c"; } + +.fa-ambulance:before { + content: "\f0f9"; } + +.fa-american-sign-language-interpreting:before { + content: "\f2a3"; } + +.fa-amilia:before { + content: "\f36d"; } + +.fa-anchor:before { + content: "\f13d"; } + +.fa-android:before { + content: "\f17b"; } + +.fa-angellist:before { + content: "\f209"; } + +.fa-angle-double-down:before { + content: "\f103"; } + +.fa-angle-double-left:before { + content: "\f100"; } + +.fa-angle-double-right:before { + content: "\f101"; } + +.fa-angle-double-up:before { + content: "\f102"; } + +.fa-angle-down:before { + content: "\f107"; } + +.fa-angle-left:before { + content: "\f104"; } + +.fa-angle-right:before { + content: "\f105"; } + +.fa-angle-up:before { + content: "\f106"; } + +.fa-angry:before { + content: "\f556"; } + +.fa-angrycreative:before { + content: "\f36e"; } + +.fa-angular:before { + content: "\f420"; } + +.fa-ankh:before { + content: "\f644"; } + +.fa-app-store:before { + content: "\f36f"; } + +.fa-app-store-ios:before { + content: "\f370"; } + +.fa-apper:before { + content: "\f371"; } + +.fa-apple:before { + content: "\f179"; } + +.fa-apple-alt:before { + content: "\f5d1"; } + +.fa-apple-pay:before { + content: "\f415"; } + +.fa-archive:before { + content: "\f187"; } + +.fa-archway:before { + content: "\f557"; } + +.fa-arrow-alt-circle-down:before { + content: "\f358"; } + +.fa-arrow-alt-circle-left:before { + content: "\f359"; } + +.fa-arrow-alt-circle-right:before { + content: "\f35a"; } + +.fa-arrow-alt-circle-up:before { + content: "\f35b"; } + +.fa-arrow-circle-down:before { + content: "\f0ab"; } + +.fa-arrow-circle-left:before { + content: "\f0a8"; } + +.fa-arrow-circle-right:before { + content: "\f0a9"; } + +.fa-arrow-circle-up:before { + content: "\f0aa"; } + +.fa-arrow-down:before { + content: "\f063"; } + +.fa-arrow-left:before { + content: "\f060"; } + +.fa-arrow-right:before { + content: "\f061"; } + +.fa-arrow-up:before { + content: "\f062"; } + +.fa-arrows-alt:before { + content: "\f0b2"; } + +.fa-arrows-alt-h:before { + content: "\f337"; } + +.fa-arrows-alt-v:before { + content: "\f338"; } + +.fa-artstation:before { + content: "\f77a"; } + +.fa-assistive-listening-systems:before { + content: "\f2a2"; } + +.fa-asterisk:before { + content: "\f069"; } + +.fa-asymmetrik:before { + content: "\f372"; } + +.fa-at:before { + content: "\f1fa"; } + +.fa-atlas:before { + content: "\f558"; } + +.fa-atlassian:before { + content: "\f77b"; } + +.fa-atom:before { + content: "\f5d2"; } + +.fa-audible:before { + content: "\f373"; } + +.fa-audio-description:before { + content: "\f29e"; } + +.fa-autoprefixer:before { + content: "\f41c"; } + +.fa-avianex:before { + content: "\f374"; } + +.fa-aviato:before { + content: "\f421"; } + +.fa-award:before { + content: "\f559"; } + +.fa-aws:before { + content: "\f375"; } + +.fa-baby:before { + content: "\f77c"; } + +.fa-baby-carriage:before { + content: "\f77d"; } + +.fa-backspace:before { + content: "\f55a"; } + +.fa-backward:before { + content: "\f04a"; } + +.fa-bacon:before { + content: "\f7e5"; } + +.fa-bahai:before { + content: "\f666"; } + +.fa-balance-scale:before { + content: "\f24e"; } + +.fa-balance-scale-left:before { + content: "\f515"; } + +.fa-balance-scale-right:before { + content: "\f516"; } + +.fa-ban:before { + content: "\f05e"; } + +.fa-band-aid:before { + content: "\f462"; } + +.fa-bandcamp:before { + content: "\f2d5"; } + +.fa-barcode:before { + content: "\f02a"; } + +.fa-bars:before { + content: "\f0c9"; } + +.fa-baseball-ball:before { + content: "\f433"; } + +.fa-basketball-ball:before { + content: "\f434"; } + +.fa-bath:before { + content: "\f2cd"; } + +.fa-battery-empty:before { + content: "\f244"; } + +.fa-battery-full:before { + content: "\f240"; } + +.fa-battery-half:before { + content: "\f242"; } + +.fa-battery-quarter:before { + content: "\f243"; } + +.fa-battery-three-quarters:before { + content: "\f241"; } + +.fa-battle-net:before { + content: "\f835"; } + +.fa-bed:before { + content: "\f236"; } + +.fa-beer:before { + content: "\f0fc"; } + +.fa-behance:before { + content: "\f1b4"; } + +.fa-behance-square:before { + content: "\f1b5"; } + +.fa-bell:before { + content: "\f0f3"; } + +.fa-bell-slash:before { + content: "\f1f6"; } + +.fa-bezier-curve:before { + content: "\f55b"; } + +.fa-bible:before { + content: "\f647"; } + +.fa-bicycle:before { + content: "\f206"; } + +.fa-biking:before { + content: "\f84a"; } + +.fa-bimobject:before { + content: "\f378"; } + +.fa-binoculars:before { + content: "\f1e5"; } + +.fa-biohazard:before { + content: "\f780"; } + +.fa-birthday-cake:before { + content: "\f1fd"; } + +.fa-bitbucket:before { + content: "\f171"; } + +.fa-bitcoin:before { + content: "\f379"; } + +.fa-bity:before { + content: "\f37a"; } + +.fa-black-tie:before { + content: "\f27e"; } + +.fa-blackberry:before { + content: "\f37b"; } + +.fa-blender:before { + content: "\f517"; } + +.fa-blender-phone:before { + content: "\f6b6"; } + +.fa-blind:before { + content: "\f29d"; } + +.fa-blog:before { + content: "\f781"; } + +.fa-blogger:before { + content: "\f37c"; } + +.fa-blogger-b:before { + content: "\f37d"; } + +.fa-bluetooth:before { + content: "\f293"; } + +.fa-bluetooth-b:before { + content: "\f294"; } + +.fa-bold:before { + content: "\f032"; } + +.fa-bolt:before { + content: "\f0e7"; } + +.fa-bomb:before { + content: "\f1e2"; } + +.fa-bone:before { + content: "\f5d7"; } + +.fa-bong:before { + content: "\f55c"; } + +.fa-book:before { + content: "\f02d"; } + +.fa-book-dead:before { + content: "\f6b7"; } + +.fa-book-medical:before { + content: "\f7e6"; } + +.fa-book-open:before { + content: "\f518"; } + +.fa-book-reader:before { + content: "\f5da"; } + +.fa-bookmark:before { + content: "\f02e"; } + +.fa-bootstrap:before { + content: "\f836"; } + +.fa-border-all:before { + content: "\f84c"; } + +.fa-border-none:before { + content: "\f850"; } + +.fa-border-style:before { + content: "\f853"; } + +.fa-bowling-ball:before { + content: "\f436"; } + +.fa-box:before { + content: "\f466"; } + +.fa-box-open:before { + content: "\f49e"; } + +.fa-boxes:before { + content: "\f468"; } + +.fa-braille:before { + content: "\f2a1"; } + +.fa-brain:before { + content: "\f5dc"; } + +.fa-bread-slice:before { + content: "\f7ec"; } + +.fa-briefcase:before { + content: "\f0b1"; } + +.fa-briefcase-medical:before { + content: "\f469"; } + +.fa-broadcast-tower:before { + content: "\f519"; } + +.fa-broom:before { + content: "\f51a"; } + +.fa-brush:before { + content: "\f55d"; } + +.fa-btc:before { + content: "\f15a"; } + +.fa-buffer:before { + content: "\f837"; } + +.fa-bug:before { + content: "\f188"; } + +.fa-building:before { + content: "\f1ad"; } + +.fa-bullhorn:before { + content: "\f0a1"; } + +.fa-bullseye:before { + content: "\f140"; } + +.fa-burn:before { + content: "\f46a"; } + +.fa-buromobelexperte:before { + content: "\f37f"; } + +.fa-bus:before { + content: "\f207"; } + +.fa-bus-alt:before { + content: "\f55e"; } + +.fa-business-time:before { + content: "\f64a"; } + +.fa-buy-n-large:before { + content: "\f8a6"; } + +.fa-buysellads:before { + content: "\f20d"; } + +.fa-calculator:before { + content: "\f1ec"; } + +.fa-calendar:before { + content: "\f133"; } + +.fa-calendar-alt:before { + content: "\f073"; } + +.fa-calendar-check:before { + content: "\f274"; } + +.fa-calendar-day:before { + content: "\f783"; } + +.fa-calendar-minus:before { + content: "\f272"; } + +.fa-calendar-plus:before { + content: "\f271"; } + +.fa-calendar-times:before { + content: "\f273"; } + +.fa-calendar-week:before { + content: "\f784"; } + +.fa-camera:before { + content: "\f030"; } + +.fa-camera-retro:before { + content: "\f083"; } + +.fa-campground:before { + content: "\f6bb"; } + +.fa-canadian-maple-leaf:before { + content: "\f785"; } + +.fa-candy-cane:before { + content: "\f786"; } + +.fa-cannabis:before { + content: "\f55f"; } + +.fa-capsules:before { + content: "\f46b"; } + +.fa-car:before { + content: "\f1b9"; } + +.fa-car-alt:before { + content: "\f5de"; } + +.fa-car-battery:before { + content: "\f5df"; } + +.fa-car-crash:before { + content: "\f5e1"; } + +.fa-car-side:before { + content: "\f5e4"; } + +.fa-caravan:before { + content: "\f8ff"; } + +.fa-caret-down:before { + content: "\f0d7"; } + +.fa-caret-left:before { + content: "\f0d9"; } + +.fa-caret-right:before { + content: "\f0da"; } + +.fa-caret-square-down:before { + content: "\f150"; } + +.fa-caret-square-left:before { + content: "\f191"; } + +.fa-caret-square-right:before { + content: "\f152"; } + +.fa-caret-square-up:before { + content: "\f151"; } + +.fa-caret-up:before { + content: "\f0d8"; } + +.fa-carrot:before { + content: "\f787"; } + +.fa-cart-arrow-down:before { + content: "\f218"; } + +.fa-cart-plus:before { + content: "\f217"; } + +.fa-cash-register:before { + content: "\f788"; } + +.fa-cat:before { + content: "\f6be"; } + +.fa-cc-amazon-pay:before { + content: "\f42d"; } + +.fa-cc-amex:before { + content: "\f1f3"; } + +.fa-cc-apple-pay:before { + content: "\f416"; } + +.fa-cc-diners-club:before { + content: "\f24c"; } + +.fa-cc-discover:before { + content: "\f1f2"; } + +.fa-cc-jcb:before { + content: "\f24b"; } + +.fa-cc-mastercard:before { + content: "\f1f1"; } + +.fa-cc-paypal:before { + content: "\f1f4"; } + +.fa-cc-stripe:before { + content: "\f1f5"; } + +.fa-cc-visa:before { + content: "\f1f0"; } + +.fa-centercode:before { + content: "\f380"; } + +.fa-centos:before { + content: "\f789"; } + +.fa-certificate:before { + content: "\f0a3"; } + +.fa-chair:before { + content: "\f6c0"; } + +.fa-chalkboard:before { + content: "\f51b"; } + +.fa-chalkboard-teacher:before { + content: "\f51c"; } + +.fa-charging-station:before { + content: "\f5e7"; } + +.fa-chart-area:before { + content: "\f1fe"; } + +.fa-chart-bar:before { + content: "\f080"; } + +.fa-chart-line:before { + content: "\f201"; } + +.fa-chart-pie:before { + content: "\f200"; } + +.fa-check:before { + content: "\f00c"; } + +.fa-check-circle:before { + content: "\f058"; } + +.fa-check-double:before { + content: "\f560"; } + +.fa-check-square:before { + content: "\f14a"; } + +.fa-cheese:before { + content: "\f7ef"; } + +.fa-chess:before { + content: "\f439"; } + +.fa-chess-bishop:before { + content: "\f43a"; } + +.fa-chess-board:before { + content: "\f43c"; } + +.fa-chess-king:before { + content: "\f43f"; } + +.fa-chess-knight:before { + content: "\f441"; } + +.fa-chess-pawn:before { + content: "\f443"; } + +.fa-chess-queen:before { + content: "\f445"; } + +.fa-chess-rook:before { + content: "\f447"; } + +.fa-chevron-circle-down:before { + content: "\f13a"; } + +.fa-chevron-circle-left:before { + content: "\f137"; } + +.fa-chevron-circle-right:before { + content: "\f138"; } + +.fa-chevron-circle-up:before { + content: "\f139"; } + +.fa-chevron-down:before { + content: "\f078"; } + +.fa-chevron-left:before { + content: "\f053"; } + +.fa-chevron-right:before { + content: "\f054"; } + +.fa-chevron-up:before { + content: "\f077"; } + +.fa-child:before { + content: "\f1ae"; } + +.fa-chrome:before { + content: "\f268"; } + +.fa-chromecast:before { + content: "\f838"; } + +.fa-church:before { + content: "\f51d"; } + +.fa-circle:before { + content: "\f111"; } + +.fa-circle-notch:before { + content: "\f1ce"; } + +.fa-city:before { + content: "\f64f"; } + +.fa-clinic-medical:before { + content: "\f7f2"; } + +.fa-clipboard:before { + content: "\f328"; } + +.fa-clipboard-check:before { + content: "\f46c"; } + +.fa-clipboard-list:before { + content: "\f46d"; } + +.fa-clock:before { + content: "\f017"; } + +.fa-clone:before { + content: "\f24d"; } + +.fa-closed-captioning:before { + content: "\f20a"; } + +.fa-cloud:before { + content: "\f0c2"; } + +.fa-cloud-download-alt:before { + content: "\f381"; } + +.fa-cloud-meatball:before { + content: "\f73b"; } + +.fa-cloud-moon:before { + content: "\f6c3"; } + +.fa-cloud-moon-rain:before { + content: "\f73c"; } + +.fa-cloud-rain:before { + content: "\f73d"; } + +.fa-cloud-showers-heavy:before { + content: "\f740"; } + +.fa-cloud-sun:before { + content: "\f6c4"; } + +.fa-cloud-sun-rain:before { + content: "\f743"; } + +.fa-cloud-upload-alt:before { + content: "\f382"; } + +.fa-cloudscale:before { + content: "\f383"; } + +.fa-cloudsmith:before { + content: "\f384"; } + +.fa-cloudversify:before { + content: "\f385"; } + +.fa-cocktail:before { + content: "\f561"; } + +.fa-code:before { + content: "\f121"; } + +.fa-code-branch:before { + content: "\f126"; } + +.fa-codepen:before { + content: "\f1cb"; } + +.fa-codiepie:before { + content: "\f284"; } + +.fa-coffee:before { + content: "\f0f4"; } + +.fa-cog:before { + content: "\f013"; } + +.fa-cogs:before { + content: "\f085"; } + +.fa-coins:before { + content: "\f51e"; } + +.fa-columns:before { + content: "\f0db"; } + +.fa-comment:before { + content: "\f075"; } + +.fa-comment-alt:before { + content: "\f27a"; } + +.fa-comment-dollar:before { + content: "\f651"; } + +.fa-comment-dots:before { + content: "\f4ad"; } + +.fa-comment-medical:before { + content: "\f7f5"; } + +.fa-comment-slash:before { + content: "\f4b3"; } + +.fa-comments:before { + content: "\f086"; } + +.fa-comments-dollar:before { + content: "\f653"; } + +.fa-compact-disc:before { + content: "\f51f"; } + +.fa-compass:before { + content: "\f14e"; } + +.fa-compress:before { + content: "\f066"; } + +.fa-compress-alt:before { + content: "\f422"; } + +.fa-compress-arrows-alt:before { + content: "\f78c"; } + +.fa-concierge-bell:before { + content: "\f562"; } + +.fa-confluence:before { + content: "\f78d"; } + +.fa-connectdevelop:before { + content: "\f20e"; } + +.fa-contao:before { + content: "\f26d"; } + +.fa-cookie:before { + content: "\f563"; } + +.fa-cookie-bite:before { + content: "\f564"; } + +.fa-copy:before { + content: "\f0c5"; } + +.fa-copyright:before { + content: "\f1f9"; } + +.fa-cotton-bureau:before { + content: "\f89e"; } + +.fa-couch:before { + content: "\f4b8"; } + +.fa-cpanel:before { + content: "\f388"; } + +.fa-creative-commons:before { + content: "\f25e"; } + +.fa-creative-commons-by:before { + content: "\f4e7"; } + +.fa-creative-commons-nc:before { + content: "\f4e8"; } + +.fa-creative-commons-nc-eu:before { + content: "\f4e9"; } + +.fa-creative-commons-nc-jp:before { + content: "\f4ea"; } + +.fa-creative-commons-nd:before { + content: "\f4eb"; } + +.fa-creative-commons-pd:before { + content: "\f4ec"; } + +.fa-creative-commons-pd-alt:before { + content: "\f4ed"; } + +.fa-creative-commons-remix:before { + content: "\f4ee"; } + +.fa-creative-commons-sa:before { + content: "\f4ef"; } + +.fa-creative-commons-sampling:before { + content: "\f4f0"; } + +.fa-creative-commons-sampling-plus:before { + content: "\f4f1"; } + +.fa-creative-commons-share:before { + content: "\f4f2"; } + +.fa-creative-commons-zero:before { + content: "\f4f3"; } + +.fa-credit-card:before { + content: "\f09d"; } + +.fa-critical-role:before { + content: "\f6c9"; } + +.fa-crop:before { + content: "\f125"; } + +.fa-crop-alt:before { + content: "\f565"; } + +.fa-cross:before { + content: "\f654"; } + +.fa-crosshairs:before { + content: "\f05b"; } + +.fa-crow:before { + content: "\f520"; } + +.fa-crown:before { + content: "\f521"; } + +.fa-crutch:before { + content: "\f7f7"; } + +.fa-css3:before { + content: "\f13c"; } + +.fa-css3-alt:before { + content: "\f38b"; } + +.fa-cube:before { + content: "\f1b2"; } + +.fa-cubes:before { + content: "\f1b3"; } + +.fa-cut:before { + content: "\f0c4"; } + +.fa-cuttlefish:before { + content: "\f38c"; } + +.fa-d-and-d:before { + content: "\f38d"; } + +.fa-d-and-d-beyond:before { + content: "\f6ca"; } + +.fa-dailymotion:before { + content: "\f952"; } + +.fa-dashcube:before { + content: "\f210"; } + +.fa-database:before { + content: "\f1c0"; } + +.fa-deaf:before { + content: "\f2a4"; } + +.fa-delicious:before { + content: "\f1a5"; } + +.fa-democrat:before { + content: "\f747"; } + +.fa-deploydog:before { + content: "\f38e"; } + +.fa-deskpro:before { + content: "\f38f"; } + +.fa-desktop:before { + content: "\f108"; } + +.fa-dev:before { + content: "\f6cc"; } + +.fa-deviantart:before { + content: "\f1bd"; } + +.fa-dharmachakra:before { + content: "\f655"; } + +.fa-dhl:before { + content: "\f790"; } + +.fa-diagnoses:before { + content: "\f470"; } + +.fa-diaspora:before { + content: "\f791"; } + +.fa-dice:before { + content: "\f522"; } + +.fa-dice-d20:before { + content: "\f6cf"; } + +.fa-dice-d6:before { + content: "\f6d1"; } + +.fa-dice-five:before { + content: "\f523"; } + +.fa-dice-four:before { + content: "\f524"; } + +.fa-dice-one:before { + content: "\f525"; } + +.fa-dice-six:before { + content: "\f526"; } + +.fa-dice-three:before { + content: "\f527"; } + +.fa-dice-two:before { + content: "\f528"; } + +.fa-digg:before { + content: "\f1a6"; } + +.fa-digital-ocean:before { + content: "\f391"; } + +.fa-digital-tachograph:before { + content: "\f566"; } + +.fa-directions:before { + content: "\f5eb"; } + +.fa-discord:before { + content: "\f392"; } + +.fa-discourse:before { + content: "\f393"; } + +.fa-divide:before { + content: "\f529"; } + +.fa-dizzy:before { + content: "\f567"; } + +.fa-dna:before { + content: "\f471"; } + +.fa-dochub:before { + content: "\f394"; } + +.fa-docker:before { + content: "\f395"; } + +.fa-dog:before { + content: "\f6d3"; } + +.fa-dollar-sign:before { + content: "\f155"; } + +.fa-dolly:before { + content: "\f472"; } + +.fa-dolly-flatbed:before { + content: "\f474"; } + +.fa-donate:before { + content: "\f4b9"; } + +.fa-door-closed:before { + content: "\f52a"; } + +.fa-door-open:before { + content: "\f52b"; } + +.fa-dot-circle:before { + content: "\f192"; } + +.fa-dove:before { + content: "\f4ba"; } + +.fa-download:before { + content: "\f019"; } + +.fa-draft2digital:before { + content: "\f396"; } + +.fa-drafting-compass:before { + content: "\f568"; } + +.fa-dragon:before { + content: "\f6d5"; } + +.fa-draw-polygon:before { + content: "\f5ee"; } + +.fa-dribbble:before { + content: "\f17d"; } + +.fa-dribbble-square:before { + content: "\f397"; } + +.fa-dropbox:before { + content: "\f16b"; } + +.fa-drum:before { + content: "\f569"; } + +.fa-drum-steelpan:before { + content: "\f56a"; } + +.fa-drumstick-bite:before { + content: "\f6d7"; } + +.fa-drupal:before { + content: "\f1a9"; } + +.fa-dumbbell:before { + content: "\f44b"; } + +.fa-dumpster:before { + content: "\f793"; } + +.fa-dumpster-fire:before { + content: "\f794"; } + +.fa-dungeon:before { + content: "\f6d9"; } + +.fa-dyalog:before { + content: "\f399"; } + +.fa-earlybirds:before { + content: "\f39a"; } + +.fa-ebay:before { + content: "\f4f4"; } + +.fa-edge:before { + content: "\f282"; } + +.fa-edit:before { + content: "\f044"; } + +.fa-egg:before { + content: "\f7fb"; } + +.fa-eject:before { + content: "\f052"; } + +.fa-elementor:before { + content: "\f430"; } + +.fa-ellipsis-h:before { + content: "\f141"; } + +.fa-ellipsis-v:before { + content: "\f142"; } + +.fa-ello:before { + content: "\f5f1"; } + +.fa-ember:before { + content: "\f423"; } + +.fa-empire:before { + content: "\f1d1"; } + +.fa-envelope:before { + content: "\f0e0"; } + +.fa-envelope-open:before { + content: "\f2b6"; } + +.fa-envelope-open-text:before { + content: "\f658"; } + +.fa-envelope-square:before { + content: "\f199"; } + +.fa-envira:before { + content: "\f299"; } + +.fa-equals:before { + content: "\f52c"; } + +.fa-eraser:before { + content: "\f12d"; } + +.fa-erlang:before { + content: "\f39d"; } + +.fa-ethereum:before { + content: "\f42e"; } + +.fa-ethernet:before { + content: "\f796"; } + +.fa-etsy:before { + content: "\f2d7"; } + +.fa-euro-sign:before { + content: "\f153"; } + +.fa-evernote:before { + content: "\f839"; } + +.fa-exchange-alt:before { + content: "\f362"; } + +.fa-exclamation:before { + content: "\f12a"; } + +.fa-exclamation-circle:before { + content: "\f06a"; } + +.fa-exclamation-triangle:before { + content: "\f071"; } + +.fa-expand:before { + content: "\f065"; } + +.fa-expand-alt:before { + content: "\f424"; } + +.fa-expand-arrows-alt:before { + content: "\f31e"; } + +.fa-expeditedssl:before { + content: "\f23e"; } + +.fa-external-link-alt:before { + content: "\f35d"; } + +.fa-external-link-square-alt:before { + content: "\f360"; } + +.fa-eye:before { + content: "\f06e"; } + +.fa-eye-dropper:before { + content: "\f1fb"; } + +.fa-eye-slash:before { + content: "\f070"; } + +.fa-facebook:before { + content: "\f09a"; } + +.fa-facebook-f:before { + content: "\f39e"; } + +.fa-facebook-messenger:before { + content: "\f39f"; } + +.fa-facebook-square:before { + content: "\f082"; } + +.fa-fan:before { + content: "\f863"; } + +.fa-fantasy-flight-games:before { + content: "\f6dc"; } + +.fa-fast-backward:before { + content: "\f049"; } + +.fa-fast-forward:before { + content: "\f050"; } + +.fa-fax:before { + content: "\f1ac"; } + +.fa-feather:before { + content: "\f52d"; } + +.fa-feather-alt:before { + content: "\f56b"; } + +.fa-fedex:before { + content: "\f797"; } + +.fa-fedora:before { + content: "\f798"; } + +.fa-female:before { + content: "\f182"; } + +.fa-fighter-jet:before { + content: "\f0fb"; } + +.fa-figma:before { + content: "\f799"; } + +.fa-file:before { + content: "\f15b"; } + +.fa-file-alt:before { + content: "\f15c"; } + +.fa-file-archive:before { + content: "\f1c6"; } + +.fa-file-audio:before { + content: "\f1c7"; } + +.fa-file-code:before { + content: "\f1c9"; } + +.fa-file-contract:before { + content: "\f56c"; } + +.fa-file-csv:before { + content: "\f6dd"; } + +.fa-file-download:before { + content: "\f56d"; } + +.fa-file-excel:before { + content: "\f1c3"; } + +.fa-file-export:before { + content: "\f56e"; } + +.fa-file-image:before { + content: "\f1c5"; } + +.fa-file-import:before { + content: "\f56f"; } + +.fa-file-invoice:before { + content: "\f570"; } + +.fa-file-invoice-dollar:before { + content: "\f571"; } + +.fa-file-medical:before { + content: "\f477"; } + +.fa-file-medical-alt:before { + content: "\f478"; } + +.fa-file-pdf:before { + content: "\f1c1"; } + +.fa-file-powerpoint:before { + content: "\f1c4"; } + +.fa-file-prescription:before { + content: "\f572"; } + +.fa-file-signature:before { + content: "\f573"; } + +.fa-file-upload:before { + content: "\f574"; } + +.fa-file-video:before { + content: "\f1c8"; } + +.fa-file-word:before { + content: "\f1c2"; } + +.fa-fill:before { + content: "\f575"; } + +.fa-fill-drip:before { + content: "\f576"; } + +.fa-film:before { + content: "\f008"; } + +.fa-filter:before { + content: "\f0b0"; } + +.fa-fingerprint:before { + content: "\f577"; } + +.fa-fire:before { + content: "\f06d"; } + +.fa-fire-alt:before { + content: "\f7e4"; } + +.fa-fire-extinguisher:before { + content: "\f134"; } + +.fa-firefox:before { + content: "\f269"; } + +.fa-firefox-browser:before { + content: "\f907"; } + +.fa-first-aid:before { + content: "\f479"; } + +.fa-first-order:before { + content: "\f2b0"; } + +.fa-first-order-alt:before { + content: "\f50a"; } + +.fa-firstdraft:before { + content: "\f3a1"; } + +.fa-fish:before { + content: "\f578"; } + +.fa-fist-raised:before { + content: "\f6de"; } + +.fa-flag:before { + content: "\f024"; } + +.fa-flag-checkered:before { + content: "\f11e"; } + +.fa-flag-usa:before { + content: "\f74d"; } + +.fa-flask:before { + content: "\f0c3"; } + +.fa-flickr:before { + content: "\f16e"; } + +.fa-flipboard:before { + content: "\f44d"; } + +.fa-flushed:before { + content: "\f579"; } + +.fa-fly:before { + content: "\f417"; } + +.fa-folder:before { + content: "\f07b"; } + +.fa-folder-minus:before { + content: "\f65d"; } + +.fa-folder-open:before { + content: "\f07c"; } + +.fa-folder-plus:before { + content: "\f65e"; } + +.fa-font:before { + content: "\f031"; } + +.fa-font-awesome:before { + content: "\f2b4"; } + +.fa-font-awesome-alt:before { + content: "\f35c"; } + +.fa-font-awesome-flag:before { + content: "\f425"; } + +.fa-font-awesome-logo-full:before { + content: "\f4e6"; } + +.fa-fonticons:before { + content: "\f280"; } + +.fa-fonticons-fi:before { + content: "\f3a2"; } + +.fa-football-ball:before { + content: "\f44e"; } + +.fa-fort-awesome:before { + content: "\f286"; } + +.fa-fort-awesome-alt:before { + content: "\f3a3"; } + +.fa-forumbee:before { + content: "\f211"; } + +.fa-forward:before { + content: "\f04e"; } + +.fa-foursquare:before { + content: "\f180"; } + +.fa-free-code-camp:before { + content: "\f2c5"; } + +.fa-freebsd:before { + content: "\f3a4"; } + +.fa-frog:before { + content: "\f52e"; } + +.fa-frown:before { + content: "\f119"; } + +.fa-frown-open:before { + content: "\f57a"; } + +.fa-fulcrum:before { + content: "\f50b"; } + +.fa-funnel-dollar:before { + content: "\f662"; } + +.fa-futbol:before { + content: "\f1e3"; } + +.fa-galactic-republic:before { + content: "\f50c"; } + +.fa-galactic-senate:before { + content: "\f50d"; } + +.fa-gamepad:before { + content: "\f11b"; } + +.fa-gas-pump:before { + content: "\f52f"; } + +.fa-gavel:before { + content: "\f0e3"; } + +.fa-gem:before { + content: "\f3a5"; } + +.fa-genderless:before { + content: "\f22d"; } + +.fa-get-pocket:before { + content: "\f265"; } + +.fa-gg:before { + content: "\f260"; } + +.fa-gg-circle:before { + content: "\f261"; } + +.fa-ghost:before { + content: "\f6e2"; } + +.fa-gift:before { + content: "\f06b"; } + +.fa-gifts:before { + content: "\f79c"; } + +.fa-git:before { + content: "\f1d3"; } + +.fa-git-alt:before { + content: "\f841"; } + +.fa-git-square:before { + content: "\f1d2"; } + +.fa-github:before { + content: "\f09b"; } + +.fa-github-alt:before { + content: "\f113"; } + +.fa-github-square:before { + content: "\f092"; } + +.fa-gitkraken:before { + content: "\f3a6"; } + +.fa-gitlab:before { + content: "\f296"; } + +.fa-gitter:before { + content: "\f426"; } + +.fa-glass-cheers:before { + content: "\f79f"; } + +.fa-glass-martini:before { + content: "\f000"; } + +.fa-glass-martini-alt:before { + content: "\f57b"; } + +.fa-glass-whiskey:before { + content: "\f7a0"; } + +.fa-glasses:before { + content: "\f530"; } + +.fa-glide:before { + content: "\f2a5"; } + +.fa-glide-g:before { + content: "\f2a6"; } + +.fa-globe:before { + content: "\f0ac"; } + +.fa-globe-africa:before { + content: "\f57c"; } + +.fa-globe-americas:before { + content: "\f57d"; } + +.fa-globe-asia:before { + content: "\f57e"; } + +.fa-globe-europe:before { + content: "\f7a2"; } + +.fa-gofore:before { + content: "\f3a7"; } + +.fa-golf-ball:before { + content: "\f450"; } + +.fa-goodreads:before { + content: "\f3a8"; } + +.fa-goodreads-g:before { + content: "\f3a9"; } + +.fa-google:before { + content: "\f1a0"; } + +.fa-google-drive:before { + content: "\f3aa"; } + +.fa-google-play:before { + content: "\f3ab"; } + +.fa-google-plus:before { + content: "\f2b3"; } + +.fa-google-plus-g:before { + content: "\f0d5"; } + +.fa-google-plus-square:before { + content: "\f0d4"; } + +.fa-google-wallet:before { + content: "\f1ee"; } + +.fa-gopuram:before { + content: "\f664"; } + +.fa-graduation-cap:before { + content: "\f19d"; } + +.fa-gratipay:before { + content: "\f184"; } + +.fa-grav:before { + content: "\f2d6"; } + +.fa-greater-than:before { + content: "\f531"; } + +.fa-greater-than-equal:before { + content: "\f532"; } + +.fa-grimace:before { + content: "\f57f"; } + +.fa-grin:before { + content: "\f580"; } + +.fa-grin-alt:before { + content: "\f581"; } + +.fa-grin-beam:before { + content: "\f582"; } + +.fa-grin-beam-sweat:before { + content: "\f583"; } + +.fa-grin-hearts:before { + content: "\f584"; } + +.fa-grin-squint:before { + content: "\f585"; } + +.fa-grin-squint-tears:before { + content: "\f586"; } + +.fa-grin-stars:before { + content: "\f587"; } + +.fa-grin-tears:before { + content: "\f588"; } + +.fa-grin-tongue:before { + content: "\f589"; } + +.fa-grin-tongue-squint:before { + content: "\f58a"; } + +.fa-grin-tongue-wink:before { + content: "\f58b"; } + +.fa-grin-wink:before { + content: "\f58c"; } + +.fa-grip-horizontal:before { + content: "\f58d"; } + +.fa-grip-lines:before { + content: "\f7a4"; } + +.fa-grip-lines-vertical:before { + content: "\f7a5"; } + +.fa-grip-vertical:before { + content: "\f58e"; } + +.fa-gripfire:before { + content: "\f3ac"; } + +.fa-grunt:before { + content: "\f3ad"; } + +.fa-guitar:before { + content: "\f7a6"; } + +.fa-gulp:before { + content: "\f3ae"; } + +.fa-h-square:before { + content: "\f0fd"; } + +.fa-hacker-news:before { + content: "\f1d4"; } + +.fa-hacker-news-square:before { + content: "\f3af"; } + +.fa-hackerrank:before { + content: "\f5f7"; } + +.fa-hamburger:before { + content: "\f805"; } + +.fa-hammer:before { + content: "\f6e3"; } + +.fa-hamsa:before { + content: "\f665"; } + +.fa-hand-holding:before { + content: "\f4bd"; } + +.fa-hand-holding-heart:before { + content: "\f4be"; } + +.fa-hand-holding-usd:before { + content: "\f4c0"; } + +.fa-hand-lizard:before { + content: "\f258"; } + +.fa-hand-middle-finger:before { + content: "\f806"; } + +.fa-hand-paper:before { + content: "\f256"; } + +.fa-hand-peace:before { + content: "\f25b"; } + +.fa-hand-point-down:before { + content: "\f0a7"; } + +.fa-hand-point-left:before { + content: "\f0a5"; } + +.fa-hand-point-right:before { + content: "\f0a4"; } + +.fa-hand-point-up:before { + content: "\f0a6"; } + +.fa-hand-pointer:before { + content: "\f25a"; } + +.fa-hand-rock:before { + content: "\f255"; } + +.fa-hand-scissors:before { + content: "\f257"; } + +.fa-hand-spock:before { + content: "\f259"; } + +.fa-hands:before { + content: "\f4c2"; } + +.fa-hands-helping:before { + content: "\f4c4"; } + +.fa-handshake:before { + content: "\f2b5"; } + +.fa-hanukiah:before { + content: "\f6e6"; } + +.fa-hard-hat:before { + content: "\f807"; } + +.fa-hashtag:before { + content: "\f292"; } + +.fa-hat-cowboy:before { + content: "\f8c0"; } + +.fa-hat-cowboy-side:before { + content: "\f8c1"; } + +.fa-hat-wizard:before { + content: "\f6e8"; } + +.fa-hdd:before { + content: "\f0a0"; } + +.fa-heading:before { + content: "\f1dc"; } + +.fa-headphones:before { + content: "\f025"; } + +.fa-headphones-alt:before { + content: "\f58f"; } + +.fa-headset:before { + content: "\f590"; } + +.fa-heart:before { + content: "\f004"; } + +.fa-heart-broken:before { + content: "\f7a9"; } + +.fa-heartbeat:before { + content: "\f21e"; } + +.fa-helicopter:before { + content: "\f533"; } + +.fa-highlighter:before { + content: "\f591"; } + +.fa-hiking:before { + content: "\f6ec"; } + +.fa-hippo:before { + content: "\f6ed"; } + +.fa-hips:before { + content: "\f452"; } + +.fa-hire-a-helper:before { + content: "\f3b0"; } + +.fa-history:before { + content: "\f1da"; } + +.fa-hockey-puck:before { + content: "\f453"; } + +.fa-holly-berry:before { + content: "\f7aa"; } + +.fa-home:before { + content: "\f015"; } + +.fa-hooli:before { + content: "\f427"; } + +.fa-hornbill:before { + content: "\f592"; } + +.fa-horse:before { + content: "\f6f0"; } + +.fa-horse-head:before { + content: "\f7ab"; } + +.fa-hospital:before { + content: "\f0f8"; } + +.fa-hospital-alt:before { + content: "\f47d"; } + +.fa-hospital-symbol:before { + content: "\f47e"; } + +.fa-hot-tub:before { + content: "\f593"; } + +.fa-hotdog:before { + content: "\f80f"; } + +.fa-hotel:before { + content: "\f594"; } + +.fa-hotjar:before { + content: "\f3b1"; } + +.fa-hourglass:before { + content: "\f254"; } + +.fa-hourglass-end:before { + content: "\f253"; } + +.fa-hourglass-half:before { + content: "\f252"; } + +.fa-hourglass-start:before { + content: "\f251"; } + +.fa-house-damage:before { + content: "\f6f1"; } + +.fa-houzz:before { + content: "\f27c"; } + +.fa-hryvnia:before { + content: "\f6f2"; } + +.fa-html5:before { + content: "\f13b"; } + +.fa-hubspot:before { + content: "\f3b2"; } + +.fa-i-cursor:before { + content: "\f246"; } + +.fa-ice-cream:before { + content: "\f810"; } + +.fa-icicles:before { + content: "\f7ad"; } + +.fa-icons:before { + content: "\f86d"; } + +.fa-id-badge:before { + content: "\f2c1"; } + +.fa-id-card:before { + content: "\f2c2"; } + +.fa-id-card-alt:before { + content: "\f47f"; } + +.fa-ideal:before { + content: "\f913"; } + +.fa-igloo:before { + content: "\f7ae"; } + +.fa-image:before { + content: "\f03e"; } + +.fa-images:before { + content: "\f302"; } + +.fa-imdb:before { + content: "\f2d8"; } + +.fa-inbox:before { + content: "\f01c"; } + +.fa-indent:before { + content: "\f03c"; } + +.fa-industry:before { + content: "\f275"; } + +.fa-infinity:before { + content: "\f534"; } + +.fa-info:before { + content: "\f129"; } + +.fa-info-circle:before { + content: "\f05a"; } + +.fa-instagram:before { + content: "\f16d"; } + +.fa-instagram-square:before { + content: "\f955"; } + +.fa-intercom:before { + content: "\f7af"; } + +.fa-internet-explorer:before { + content: "\f26b"; } + +.fa-invision:before { + content: "\f7b0"; } + +.fa-ioxhost:before { + content: "\f208"; } + +.fa-italic:before { + content: "\f033"; } + +.fa-itch-io:before { + content: "\f83a"; } + +.fa-itunes:before { + content: "\f3b4"; } + +.fa-itunes-note:before { + content: "\f3b5"; } + +.fa-java:before { + content: "\f4e4"; } + +.fa-jedi:before { + content: "\f669"; } + +.fa-jedi-order:before { + content: "\f50e"; } + +.fa-jenkins:before { + content: "\f3b6"; } + +.fa-jira:before { + content: "\f7b1"; } + +.fa-joget:before { + content: "\f3b7"; } + +.fa-joint:before { + content: "\f595"; } + +.fa-joomla:before { + content: "\f1aa"; } + +.fa-journal-whills:before { + content: "\f66a"; } + +.fa-js:before { + content: "\f3b8"; } + +.fa-js-square:before { + content: "\f3b9"; } + +.fa-jsfiddle:before { + content: "\f1cc"; } + +.fa-kaaba:before { + content: "\f66b"; } + +.fa-kaggle:before { + content: "\f5fa"; } + +.fa-key:before { + content: "\f084"; } + +.fa-keybase:before { + content: "\f4f5"; } + +.fa-keyboard:before { + content: "\f11c"; } + +.fa-keycdn:before { + content: "\f3ba"; } + +.fa-khanda:before { + content: "\f66d"; } + +.fa-kickstarter:before { + content: "\f3bb"; } + +.fa-kickstarter-k:before { + content: "\f3bc"; } + +.fa-kiss:before { + content: "\f596"; } + +.fa-kiss-beam:before { + content: "\f597"; } + +.fa-kiss-wink-heart:before { + content: "\f598"; } + +.fa-kiwi-bird:before { + content: "\f535"; } + +.fa-korvue:before { + content: "\f42f"; } + +.fa-landmark:before { + content: "\f66f"; } + +.fa-language:before { + content: "\f1ab"; } + +.fa-laptop:before { + content: "\f109"; } + +.fa-laptop-code:before { + content: "\f5fc"; } + +.fa-laptop-medical:before { + content: "\f812"; } + +.fa-laravel:before { + content: "\f3bd"; } + +.fa-lastfm:before { + content: "\f202"; } + +.fa-lastfm-square:before { + content: "\f203"; } + +.fa-laugh:before { + content: "\f599"; } + +.fa-laugh-beam:before { + content: "\f59a"; } + +.fa-laugh-squint:before { + content: "\f59b"; } + +.fa-laugh-wink:before { + content: "\f59c"; } + +.fa-layer-group:before { + content: "\f5fd"; } + +.fa-leaf:before { + content: "\f06c"; } + +.fa-leanpub:before { + content: "\f212"; } + +.fa-lemon:before { + content: "\f094"; } + +.fa-less:before { + content: "\f41d"; } + +.fa-less-than:before { + content: "\f536"; } + +.fa-less-than-equal:before { + content: "\f537"; } + +.fa-level-down-alt:before { + content: "\f3be"; } + +.fa-level-up-alt:before { + content: "\f3bf"; } + +.fa-life-ring:before { + content: "\f1cd"; } + +.fa-lightbulb:before { + content: "\f0eb"; } + +.fa-line:before { + content: "\f3c0"; } + +.fa-link:before { + content: "\f0c1"; } + +.fa-linkedin:before { + content: "\f08c"; } + +.fa-linkedin-in:before { + content: "\f0e1"; } + +.fa-linode:before { + content: "\f2b8"; } + +.fa-linux:before { + content: "\f17c"; } + +.fa-lira-sign:before { + content: "\f195"; } + +.fa-list:before { + content: "\f03a"; } + +.fa-list-alt:before { + content: "\f022"; } + +.fa-list-ol:before { + content: "\f0cb"; } + +.fa-list-ul:before { + content: "\f0ca"; } + +.fa-location-arrow:before { + content: "\f124"; } + +.fa-lock:before { + content: "\f023"; } + +.fa-lock-open:before { + content: "\f3c1"; } + +.fa-long-arrow-alt-down:before { + content: "\f309"; } + +.fa-long-arrow-alt-left:before { + content: "\f30a"; } + +.fa-long-arrow-alt-right:before { + content: "\f30b"; } + +.fa-long-arrow-alt-up:before { + content: "\f30c"; } + +.fa-low-vision:before { + content: "\f2a8"; } + +.fa-luggage-cart:before { + content: "\f59d"; } + +.fa-lyft:before { + content: "\f3c3"; } + +.fa-magento:before { + content: "\f3c4"; } + +.fa-magic:before { + content: "\f0d0"; } + +.fa-magnet:before { + content: "\f076"; } + +.fa-mail-bulk:before { + content: "\f674"; } + +.fa-mailchimp:before { + content: "\f59e"; } + +.fa-male:before { + content: "\f183"; } + +.fa-mandalorian:before { + content: "\f50f"; } + +.fa-map:before { + content: "\f279"; } + +.fa-map-marked:before { + content: "\f59f"; } + +.fa-map-marked-alt:before { + content: "\f5a0"; } + +.fa-map-marker:before { + content: "\f041"; } + +.fa-map-marker-alt:before { + content: "\f3c5"; } + +.fa-map-pin:before { + content: "\f276"; } + +.fa-map-signs:before { + content: "\f277"; } + +.fa-markdown:before { + content: "\f60f"; } + +.fa-marker:before { + content: "\f5a1"; } + +.fa-mars:before { + content: "\f222"; } + +.fa-mars-double:before { + content: "\f227"; } + +.fa-mars-stroke:before { + content: "\f229"; } + +.fa-mars-stroke-h:before { + content: "\f22b"; } + +.fa-mars-stroke-v:before { + content: "\f22a"; } + +.fa-mask:before { + content: "\f6fa"; } + +.fa-mastodon:before { + content: "\f4f6"; } + +.fa-maxcdn:before { + content: "\f136"; } + +.fa-mdb:before { + content: "\f8ca"; } + +.fa-medal:before { + content: "\f5a2"; } + +.fa-medapps:before { + content: "\f3c6"; } + +.fa-medium:before { + content: "\f23a"; } + +.fa-medium-m:before { + content: "\f3c7"; } + +.fa-medkit:before { + content: "\f0fa"; } + +.fa-medrt:before { + content: "\f3c8"; } + +.fa-meetup:before { + content: "\f2e0"; } + +.fa-megaport:before { + content: "\f5a3"; } + +.fa-meh:before { + content: "\f11a"; } + +.fa-meh-blank:before { + content: "\f5a4"; } + +.fa-meh-rolling-eyes:before { + content: "\f5a5"; } + +.fa-memory:before { + content: "\f538"; } + +.fa-mendeley:before { + content: "\f7b3"; } + +.fa-menorah:before { + content: "\f676"; } + +.fa-mercury:before { + content: "\f223"; } + +.fa-meteor:before { + content: "\f753"; } + +.fa-microblog:before { + content: "\f91a"; } + +.fa-microchip:before { + content: "\f2db"; } + +.fa-microphone:before { + content: "\f130"; } + +.fa-microphone-alt:before { + content: "\f3c9"; } + +.fa-microphone-alt-slash:before { + content: "\f539"; } + +.fa-microphone-slash:before { + content: "\f131"; } + +.fa-microscope:before { + content: "\f610"; } + +.fa-microsoft:before { + content: "\f3ca"; } + +.fa-minus:before { + content: "\f068"; } + +.fa-minus-circle:before { + content: "\f056"; } + +.fa-minus-square:before { + content: "\f146"; } + +.fa-mitten:before { + content: "\f7b5"; } + +.fa-mix:before { + content: "\f3cb"; } + +.fa-mixcloud:before { + content: "\f289"; } + +.fa-mixer:before { + content: "\f956"; } + +.fa-mizuni:before { + content: "\f3cc"; } + +.fa-mobile:before { + content: "\f10b"; } + +.fa-mobile-alt:before { + content: "\f3cd"; } + +.fa-modx:before { + content: "\f285"; } + +.fa-monero:before { + content: "\f3d0"; } + +.fa-money-bill:before { + content: "\f0d6"; } + +.fa-money-bill-alt:before { + content: "\f3d1"; } + +.fa-money-bill-wave:before { + content: "\f53a"; } + +.fa-money-bill-wave-alt:before { + content: "\f53b"; } + +.fa-money-check:before { + content: "\f53c"; } + +.fa-money-check-alt:before { + content: "\f53d"; } + +.fa-monument:before { + content: "\f5a6"; } + +.fa-moon:before { + content: "\f186"; } + +.fa-mortar-pestle:before { + content: "\f5a7"; } + +.fa-mosque:before { + content: "\f678"; } + +.fa-motorcycle:before { + content: "\f21c"; } + +.fa-mountain:before { + content: "\f6fc"; } + +.fa-mouse:before { + content: "\f8cc"; } + +.fa-mouse-pointer:before { + content: "\f245"; } + +.fa-mug-hot:before { + content: "\f7b6"; } + +.fa-music:before { + content: "\f001"; } + +.fa-napster:before { + content: "\f3d2"; } + +.fa-neos:before { + content: "\f612"; } + +.fa-network-wired:before { + content: "\f6ff"; } + +.fa-neuter:before { + content: "\f22c"; } + +.fa-newspaper:before { + content: "\f1ea"; } + +.fa-nimblr:before { + content: "\f5a8"; } + +.fa-node:before { + content: "\f419"; } + +.fa-node-js:before { + content: "\f3d3"; } + +.fa-not-equal:before { + content: "\f53e"; } + +.fa-notes-medical:before { + content: "\f481"; } + +.fa-npm:before { + content: "\f3d4"; } + +.fa-ns8:before { + content: "\f3d5"; } + +.fa-nutritionix:before { + content: "\f3d6"; } + +.fa-object-group:before { + content: "\f247"; } + +.fa-object-ungroup:before { + content: "\f248"; } + +.fa-odnoklassniki:before { + content: "\f263"; } + +.fa-odnoklassniki-square:before { + content: "\f264"; } + +.fa-oil-can:before { + content: "\f613"; } + +.fa-old-republic:before { + content: "\f510"; } + +.fa-om:before { + content: "\f679"; } + +.fa-opencart:before { + content: "\f23d"; } + +.fa-openid:before { + content: "\f19b"; } + +.fa-opera:before { + content: "\f26a"; } + +.fa-optin-monster:before { + content: "\f23c"; } + +.fa-orcid:before { + content: "\f8d2"; } + +.fa-osi:before { + content: "\f41a"; } + +.fa-otter:before { + content: "\f700"; } + +.fa-outdent:before { + content: "\f03b"; } + +.fa-page4:before { + content: "\f3d7"; } + +.fa-pagelines:before { + content: "\f18c"; } + +.fa-pager:before { + content: "\f815"; } + +.fa-paint-brush:before { + content: "\f1fc"; } + +.fa-paint-roller:before { + content: "\f5aa"; } + +.fa-palette:before { + content: "\f53f"; } + +.fa-palfed:before { + content: "\f3d8"; } + +.fa-pallet:before { + content: "\f482"; } + +.fa-paper-plane:before { + content: "\f1d8"; } + +.fa-paperclip:before { + content: "\f0c6"; } + +.fa-parachute-box:before { + content: "\f4cd"; } + +.fa-paragraph:before { + content: "\f1dd"; } + +.fa-parking:before { + content: "\f540"; } + +.fa-passport:before { + content: "\f5ab"; } + +.fa-pastafarianism:before { + content: "\f67b"; } + +.fa-paste:before { + content: "\f0ea"; } + +.fa-patreon:before { + content: "\f3d9"; } + +.fa-pause:before { + content: "\f04c"; } + +.fa-pause-circle:before { + content: "\f28b"; } + +.fa-paw:before { + content: "\f1b0"; } + +.fa-paypal:before { + content: "\f1ed"; } + +.fa-peace:before { + content: "\f67c"; } + +.fa-pen:before { + content: "\f304"; } + +.fa-pen-alt:before { + content: "\f305"; } + +.fa-pen-fancy:before { + content: "\f5ac"; } + +.fa-pen-nib:before { + content: "\f5ad"; } + +.fa-pen-square:before { + content: "\f14b"; } + +.fa-pencil-alt:before { + content: "\f303"; } + +.fa-pencil-ruler:before { + content: "\f5ae"; } + +.fa-penny-arcade:before { + content: "\f704"; } + +.fa-people-carry:before { + content: "\f4ce"; } + +.fa-pepper-hot:before { + content: "\f816"; } + +.fa-percent:before { + content: "\f295"; } + +.fa-percentage:before { + content: "\f541"; } + +.fa-periscope:before { + content: "\f3da"; } + +.fa-person-booth:before { + content: "\f756"; } + +.fa-phabricator:before { + content: "\f3db"; } + +.fa-phoenix-framework:before { + content: "\f3dc"; } + +.fa-phoenix-squadron:before { + content: "\f511"; } + +.fa-phone:before { + content: "\f095"; } + +.fa-phone-alt:before { + content: "\f879"; } + +.fa-phone-slash:before { + content: "\f3dd"; } + +.fa-phone-square:before { + content: "\f098"; } + +.fa-phone-square-alt:before { + content: "\f87b"; } + +.fa-phone-volume:before { + content: "\f2a0"; } + +.fa-photo-video:before { + content: "\f87c"; } + +.fa-php:before { + content: "\f457"; } + +.fa-pied-piper:before { + content: "\f2ae"; } + +.fa-pied-piper-alt:before { + content: "\f1a8"; } + +.fa-pied-piper-hat:before { + content: "\f4e5"; } + +.fa-pied-piper-pp:before { + content: "\f1a7"; } + +.fa-pied-piper-square:before { + content: "\f91e"; } + +.fa-piggy-bank:before { + content: "\f4d3"; } + +.fa-pills:before { + content: "\f484"; } + +.fa-pinterest:before { + content: "\f0d2"; } + +.fa-pinterest-p:before { + content: "\f231"; } + +.fa-pinterest-square:before { + content: "\f0d3"; } + +.fa-pizza-slice:before { + content: "\f818"; } + +.fa-place-of-worship:before { + content: "\f67f"; } + +.fa-plane:before { + content: "\f072"; } + +.fa-plane-arrival:before { + content: "\f5af"; } + +.fa-plane-departure:before { + content: "\f5b0"; } + +.fa-play:before { + content: "\f04b"; } + +.fa-play-circle:before { + content: "\f144"; } + +.fa-playstation:before { + content: "\f3df"; } + +.fa-plug:before { + content: "\f1e6"; } + +.fa-plus:before { + content: "\f067"; } + +.fa-plus-circle:before { + content: "\f055"; } + +.fa-plus-square:before { + content: "\f0fe"; } + +.fa-podcast:before { + content: "\f2ce"; } + +.fa-poll:before { + content: "\f681"; } + +.fa-poll-h:before { + content: "\f682"; } + +.fa-poo:before { + content: "\f2fe"; } + +.fa-poo-storm:before { + content: "\f75a"; } + +.fa-poop:before { + content: "\f619"; } + +.fa-portrait:before { + content: "\f3e0"; } + +.fa-pound-sign:before { + content: "\f154"; } + +.fa-power-off:before { + content: "\f011"; } + +.fa-pray:before { + content: "\f683"; } + +.fa-praying-hands:before { + content: "\f684"; } + +.fa-prescription:before { + content: "\f5b1"; } + +.fa-prescription-bottle:before { + content: "\f485"; } + +.fa-prescription-bottle-alt:before { + content: "\f486"; } + +.fa-print:before { + content: "\f02f"; } + +.fa-procedures:before { + content: "\f487"; } + +.fa-product-hunt:before { + content: "\f288"; } + +.fa-project-diagram:before { + content: "\f542"; } + +.fa-pushed:before { + content: "\f3e1"; } + +.fa-puzzle-piece:before { + content: "\f12e"; } + +.fa-python:before { + content: "\f3e2"; } + +.fa-qq:before { + content: "\f1d6"; } + +.fa-qrcode:before { + content: "\f029"; } + +.fa-question:before { + content: "\f128"; } + +.fa-question-circle:before { + content: "\f059"; } + +.fa-quidditch:before { + content: "\f458"; } + +.fa-quinscape:before { + content: "\f459"; } + +.fa-quora:before { + content: "\f2c4"; } + +.fa-quote-left:before { + content: "\f10d"; } + +.fa-quote-right:before { + content: "\f10e"; } + +.fa-quran:before { + content: "\f687"; } + +.fa-r-project:before { + content: "\f4f7"; } + +.fa-radiation:before { + content: "\f7b9"; } + +.fa-radiation-alt:before { + content: "\f7ba"; } + +.fa-rainbow:before { + content: "\f75b"; } + +.fa-random:before { + content: "\f074"; } + +.fa-raspberry-pi:before { + content: "\f7bb"; } + +.fa-ravelry:before { + content: "\f2d9"; } + +.fa-react:before { + content: "\f41b"; } + +.fa-reacteurope:before { + content: "\f75d"; } + +.fa-readme:before { + content: "\f4d5"; } + +.fa-rebel:before { + content: "\f1d0"; } + +.fa-receipt:before { + content: "\f543"; } + +.fa-record-vinyl:before { + content: "\f8d9"; } + +.fa-recycle:before { + content: "\f1b8"; } + +.fa-red-river:before { + content: "\f3e3"; } + +.fa-reddit:before { + content: "\f1a1"; } + +.fa-reddit-alien:before { + content: "\f281"; } + +.fa-reddit-square:before { + content: "\f1a2"; } + +.fa-redhat:before { + content: "\f7bc"; } + +.fa-redo:before { + content: "\f01e"; } + +.fa-redo-alt:before { + content: "\f2f9"; } + +.fa-registered:before { + content: "\f25d"; } + +.fa-remove-format:before { + content: "\f87d"; } + +.fa-renren:before { + content: "\f18b"; } + +.fa-reply:before { + content: "\f3e5"; } + +.fa-reply-all:before { + content: "\f122"; } + +.fa-replyd:before { + content: "\f3e6"; } + +.fa-republican:before { + content: "\f75e"; } + +.fa-researchgate:before { + content: "\f4f8"; } + +.fa-resolving:before { + content: "\f3e7"; } + +.fa-restroom:before { + content: "\f7bd"; } + +.fa-retweet:before { + content: "\f079"; } + +.fa-rev:before { + content: "\f5b2"; } + +.fa-ribbon:before { + content: "\f4d6"; } + +.fa-ring:before { + content: "\f70b"; } + +.fa-road:before { + content: "\f018"; } + +.fa-robot:before { + content: "\f544"; } + +.fa-rocket:before { + content: "\f135"; } + +.fa-rocketchat:before { + content: "\f3e8"; } + +.fa-rockrms:before { + content: "\f3e9"; } + +.fa-route:before { + content: "\f4d7"; } + +.fa-rss:before { + content: "\f09e"; } + +.fa-rss-square:before { + content: "\f143"; } + +.fa-ruble-sign:before { + content: "\f158"; } + +.fa-ruler:before { + content: "\f545"; } + +.fa-ruler-combined:before { + content: "\f546"; } + +.fa-ruler-horizontal:before { + content: "\f547"; } + +.fa-ruler-vertical:before { + content: "\f548"; } + +.fa-running:before { + content: "\f70c"; } + +.fa-rupee-sign:before { + content: "\f156"; } + +.fa-sad-cry:before { + content: "\f5b3"; } + +.fa-sad-tear:before { + content: "\f5b4"; } + +.fa-safari:before { + content: "\f267"; } + +.fa-salesforce:before { + content: "\f83b"; } + +.fa-sass:before { + content: "\f41e"; } + +.fa-satellite:before { + content: "\f7bf"; } + +.fa-satellite-dish:before { + content: "\f7c0"; } + +.fa-save:before { + content: "\f0c7"; } + +.fa-schlix:before { + content: "\f3ea"; } + +.fa-school:before { + content: "\f549"; } + +.fa-screwdriver:before { + content: "\f54a"; } + +.fa-scribd:before { + content: "\f28a"; } + +.fa-scroll:before { + content: "\f70e"; } + +.fa-sd-card:before { + content: "\f7c2"; } + +.fa-search:before { + content: "\f002"; } + +.fa-search-dollar:before { + content: "\f688"; } + +.fa-search-location:before { + content: "\f689"; } + +.fa-search-minus:before { + content: "\f010"; } + +.fa-search-plus:before { + content: "\f00e"; } + +.fa-searchengin:before { + content: "\f3eb"; } + +.fa-seedling:before { + content: "\f4d8"; } + +.fa-sellcast:before { + content: "\f2da"; } + +.fa-sellsy:before { + content: "\f213"; } + +.fa-server:before { + content: "\f233"; } + +.fa-servicestack:before { + content: "\f3ec"; } + +.fa-shapes:before { + content: "\f61f"; } + +.fa-share:before { + content: "\f064"; } + +.fa-share-alt:before { + content: "\f1e0"; } + +.fa-share-alt-square:before { + content: "\f1e1"; } + +.fa-share-square:before { + content: "\f14d"; } + +.fa-shekel-sign:before { + content: "\f20b"; } + +.fa-shield-alt:before { + content: "\f3ed"; } + +.fa-ship:before { + content: "\f21a"; } + +.fa-shipping-fast:before { + content: "\f48b"; } + +.fa-shirtsinbulk:before { + content: "\f214"; } + +.fa-shoe-prints:before { + content: "\f54b"; } + +.fa-shopify:before { + content: "\f957"; } + +.fa-shopping-bag:before { + content: "\f290"; } + +.fa-shopping-basket:before { + content: "\f291"; } + +.fa-shopping-cart:before { + content: "\f07a"; } + +.fa-shopware:before { + content: "\f5b5"; } + +.fa-shower:before { + content: "\f2cc"; } + +.fa-shuttle-van:before { + content: "\f5b6"; } + +.fa-sign:before { + content: "\f4d9"; } + +.fa-sign-in-alt:before { + content: "\f2f6"; } + +.fa-sign-language:before { + content: "\f2a7"; } + +.fa-sign-out-alt:before { + content: "\f2f5"; } + +.fa-signal:before { + content: "\f012"; } + +.fa-signature:before { + content: "\f5b7"; } + +.fa-sim-card:before { + content: "\f7c4"; } + +.fa-simplybuilt:before { + content: "\f215"; } + +.fa-sistrix:before { + content: "\f3ee"; } + +.fa-sitemap:before { + content: "\f0e8"; } + +.fa-sith:before { + content: "\f512"; } + +.fa-skating:before { + content: "\f7c5"; } + +.fa-sketch:before { + content: "\f7c6"; } + +.fa-skiing:before { + content: "\f7c9"; } + +.fa-skiing-nordic:before { + content: "\f7ca"; } + +.fa-skull:before { + content: "\f54c"; } + +.fa-skull-crossbones:before { + content: "\f714"; } + +.fa-skyatlas:before { + content: "\f216"; } + +.fa-skype:before { + content: "\f17e"; } + +.fa-slack:before { + content: "\f198"; } + +.fa-slack-hash:before { + content: "\f3ef"; } + +.fa-slash:before { + content: "\f715"; } + +.fa-sleigh:before { + content: "\f7cc"; } + +.fa-sliders-h:before { + content: "\f1de"; } + +.fa-slideshare:before { + content: "\f1e7"; } + +.fa-smile:before { + content: "\f118"; } + +.fa-smile-beam:before { + content: "\f5b8"; } + +.fa-smile-wink:before { + content: "\f4da"; } + +.fa-smog:before { + content: "\f75f"; } + +.fa-smoking:before { + content: "\f48d"; } + +.fa-smoking-ban:before { + content: "\f54d"; } + +.fa-sms:before { + content: "\f7cd"; } + +.fa-snapchat:before { + content: "\f2ab"; } + +.fa-snapchat-ghost:before { + content: "\f2ac"; } + +.fa-snapchat-square:before { + content: "\f2ad"; } + +.fa-snowboarding:before { + content: "\f7ce"; } + +.fa-snowflake:before { + content: "\f2dc"; } + +.fa-snowman:before { + content: "\f7d0"; } + +.fa-snowplow:before { + content: "\f7d2"; } + +.fa-socks:before { + content: "\f696"; } + +.fa-solar-panel:before { + content: "\f5ba"; } + +.fa-sort:before { + content: "\f0dc"; } + +.fa-sort-alpha-down:before { + content: "\f15d"; } + +.fa-sort-alpha-down-alt:before { + content: "\f881"; } + +.fa-sort-alpha-up:before { + content: "\f15e"; } + +.fa-sort-alpha-up-alt:before { + content: "\f882"; } + +.fa-sort-amount-down:before { + content: "\f160"; } + +.fa-sort-amount-down-alt:before { + content: "\f884"; } + +.fa-sort-amount-up:before { + content: "\f161"; } + +.fa-sort-amount-up-alt:before { + content: "\f885"; } + +.fa-sort-down:before { + content: "\f0dd"; } + +.fa-sort-numeric-down:before { + content: "\f162"; } + +.fa-sort-numeric-down-alt:before { + content: "\f886"; } + +.fa-sort-numeric-up:before { + content: "\f163"; } + +.fa-sort-numeric-up-alt:before { + content: "\f887"; } + +.fa-sort-up:before { + content: "\f0de"; } + +.fa-soundcloud:before { + content: "\f1be"; } + +.fa-sourcetree:before { + content: "\f7d3"; } + +.fa-spa:before { + content: "\f5bb"; } + +.fa-space-shuttle:before { + content: "\f197"; } + +.fa-speakap:before { + content: "\f3f3"; } + +.fa-speaker-deck:before { + content: "\f83c"; } + +.fa-spell-check:before { + content: "\f891"; } + +.fa-spider:before { + content: "\f717"; } + +.fa-spinner:before { + content: "\f110"; } + +.fa-splotch:before { + content: "\f5bc"; } + +.fa-spotify:before { + content: "\f1bc"; } + +.fa-spray-can:before { + content: "\f5bd"; } + +.fa-square:before { + content: "\f0c8"; } + +.fa-square-full:before { + content: "\f45c"; } + +.fa-square-root-alt:before { + content: "\f698"; } + +.fa-squarespace:before { + content: "\f5be"; } + +.fa-stack-exchange:before { + content: "\f18d"; } + +.fa-stack-overflow:before { + content: "\f16c"; } + +.fa-stackpath:before { + content: "\f842"; } + +.fa-stamp:before { + content: "\f5bf"; } + +.fa-star:before { + content: "\f005"; } + +.fa-star-and-crescent:before { + content: "\f699"; } + +.fa-star-half:before { + content: "\f089"; } + +.fa-star-half-alt:before { + content: "\f5c0"; } + +.fa-star-of-david:before { + content: "\f69a"; } + +.fa-star-of-life:before { + content: "\f621"; } + +.fa-staylinked:before { + content: "\f3f5"; } + +.fa-steam:before { + content: "\f1b6"; } + +.fa-steam-square:before { + content: "\f1b7"; } + +.fa-steam-symbol:before { + content: "\f3f6"; } + +.fa-step-backward:before { + content: "\f048"; } + +.fa-step-forward:before { + content: "\f051"; } + +.fa-stethoscope:before { + content: "\f0f1"; } + +.fa-sticker-mule:before { + content: "\f3f7"; } + +.fa-sticky-note:before { + content: "\f249"; } + +.fa-stop:before { + content: "\f04d"; } + +.fa-stop-circle:before { + content: "\f28d"; } + +.fa-stopwatch:before { + content: "\f2f2"; } + +.fa-store:before { + content: "\f54e"; } + +.fa-store-alt:before { + content: "\f54f"; } + +.fa-strava:before { + content: "\f428"; } + +.fa-stream:before { + content: "\f550"; } + +.fa-street-view:before { + content: "\f21d"; } + +.fa-strikethrough:before { + content: "\f0cc"; } + +.fa-stripe:before { + content: "\f429"; } + +.fa-stripe-s:before { + content: "\f42a"; } + +.fa-stroopwafel:before { + content: "\f551"; } + +.fa-studiovinari:before { + content: "\f3f8"; } + +.fa-stumbleupon:before { + content: "\f1a4"; } + +.fa-stumbleupon-circle:before { + content: "\f1a3"; } + +.fa-subscript:before { + content: "\f12c"; } + +.fa-subway:before { + content: "\f239"; } + +.fa-suitcase:before { + content: "\f0f2"; } + +.fa-suitcase-rolling:before { + content: "\f5c1"; } + +.fa-sun:before { + content: "\f185"; } + +.fa-superpowers:before { + content: "\f2dd"; } + +.fa-superscript:before { + content: "\f12b"; } + +.fa-supple:before { + content: "\f3f9"; } + +.fa-surprise:before { + content: "\f5c2"; } + +.fa-suse:before { + content: "\f7d6"; } + +.fa-swatchbook:before { + content: "\f5c3"; } + +.fa-swift:before { + content: "\f8e1"; } + +.fa-swimmer:before { + content: "\f5c4"; } + +.fa-swimming-pool:before { + content: "\f5c5"; } + +.fa-symfony:before { + content: "\f83d"; } + +.fa-synagogue:before { + content: "\f69b"; } + +.fa-sync:before { + content: "\f021"; } + +.fa-sync-alt:before { + content: "\f2f1"; } + +.fa-syringe:before { + content: "\f48e"; } + +.fa-table:before { + content: "\f0ce"; } + +.fa-table-tennis:before { + content: "\f45d"; } + +.fa-tablet:before { + content: "\f10a"; } + +.fa-tablet-alt:before { + content: "\f3fa"; } + +.fa-tablets:before { + content: "\f490"; } + +.fa-tachometer-alt:before { + content: "\f3fd"; } + +.fa-tag:before { + content: "\f02b"; } + +.fa-tags:before { + content: "\f02c"; } + +.fa-tape:before { + content: "\f4db"; } + +.fa-tasks:before { + content: "\f0ae"; } + +.fa-taxi:before { + content: "\f1ba"; } + +.fa-teamspeak:before { + content: "\f4f9"; } + +.fa-teeth:before { + content: "\f62e"; } + +.fa-teeth-open:before { + content: "\f62f"; } + +.fa-telegram:before { + content: "\f2c6"; } + +.fa-telegram-plane:before { + content: "\f3fe"; } + +.fa-temperature-high:before { + content: "\f769"; } + +.fa-temperature-low:before { + content: "\f76b"; } + +.fa-tencent-weibo:before { + content: "\f1d5"; } + +.fa-tenge:before { + content: "\f7d7"; } + +.fa-terminal:before { + content: "\f120"; } + +.fa-text-height:before { + content: "\f034"; } + +.fa-text-width:before { + content: "\f035"; } + +.fa-th:before { + content: "\f00a"; } + +.fa-th-large:before { + content: "\f009"; } + +.fa-th-list:before { + content: "\f00b"; } + +.fa-the-red-yeti:before { + content: "\f69d"; } + +.fa-theater-masks:before { + content: "\f630"; } + +.fa-themeco:before { + content: "\f5c6"; } + +.fa-themeisle:before { + content: "\f2b2"; } + +.fa-thermometer:before { + content: "\f491"; } + +.fa-thermometer-empty:before { + content: "\f2cb"; } + +.fa-thermometer-full:before { + content: "\f2c7"; } + +.fa-thermometer-half:before { + content: "\f2c9"; } + +.fa-thermometer-quarter:before { + content: "\f2ca"; } + +.fa-thermometer-three-quarters:before { + content: "\f2c8"; } + +.fa-think-peaks:before { + content: "\f731"; } + +.fa-thumbs-down:before { + content: "\f165"; } + +.fa-thumbs-up:before { + content: "\f164"; } + +.fa-thumbtack:before { + content: "\f08d"; } + +.fa-ticket-alt:before { + content: "\f3ff"; } + +.fa-times:before { + content: "\f00d"; } + +.fa-times-circle:before { + content: "\f057"; } + +.fa-tint:before { + content: "\f043"; } + +.fa-tint-slash:before { + content: "\f5c7"; } + +.fa-tired:before { + content: "\f5c8"; } + +.fa-toggle-off:before { + content: "\f204"; } + +.fa-toggle-on:before { + content: "\f205"; } + +.fa-toilet:before { + content: "\f7d8"; } + +.fa-toilet-paper:before { + content: "\f71e"; } + +.fa-toolbox:before { + content: "\f552"; } + +.fa-tools:before { + content: "\f7d9"; } + +.fa-tooth:before { + content: "\f5c9"; } + +.fa-torah:before { + content: "\f6a0"; } + +.fa-torii-gate:before { + content: "\f6a1"; } + +.fa-tractor:before { + content: "\f722"; } + +.fa-trade-federation:before { + content: "\f513"; } + +.fa-trademark:before { + content: "\f25c"; } + +.fa-traffic-light:before { + content: "\f637"; } + +.fa-trailer:before { + content: "\f941"; } + +.fa-train:before { + content: "\f238"; } + +.fa-tram:before { + content: "\f7da"; } + +.fa-transgender:before { + content: "\f224"; } + +.fa-transgender-alt:before { + content: "\f225"; } + +.fa-trash:before { + content: "\f1f8"; } + +.fa-trash-alt:before { + content: "\f2ed"; } + +.fa-trash-restore:before { + content: "\f829"; } + +.fa-trash-restore-alt:before { + content: "\f82a"; } + +.fa-tree:before { + content: "\f1bb"; } + +.fa-trello:before { + content: "\f181"; } + +.fa-tripadvisor:before { + content: "\f262"; } + +.fa-trophy:before { + content: "\f091"; } + +.fa-truck:before { + content: "\f0d1"; } + +.fa-truck-loading:before { + content: "\f4de"; } + +.fa-truck-monster:before { + content: "\f63b"; } + +.fa-truck-moving:before { + content: "\f4df"; } + +.fa-truck-pickup:before { + content: "\f63c"; } + +.fa-tshirt:before { + content: "\f553"; } + +.fa-tty:before { + content: "\f1e4"; } + +.fa-tumblr:before { + content: "\f173"; } + +.fa-tumblr-square:before { + content: "\f174"; } + +.fa-tv:before { + content: "\f26c"; } + +.fa-twitch:before { + content: "\f1e8"; } + +.fa-twitter:before { + content: "\f099"; } + +.fa-twitter-square:before { + content: "\f081"; } + +.fa-typo3:before { + content: "\f42b"; } + +.fa-uber:before { + content: "\f402"; } + +.fa-ubuntu:before { + content: "\f7df"; } + +.fa-uikit:before { + content: "\f403"; } + +.fa-umbraco:before { + content: "\f8e8"; } + +.fa-umbrella:before { + content: "\f0e9"; } + +.fa-umbrella-beach:before { + content: "\f5ca"; } + +.fa-underline:before { + content: "\f0cd"; } + +.fa-undo:before { + content: "\f0e2"; } + +.fa-undo-alt:before { + content: "\f2ea"; } + +.fa-uniregistry:before { + content: "\f404"; } + +.fa-unity:before { + content: "\f949"; } + +.fa-universal-access:before { + content: "\f29a"; } + +.fa-university:before { + content: "\f19c"; } + +.fa-unlink:before { + content: "\f127"; } + +.fa-unlock:before { + content: "\f09c"; } + +.fa-unlock-alt:before { + content: "\f13e"; } + +.fa-untappd:before { + content: "\f405"; } + +.fa-upload:before { + content: "\f093"; } + +.fa-ups:before { + content: "\f7e0"; } + +.fa-usb:before { + content: "\f287"; } + +.fa-user:before { + content: "\f007"; } + +.fa-user-alt:before { + content: "\f406"; } + +.fa-user-alt-slash:before { + content: "\f4fa"; } + +.fa-user-astronaut:before { + content: "\f4fb"; } + +.fa-user-check:before { + content: "\f4fc"; } + +.fa-user-circle:before { + content: "\f2bd"; } + +.fa-user-clock:before { + content: "\f4fd"; } + +.fa-user-cog:before { + content: "\f4fe"; } + +.fa-user-edit:before { + content: "\f4ff"; } + +.fa-user-friends:before { + content: "\f500"; } + +.fa-user-graduate:before { + content: "\f501"; } + +.fa-user-injured:before { + content: "\f728"; } + +.fa-user-lock:before { + content: "\f502"; } + +.fa-user-md:before { + content: "\f0f0"; } + +.fa-user-minus:before { + content: "\f503"; } + +.fa-user-ninja:before { + content: "\f504"; } + +.fa-user-nurse:before { + content: "\f82f"; } + +.fa-user-plus:before { + content: "\f234"; } + +.fa-user-secret:before { + content: "\f21b"; } + +.fa-user-shield:before { + content: "\f505"; } + +.fa-user-slash:before { + content: "\f506"; } + +.fa-user-tag:before { + content: "\f507"; } + +.fa-user-tie:before { + content: "\f508"; } + +.fa-user-times:before { + content: "\f235"; } + +.fa-users:before { + content: "\f0c0"; } + +.fa-users-cog:before { + content: "\f509"; } + +.fa-usps:before { + content: "\f7e1"; } + +.fa-ussunnah:before { + content: "\f407"; } + +.fa-utensil-spoon:before { + content: "\f2e5"; } + +.fa-utensils:before { + content: "\f2e7"; } + +.fa-vaadin:before { + content: "\f408"; } + +.fa-vector-square:before { + content: "\f5cb"; } + +.fa-venus:before { + content: "\f221"; } + +.fa-venus-double:before { + content: "\f226"; } + +.fa-venus-mars:before { + content: "\f228"; } + +.fa-viacoin:before { + content: "\f237"; } + +.fa-viadeo:before { + content: "\f2a9"; } + +.fa-viadeo-square:before { + content: "\f2aa"; } + +.fa-vial:before { + content: "\f492"; } + +.fa-vials:before { + content: "\f493"; } + +.fa-viber:before { + content: "\f409"; } + +.fa-video:before { + content: "\f03d"; } + +.fa-video-slash:before { + content: "\f4e2"; } + +.fa-vihara:before { + content: "\f6a7"; } + +.fa-vimeo:before { + content: "\f40a"; } + +.fa-vimeo-square:before { + content: "\f194"; } + +.fa-vimeo-v:before { + content: "\f27d"; } + +.fa-vine:before { + content: "\f1ca"; } + +.fa-vk:before { + content: "\f189"; } + +.fa-vnv:before { + content: "\f40b"; } + +.fa-voicemail:before { + content: "\f897"; } + +.fa-volleyball-ball:before { + content: "\f45f"; } + +.fa-volume-down:before { + content: "\f027"; } + +.fa-volume-mute:before { + content: "\f6a9"; } + +.fa-volume-off:before { + content: "\f026"; } + +.fa-volume-up:before { + content: "\f028"; } + +.fa-vote-yea:before { + content: "\f772"; } + +.fa-vr-cardboard:before { + content: "\f729"; } + +.fa-vuejs:before { + content: "\f41f"; } + +.fa-walking:before { + content: "\f554"; } + +.fa-wallet:before { + content: "\f555"; } + +.fa-warehouse:before { + content: "\f494"; } + +.fa-water:before { + content: "\f773"; } + +.fa-wave-square:before { + content: "\f83e"; } + +.fa-waze:before { + content: "\f83f"; } + +.fa-weebly:before { + content: "\f5cc"; } + +.fa-weibo:before { + content: "\f18a"; } + +.fa-weight:before { + content: "\f496"; } + +.fa-weight-hanging:before { + content: "\f5cd"; } + +.fa-weixin:before { + content: "\f1d7"; } + +.fa-whatsapp:before { + content: "\f232"; } + +.fa-whatsapp-square:before { + content: "\f40c"; } + +.fa-wheelchair:before { + content: "\f193"; } + +.fa-whmcs:before { + content: "\f40d"; } + +.fa-wifi:before { + content: "\f1eb"; } + +.fa-wikipedia-w:before { + content: "\f266"; } + +.fa-wind:before { + content: "\f72e"; } + +.fa-window-close:before { + content: "\f410"; } + +.fa-window-maximize:before { + content: "\f2d0"; } + +.fa-window-minimize:before { + content: "\f2d1"; } + +.fa-window-restore:before { + content: "\f2d2"; } + +.fa-windows:before { + content: "\f17a"; } + +.fa-wine-bottle:before { + content: "\f72f"; } + +.fa-wine-glass:before { + content: "\f4e3"; } + +.fa-wine-glass-alt:before { + content: "\f5ce"; } + +.fa-wix:before { + content: "\f5cf"; } + +.fa-wizards-of-the-coast:before { + content: "\f730"; } + +.fa-wolf-pack-battalion:before { + content: "\f514"; } + +.fa-won-sign:before { + content: "\f159"; } + +.fa-wordpress:before { + content: "\f19a"; } + +.fa-wordpress-simple:before { + content: "\f411"; } + +.fa-wpbeginner:before { + content: "\f297"; } + +.fa-wpexplorer:before { + content: "\f2de"; } + +.fa-wpforms:before { + content: "\f298"; } + +.fa-wpressr:before { + content: "\f3e4"; } + +.fa-wrench:before { + content: "\f0ad"; } + +.fa-x-ray:before { + content: "\f497"; } + +.fa-xbox:before { + content: "\f412"; } + +.fa-xing:before { + content: "\f168"; } + +.fa-xing-square:before { + content: "\f169"; } + +.fa-y-combinator:before { + content: "\f23b"; } + +.fa-yahoo:before { + content: "\f19e"; } + +.fa-yammer:before { + content: "\f840"; } + +.fa-yandex:before { + content: "\f413"; } + +.fa-yandex-international:before { + content: "\f414"; } + +.fa-yarn:before { + content: "\f7e3"; } + +.fa-yelp:before { + content: "\f1e9"; } + +.fa-yen-sign:before { + content: "\f157"; } + +.fa-yin-yang:before { + content: "\f6ad"; } + +.fa-yoast:before { + content: "\f2b1"; } + +.fa-youtube:before { + content: "\f167"; } + +.fa-youtube-square:before { + content: "\f431"; } + +.fa-zhihu:before { + content: "\f63f"; } + +.sr-only { + border: 0; + clip: rect(0, 0, 0, 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; } + +.sr-only-focusable:active, .sr-only-focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; } +@font-face { + font-family: 'Font Awesome 5 Brands'; + font-style: normal; + font-weight: 400; + font-display: auto; + src: url("../webfonts/fa-brands-400.eot"); + src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); } + +.fab { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } +@font-face { + font-family: 'Font Awesome 5 Free'; + font-style: normal; + font-weight: 400; + font-display: auto; + src: url("../webfonts/fa-regular-400.eot"); + src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); } + +.far { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } +@font-face { + font-family: 'Font Awesome 5 Free'; + font-style: normal; + font-weight: 900; + font-display: auto; + src: url("../webfonts/fa-solid-900.eot"); + src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); } + +.fa, +.fas { + font-family: 'Font Awesome 5 Free'; + font-weight: 900; } diff --git a/dist/fa/css/all.min.css b/dist/fa/css/all.min.css new file mode 100644 index 0000000..d16a4d5 --- /dev/null +++ b/dist/fa/css/all.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\f952"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\f907"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\f913"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\f955"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\f91a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\f956"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\f91e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\f957"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\f941"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\f949"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.fab,.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:auto;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900} \ No newline at end of file diff --git a/dist/fa/css/brands.css b/dist/fa/css/brands.css new file mode 100644 index 0000000..46f4266 --- /dev/null +++ b/dist/fa/css/brands.css @@ -0,0 +1,15 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +@font-face { + font-family: 'Font Awesome 5 Brands'; + font-style: normal; + font-weight: 400; + font-display: auto; + src: url("../webfonts/fa-brands-400.eot"); + src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); } + +.fab { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } diff --git a/dist/fa/css/brands.min.css b/dist/fa/css/brands.min.css new file mode 100644 index 0000000..1455bae --- /dev/null +++ b/dist/fa/css/brands.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands";font-weight:400} \ No newline at end of file diff --git a/dist/fa/css/fontawesome.css b/dist/fa/css/fontawesome.css new file mode 100644 index 0000000..b3e0c53 --- /dev/null +++ b/dist/fa/css/fontawesome.css @@ -0,0 +1,4429 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa, +.fas, +.far, +.fal, +.fad, +.fab { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: inline-block; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; } + +.fa-lg { + font-size: 1.33333em; + line-height: 0.75em; + vertical-align: -.0667em; } + +.fa-xs { + font-size: .75em; } + +.fa-sm { + font-size: .875em; } + +.fa-1x { + font-size: 1em; } + +.fa-2x { + font-size: 2em; } + +.fa-3x { + font-size: 3em; } + +.fa-4x { + font-size: 4em; } + +.fa-5x { + font-size: 5em; } + +.fa-6x { + font-size: 6em; } + +.fa-7x { + font-size: 7em; } + +.fa-8x { + font-size: 8em; } + +.fa-9x { + font-size: 9em; } + +.fa-10x { + font-size: 10em; } + +.fa-fw { + text-align: center; + width: 1.25em; } + +.fa-ul { + list-style-type: none; + margin-left: 2.5em; + padding-left: 0; } + .fa-ul > li { + position: relative; } + +.fa-li { + left: -2em; + position: absolute; + text-align: center; + width: 2em; + line-height: inherit; } + +.fa-border { + border: solid 0.08em #eee; + border-radius: .1em; + padding: .2em .25em .15em; } + +.fa-pull-left { + float: left; } + +.fa-pull-right { + float: right; } + +.fa.fa-pull-left, +.fas.fa-pull-left, +.far.fa-pull-left, +.fal.fa-pull-left, +.fab.fa-pull-left { + margin-right: .3em; } + +.fa.fa-pull-right, +.fas.fa-pull-right, +.far.fa-pull-right, +.fal.fa-pull-right, +.fab.fa-pull-right { + margin-left: .3em; } + +.fa-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; } + +.fa-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); } + +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +.fa-rotate-90 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; + -webkit-transform: rotate(90deg); + transform: rotate(90deg); } + +.fa-rotate-180 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; + -webkit-transform: rotate(180deg); + transform: rotate(180deg); } + +.fa-rotate-270 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + +.fa-flip-horizontal { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; + -webkit-transform: scale(-1, 1); + transform: scale(-1, 1); } + +.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(1, -1); + transform: scale(1, -1); } + +.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(-1, -1); + transform: scale(-1, -1); } + +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical, +:root .fa-flip-both { + -webkit-filter: none; + filter: none; } + +.fa-stack { + display: inline-block; + height: 2em; + line-height: 2em; + position: relative; + vertical-align: middle; + width: 2.5em; } + +.fa-stack-1x, +.fa-stack-2x { + left: 0; + position: absolute; + text-align: center; + width: 100%; } + +.fa-stack-1x { + line-height: inherit; } + +.fa-stack-2x { + font-size: 2em; } + +.fa-inverse { + color: #fff; } + +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen +readers do not read off random characters that represent icons */ +.fa-500px:before { + content: "\f26e"; } + +.fa-accessible-icon:before { + content: "\f368"; } + +.fa-accusoft:before { + content: "\f369"; } + +.fa-acquisitions-incorporated:before { + content: "\f6af"; } + +.fa-ad:before { + content: "\f641"; } + +.fa-address-book:before { + content: "\f2b9"; } + +.fa-address-card:before { + content: "\f2bb"; } + +.fa-adjust:before { + content: "\f042"; } + +.fa-adn:before { + content: "\f170"; } + +.fa-adobe:before { + content: "\f778"; } + +.fa-adversal:before { + content: "\f36a"; } + +.fa-affiliatetheme:before { + content: "\f36b"; } + +.fa-air-freshener:before { + content: "\f5d0"; } + +.fa-airbnb:before { + content: "\f834"; } + +.fa-algolia:before { + content: "\f36c"; } + +.fa-align-center:before { + content: "\f037"; } + +.fa-align-justify:before { + content: "\f039"; } + +.fa-align-left:before { + content: "\f036"; } + +.fa-align-right:before { + content: "\f038"; } + +.fa-alipay:before { + content: "\f642"; } + +.fa-allergies:before { + content: "\f461"; } + +.fa-amazon:before { + content: "\f270"; } + +.fa-amazon-pay:before { + content: "\f42c"; } + +.fa-ambulance:before { + content: "\f0f9"; } + +.fa-american-sign-language-interpreting:before { + content: "\f2a3"; } + +.fa-amilia:before { + content: "\f36d"; } + +.fa-anchor:before { + content: "\f13d"; } + +.fa-android:before { + content: "\f17b"; } + +.fa-angellist:before { + content: "\f209"; } + +.fa-angle-double-down:before { + content: "\f103"; } + +.fa-angle-double-left:before { + content: "\f100"; } + +.fa-angle-double-right:before { + content: "\f101"; } + +.fa-angle-double-up:before { + content: "\f102"; } + +.fa-angle-down:before { + content: "\f107"; } + +.fa-angle-left:before { + content: "\f104"; } + +.fa-angle-right:before { + content: "\f105"; } + +.fa-angle-up:before { + content: "\f106"; } + +.fa-angry:before { + content: "\f556"; } + +.fa-angrycreative:before { + content: "\f36e"; } + +.fa-angular:before { + content: "\f420"; } + +.fa-ankh:before { + content: "\f644"; } + +.fa-app-store:before { + content: "\f36f"; } + +.fa-app-store-ios:before { + content: "\f370"; } + +.fa-apper:before { + content: "\f371"; } + +.fa-apple:before { + content: "\f179"; } + +.fa-apple-alt:before { + content: "\f5d1"; } + +.fa-apple-pay:before { + content: "\f415"; } + +.fa-archive:before { + content: "\f187"; } + +.fa-archway:before { + content: "\f557"; } + +.fa-arrow-alt-circle-down:before { + content: "\f358"; } + +.fa-arrow-alt-circle-left:before { + content: "\f359"; } + +.fa-arrow-alt-circle-right:before { + content: "\f35a"; } + +.fa-arrow-alt-circle-up:before { + content: "\f35b"; } + +.fa-arrow-circle-down:before { + content: "\f0ab"; } + +.fa-arrow-circle-left:before { + content: "\f0a8"; } + +.fa-arrow-circle-right:before { + content: "\f0a9"; } + +.fa-arrow-circle-up:before { + content: "\f0aa"; } + +.fa-arrow-down:before { + content: "\f063"; } + +.fa-arrow-left:before { + content: "\f060"; } + +.fa-arrow-right:before { + content: "\f061"; } + +.fa-arrow-up:before { + content: "\f062"; } + +.fa-arrows-alt:before { + content: "\f0b2"; } + +.fa-arrows-alt-h:before { + content: "\f337"; } + +.fa-arrows-alt-v:before { + content: "\f338"; } + +.fa-artstation:before { + content: "\f77a"; } + +.fa-assistive-listening-systems:before { + content: "\f2a2"; } + +.fa-asterisk:before { + content: "\f069"; } + +.fa-asymmetrik:before { + content: "\f372"; } + +.fa-at:before { + content: "\f1fa"; } + +.fa-atlas:before { + content: "\f558"; } + +.fa-atlassian:before { + content: "\f77b"; } + +.fa-atom:before { + content: "\f5d2"; } + +.fa-audible:before { + content: "\f373"; } + +.fa-audio-description:before { + content: "\f29e"; } + +.fa-autoprefixer:before { + content: "\f41c"; } + +.fa-avianex:before { + content: "\f374"; } + +.fa-aviato:before { + content: "\f421"; } + +.fa-award:before { + content: "\f559"; } + +.fa-aws:before { + content: "\f375"; } + +.fa-baby:before { + content: "\f77c"; } + +.fa-baby-carriage:before { + content: "\f77d"; } + +.fa-backspace:before { + content: "\f55a"; } + +.fa-backward:before { + content: "\f04a"; } + +.fa-bacon:before { + content: "\f7e5"; } + +.fa-bahai:before { + content: "\f666"; } + +.fa-balance-scale:before { + content: "\f24e"; } + +.fa-balance-scale-left:before { + content: "\f515"; } + +.fa-balance-scale-right:before { + content: "\f516"; } + +.fa-ban:before { + content: "\f05e"; } + +.fa-band-aid:before { + content: "\f462"; } + +.fa-bandcamp:before { + content: "\f2d5"; } + +.fa-barcode:before { + content: "\f02a"; } + +.fa-bars:before { + content: "\f0c9"; } + +.fa-baseball-ball:before { + content: "\f433"; } + +.fa-basketball-ball:before { + content: "\f434"; } + +.fa-bath:before { + content: "\f2cd"; } + +.fa-battery-empty:before { + content: "\f244"; } + +.fa-battery-full:before { + content: "\f240"; } + +.fa-battery-half:before { + content: "\f242"; } + +.fa-battery-quarter:before { + content: "\f243"; } + +.fa-battery-three-quarters:before { + content: "\f241"; } + +.fa-battle-net:before { + content: "\f835"; } + +.fa-bed:before { + content: "\f236"; } + +.fa-beer:before { + content: "\f0fc"; } + +.fa-behance:before { + content: "\f1b4"; } + +.fa-behance-square:before { + content: "\f1b5"; } + +.fa-bell:before { + content: "\f0f3"; } + +.fa-bell-slash:before { + content: "\f1f6"; } + +.fa-bezier-curve:before { + content: "\f55b"; } + +.fa-bible:before { + content: "\f647"; } + +.fa-bicycle:before { + content: "\f206"; } + +.fa-biking:before { + content: "\f84a"; } + +.fa-bimobject:before { + content: "\f378"; } + +.fa-binoculars:before { + content: "\f1e5"; } + +.fa-biohazard:before { + content: "\f780"; } + +.fa-birthday-cake:before { + content: "\f1fd"; } + +.fa-bitbucket:before { + content: "\f171"; } + +.fa-bitcoin:before { + content: "\f379"; } + +.fa-bity:before { + content: "\f37a"; } + +.fa-black-tie:before { + content: "\f27e"; } + +.fa-blackberry:before { + content: "\f37b"; } + +.fa-blender:before { + content: "\f517"; } + +.fa-blender-phone:before { + content: "\f6b6"; } + +.fa-blind:before { + content: "\f29d"; } + +.fa-blog:before { + content: "\f781"; } + +.fa-blogger:before { + content: "\f37c"; } + +.fa-blogger-b:before { + content: "\f37d"; } + +.fa-bluetooth:before { + content: "\f293"; } + +.fa-bluetooth-b:before { + content: "\f294"; } + +.fa-bold:before { + content: "\f032"; } + +.fa-bolt:before { + content: "\f0e7"; } + +.fa-bomb:before { + content: "\f1e2"; } + +.fa-bone:before { + content: "\f5d7"; } + +.fa-bong:before { + content: "\f55c"; } + +.fa-book:before { + content: "\f02d"; } + +.fa-book-dead:before { + content: "\f6b7"; } + +.fa-book-medical:before { + content: "\f7e6"; } + +.fa-book-open:before { + content: "\f518"; } + +.fa-book-reader:before { + content: "\f5da"; } + +.fa-bookmark:before { + content: "\f02e"; } + +.fa-bootstrap:before { + content: "\f836"; } + +.fa-border-all:before { + content: "\f84c"; } + +.fa-border-none:before { + content: "\f850"; } + +.fa-border-style:before { + content: "\f853"; } + +.fa-bowling-ball:before { + content: "\f436"; } + +.fa-box:before { + content: "\f466"; } + +.fa-box-open:before { + content: "\f49e"; } + +.fa-boxes:before { + content: "\f468"; } + +.fa-braille:before { + content: "\f2a1"; } + +.fa-brain:before { + content: "\f5dc"; } + +.fa-bread-slice:before { + content: "\f7ec"; } + +.fa-briefcase:before { + content: "\f0b1"; } + +.fa-briefcase-medical:before { + content: "\f469"; } + +.fa-broadcast-tower:before { + content: "\f519"; } + +.fa-broom:before { + content: "\f51a"; } + +.fa-brush:before { + content: "\f55d"; } + +.fa-btc:before { + content: "\f15a"; } + +.fa-buffer:before { + content: "\f837"; } + +.fa-bug:before { + content: "\f188"; } + +.fa-building:before { + content: "\f1ad"; } + +.fa-bullhorn:before { + content: "\f0a1"; } + +.fa-bullseye:before { + content: "\f140"; } + +.fa-burn:before { + content: "\f46a"; } + +.fa-buromobelexperte:before { + content: "\f37f"; } + +.fa-bus:before { + content: "\f207"; } + +.fa-bus-alt:before { + content: "\f55e"; } + +.fa-business-time:before { + content: "\f64a"; } + +.fa-buy-n-large:before { + content: "\f8a6"; } + +.fa-buysellads:before { + content: "\f20d"; } + +.fa-calculator:before { + content: "\f1ec"; } + +.fa-calendar:before { + content: "\f133"; } + +.fa-calendar-alt:before { + content: "\f073"; } + +.fa-calendar-check:before { + content: "\f274"; } + +.fa-calendar-day:before { + content: "\f783"; } + +.fa-calendar-minus:before { + content: "\f272"; } + +.fa-calendar-plus:before { + content: "\f271"; } + +.fa-calendar-times:before { + content: "\f273"; } + +.fa-calendar-week:before { + content: "\f784"; } + +.fa-camera:before { + content: "\f030"; } + +.fa-camera-retro:before { + content: "\f083"; } + +.fa-campground:before { + content: "\f6bb"; } + +.fa-canadian-maple-leaf:before { + content: "\f785"; } + +.fa-candy-cane:before { + content: "\f786"; } + +.fa-cannabis:before { + content: "\f55f"; } + +.fa-capsules:before { + content: "\f46b"; } + +.fa-car:before { + content: "\f1b9"; } + +.fa-car-alt:before { + content: "\f5de"; } + +.fa-car-battery:before { + content: "\f5df"; } + +.fa-car-crash:before { + content: "\f5e1"; } + +.fa-car-side:before { + content: "\f5e4"; } + +.fa-caravan:before { + content: "\f8ff"; } + +.fa-caret-down:before { + content: "\f0d7"; } + +.fa-caret-left:before { + content: "\f0d9"; } + +.fa-caret-right:before { + content: "\f0da"; } + +.fa-caret-square-down:before { + content: "\f150"; } + +.fa-caret-square-left:before { + content: "\f191"; } + +.fa-caret-square-right:before { + content: "\f152"; } + +.fa-caret-square-up:before { + content: "\f151"; } + +.fa-caret-up:before { + content: "\f0d8"; } + +.fa-carrot:before { + content: "\f787"; } + +.fa-cart-arrow-down:before { + content: "\f218"; } + +.fa-cart-plus:before { + content: "\f217"; } + +.fa-cash-register:before { + content: "\f788"; } + +.fa-cat:before { + content: "\f6be"; } + +.fa-cc-amazon-pay:before { + content: "\f42d"; } + +.fa-cc-amex:before { + content: "\f1f3"; } + +.fa-cc-apple-pay:before { + content: "\f416"; } + +.fa-cc-diners-club:before { + content: "\f24c"; } + +.fa-cc-discover:before { + content: "\f1f2"; } + +.fa-cc-jcb:before { + content: "\f24b"; } + +.fa-cc-mastercard:before { + content: "\f1f1"; } + +.fa-cc-paypal:before { + content: "\f1f4"; } + +.fa-cc-stripe:before { + content: "\f1f5"; } + +.fa-cc-visa:before { + content: "\f1f0"; } + +.fa-centercode:before { + content: "\f380"; } + +.fa-centos:before { + content: "\f789"; } + +.fa-certificate:before { + content: "\f0a3"; } + +.fa-chair:before { + content: "\f6c0"; } + +.fa-chalkboard:before { + content: "\f51b"; } + +.fa-chalkboard-teacher:before { + content: "\f51c"; } + +.fa-charging-station:before { + content: "\f5e7"; } + +.fa-chart-area:before { + content: "\f1fe"; } + +.fa-chart-bar:before { + content: "\f080"; } + +.fa-chart-line:before { + content: "\f201"; } + +.fa-chart-pie:before { + content: "\f200"; } + +.fa-check:before { + content: "\f00c"; } + +.fa-check-circle:before { + content: "\f058"; } + +.fa-check-double:before { + content: "\f560"; } + +.fa-check-square:before { + content: "\f14a"; } + +.fa-cheese:before { + content: "\f7ef"; } + +.fa-chess:before { + content: "\f439"; } + +.fa-chess-bishop:before { + content: "\f43a"; } + +.fa-chess-board:before { + content: "\f43c"; } + +.fa-chess-king:before { + content: "\f43f"; } + +.fa-chess-knight:before { + content: "\f441"; } + +.fa-chess-pawn:before { + content: "\f443"; } + +.fa-chess-queen:before { + content: "\f445"; } + +.fa-chess-rook:before { + content: "\f447"; } + +.fa-chevron-circle-down:before { + content: "\f13a"; } + +.fa-chevron-circle-left:before { + content: "\f137"; } + +.fa-chevron-circle-right:before { + content: "\f138"; } + +.fa-chevron-circle-up:before { + content: "\f139"; } + +.fa-chevron-down:before { + content: "\f078"; } + +.fa-chevron-left:before { + content: "\f053"; } + +.fa-chevron-right:before { + content: "\f054"; } + +.fa-chevron-up:before { + content: "\f077"; } + +.fa-child:before { + content: "\f1ae"; } + +.fa-chrome:before { + content: "\f268"; } + +.fa-chromecast:before { + content: "\f838"; } + +.fa-church:before { + content: "\f51d"; } + +.fa-circle:before { + content: "\f111"; } + +.fa-circle-notch:before { + content: "\f1ce"; } + +.fa-city:before { + content: "\f64f"; } + +.fa-clinic-medical:before { + content: "\f7f2"; } + +.fa-clipboard:before { + content: "\f328"; } + +.fa-clipboard-check:before { + content: "\f46c"; } + +.fa-clipboard-list:before { + content: "\f46d"; } + +.fa-clock:before { + content: "\f017"; } + +.fa-clone:before { + content: "\f24d"; } + +.fa-closed-captioning:before { + content: "\f20a"; } + +.fa-cloud:before { + content: "\f0c2"; } + +.fa-cloud-download-alt:before { + content: "\f381"; } + +.fa-cloud-meatball:before { + content: "\f73b"; } + +.fa-cloud-moon:before { + content: "\f6c3"; } + +.fa-cloud-moon-rain:before { + content: "\f73c"; } + +.fa-cloud-rain:before { + content: "\f73d"; } + +.fa-cloud-showers-heavy:before { + content: "\f740"; } + +.fa-cloud-sun:before { + content: "\f6c4"; } + +.fa-cloud-sun-rain:before { + content: "\f743"; } + +.fa-cloud-upload-alt:before { + content: "\f382"; } + +.fa-cloudscale:before { + content: "\f383"; } + +.fa-cloudsmith:before { + content: "\f384"; } + +.fa-cloudversify:before { + content: "\f385"; } + +.fa-cocktail:before { + content: "\f561"; } + +.fa-code:before { + content: "\f121"; } + +.fa-code-branch:before { + content: "\f126"; } + +.fa-codepen:before { + content: "\f1cb"; } + +.fa-codiepie:before { + content: "\f284"; } + +.fa-coffee:before { + content: "\f0f4"; } + +.fa-cog:before { + content: "\f013"; } + +.fa-cogs:before { + content: "\f085"; } + +.fa-coins:before { + content: "\f51e"; } + +.fa-columns:before { + content: "\f0db"; } + +.fa-comment:before { + content: "\f075"; } + +.fa-comment-alt:before { + content: "\f27a"; } + +.fa-comment-dollar:before { + content: "\f651"; } + +.fa-comment-dots:before { + content: "\f4ad"; } + +.fa-comment-medical:before { + content: "\f7f5"; } + +.fa-comment-slash:before { + content: "\f4b3"; } + +.fa-comments:before { + content: "\f086"; } + +.fa-comments-dollar:before { + content: "\f653"; } + +.fa-compact-disc:before { + content: "\f51f"; } + +.fa-compass:before { + content: "\f14e"; } + +.fa-compress:before { + content: "\f066"; } + +.fa-compress-alt:before { + content: "\f422"; } + +.fa-compress-arrows-alt:before { + content: "\f78c"; } + +.fa-concierge-bell:before { + content: "\f562"; } + +.fa-confluence:before { + content: "\f78d"; } + +.fa-connectdevelop:before { + content: "\f20e"; } + +.fa-contao:before { + content: "\f26d"; } + +.fa-cookie:before { + content: "\f563"; } + +.fa-cookie-bite:before { + content: "\f564"; } + +.fa-copy:before { + content: "\f0c5"; } + +.fa-copyright:before { + content: "\f1f9"; } + +.fa-cotton-bureau:before { + content: "\f89e"; } + +.fa-couch:before { + content: "\f4b8"; } + +.fa-cpanel:before { + content: "\f388"; } + +.fa-creative-commons:before { + content: "\f25e"; } + +.fa-creative-commons-by:before { + content: "\f4e7"; } + +.fa-creative-commons-nc:before { + content: "\f4e8"; } + +.fa-creative-commons-nc-eu:before { + content: "\f4e9"; } + +.fa-creative-commons-nc-jp:before { + content: "\f4ea"; } + +.fa-creative-commons-nd:before { + content: "\f4eb"; } + +.fa-creative-commons-pd:before { + content: "\f4ec"; } + +.fa-creative-commons-pd-alt:before { + content: "\f4ed"; } + +.fa-creative-commons-remix:before { + content: "\f4ee"; } + +.fa-creative-commons-sa:before { + content: "\f4ef"; } + +.fa-creative-commons-sampling:before { + content: "\f4f0"; } + +.fa-creative-commons-sampling-plus:before { + content: "\f4f1"; } + +.fa-creative-commons-share:before { + content: "\f4f2"; } + +.fa-creative-commons-zero:before { + content: "\f4f3"; } + +.fa-credit-card:before { + content: "\f09d"; } + +.fa-critical-role:before { + content: "\f6c9"; } + +.fa-crop:before { + content: "\f125"; } + +.fa-crop-alt:before { + content: "\f565"; } + +.fa-cross:before { + content: "\f654"; } + +.fa-crosshairs:before { + content: "\f05b"; } + +.fa-crow:before { + content: "\f520"; } + +.fa-crown:before { + content: "\f521"; } + +.fa-crutch:before { + content: "\f7f7"; } + +.fa-css3:before { + content: "\f13c"; } + +.fa-css3-alt:before { + content: "\f38b"; } + +.fa-cube:before { + content: "\f1b2"; } + +.fa-cubes:before { + content: "\f1b3"; } + +.fa-cut:before { + content: "\f0c4"; } + +.fa-cuttlefish:before { + content: "\f38c"; } + +.fa-d-and-d:before { + content: "\f38d"; } + +.fa-d-and-d-beyond:before { + content: "\f6ca"; } + +.fa-dailymotion:before { + content: "\f952"; } + +.fa-dashcube:before { + content: "\f210"; } + +.fa-database:before { + content: "\f1c0"; } + +.fa-deaf:before { + content: "\f2a4"; } + +.fa-delicious:before { + content: "\f1a5"; } + +.fa-democrat:before { + content: "\f747"; } + +.fa-deploydog:before { + content: "\f38e"; } + +.fa-deskpro:before { + content: "\f38f"; } + +.fa-desktop:before { + content: "\f108"; } + +.fa-dev:before { + content: "\f6cc"; } + +.fa-deviantart:before { + content: "\f1bd"; } + +.fa-dharmachakra:before { + content: "\f655"; } + +.fa-dhl:before { + content: "\f790"; } + +.fa-diagnoses:before { + content: "\f470"; } + +.fa-diaspora:before { + content: "\f791"; } + +.fa-dice:before { + content: "\f522"; } + +.fa-dice-d20:before { + content: "\f6cf"; } + +.fa-dice-d6:before { + content: "\f6d1"; } + +.fa-dice-five:before { + content: "\f523"; } + +.fa-dice-four:before { + content: "\f524"; } + +.fa-dice-one:before { + content: "\f525"; } + +.fa-dice-six:before { + content: "\f526"; } + +.fa-dice-three:before { + content: "\f527"; } + +.fa-dice-two:before { + content: "\f528"; } + +.fa-digg:before { + content: "\f1a6"; } + +.fa-digital-ocean:before { + content: "\f391"; } + +.fa-digital-tachograph:before { + content: "\f566"; } + +.fa-directions:before { + content: "\f5eb"; } + +.fa-discord:before { + content: "\f392"; } + +.fa-discourse:before { + content: "\f393"; } + +.fa-divide:before { + content: "\f529"; } + +.fa-dizzy:before { + content: "\f567"; } + +.fa-dna:before { + content: "\f471"; } + +.fa-dochub:before { + content: "\f394"; } + +.fa-docker:before { + content: "\f395"; } + +.fa-dog:before { + content: "\f6d3"; } + +.fa-dollar-sign:before { + content: "\f155"; } + +.fa-dolly:before { + content: "\f472"; } + +.fa-dolly-flatbed:before { + content: "\f474"; } + +.fa-donate:before { + content: "\f4b9"; } + +.fa-door-closed:before { + content: "\f52a"; } + +.fa-door-open:before { + content: "\f52b"; } + +.fa-dot-circle:before { + content: "\f192"; } + +.fa-dove:before { + content: "\f4ba"; } + +.fa-download:before { + content: "\f019"; } + +.fa-draft2digital:before { + content: "\f396"; } + +.fa-drafting-compass:before { + content: "\f568"; } + +.fa-dragon:before { + content: "\f6d5"; } + +.fa-draw-polygon:before { + content: "\f5ee"; } + +.fa-dribbble:before { + content: "\f17d"; } + +.fa-dribbble-square:before { + content: "\f397"; } + +.fa-dropbox:before { + content: "\f16b"; } + +.fa-drum:before { + content: "\f569"; } + +.fa-drum-steelpan:before { + content: "\f56a"; } + +.fa-drumstick-bite:before { + content: "\f6d7"; } + +.fa-drupal:before { + content: "\f1a9"; } + +.fa-dumbbell:before { + content: "\f44b"; } + +.fa-dumpster:before { + content: "\f793"; } + +.fa-dumpster-fire:before { + content: "\f794"; } + +.fa-dungeon:before { + content: "\f6d9"; } + +.fa-dyalog:before { + content: "\f399"; } + +.fa-earlybirds:before { + content: "\f39a"; } + +.fa-ebay:before { + content: "\f4f4"; } + +.fa-edge:before { + content: "\f282"; } + +.fa-edit:before { + content: "\f044"; } + +.fa-egg:before { + content: "\f7fb"; } + +.fa-eject:before { + content: "\f052"; } + +.fa-elementor:before { + content: "\f430"; } + +.fa-ellipsis-h:before { + content: "\f141"; } + +.fa-ellipsis-v:before { + content: "\f142"; } + +.fa-ello:before { + content: "\f5f1"; } + +.fa-ember:before { + content: "\f423"; } + +.fa-empire:before { + content: "\f1d1"; } + +.fa-envelope:before { + content: "\f0e0"; } + +.fa-envelope-open:before { + content: "\f2b6"; } + +.fa-envelope-open-text:before { + content: "\f658"; } + +.fa-envelope-square:before { + content: "\f199"; } + +.fa-envira:before { + content: "\f299"; } + +.fa-equals:before { + content: "\f52c"; } + +.fa-eraser:before { + content: "\f12d"; } + +.fa-erlang:before { + content: "\f39d"; } + +.fa-ethereum:before { + content: "\f42e"; } + +.fa-ethernet:before { + content: "\f796"; } + +.fa-etsy:before { + content: "\f2d7"; } + +.fa-euro-sign:before { + content: "\f153"; } + +.fa-evernote:before { + content: "\f839"; } + +.fa-exchange-alt:before { + content: "\f362"; } + +.fa-exclamation:before { + content: "\f12a"; } + +.fa-exclamation-circle:before { + content: "\f06a"; } + +.fa-exclamation-triangle:before { + content: "\f071"; } + +.fa-expand:before { + content: "\f065"; } + +.fa-expand-alt:before { + content: "\f424"; } + +.fa-expand-arrows-alt:before { + content: "\f31e"; } + +.fa-expeditedssl:before { + content: "\f23e"; } + +.fa-external-link-alt:before { + content: "\f35d"; } + +.fa-external-link-square-alt:before { + content: "\f360"; } + +.fa-eye:before { + content: "\f06e"; } + +.fa-eye-dropper:before { + content: "\f1fb"; } + +.fa-eye-slash:before { + content: "\f070"; } + +.fa-facebook:before { + content: "\f09a"; } + +.fa-facebook-f:before { + content: "\f39e"; } + +.fa-facebook-messenger:before { + content: "\f39f"; } + +.fa-facebook-square:before { + content: "\f082"; } + +.fa-fan:before { + content: "\f863"; } + +.fa-fantasy-flight-games:before { + content: "\f6dc"; } + +.fa-fast-backward:before { + content: "\f049"; } + +.fa-fast-forward:before { + content: "\f050"; } + +.fa-fax:before { + content: "\f1ac"; } + +.fa-feather:before { + content: "\f52d"; } + +.fa-feather-alt:before { + content: "\f56b"; } + +.fa-fedex:before { + content: "\f797"; } + +.fa-fedora:before { + content: "\f798"; } + +.fa-female:before { + content: "\f182"; } + +.fa-fighter-jet:before { + content: "\f0fb"; } + +.fa-figma:before { + content: "\f799"; } + +.fa-file:before { + content: "\f15b"; } + +.fa-file-alt:before { + content: "\f15c"; } + +.fa-file-archive:before { + content: "\f1c6"; } + +.fa-file-audio:before { + content: "\f1c7"; } + +.fa-file-code:before { + content: "\f1c9"; } + +.fa-file-contract:before { + content: "\f56c"; } + +.fa-file-csv:before { + content: "\f6dd"; } + +.fa-file-download:before { + content: "\f56d"; } + +.fa-file-excel:before { + content: "\f1c3"; } + +.fa-file-export:before { + content: "\f56e"; } + +.fa-file-image:before { + content: "\f1c5"; } + +.fa-file-import:before { + content: "\f56f"; } + +.fa-file-invoice:before { + content: "\f570"; } + +.fa-file-invoice-dollar:before { + content: "\f571"; } + +.fa-file-medical:before { + content: "\f477"; } + +.fa-file-medical-alt:before { + content: "\f478"; } + +.fa-file-pdf:before { + content: "\f1c1"; } + +.fa-file-powerpoint:before { + content: "\f1c4"; } + +.fa-file-prescription:before { + content: "\f572"; } + +.fa-file-signature:before { + content: "\f573"; } + +.fa-file-upload:before { + content: "\f574"; } + +.fa-file-video:before { + content: "\f1c8"; } + +.fa-file-word:before { + content: "\f1c2"; } + +.fa-fill:before { + content: "\f575"; } + +.fa-fill-drip:before { + content: "\f576"; } + +.fa-film:before { + content: "\f008"; } + +.fa-filter:before { + content: "\f0b0"; } + +.fa-fingerprint:before { + content: "\f577"; } + +.fa-fire:before { + content: "\f06d"; } + +.fa-fire-alt:before { + content: "\f7e4"; } + +.fa-fire-extinguisher:before { + content: "\f134"; } + +.fa-firefox:before { + content: "\f269"; } + +.fa-firefox-browser:before { + content: "\f907"; } + +.fa-first-aid:before { + content: "\f479"; } + +.fa-first-order:before { + content: "\f2b0"; } + +.fa-first-order-alt:before { + content: "\f50a"; } + +.fa-firstdraft:before { + content: "\f3a1"; } + +.fa-fish:before { + content: "\f578"; } + +.fa-fist-raised:before { + content: "\f6de"; } + +.fa-flag:before { + content: "\f024"; } + +.fa-flag-checkered:before { + content: "\f11e"; } + +.fa-flag-usa:before { + content: "\f74d"; } + +.fa-flask:before { + content: "\f0c3"; } + +.fa-flickr:before { + content: "\f16e"; } + +.fa-flipboard:before { + content: "\f44d"; } + +.fa-flushed:before { + content: "\f579"; } + +.fa-fly:before { + content: "\f417"; } + +.fa-folder:before { + content: "\f07b"; } + +.fa-folder-minus:before { + content: "\f65d"; } + +.fa-folder-open:before { + content: "\f07c"; } + +.fa-folder-plus:before { + content: "\f65e"; } + +.fa-font:before { + content: "\f031"; } + +.fa-font-awesome:before { + content: "\f2b4"; } + +.fa-font-awesome-alt:before { + content: "\f35c"; } + +.fa-font-awesome-flag:before { + content: "\f425"; } + +.fa-font-awesome-logo-full:before { + content: "\f4e6"; } + +.fa-fonticons:before { + content: "\f280"; } + +.fa-fonticons-fi:before { + content: "\f3a2"; } + +.fa-football-ball:before { + content: "\f44e"; } + +.fa-fort-awesome:before { + content: "\f286"; } + +.fa-fort-awesome-alt:before { + content: "\f3a3"; } + +.fa-forumbee:before { + content: "\f211"; } + +.fa-forward:before { + content: "\f04e"; } + +.fa-foursquare:before { + content: "\f180"; } + +.fa-free-code-camp:before { + content: "\f2c5"; } + +.fa-freebsd:before { + content: "\f3a4"; } + +.fa-frog:before { + content: "\f52e"; } + +.fa-frown:before { + content: "\f119"; } + +.fa-frown-open:before { + content: "\f57a"; } + +.fa-fulcrum:before { + content: "\f50b"; } + +.fa-funnel-dollar:before { + content: "\f662"; } + +.fa-futbol:before { + content: "\f1e3"; } + +.fa-galactic-republic:before { + content: "\f50c"; } + +.fa-galactic-senate:before { + content: "\f50d"; } + +.fa-gamepad:before { + content: "\f11b"; } + +.fa-gas-pump:before { + content: "\f52f"; } + +.fa-gavel:before { + content: "\f0e3"; } + +.fa-gem:before { + content: "\f3a5"; } + +.fa-genderless:before { + content: "\f22d"; } + +.fa-get-pocket:before { + content: "\f265"; } + +.fa-gg:before { + content: "\f260"; } + +.fa-gg-circle:before { + content: "\f261"; } + +.fa-ghost:before { + content: "\f6e2"; } + +.fa-gift:before { + content: "\f06b"; } + +.fa-gifts:before { + content: "\f79c"; } + +.fa-git:before { + content: "\f1d3"; } + +.fa-git-alt:before { + content: "\f841"; } + +.fa-git-square:before { + content: "\f1d2"; } + +.fa-github:before { + content: "\f09b"; } + +.fa-github-alt:before { + content: "\f113"; } + +.fa-github-square:before { + content: "\f092"; } + +.fa-gitkraken:before { + content: "\f3a6"; } + +.fa-gitlab:before { + content: "\f296"; } + +.fa-gitter:before { + content: "\f426"; } + +.fa-glass-cheers:before { + content: "\f79f"; } + +.fa-glass-martini:before { + content: "\f000"; } + +.fa-glass-martini-alt:before { + content: "\f57b"; } + +.fa-glass-whiskey:before { + content: "\f7a0"; } + +.fa-glasses:before { + content: "\f530"; } + +.fa-glide:before { + content: "\f2a5"; } + +.fa-glide-g:before { + content: "\f2a6"; } + +.fa-globe:before { + content: "\f0ac"; } + +.fa-globe-africa:before { + content: "\f57c"; } + +.fa-globe-americas:before { + content: "\f57d"; } + +.fa-globe-asia:before { + content: "\f57e"; } + +.fa-globe-europe:before { + content: "\f7a2"; } + +.fa-gofore:before { + content: "\f3a7"; } + +.fa-golf-ball:before { + content: "\f450"; } + +.fa-goodreads:before { + content: "\f3a8"; } + +.fa-goodreads-g:before { + content: "\f3a9"; } + +.fa-google:before { + content: "\f1a0"; } + +.fa-google-drive:before { + content: "\f3aa"; } + +.fa-google-play:before { + content: "\f3ab"; } + +.fa-google-plus:before { + content: "\f2b3"; } + +.fa-google-plus-g:before { + content: "\f0d5"; } + +.fa-google-plus-square:before { + content: "\f0d4"; } + +.fa-google-wallet:before { + content: "\f1ee"; } + +.fa-gopuram:before { + content: "\f664"; } + +.fa-graduation-cap:before { + content: "\f19d"; } + +.fa-gratipay:before { + content: "\f184"; } + +.fa-grav:before { + content: "\f2d6"; } + +.fa-greater-than:before { + content: "\f531"; } + +.fa-greater-than-equal:before { + content: "\f532"; } + +.fa-grimace:before { + content: "\f57f"; } + +.fa-grin:before { + content: "\f580"; } + +.fa-grin-alt:before { + content: "\f581"; } + +.fa-grin-beam:before { + content: "\f582"; } + +.fa-grin-beam-sweat:before { + content: "\f583"; } + +.fa-grin-hearts:before { + content: "\f584"; } + +.fa-grin-squint:before { + content: "\f585"; } + +.fa-grin-squint-tears:before { + content: "\f586"; } + +.fa-grin-stars:before { + content: "\f587"; } + +.fa-grin-tears:before { + content: "\f588"; } + +.fa-grin-tongue:before { + content: "\f589"; } + +.fa-grin-tongue-squint:before { + content: "\f58a"; } + +.fa-grin-tongue-wink:before { + content: "\f58b"; } + +.fa-grin-wink:before { + content: "\f58c"; } + +.fa-grip-horizontal:before { + content: "\f58d"; } + +.fa-grip-lines:before { + content: "\f7a4"; } + +.fa-grip-lines-vertical:before { + content: "\f7a5"; } + +.fa-grip-vertical:before { + content: "\f58e"; } + +.fa-gripfire:before { + content: "\f3ac"; } + +.fa-grunt:before { + content: "\f3ad"; } + +.fa-guitar:before { + content: "\f7a6"; } + +.fa-gulp:before { + content: "\f3ae"; } + +.fa-h-square:before { + content: "\f0fd"; } + +.fa-hacker-news:before { + content: "\f1d4"; } + +.fa-hacker-news-square:before { + content: "\f3af"; } + +.fa-hackerrank:before { + content: "\f5f7"; } + +.fa-hamburger:before { + content: "\f805"; } + +.fa-hammer:before { + content: "\f6e3"; } + +.fa-hamsa:before { + content: "\f665"; } + +.fa-hand-holding:before { + content: "\f4bd"; } + +.fa-hand-holding-heart:before { + content: "\f4be"; } + +.fa-hand-holding-usd:before { + content: "\f4c0"; } + +.fa-hand-lizard:before { + content: "\f258"; } + +.fa-hand-middle-finger:before { + content: "\f806"; } + +.fa-hand-paper:before { + content: "\f256"; } + +.fa-hand-peace:before { + content: "\f25b"; } + +.fa-hand-point-down:before { + content: "\f0a7"; } + +.fa-hand-point-left:before { + content: "\f0a5"; } + +.fa-hand-point-right:before { + content: "\f0a4"; } + +.fa-hand-point-up:before { + content: "\f0a6"; } + +.fa-hand-pointer:before { + content: "\f25a"; } + +.fa-hand-rock:before { + content: "\f255"; } + +.fa-hand-scissors:before { + content: "\f257"; } + +.fa-hand-spock:before { + content: "\f259"; } + +.fa-hands:before { + content: "\f4c2"; } + +.fa-hands-helping:before { + content: "\f4c4"; } + +.fa-handshake:before { + content: "\f2b5"; } + +.fa-hanukiah:before { + content: "\f6e6"; } + +.fa-hard-hat:before { + content: "\f807"; } + +.fa-hashtag:before { + content: "\f292"; } + +.fa-hat-cowboy:before { + content: "\f8c0"; } + +.fa-hat-cowboy-side:before { + content: "\f8c1"; } + +.fa-hat-wizard:before { + content: "\f6e8"; } + +.fa-hdd:before { + content: "\f0a0"; } + +.fa-heading:before { + content: "\f1dc"; } + +.fa-headphones:before { + content: "\f025"; } + +.fa-headphones-alt:before { + content: "\f58f"; } + +.fa-headset:before { + content: "\f590"; } + +.fa-heart:before { + content: "\f004"; } + +.fa-heart-broken:before { + content: "\f7a9"; } + +.fa-heartbeat:before { + content: "\f21e"; } + +.fa-helicopter:before { + content: "\f533"; } + +.fa-highlighter:before { + content: "\f591"; } + +.fa-hiking:before { + content: "\f6ec"; } + +.fa-hippo:before { + content: "\f6ed"; } + +.fa-hips:before { + content: "\f452"; } + +.fa-hire-a-helper:before { + content: "\f3b0"; } + +.fa-history:before { + content: "\f1da"; } + +.fa-hockey-puck:before { + content: "\f453"; } + +.fa-holly-berry:before { + content: "\f7aa"; } + +.fa-home:before { + content: "\f015"; } + +.fa-hooli:before { + content: "\f427"; } + +.fa-hornbill:before { + content: "\f592"; } + +.fa-horse:before { + content: "\f6f0"; } + +.fa-horse-head:before { + content: "\f7ab"; } + +.fa-hospital:before { + content: "\f0f8"; } + +.fa-hospital-alt:before { + content: "\f47d"; } + +.fa-hospital-symbol:before { + content: "\f47e"; } + +.fa-hot-tub:before { + content: "\f593"; } + +.fa-hotdog:before { + content: "\f80f"; } + +.fa-hotel:before { + content: "\f594"; } + +.fa-hotjar:before { + content: "\f3b1"; } + +.fa-hourglass:before { + content: "\f254"; } + +.fa-hourglass-end:before { + content: "\f253"; } + +.fa-hourglass-half:before { + content: "\f252"; } + +.fa-hourglass-start:before { + content: "\f251"; } + +.fa-house-damage:before { + content: "\f6f1"; } + +.fa-houzz:before { + content: "\f27c"; } + +.fa-hryvnia:before { + content: "\f6f2"; } + +.fa-html5:before { + content: "\f13b"; } + +.fa-hubspot:before { + content: "\f3b2"; } + +.fa-i-cursor:before { + content: "\f246"; } + +.fa-ice-cream:before { + content: "\f810"; } + +.fa-icicles:before { + content: "\f7ad"; } + +.fa-icons:before { + content: "\f86d"; } + +.fa-id-badge:before { + content: "\f2c1"; } + +.fa-id-card:before { + content: "\f2c2"; } + +.fa-id-card-alt:before { + content: "\f47f"; } + +.fa-ideal:before { + content: "\f913"; } + +.fa-igloo:before { + content: "\f7ae"; } + +.fa-image:before { + content: "\f03e"; } + +.fa-images:before { + content: "\f302"; } + +.fa-imdb:before { + content: "\f2d8"; } + +.fa-inbox:before { + content: "\f01c"; } + +.fa-indent:before { + content: "\f03c"; } + +.fa-industry:before { + content: "\f275"; } + +.fa-infinity:before { + content: "\f534"; } + +.fa-info:before { + content: "\f129"; } + +.fa-info-circle:before { + content: "\f05a"; } + +.fa-instagram:before { + content: "\f16d"; } + +.fa-instagram-square:before { + content: "\f955"; } + +.fa-intercom:before { + content: "\f7af"; } + +.fa-internet-explorer:before { + content: "\f26b"; } + +.fa-invision:before { + content: "\f7b0"; } + +.fa-ioxhost:before { + content: "\f208"; } + +.fa-italic:before { + content: "\f033"; } + +.fa-itch-io:before { + content: "\f83a"; } + +.fa-itunes:before { + content: "\f3b4"; } + +.fa-itunes-note:before { + content: "\f3b5"; } + +.fa-java:before { + content: "\f4e4"; } + +.fa-jedi:before { + content: "\f669"; } + +.fa-jedi-order:before { + content: "\f50e"; } + +.fa-jenkins:before { + content: "\f3b6"; } + +.fa-jira:before { + content: "\f7b1"; } + +.fa-joget:before { + content: "\f3b7"; } + +.fa-joint:before { + content: "\f595"; } + +.fa-joomla:before { + content: "\f1aa"; } + +.fa-journal-whills:before { + content: "\f66a"; } + +.fa-js:before { + content: "\f3b8"; } + +.fa-js-square:before { + content: "\f3b9"; } + +.fa-jsfiddle:before { + content: "\f1cc"; } + +.fa-kaaba:before { + content: "\f66b"; } + +.fa-kaggle:before { + content: "\f5fa"; } + +.fa-key:before { + content: "\f084"; } + +.fa-keybase:before { + content: "\f4f5"; } + +.fa-keyboard:before { + content: "\f11c"; } + +.fa-keycdn:before { + content: "\f3ba"; } + +.fa-khanda:before { + content: "\f66d"; } + +.fa-kickstarter:before { + content: "\f3bb"; } + +.fa-kickstarter-k:before { + content: "\f3bc"; } + +.fa-kiss:before { + content: "\f596"; } + +.fa-kiss-beam:before { + content: "\f597"; } + +.fa-kiss-wink-heart:before { + content: "\f598"; } + +.fa-kiwi-bird:before { + content: "\f535"; } + +.fa-korvue:before { + content: "\f42f"; } + +.fa-landmark:before { + content: "\f66f"; } + +.fa-language:before { + content: "\f1ab"; } + +.fa-laptop:before { + content: "\f109"; } + +.fa-laptop-code:before { + content: "\f5fc"; } + +.fa-laptop-medical:before { + content: "\f812"; } + +.fa-laravel:before { + content: "\f3bd"; } + +.fa-lastfm:before { + content: "\f202"; } + +.fa-lastfm-square:before { + content: "\f203"; } + +.fa-laugh:before { + content: "\f599"; } + +.fa-laugh-beam:before { + content: "\f59a"; } + +.fa-laugh-squint:before { + content: "\f59b"; } + +.fa-laugh-wink:before { + content: "\f59c"; } + +.fa-layer-group:before { + content: "\f5fd"; } + +.fa-leaf:before { + content: "\f06c"; } + +.fa-leanpub:before { + content: "\f212"; } + +.fa-lemon:before { + content: "\f094"; } + +.fa-less:before { + content: "\f41d"; } + +.fa-less-than:before { + content: "\f536"; } + +.fa-less-than-equal:before { + content: "\f537"; } + +.fa-level-down-alt:before { + content: "\f3be"; } + +.fa-level-up-alt:before { + content: "\f3bf"; } + +.fa-life-ring:before { + content: "\f1cd"; } + +.fa-lightbulb:before { + content: "\f0eb"; } + +.fa-line:before { + content: "\f3c0"; } + +.fa-link:before { + content: "\f0c1"; } + +.fa-linkedin:before { + content: "\f08c"; } + +.fa-linkedin-in:before { + content: "\f0e1"; } + +.fa-linode:before { + content: "\f2b8"; } + +.fa-linux:before { + content: "\f17c"; } + +.fa-lira-sign:before { + content: "\f195"; } + +.fa-list:before { + content: "\f03a"; } + +.fa-list-alt:before { + content: "\f022"; } + +.fa-list-ol:before { + content: "\f0cb"; } + +.fa-list-ul:before { + content: "\f0ca"; } + +.fa-location-arrow:before { + content: "\f124"; } + +.fa-lock:before { + content: "\f023"; } + +.fa-lock-open:before { + content: "\f3c1"; } + +.fa-long-arrow-alt-down:before { + content: "\f309"; } + +.fa-long-arrow-alt-left:before { + content: "\f30a"; } + +.fa-long-arrow-alt-right:before { + content: "\f30b"; } + +.fa-long-arrow-alt-up:before { + content: "\f30c"; } + +.fa-low-vision:before { + content: "\f2a8"; } + +.fa-luggage-cart:before { + content: "\f59d"; } + +.fa-lyft:before { + content: "\f3c3"; } + +.fa-magento:before { + content: "\f3c4"; } + +.fa-magic:before { + content: "\f0d0"; } + +.fa-magnet:before { + content: "\f076"; } + +.fa-mail-bulk:before { + content: "\f674"; } + +.fa-mailchimp:before { + content: "\f59e"; } + +.fa-male:before { + content: "\f183"; } + +.fa-mandalorian:before { + content: "\f50f"; } + +.fa-map:before { + content: "\f279"; } + +.fa-map-marked:before { + content: "\f59f"; } + +.fa-map-marked-alt:before { + content: "\f5a0"; } + +.fa-map-marker:before { + content: "\f041"; } + +.fa-map-marker-alt:before { + content: "\f3c5"; } + +.fa-map-pin:before { + content: "\f276"; } + +.fa-map-signs:before { + content: "\f277"; } + +.fa-markdown:before { + content: "\f60f"; } + +.fa-marker:before { + content: "\f5a1"; } + +.fa-mars:before { + content: "\f222"; } + +.fa-mars-double:before { + content: "\f227"; } + +.fa-mars-stroke:before { + content: "\f229"; } + +.fa-mars-stroke-h:before { + content: "\f22b"; } + +.fa-mars-stroke-v:before { + content: "\f22a"; } + +.fa-mask:before { + content: "\f6fa"; } + +.fa-mastodon:before { + content: "\f4f6"; } + +.fa-maxcdn:before { + content: "\f136"; } + +.fa-mdb:before { + content: "\f8ca"; } + +.fa-medal:before { + content: "\f5a2"; } + +.fa-medapps:before { + content: "\f3c6"; } + +.fa-medium:before { + content: "\f23a"; } + +.fa-medium-m:before { + content: "\f3c7"; } + +.fa-medkit:before { + content: "\f0fa"; } + +.fa-medrt:before { + content: "\f3c8"; } + +.fa-meetup:before { + content: "\f2e0"; } + +.fa-megaport:before { + content: "\f5a3"; } + +.fa-meh:before { + content: "\f11a"; } + +.fa-meh-blank:before { + content: "\f5a4"; } + +.fa-meh-rolling-eyes:before { + content: "\f5a5"; } + +.fa-memory:before { + content: "\f538"; } + +.fa-mendeley:before { + content: "\f7b3"; } + +.fa-menorah:before { + content: "\f676"; } + +.fa-mercury:before { + content: "\f223"; } + +.fa-meteor:before { + content: "\f753"; } + +.fa-microblog:before { + content: "\f91a"; } + +.fa-microchip:before { + content: "\f2db"; } + +.fa-microphone:before { + content: "\f130"; } + +.fa-microphone-alt:before { + content: "\f3c9"; } + +.fa-microphone-alt-slash:before { + content: "\f539"; } + +.fa-microphone-slash:before { + content: "\f131"; } + +.fa-microscope:before { + content: "\f610"; } + +.fa-microsoft:before { + content: "\f3ca"; } + +.fa-minus:before { + content: "\f068"; } + +.fa-minus-circle:before { + content: "\f056"; } + +.fa-minus-square:before { + content: "\f146"; } + +.fa-mitten:before { + content: "\f7b5"; } + +.fa-mix:before { + content: "\f3cb"; } + +.fa-mixcloud:before { + content: "\f289"; } + +.fa-mixer:before { + content: "\f956"; } + +.fa-mizuni:before { + content: "\f3cc"; } + +.fa-mobile:before { + content: "\f10b"; } + +.fa-mobile-alt:before { + content: "\f3cd"; } + +.fa-modx:before { + content: "\f285"; } + +.fa-monero:before { + content: "\f3d0"; } + +.fa-money-bill:before { + content: "\f0d6"; } + +.fa-money-bill-alt:before { + content: "\f3d1"; } + +.fa-money-bill-wave:before { + content: "\f53a"; } + +.fa-money-bill-wave-alt:before { + content: "\f53b"; } + +.fa-money-check:before { + content: "\f53c"; } + +.fa-money-check-alt:before { + content: "\f53d"; } + +.fa-monument:before { + content: "\f5a6"; } + +.fa-moon:before { + content: "\f186"; } + +.fa-mortar-pestle:before { + content: "\f5a7"; } + +.fa-mosque:before { + content: "\f678"; } + +.fa-motorcycle:before { + content: "\f21c"; } + +.fa-mountain:before { + content: "\f6fc"; } + +.fa-mouse:before { + content: "\f8cc"; } + +.fa-mouse-pointer:before { + content: "\f245"; } + +.fa-mug-hot:before { + content: "\f7b6"; } + +.fa-music:before { + content: "\f001"; } + +.fa-napster:before { + content: "\f3d2"; } + +.fa-neos:before { + content: "\f612"; } + +.fa-network-wired:before { + content: "\f6ff"; } + +.fa-neuter:before { + content: "\f22c"; } + +.fa-newspaper:before { + content: "\f1ea"; } + +.fa-nimblr:before { + content: "\f5a8"; } + +.fa-node:before { + content: "\f419"; } + +.fa-node-js:before { + content: "\f3d3"; } + +.fa-not-equal:before { + content: "\f53e"; } + +.fa-notes-medical:before { + content: "\f481"; } + +.fa-npm:before { + content: "\f3d4"; } + +.fa-ns8:before { + content: "\f3d5"; } + +.fa-nutritionix:before { + content: "\f3d6"; } + +.fa-object-group:before { + content: "\f247"; } + +.fa-object-ungroup:before { + content: "\f248"; } + +.fa-odnoklassniki:before { + content: "\f263"; } + +.fa-odnoklassniki-square:before { + content: "\f264"; } + +.fa-oil-can:before { + content: "\f613"; } + +.fa-old-republic:before { + content: "\f510"; } + +.fa-om:before { + content: "\f679"; } + +.fa-opencart:before { + content: "\f23d"; } + +.fa-openid:before { + content: "\f19b"; } + +.fa-opera:before { + content: "\f26a"; } + +.fa-optin-monster:before { + content: "\f23c"; } + +.fa-orcid:before { + content: "\f8d2"; } + +.fa-osi:before { + content: "\f41a"; } + +.fa-otter:before { + content: "\f700"; } + +.fa-outdent:before { + content: "\f03b"; } + +.fa-page4:before { + content: "\f3d7"; } + +.fa-pagelines:before { + content: "\f18c"; } + +.fa-pager:before { + content: "\f815"; } + +.fa-paint-brush:before { + content: "\f1fc"; } + +.fa-paint-roller:before { + content: "\f5aa"; } + +.fa-palette:before { + content: "\f53f"; } + +.fa-palfed:before { + content: "\f3d8"; } + +.fa-pallet:before { + content: "\f482"; } + +.fa-paper-plane:before { + content: "\f1d8"; } + +.fa-paperclip:before { + content: "\f0c6"; } + +.fa-parachute-box:before { + content: "\f4cd"; } + +.fa-paragraph:before { + content: "\f1dd"; } + +.fa-parking:before { + content: "\f540"; } + +.fa-passport:before { + content: "\f5ab"; } + +.fa-pastafarianism:before { + content: "\f67b"; } + +.fa-paste:before { + content: "\f0ea"; } + +.fa-patreon:before { + content: "\f3d9"; } + +.fa-pause:before { + content: "\f04c"; } + +.fa-pause-circle:before { + content: "\f28b"; } + +.fa-paw:before { + content: "\f1b0"; } + +.fa-paypal:before { + content: "\f1ed"; } + +.fa-peace:before { + content: "\f67c"; } + +.fa-pen:before { + content: "\f304"; } + +.fa-pen-alt:before { + content: "\f305"; } + +.fa-pen-fancy:before { + content: "\f5ac"; } + +.fa-pen-nib:before { + content: "\f5ad"; } + +.fa-pen-square:before { + content: "\f14b"; } + +.fa-pencil-alt:before { + content: "\f303"; } + +.fa-pencil-ruler:before { + content: "\f5ae"; } + +.fa-penny-arcade:before { + content: "\f704"; } + +.fa-people-carry:before { + content: "\f4ce"; } + +.fa-pepper-hot:before { + content: "\f816"; } + +.fa-percent:before { + content: "\f295"; } + +.fa-percentage:before { + content: "\f541"; } + +.fa-periscope:before { + content: "\f3da"; } + +.fa-person-booth:before { + content: "\f756"; } + +.fa-phabricator:before { + content: "\f3db"; } + +.fa-phoenix-framework:before { + content: "\f3dc"; } + +.fa-phoenix-squadron:before { + content: "\f511"; } + +.fa-phone:before { + content: "\f095"; } + +.fa-phone-alt:before { + content: "\f879"; } + +.fa-phone-slash:before { + content: "\f3dd"; } + +.fa-phone-square:before { + content: "\f098"; } + +.fa-phone-square-alt:before { + content: "\f87b"; } + +.fa-phone-volume:before { + content: "\f2a0"; } + +.fa-photo-video:before { + content: "\f87c"; } + +.fa-php:before { + content: "\f457"; } + +.fa-pied-piper:before { + content: "\f2ae"; } + +.fa-pied-piper-alt:before { + content: "\f1a8"; } + +.fa-pied-piper-hat:before { + content: "\f4e5"; } + +.fa-pied-piper-pp:before { + content: "\f1a7"; } + +.fa-pied-piper-square:before { + content: "\f91e"; } + +.fa-piggy-bank:before { + content: "\f4d3"; } + +.fa-pills:before { + content: "\f484"; } + +.fa-pinterest:before { + content: "\f0d2"; } + +.fa-pinterest-p:before { + content: "\f231"; } + +.fa-pinterest-square:before { + content: "\f0d3"; } + +.fa-pizza-slice:before { + content: "\f818"; } + +.fa-place-of-worship:before { + content: "\f67f"; } + +.fa-plane:before { + content: "\f072"; } + +.fa-plane-arrival:before { + content: "\f5af"; } + +.fa-plane-departure:before { + content: "\f5b0"; } + +.fa-play:before { + content: "\f04b"; } + +.fa-play-circle:before { + content: "\f144"; } + +.fa-playstation:before { + content: "\f3df"; } + +.fa-plug:before { + content: "\f1e6"; } + +.fa-plus:before { + content: "\f067"; } + +.fa-plus-circle:before { + content: "\f055"; } + +.fa-plus-square:before { + content: "\f0fe"; } + +.fa-podcast:before { + content: "\f2ce"; } + +.fa-poll:before { + content: "\f681"; } + +.fa-poll-h:before { + content: "\f682"; } + +.fa-poo:before { + content: "\f2fe"; } + +.fa-poo-storm:before { + content: "\f75a"; } + +.fa-poop:before { + content: "\f619"; } + +.fa-portrait:before { + content: "\f3e0"; } + +.fa-pound-sign:before { + content: "\f154"; } + +.fa-power-off:before { + content: "\f011"; } + +.fa-pray:before { + content: "\f683"; } + +.fa-praying-hands:before { + content: "\f684"; } + +.fa-prescription:before { + content: "\f5b1"; } + +.fa-prescription-bottle:before { + content: "\f485"; } + +.fa-prescription-bottle-alt:before { + content: "\f486"; } + +.fa-print:before { + content: "\f02f"; } + +.fa-procedures:before { + content: "\f487"; } + +.fa-product-hunt:before { + content: "\f288"; } + +.fa-project-diagram:before { + content: "\f542"; } + +.fa-pushed:before { + content: "\f3e1"; } + +.fa-puzzle-piece:before { + content: "\f12e"; } + +.fa-python:before { + content: "\f3e2"; } + +.fa-qq:before { + content: "\f1d6"; } + +.fa-qrcode:before { + content: "\f029"; } + +.fa-question:before { + content: "\f128"; } + +.fa-question-circle:before { + content: "\f059"; } + +.fa-quidditch:before { + content: "\f458"; } + +.fa-quinscape:before { + content: "\f459"; } + +.fa-quora:before { + content: "\f2c4"; } + +.fa-quote-left:before { + content: "\f10d"; } + +.fa-quote-right:before { + content: "\f10e"; } + +.fa-quran:before { + content: "\f687"; } + +.fa-r-project:before { + content: "\f4f7"; } + +.fa-radiation:before { + content: "\f7b9"; } + +.fa-radiation-alt:before { + content: "\f7ba"; } + +.fa-rainbow:before { + content: "\f75b"; } + +.fa-random:before { + content: "\f074"; } + +.fa-raspberry-pi:before { + content: "\f7bb"; } + +.fa-ravelry:before { + content: "\f2d9"; } + +.fa-react:before { + content: "\f41b"; } + +.fa-reacteurope:before { + content: "\f75d"; } + +.fa-readme:before { + content: "\f4d5"; } + +.fa-rebel:before { + content: "\f1d0"; } + +.fa-receipt:before { + content: "\f543"; } + +.fa-record-vinyl:before { + content: "\f8d9"; } + +.fa-recycle:before { + content: "\f1b8"; } + +.fa-red-river:before { + content: "\f3e3"; } + +.fa-reddit:before { + content: "\f1a1"; } + +.fa-reddit-alien:before { + content: "\f281"; } + +.fa-reddit-square:before { + content: "\f1a2"; } + +.fa-redhat:before { + content: "\f7bc"; } + +.fa-redo:before { + content: "\f01e"; } + +.fa-redo-alt:before { + content: "\f2f9"; } + +.fa-registered:before { + content: "\f25d"; } + +.fa-remove-format:before { + content: "\f87d"; } + +.fa-renren:before { + content: "\f18b"; } + +.fa-reply:before { + content: "\f3e5"; } + +.fa-reply-all:before { + content: "\f122"; } + +.fa-replyd:before { + content: "\f3e6"; } + +.fa-republican:before { + content: "\f75e"; } + +.fa-researchgate:before { + content: "\f4f8"; } + +.fa-resolving:before { + content: "\f3e7"; } + +.fa-restroom:before { + content: "\f7bd"; } + +.fa-retweet:before { + content: "\f079"; } + +.fa-rev:before { + content: "\f5b2"; } + +.fa-ribbon:before { + content: "\f4d6"; } + +.fa-ring:before { + content: "\f70b"; } + +.fa-road:before { + content: "\f018"; } + +.fa-robot:before { + content: "\f544"; } + +.fa-rocket:before { + content: "\f135"; } + +.fa-rocketchat:before { + content: "\f3e8"; } + +.fa-rockrms:before { + content: "\f3e9"; } + +.fa-route:before { + content: "\f4d7"; } + +.fa-rss:before { + content: "\f09e"; } + +.fa-rss-square:before { + content: "\f143"; } + +.fa-ruble-sign:before { + content: "\f158"; } + +.fa-ruler:before { + content: "\f545"; } + +.fa-ruler-combined:before { + content: "\f546"; } + +.fa-ruler-horizontal:before { + content: "\f547"; } + +.fa-ruler-vertical:before { + content: "\f548"; } + +.fa-running:before { + content: "\f70c"; } + +.fa-rupee-sign:before { + content: "\f156"; } + +.fa-sad-cry:before { + content: "\f5b3"; } + +.fa-sad-tear:before { + content: "\f5b4"; } + +.fa-safari:before { + content: "\f267"; } + +.fa-salesforce:before { + content: "\f83b"; } + +.fa-sass:before { + content: "\f41e"; } + +.fa-satellite:before { + content: "\f7bf"; } + +.fa-satellite-dish:before { + content: "\f7c0"; } + +.fa-save:before { + content: "\f0c7"; } + +.fa-schlix:before { + content: "\f3ea"; } + +.fa-school:before { + content: "\f549"; } + +.fa-screwdriver:before { + content: "\f54a"; } + +.fa-scribd:before { + content: "\f28a"; } + +.fa-scroll:before { + content: "\f70e"; } + +.fa-sd-card:before { + content: "\f7c2"; } + +.fa-search:before { + content: "\f002"; } + +.fa-search-dollar:before { + content: "\f688"; } + +.fa-search-location:before { + content: "\f689"; } + +.fa-search-minus:before { + content: "\f010"; } + +.fa-search-plus:before { + content: "\f00e"; } + +.fa-searchengin:before { + content: "\f3eb"; } + +.fa-seedling:before { + content: "\f4d8"; } + +.fa-sellcast:before { + content: "\f2da"; } + +.fa-sellsy:before { + content: "\f213"; } + +.fa-server:before { + content: "\f233"; } + +.fa-servicestack:before { + content: "\f3ec"; } + +.fa-shapes:before { + content: "\f61f"; } + +.fa-share:before { + content: "\f064"; } + +.fa-share-alt:before { + content: "\f1e0"; } + +.fa-share-alt-square:before { + content: "\f1e1"; } + +.fa-share-square:before { + content: "\f14d"; } + +.fa-shekel-sign:before { + content: "\f20b"; } + +.fa-shield-alt:before { + content: "\f3ed"; } + +.fa-ship:before { + content: "\f21a"; } + +.fa-shipping-fast:before { + content: "\f48b"; } + +.fa-shirtsinbulk:before { + content: "\f214"; } + +.fa-shoe-prints:before { + content: "\f54b"; } + +.fa-shopify:before { + content: "\f957"; } + +.fa-shopping-bag:before { + content: "\f290"; } + +.fa-shopping-basket:before { + content: "\f291"; } + +.fa-shopping-cart:before { + content: "\f07a"; } + +.fa-shopware:before { + content: "\f5b5"; } + +.fa-shower:before { + content: "\f2cc"; } + +.fa-shuttle-van:before { + content: "\f5b6"; } + +.fa-sign:before { + content: "\f4d9"; } + +.fa-sign-in-alt:before { + content: "\f2f6"; } + +.fa-sign-language:before { + content: "\f2a7"; } + +.fa-sign-out-alt:before { + content: "\f2f5"; } + +.fa-signal:before { + content: "\f012"; } + +.fa-signature:before { + content: "\f5b7"; } + +.fa-sim-card:before { + content: "\f7c4"; } + +.fa-simplybuilt:before { + content: "\f215"; } + +.fa-sistrix:before { + content: "\f3ee"; } + +.fa-sitemap:before { + content: "\f0e8"; } + +.fa-sith:before { + content: "\f512"; } + +.fa-skating:before { + content: "\f7c5"; } + +.fa-sketch:before { + content: "\f7c6"; } + +.fa-skiing:before { + content: "\f7c9"; } + +.fa-skiing-nordic:before { + content: "\f7ca"; } + +.fa-skull:before { + content: "\f54c"; } + +.fa-skull-crossbones:before { + content: "\f714"; } + +.fa-skyatlas:before { + content: "\f216"; } + +.fa-skype:before { + content: "\f17e"; } + +.fa-slack:before { + content: "\f198"; } + +.fa-slack-hash:before { + content: "\f3ef"; } + +.fa-slash:before { + content: "\f715"; } + +.fa-sleigh:before { + content: "\f7cc"; } + +.fa-sliders-h:before { + content: "\f1de"; } + +.fa-slideshare:before { + content: "\f1e7"; } + +.fa-smile:before { + content: "\f118"; } + +.fa-smile-beam:before { + content: "\f5b8"; } + +.fa-smile-wink:before { + content: "\f4da"; } + +.fa-smog:before { + content: "\f75f"; } + +.fa-smoking:before { + content: "\f48d"; } + +.fa-smoking-ban:before { + content: "\f54d"; } + +.fa-sms:before { + content: "\f7cd"; } + +.fa-snapchat:before { + content: "\f2ab"; } + +.fa-snapchat-ghost:before { + content: "\f2ac"; } + +.fa-snapchat-square:before { + content: "\f2ad"; } + +.fa-snowboarding:before { + content: "\f7ce"; } + +.fa-snowflake:before { + content: "\f2dc"; } + +.fa-snowman:before { + content: "\f7d0"; } + +.fa-snowplow:before { + content: "\f7d2"; } + +.fa-socks:before { + content: "\f696"; } + +.fa-solar-panel:before { + content: "\f5ba"; } + +.fa-sort:before { + content: "\f0dc"; } + +.fa-sort-alpha-down:before { + content: "\f15d"; } + +.fa-sort-alpha-down-alt:before { + content: "\f881"; } + +.fa-sort-alpha-up:before { + content: "\f15e"; } + +.fa-sort-alpha-up-alt:before { + content: "\f882"; } + +.fa-sort-amount-down:before { + content: "\f160"; } + +.fa-sort-amount-down-alt:before { + content: "\f884"; } + +.fa-sort-amount-up:before { + content: "\f161"; } + +.fa-sort-amount-up-alt:before { + content: "\f885"; } + +.fa-sort-down:before { + content: "\f0dd"; } + +.fa-sort-numeric-down:before { + content: "\f162"; } + +.fa-sort-numeric-down-alt:before { + content: "\f886"; } + +.fa-sort-numeric-up:before { + content: "\f163"; } + +.fa-sort-numeric-up-alt:before { + content: "\f887"; } + +.fa-sort-up:before { + content: "\f0de"; } + +.fa-soundcloud:before { + content: "\f1be"; } + +.fa-sourcetree:before { + content: "\f7d3"; } + +.fa-spa:before { + content: "\f5bb"; } + +.fa-space-shuttle:before { + content: "\f197"; } + +.fa-speakap:before { + content: "\f3f3"; } + +.fa-speaker-deck:before { + content: "\f83c"; } + +.fa-spell-check:before { + content: "\f891"; } + +.fa-spider:before { + content: "\f717"; } + +.fa-spinner:before { + content: "\f110"; } + +.fa-splotch:before { + content: "\f5bc"; } + +.fa-spotify:before { + content: "\f1bc"; } + +.fa-spray-can:before { + content: "\f5bd"; } + +.fa-square:before { + content: "\f0c8"; } + +.fa-square-full:before { + content: "\f45c"; } + +.fa-square-root-alt:before { + content: "\f698"; } + +.fa-squarespace:before { + content: "\f5be"; } + +.fa-stack-exchange:before { + content: "\f18d"; } + +.fa-stack-overflow:before { + content: "\f16c"; } + +.fa-stackpath:before { + content: "\f842"; } + +.fa-stamp:before { + content: "\f5bf"; } + +.fa-star:before { + content: "\f005"; } + +.fa-star-and-crescent:before { + content: "\f699"; } + +.fa-star-half:before { + content: "\f089"; } + +.fa-star-half-alt:before { + content: "\f5c0"; } + +.fa-star-of-david:before { + content: "\f69a"; } + +.fa-star-of-life:before { + content: "\f621"; } + +.fa-staylinked:before { + content: "\f3f5"; } + +.fa-steam:before { + content: "\f1b6"; } + +.fa-steam-square:before { + content: "\f1b7"; } + +.fa-steam-symbol:before { + content: "\f3f6"; } + +.fa-step-backward:before { + content: "\f048"; } + +.fa-step-forward:before { + content: "\f051"; } + +.fa-stethoscope:before { + content: "\f0f1"; } + +.fa-sticker-mule:before { + content: "\f3f7"; } + +.fa-sticky-note:before { + content: "\f249"; } + +.fa-stop:before { + content: "\f04d"; } + +.fa-stop-circle:before { + content: "\f28d"; } + +.fa-stopwatch:before { + content: "\f2f2"; } + +.fa-store:before { + content: "\f54e"; } + +.fa-store-alt:before { + content: "\f54f"; } + +.fa-strava:before { + content: "\f428"; } + +.fa-stream:before { + content: "\f550"; } + +.fa-street-view:before { + content: "\f21d"; } + +.fa-strikethrough:before { + content: "\f0cc"; } + +.fa-stripe:before { + content: "\f429"; } + +.fa-stripe-s:before { + content: "\f42a"; } + +.fa-stroopwafel:before { + content: "\f551"; } + +.fa-studiovinari:before { + content: "\f3f8"; } + +.fa-stumbleupon:before { + content: "\f1a4"; } + +.fa-stumbleupon-circle:before { + content: "\f1a3"; } + +.fa-subscript:before { + content: "\f12c"; } + +.fa-subway:before { + content: "\f239"; } + +.fa-suitcase:before { + content: "\f0f2"; } + +.fa-suitcase-rolling:before { + content: "\f5c1"; } + +.fa-sun:before { + content: "\f185"; } + +.fa-superpowers:before { + content: "\f2dd"; } + +.fa-superscript:before { + content: "\f12b"; } + +.fa-supple:before { + content: "\f3f9"; } + +.fa-surprise:before { + content: "\f5c2"; } + +.fa-suse:before { + content: "\f7d6"; } + +.fa-swatchbook:before { + content: "\f5c3"; } + +.fa-swift:before { + content: "\f8e1"; } + +.fa-swimmer:before { + content: "\f5c4"; } + +.fa-swimming-pool:before { + content: "\f5c5"; } + +.fa-symfony:before { + content: "\f83d"; } + +.fa-synagogue:before { + content: "\f69b"; } + +.fa-sync:before { + content: "\f021"; } + +.fa-sync-alt:before { + content: "\f2f1"; } + +.fa-syringe:before { + content: "\f48e"; } + +.fa-table:before { + content: "\f0ce"; } + +.fa-table-tennis:before { + content: "\f45d"; } + +.fa-tablet:before { + content: "\f10a"; } + +.fa-tablet-alt:before { + content: "\f3fa"; } + +.fa-tablets:before { + content: "\f490"; } + +.fa-tachometer-alt:before { + content: "\f3fd"; } + +.fa-tag:before { + content: "\f02b"; } + +.fa-tags:before { + content: "\f02c"; } + +.fa-tape:before { + content: "\f4db"; } + +.fa-tasks:before { + content: "\f0ae"; } + +.fa-taxi:before { + content: "\f1ba"; } + +.fa-teamspeak:before { + content: "\f4f9"; } + +.fa-teeth:before { + content: "\f62e"; } + +.fa-teeth-open:before { + content: "\f62f"; } + +.fa-telegram:before { + content: "\f2c6"; } + +.fa-telegram-plane:before { + content: "\f3fe"; } + +.fa-temperature-high:before { + content: "\f769"; } + +.fa-temperature-low:before { + content: "\f76b"; } + +.fa-tencent-weibo:before { + content: "\f1d5"; } + +.fa-tenge:before { + content: "\f7d7"; } + +.fa-terminal:before { + content: "\f120"; } + +.fa-text-height:before { + content: "\f034"; } + +.fa-text-width:before { + content: "\f035"; } + +.fa-th:before { + content: "\f00a"; } + +.fa-th-large:before { + content: "\f009"; } + +.fa-th-list:before { + content: "\f00b"; } + +.fa-the-red-yeti:before { + content: "\f69d"; } + +.fa-theater-masks:before { + content: "\f630"; } + +.fa-themeco:before { + content: "\f5c6"; } + +.fa-themeisle:before { + content: "\f2b2"; } + +.fa-thermometer:before { + content: "\f491"; } + +.fa-thermometer-empty:before { + content: "\f2cb"; } + +.fa-thermometer-full:before { + content: "\f2c7"; } + +.fa-thermometer-half:before { + content: "\f2c9"; } + +.fa-thermometer-quarter:before { + content: "\f2ca"; } + +.fa-thermometer-three-quarters:before { + content: "\f2c8"; } + +.fa-think-peaks:before { + content: "\f731"; } + +.fa-thumbs-down:before { + content: "\f165"; } + +.fa-thumbs-up:before { + content: "\f164"; } + +.fa-thumbtack:before { + content: "\f08d"; } + +.fa-ticket-alt:before { + content: "\f3ff"; } + +.fa-times:before { + content: "\f00d"; } + +.fa-times-circle:before { + content: "\f057"; } + +.fa-tint:before { + content: "\f043"; } + +.fa-tint-slash:before { + content: "\f5c7"; } + +.fa-tired:before { + content: "\f5c8"; } + +.fa-toggle-off:before { + content: "\f204"; } + +.fa-toggle-on:before { + content: "\f205"; } + +.fa-toilet:before { + content: "\f7d8"; } + +.fa-toilet-paper:before { + content: "\f71e"; } + +.fa-toolbox:before { + content: "\f552"; } + +.fa-tools:before { + content: "\f7d9"; } + +.fa-tooth:before { + content: "\f5c9"; } + +.fa-torah:before { + content: "\f6a0"; } + +.fa-torii-gate:before { + content: "\f6a1"; } + +.fa-tractor:before { + content: "\f722"; } + +.fa-trade-federation:before { + content: "\f513"; } + +.fa-trademark:before { + content: "\f25c"; } + +.fa-traffic-light:before { + content: "\f637"; } + +.fa-trailer:before { + content: "\f941"; } + +.fa-train:before { + content: "\f238"; } + +.fa-tram:before { + content: "\f7da"; } + +.fa-transgender:before { + content: "\f224"; } + +.fa-transgender-alt:before { + content: "\f225"; } + +.fa-trash:before { + content: "\f1f8"; } + +.fa-trash-alt:before { + content: "\f2ed"; } + +.fa-trash-restore:before { + content: "\f829"; } + +.fa-trash-restore-alt:before { + content: "\f82a"; } + +.fa-tree:before { + content: "\f1bb"; } + +.fa-trello:before { + content: "\f181"; } + +.fa-tripadvisor:before { + content: "\f262"; } + +.fa-trophy:before { + content: "\f091"; } + +.fa-truck:before { + content: "\f0d1"; } + +.fa-truck-loading:before { + content: "\f4de"; } + +.fa-truck-monster:before { + content: "\f63b"; } + +.fa-truck-moving:before { + content: "\f4df"; } + +.fa-truck-pickup:before { + content: "\f63c"; } + +.fa-tshirt:before { + content: "\f553"; } + +.fa-tty:before { + content: "\f1e4"; } + +.fa-tumblr:before { + content: "\f173"; } + +.fa-tumblr-square:before { + content: "\f174"; } + +.fa-tv:before { + content: "\f26c"; } + +.fa-twitch:before { + content: "\f1e8"; } + +.fa-twitter:before { + content: "\f099"; } + +.fa-twitter-square:before { + content: "\f081"; } + +.fa-typo3:before { + content: "\f42b"; } + +.fa-uber:before { + content: "\f402"; } + +.fa-ubuntu:before { + content: "\f7df"; } + +.fa-uikit:before { + content: "\f403"; } + +.fa-umbraco:before { + content: "\f8e8"; } + +.fa-umbrella:before { + content: "\f0e9"; } + +.fa-umbrella-beach:before { + content: "\f5ca"; } + +.fa-underline:before { + content: "\f0cd"; } + +.fa-undo:before { + content: "\f0e2"; } + +.fa-undo-alt:before { + content: "\f2ea"; } + +.fa-uniregistry:before { + content: "\f404"; } + +.fa-unity:before { + content: "\f949"; } + +.fa-universal-access:before { + content: "\f29a"; } + +.fa-university:before { + content: "\f19c"; } + +.fa-unlink:before { + content: "\f127"; } + +.fa-unlock:before { + content: "\f09c"; } + +.fa-unlock-alt:before { + content: "\f13e"; } + +.fa-untappd:before { + content: "\f405"; } + +.fa-upload:before { + content: "\f093"; } + +.fa-ups:before { + content: "\f7e0"; } + +.fa-usb:before { + content: "\f287"; } + +.fa-user:before { + content: "\f007"; } + +.fa-user-alt:before { + content: "\f406"; } + +.fa-user-alt-slash:before { + content: "\f4fa"; } + +.fa-user-astronaut:before { + content: "\f4fb"; } + +.fa-user-check:before { + content: "\f4fc"; } + +.fa-user-circle:before { + content: "\f2bd"; } + +.fa-user-clock:before { + content: "\f4fd"; } + +.fa-user-cog:before { + content: "\f4fe"; } + +.fa-user-edit:before { + content: "\f4ff"; } + +.fa-user-friends:before { + content: "\f500"; } + +.fa-user-graduate:before { + content: "\f501"; } + +.fa-user-injured:before { + content: "\f728"; } + +.fa-user-lock:before { + content: "\f502"; } + +.fa-user-md:before { + content: "\f0f0"; } + +.fa-user-minus:before { + content: "\f503"; } + +.fa-user-ninja:before { + content: "\f504"; } + +.fa-user-nurse:before { + content: "\f82f"; } + +.fa-user-plus:before { + content: "\f234"; } + +.fa-user-secret:before { + content: "\f21b"; } + +.fa-user-shield:before { + content: "\f505"; } + +.fa-user-slash:before { + content: "\f506"; } + +.fa-user-tag:before { + content: "\f507"; } + +.fa-user-tie:before { + content: "\f508"; } + +.fa-user-times:before { + content: "\f235"; } + +.fa-users:before { + content: "\f0c0"; } + +.fa-users-cog:before { + content: "\f509"; } + +.fa-usps:before { + content: "\f7e1"; } + +.fa-ussunnah:before { + content: "\f407"; } + +.fa-utensil-spoon:before { + content: "\f2e5"; } + +.fa-utensils:before { + content: "\f2e7"; } + +.fa-vaadin:before { + content: "\f408"; } + +.fa-vector-square:before { + content: "\f5cb"; } + +.fa-venus:before { + content: "\f221"; } + +.fa-venus-double:before { + content: "\f226"; } + +.fa-venus-mars:before { + content: "\f228"; } + +.fa-viacoin:before { + content: "\f237"; } + +.fa-viadeo:before { + content: "\f2a9"; } + +.fa-viadeo-square:before { + content: "\f2aa"; } + +.fa-vial:before { + content: "\f492"; } + +.fa-vials:before { + content: "\f493"; } + +.fa-viber:before { + content: "\f409"; } + +.fa-video:before { + content: "\f03d"; } + +.fa-video-slash:before { + content: "\f4e2"; } + +.fa-vihara:before { + content: "\f6a7"; } + +.fa-vimeo:before { + content: "\f40a"; } + +.fa-vimeo-square:before { + content: "\f194"; } + +.fa-vimeo-v:before { + content: "\f27d"; } + +.fa-vine:before { + content: "\f1ca"; } + +.fa-vk:before { + content: "\f189"; } + +.fa-vnv:before { + content: "\f40b"; } + +.fa-voicemail:before { + content: "\f897"; } + +.fa-volleyball-ball:before { + content: "\f45f"; } + +.fa-volume-down:before { + content: "\f027"; } + +.fa-volume-mute:before { + content: "\f6a9"; } + +.fa-volume-off:before { + content: "\f026"; } + +.fa-volume-up:before { + content: "\f028"; } + +.fa-vote-yea:before { + content: "\f772"; } + +.fa-vr-cardboard:before { + content: "\f729"; } + +.fa-vuejs:before { + content: "\f41f"; } + +.fa-walking:before { + content: "\f554"; } + +.fa-wallet:before { + content: "\f555"; } + +.fa-warehouse:before { + content: "\f494"; } + +.fa-water:before { + content: "\f773"; } + +.fa-wave-square:before { + content: "\f83e"; } + +.fa-waze:before { + content: "\f83f"; } + +.fa-weebly:before { + content: "\f5cc"; } + +.fa-weibo:before { + content: "\f18a"; } + +.fa-weight:before { + content: "\f496"; } + +.fa-weight-hanging:before { + content: "\f5cd"; } + +.fa-weixin:before { + content: "\f1d7"; } + +.fa-whatsapp:before { + content: "\f232"; } + +.fa-whatsapp-square:before { + content: "\f40c"; } + +.fa-wheelchair:before { + content: "\f193"; } + +.fa-whmcs:before { + content: "\f40d"; } + +.fa-wifi:before { + content: "\f1eb"; } + +.fa-wikipedia-w:before { + content: "\f266"; } + +.fa-wind:before { + content: "\f72e"; } + +.fa-window-close:before { + content: "\f410"; } + +.fa-window-maximize:before { + content: "\f2d0"; } + +.fa-window-minimize:before { + content: "\f2d1"; } + +.fa-window-restore:before { + content: "\f2d2"; } + +.fa-windows:before { + content: "\f17a"; } + +.fa-wine-bottle:before { + content: "\f72f"; } + +.fa-wine-glass:before { + content: "\f4e3"; } + +.fa-wine-glass-alt:before { + content: "\f5ce"; } + +.fa-wix:before { + content: "\f5cf"; } + +.fa-wizards-of-the-coast:before { + content: "\f730"; } + +.fa-wolf-pack-battalion:before { + content: "\f514"; } + +.fa-won-sign:before { + content: "\f159"; } + +.fa-wordpress:before { + content: "\f19a"; } + +.fa-wordpress-simple:before { + content: "\f411"; } + +.fa-wpbeginner:before { + content: "\f297"; } + +.fa-wpexplorer:before { + content: "\f2de"; } + +.fa-wpforms:before { + content: "\f298"; } + +.fa-wpressr:before { + content: "\f3e4"; } + +.fa-wrench:before { + content: "\f0ad"; } + +.fa-x-ray:before { + content: "\f497"; } + +.fa-xbox:before { + content: "\f412"; } + +.fa-xing:before { + content: "\f168"; } + +.fa-xing-square:before { + content: "\f169"; } + +.fa-y-combinator:before { + content: "\f23b"; } + +.fa-yahoo:before { + content: "\f19e"; } + +.fa-yammer:before { + content: "\f840"; } + +.fa-yandex:before { + content: "\f413"; } + +.fa-yandex-international:before { + content: "\f414"; } + +.fa-yarn:before { + content: "\f7e3"; } + +.fa-yelp:before { + content: "\f1e9"; } + +.fa-yen-sign:before { + content: "\f157"; } + +.fa-yin-yang:before { + content: "\f6ad"; } + +.fa-yoast:before { + content: "\f2b1"; } + +.fa-youtube:before { + content: "\f167"; } + +.fa-youtube-square:before { + content: "\f431"; } + +.fa-zhihu:before { + content: "\f63f"; } + +.sr-only { + border: 0; + clip: rect(0, 0, 0, 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; } + +.sr-only-focusable:active, .sr-only-focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; } diff --git a/dist/fa/css/fontawesome.min.css b/dist/fa/css/fontawesome.min.css new file mode 100644 index 0000000..e00f0ed --- /dev/null +++ b/dist/fa/css/fontawesome.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\f952"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\f907"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\f913"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\f955"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\f91a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\f956"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\f91e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\f957"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\f941"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\f949"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto} \ No newline at end of file diff --git a/dist/fa/css/regular.css b/dist/fa/css/regular.css new file mode 100644 index 0000000..7e70f66 --- /dev/null +++ b/dist/fa/css/regular.css @@ -0,0 +1,15 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +@font-face { + font-family: 'Font Awesome 5 Free'; + font-style: normal; + font-weight: 400; + font-display: auto; + src: url("../webfonts/fa-regular-400.eot"); + src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); } + +.far { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } diff --git a/dist/fa/css/regular.min.css b/dist/fa/css/regular.min.css new file mode 100644 index 0000000..0d04bb8 --- /dev/null +++ b/dist/fa/css/regular.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:"Font Awesome 5 Free";font-weight:400} \ No newline at end of file diff --git a/dist/fa/css/solid.css b/dist/fa/css/solid.css new file mode 100644 index 0000000..6ff136a --- /dev/null +++ b/dist/fa/css/solid.css @@ -0,0 +1,16 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +@font-face { + font-family: 'Font Awesome 5 Free'; + font-style: normal; + font-weight: 900; + font-display: auto; + src: url("../webfonts/fa-solid-900.eot"); + src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); } + +.fa, +.fas { + font-family: 'Font Awesome 5 Free'; + font-weight: 900; } diff --git a/dist/fa/css/solid.min.css b/dist/fa/css/solid.min.css new file mode 100644 index 0000000..d80a5ca --- /dev/null +++ b/dist/fa/css/solid.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:auto;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Free";font-weight:900} \ No newline at end of file diff --git a/dist/fa/css/svg-with-js.css b/dist/fa/css/svg-with-js.css new file mode 100644 index 0000000..9a7be4a --- /dev/null +++ b/dist/fa/css/svg-with-js.css @@ -0,0 +1,371 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +svg:not(:root).svg-inline--fa { + overflow: visible; } + +.svg-inline--fa { + display: inline-block; + font-size: inherit; + height: 1em; + overflow: visible; + vertical-align: -.125em; } + .svg-inline--fa.fa-lg { + vertical-align: -.225em; } + .svg-inline--fa.fa-w-1 { + width: 0.0625em; } + .svg-inline--fa.fa-w-2 { + width: 0.125em; } + .svg-inline--fa.fa-w-3 { + width: 0.1875em; } + .svg-inline--fa.fa-w-4 { + width: 0.25em; } + .svg-inline--fa.fa-w-5 { + width: 0.3125em; } + .svg-inline--fa.fa-w-6 { + width: 0.375em; } + .svg-inline--fa.fa-w-7 { + width: 0.4375em; } + .svg-inline--fa.fa-w-8 { + width: 0.5em; } + .svg-inline--fa.fa-w-9 { + width: 0.5625em; } + .svg-inline--fa.fa-w-10 { + width: 0.625em; } + .svg-inline--fa.fa-w-11 { + width: 0.6875em; } + .svg-inline--fa.fa-w-12 { + width: 0.75em; } + .svg-inline--fa.fa-w-13 { + width: 0.8125em; } + .svg-inline--fa.fa-w-14 { + width: 0.875em; } + .svg-inline--fa.fa-w-15 { + width: 0.9375em; } + .svg-inline--fa.fa-w-16 { + width: 1em; } + .svg-inline--fa.fa-w-17 { + width: 1.0625em; } + .svg-inline--fa.fa-w-18 { + width: 1.125em; } + .svg-inline--fa.fa-w-19 { + width: 1.1875em; } + .svg-inline--fa.fa-w-20 { + width: 1.25em; } + .svg-inline--fa.fa-pull-left { + margin-right: .3em; + width: auto; } + .svg-inline--fa.fa-pull-right { + margin-left: .3em; + width: auto; } + .svg-inline--fa.fa-border { + height: 1.5em; } + .svg-inline--fa.fa-li { + width: 2em; } + .svg-inline--fa.fa-fw { + width: 1.25em; } + +.fa-layers svg.svg-inline--fa { + bottom: 0; + left: 0; + margin: auto; + position: absolute; + right: 0; + top: 0; } + +.fa-layers { + display: inline-block; + height: 1em; + position: relative; + text-align: center; + vertical-align: -.125em; + width: 1em; } + .fa-layers svg.svg-inline--fa { + -webkit-transform-origin: center center; + transform-origin: center center; } + +.fa-layers-text, .fa-layers-counter { + display: inline-block; + position: absolute; + text-align: center; } + +.fa-layers-text { + left: 50%; + top: 50%; + -webkit-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + -webkit-transform-origin: center center; + transform-origin: center center; } + +.fa-layers-counter { + background-color: #ff253a; + border-radius: 1em; + -webkit-box-sizing: border-box; + box-sizing: border-box; + color: #fff; + height: 1.5em; + line-height: 1; + max-width: 5em; + min-width: 1.5em; + overflow: hidden; + padding: .25em; + right: 0; + text-overflow: ellipsis; + top: 0; + -webkit-transform: scale(0.25); + transform: scale(0.25); + -webkit-transform-origin: top right; + transform-origin: top right; } + +.fa-layers-bottom-right { + bottom: 0; + right: 0; + top: auto; + -webkit-transform: scale(0.25); + transform: scale(0.25); + -webkit-transform-origin: bottom right; + transform-origin: bottom right; } + +.fa-layers-bottom-left { + bottom: 0; + left: 0; + right: auto; + top: auto; + -webkit-transform: scale(0.25); + transform: scale(0.25); + -webkit-transform-origin: bottom left; + transform-origin: bottom left; } + +.fa-layers-top-right { + right: 0; + top: 0; + -webkit-transform: scale(0.25); + transform: scale(0.25); + -webkit-transform-origin: top right; + transform-origin: top right; } + +.fa-layers-top-left { + left: 0; + right: auto; + top: 0; + -webkit-transform: scale(0.25); + transform: scale(0.25); + -webkit-transform-origin: top left; + transform-origin: top left; } + +.fa-lg { + font-size: 1.33333em; + line-height: 0.75em; + vertical-align: -.0667em; } + +.fa-xs { + font-size: .75em; } + +.fa-sm { + font-size: .875em; } + +.fa-1x { + font-size: 1em; } + +.fa-2x { + font-size: 2em; } + +.fa-3x { + font-size: 3em; } + +.fa-4x { + font-size: 4em; } + +.fa-5x { + font-size: 5em; } + +.fa-6x { + font-size: 6em; } + +.fa-7x { + font-size: 7em; } + +.fa-8x { + font-size: 8em; } + +.fa-9x { + font-size: 9em; } + +.fa-10x { + font-size: 10em; } + +.fa-fw { + text-align: center; + width: 1.25em; } + +.fa-ul { + list-style-type: none; + margin-left: 2.5em; + padding-left: 0; } + .fa-ul > li { + position: relative; } + +.fa-li { + left: -2em; + position: absolute; + text-align: center; + width: 2em; + line-height: inherit; } + +.fa-border { + border: solid 0.08em #eee; + border-radius: .1em; + padding: .2em .25em .15em; } + +.fa-pull-left { + float: left; } + +.fa-pull-right { + float: right; } + +.fa.fa-pull-left, +.fas.fa-pull-left, +.far.fa-pull-left, +.fal.fa-pull-left, +.fab.fa-pull-left { + margin-right: .3em; } + +.fa.fa-pull-right, +.fas.fa-pull-right, +.far.fa-pull-right, +.fal.fa-pull-right, +.fab.fa-pull-right { + margin-left: .3em; } + +.fa-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; } + +.fa-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); } + +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +.fa-rotate-90 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; + -webkit-transform: rotate(90deg); + transform: rotate(90deg); } + +.fa-rotate-180 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; + -webkit-transform: rotate(180deg); + transform: rotate(180deg); } + +.fa-rotate-270 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + +.fa-flip-horizontal { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; + -webkit-transform: scale(-1, 1); + transform: scale(-1, 1); } + +.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(1, -1); + transform: scale(1, -1); } + +.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(-1, -1); + transform: scale(-1, -1); } + +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical, +:root .fa-flip-both { + -webkit-filter: none; + filter: none; } + +.fa-stack { + display: inline-block; + height: 2em; + position: relative; + width: 2.5em; } + +.fa-stack-1x, +.fa-stack-2x { + bottom: 0; + left: 0; + margin: auto; + position: absolute; + right: 0; + top: 0; } + +.svg-inline--fa.fa-stack-1x { + height: 1em; + width: 1.25em; } + +.svg-inline--fa.fa-stack-2x { + height: 2em; + width: 2.5em; } + +.fa-inverse { + color: #fff; } + +.sr-only { + border: 0; + clip: rect(0, 0, 0, 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; } + +.sr-only-focusable:active, .sr-only-focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; } + +.svg-inline--fa .fa-primary { + fill: var(--fa-primary-color, currentColor); + opacity: 1; + opacity: var(--fa-primary-opacity, 1); } + +.svg-inline--fa .fa-secondary { + fill: var(--fa-secondary-color, currentColor); + opacity: 0.4; + opacity: var(--fa-secondary-opacity, 0.4); } + +.svg-inline--fa.fa-swap-opacity .fa-primary { + opacity: 0.4; + opacity: var(--fa-secondary-opacity, 0.4); } + +.svg-inline--fa.fa-swap-opacity .fa-secondary { + opacity: 1; + opacity: var(--fa-primary-opacity, 1); } + +.svg-inline--fa mask .fa-primary, +.svg-inline--fa mask .fa-secondary { + fill: black; } + +.fad.fa-inverse { + color: #fff; } diff --git a/dist/fa/css/svg-with-js.min.css b/dist/fa/css/svg-with-js.min.css new file mode 100644 index 0000000..5e158fa --- /dev/null +++ b/dist/fa/css/svg-with-js.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.svg-inline--fa,svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa .fa-secondary,.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fad.fa-inverse{color:#fff} \ No newline at end of file diff --git a/dist/fa/css/v4-shims.css b/dist/fa/css/v4-shims.css new file mode 100644 index 0000000..9e07742 --- /dev/null +++ b/dist/fa/css/v4-shims.css @@ -0,0 +1,2172 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa.fa-glass:before { + content: "\f000"; } + +.fa.fa-meetup { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-star-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-star-o:before { + content: "\f005"; } + +.fa.fa-remove:before { + content: "\f00d"; } + +.fa.fa-close:before { + content: "\f00d"; } + +.fa.fa-gear:before { + content: "\f013"; } + +.fa.fa-trash-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-trash-o:before { + content: "\f2ed"; } + +.fa.fa-file-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-o:before { + content: "\f15b"; } + +.fa.fa-clock-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-clock-o:before { + content: "\f017"; } + +.fa.fa-arrow-circle-o-down { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-down:before { + content: "\f358"; } + +.fa.fa-arrow-circle-o-up { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-up:before { + content: "\f35b"; } + +.fa.fa-play-circle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-play-circle-o:before { + content: "\f144"; } + +.fa.fa-repeat:before { + content: "\f01e"; } + +.fa.fa-rotate-right:before { + content: "\f01e"; } + +.fa.fa-refresh:before { + content: "\f021"; } + +.fa.fa-list-alt { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-dedent:before { + content: "\f03b"; } + +.fa.fa-video-camera:before { + content: "\f03d"; } + +.fa.fa-picture-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-picture-o:before { + content: "\f03e"; } + +.fa.fa-photo { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-photo:before { + content: "\f03e"; } + +.fa.fa-image { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-image:before { + content: "\f03e"; } + +.fa.fa-pencil:before { + content: "\f303"; } + +.fa.fa-map-marker:before { + content: "\f3c5"; } + +.fa.fa-pencil-square-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-pencil-square-o:before { + content: "\f044"; } + +.fa.fa-share-square-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-share-square-o:before { + content: "\f14d"; } + +.fa.fa-check-square-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-check-square-o:before { + content: "\f14a"; } + +.fa.fa-arrows:before { + content: "\f0b2"; } + +.fa.fa-times-circle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-times-circle-o:before { + content: "\f057"; } + +.fa.fa-check-circle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-check-circle-o:before { + content: "\f058"; } + +.fa.fa-mail-forward:before { + content: "\f064"; } + +.fa.fa-expand:before { + content: "\f424"; } + +.fa.fa-compress:before { + content: "\f422"; } + +.fa.fa-eye { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-eye-slash { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-warning:before { + content: "\f071"; } + +.fa.fa-calendar:before { + content: "\f073"; } + +.fa.fa-arrows-v:before { + content: "\f338"; } + +.fa.fa-arrows-h:before { + content: "\f337"; } + +.fa.fa-bar-chart { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-bar-chart:before { + content: "\f080"; } + +.fa.fa-bar-chart-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-bar-chart-o:before { + content: "\f080"; } + +.fa.fa-twitter-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-facebook-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-gears:before { + content: "\f085"; } + +.fa.fa-thumbs-o-up { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-thumbs-o-up:before { + content: "\f164"; } + +.fa.fa-thumbs-o-down { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-thumbs-o-down:before { + content: "\f165"; } + +.fa.fa-heart-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-heart-o:before { + content: "\f004"; } + +.fa.fa-sign-out:before { + content: "\f2f5"; } + +.fa.fa-linkedin-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-linkedin-square:before { + content: "\f08c"; } + +.fa.fa-thumb-tack:before { + content: "\f08d"; } + +.fa.fa-external-link:before { + content: "\f35d"; } + +.fa.fa-sign-in:before { + content: "\f2f6"; } + +.fa.fa-github-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-lemon-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-lemon-o:before { + content: "\f094"; } + +.fa.fa-square-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-square-o:before { + content: "\f0c8"; } + +.fa.fa-bookmark-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-bookmark-o:before { + content: "\f02e"; } + +.fa.fa-twitter { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-facebook { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-facebook:before { + content: "\f39e"; } + +.fa.fa-facebook-f { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-facebook-f:before { + content: "\f39e"; } + +.fa.fa-github { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-credit-card { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-feed:before { + content: "\f09e"; } + +.fa.fa-hdd-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hdd-o:before { + content: "\f0a0"; } + +.fa.fa-hand-o-right { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-o-right:before { + content: "\f0a4"; } + +.fa.fa-hand-o-left { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-o-left:before { + content: "\f0a5"; } + +.fa.fa-hand-o-up { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-o-up:before { + content: "\f0a6"; } + +.fa.fa-hand-o-down { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-o-down:before { + content: "\f0a7"; } + +.fa.fa-arrows-alt:before { + content: "\f31e"; } + +.fa.fa-group:before { + content: "\f0c0"; } + +.fa.fa-chain:before { + content: "\f0c1"; } + +.fa.fa-scissors:before { + content: "\f0c4"; } + +.fa.fa-files-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-files-o:before { + content: "\f0c5"; } + +.fa.fa-floppy-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-floppy-o:before { + content: "\f0c7"; } + +.fa.fa-navicon:before { + content: "\f0c9"; } + +.fa.fa-reorder:before { + content: "\f0c9"; } + +.fa.fa-pinterest { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-pinterest-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-google-plus { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-google-plus:before { + content: "\f0d5"; } + +.fa.fa-money { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-money:before { + content: "\f3d1"; } + +.fa.fa-unsorted:before { + content: "\f0dc"; } + +.fa.fa-sort-desc:before { + content: "\f0dd"; } + +.fa.fa-sort-asc:before { + content: "\f0de"; } + +.fa.fa-linkedin { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-linkedin:before { + content: "\f0e1"; } + +.fa.fa-rotate-left:before { + content: "\f0e2"; } + +.fa.fa-legal:before { + content: "\f0e3"; } + +.fa.fa-tachometer:before { + content: "\f3fd"; } + +.fa.fa-dashboard:before { + content: "\f3fd"; } + +.fa.fa-comment-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-comment-o:before { + content: "\f075"; } + +.fa.fa-comments-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-comments-o:before { + content: "\f086"; } + +.fa.fa-flash:before { + content: "\f0e7"; } + +.fa.fa-clipboard { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-paste { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-paste:before { + content: "\f328"; } + +.fa.fa-lightbulb-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-lightbulb-o:before { + content: "\f0eb"; } + +.fa.fa-exchange:before { + content: "\f362"; } + +.fa.fa-cloud-download:before { + content: "\f381"; } + +.fa.fa-cloud-upload:before { + content: "\f382"; } + +.fa.fa-bell-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-bell-o:before { + content: "\f0f3"; } + +.fa.fa-cutlery:before { + content: "\f2e7"; } + +.fa.fa-file-text-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-text-o:before { + content: "\f15c"; } + +.fa.fa-building-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-building-o:before { + content: "\f1ad"; } + +.fa.fa-hospital-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hospital-o:before { + content: "\f0f8"; } + +.fa.fa-tablet:before { + content: "\f3fa"; } + +.fa.fa-mobile:before { + content: "\f3cd"; } + +.fa.fa-mobile-phone:before { + content: "\f3cd"; } + +.fa.fa-circle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-circle-o:before { + content: "\f111"; } + +.fa.fa-mail-reply:before { + content: "\f3e5"; } + +.fa.fa-github-alt { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-folder-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-folder-o:before { + content: "\f07b"; } + +.fa.fa-folder-open-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-folder-open-o:before { + content: "\f07c"; } + +.fa.fa-smile-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-smile-o:before { + content: "\f118"; } + +.fa.fa-frown-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-frown-o:before { + content: "\f119"; } + +.fa.fa-meh-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-meh-o:before { + content: "\f11a"; } + +.fa.fa-keyboard-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-keyboard-o:before { + content: "\f11c"; } + +.fa.fa-flag-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-flag-o:before { + content: "\f024"; } + +.fa.fa-mail-reply-all:before { + content: "\f122"; } + +.fa.fa-star-half-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-star-half-o:before { + content: "\f089"; } + +.fa.fa-star-half-empty { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-star-half-empty:before { + content: "\f089"; } + +.fa.fa-star-half-full { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-star-half-full:before { + content: "\f089"; } + +.fa.fa-code-fork:before { + content: "\f126"; } + +.fa.fa-chain-broken:before { + content: "\f127"; } + +.fa.fa-shield:before { + content: "\f3ed"; } + +.fa.fa-calendar-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-calendar-o:before { + content: "\f133"; } + +.fa.fa-maxcdn { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-html5 { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-css3 { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-ticket:before { + content: "\f3ff"; } + +.fa.fa-minus-square-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-minus-square-o:before { + content: "\f146"; } + +.fa.fa-level-up:before { + content: "\f3bf"; } + +.fa.fa-level-down:before { + content: "\f3be"; } + +.fa.fa-pencil-square:before { + content: "\f14b"; } + +.fa.fa-external-link-square:before { + content: "\f360"; } + +.fa.fa-compass { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-down { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-down:before { + content: "\f150"; } + +.fa.fa-toggle-down { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-toggle-down:before { + content: "\f150"; } + +.fa.fa-caret-square-o-up { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-up:before { + content: "\f151"; } + +.fa.fa-toggle-up { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-toggle-up:before { + content: "\f151"; } + +.fa.fa-caret-square-o-right { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-right:before { + content: "\f152"; } + +.fa.fa-toggle-right { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-toggle-right:before { + content: "\f152"; } + +.fa.fa-eur:before { + content: "\f153"; } + +.fa.fa-euro:before { + content: "\f153"; } + +.fa.fa-gbp:before { + content: "\f154"; } + +.fa.fa-usd:before { + content: "\f155"; } + +.fa.fa-dollar:before { + content: "\f155"; } + +.fa.fa-inr:before { + content: "\f156"; } + +.fa.fa-rupee:before { + content: "\f156"; } + +.fa.fa-jpy:before { + content: "\f157"; } + +.fa.fa-cny:before { + content: "\f157"; } + +.fa.fa-rmb:before { + content: "\f157"; } + +.fa.fa-yen:before { + content: "\f157"; } + +.fa.fa-rub:before { + content: "\f158"; } + +.fa.fa-ruble:before { + content: "\f158"; } + +.fa.fa-rouble:before { + content: "\f158"; } + +.fa.fa-krw:before { + content: "\f159"; } + +.fa.fa-won:before { + content: "\f159"; } + +.fa.fa-btc { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-bitcoin { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-bitcoin:before { + content: "\f15a"; } + +.fa.fa-file-text:before { + content: "\f15c"; } + +.fa.fa-sort-alpha-asc:before { + content: "\f15d"; } + +.fa.fa-sort-alpha-desc:before { + content: "\f881"; } + +.fa.fa-sort-amount-asc:before { + content: "\f160"; } + +.fa.fa-sort-amount-desc:before { + content: "\f884"; } + +.fa.fa-sort-numeric-asc:before { + content: "\f162"; } + +.fa.fa-sort-numeric-desc:before { + content: "\f886"; } + +.fa.fa-youtube-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-youtube { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-xing { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-xing-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-youtube-play { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-youtube-play:before { + content: "\f167"; } + +.fa.fa-dropbox { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-stack-overflow { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-instagram { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-flickr { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-adn { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-bitbucket { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-bitbucket-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-bitbucket-square:before { + content: "\f171"; } + +.fa.fa-tumblr { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-tumblr-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-long-arrow-down:before { + content: "\f309"; } + +.fa.fa-long-arrow-up:before { + content: "\f30c"; } + +.fa.fa-long-arrow-left:before { + content: "\f30a"; } + +.fa.fa-long-arrow-right:before { + content: "\f30b"; } + +.fa.fa-apple { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-windows { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-android { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-linux { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-dribbble { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-skype { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-foursquare { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-trello { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-gratipay { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-gittip { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-gittip:before { + content: "\f184"; } + +.fa.fa-sun-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-sun-o:before { + content: "\f185"; } + +.fa.fa-moon-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-moon-o:before { + content: "\f186"; } + +.fa.fa-vk { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-weibo { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-renren { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-pagelines { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-stack-exchange { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-right { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-right:before { + content: "\f35a"; } + +.fa.fa-arrow-circle-o-left { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-left:before { + content: "\f359"; } + +.fa.fa-caret-square-o-left { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-left:before { + content: "\f191"; } + +.fa.fa-toggle-left { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-toggle-left:before { + content: "\f191"; } + +.fa.fa-dot-circle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-dot-circle-o:before { + content: "\f192"; } + +.fa.fa-vimeo-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-try:before { + content: "\f195"; } + +.fa.fa-turkish-lira:before { + content: "\f195"; } + +.fa.fa-plus-square-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-plus-square-o:before { + content: "\f0fe"; } + +.fa.fa-slack { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-wordpress { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-openid { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-institution:before { + content: "\f19c"; } + +.fa.fa-bank:before { + content: "\f19c"; } + +.fa.fa-mortar-board:before { + content: "\f19d"; } + +.fa.fa-yahoo { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-google { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-reddit { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-reddit-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-stumbleupon-circle { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-stumbleupon { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-delicious { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-digg { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-pied-piper-pp { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-pied-piper-alt { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-drupal { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-joomla { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-spoon:before { + content: "\f2e5"; } + +.fa.fa-behance { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-behance-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-steam { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-steam-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-automobile:before { + content: "\f1b9"; } + +.fa.fa-envelope-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-envelope-o:before { + content: "\f0e0"; } + +.fa.fa-spotify { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-deviantart { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-soundcloud { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-file-pdf-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-pdf-o:before { + content: "\f1c1"; } + +.fa.fa-file-word-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-word-o:before { + content: "\f1c2"; } + +.fa.fa-file-excel-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-excel-o:before { + content: "\f1c3"; } + +.fa.fa-file-powerpoint-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-powerpoint-o:before { + content: "\f1c4"; } + +.fa.fa-file-image-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-image-o:before { + content: "\f1c5"; } + +.fa.fa-file-photo-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-photo-o:before { + content: "\f1c5"; } + +.fa.fa-file-picture-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-picture-o:before { + content: "\f1c5"; } + +.fa.fa-file-archive-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-archive-o:before { + content: "\f1c6"; } + +.fa.fa-file-zip-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-zip-o:before { + content: "\f1c6"; } + +.fa.fa-file-audio-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-audio-o:before { + content: "\f1c7"; } + +.fa.fa-file-sound-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-sound-o:before { + content: "\f1c7"; } + +.fa.fa-file-video-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-video-o:before { + content: "\f1c8"; } + +.fa.fa-file-movie-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-movie-o:before { + content: "\f1c8"; } + +.fa.fa-file-code-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-file-code-o:before { + content: "\f1c9"; } + +.fa.fa-vine { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-codepen { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-jsfiddle { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-life-ring { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-life-bouy { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-life-bouy:before { + content: "\f1cd"; } + +.fa.fa-life-buoy { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-life-buoy:before { + content: "\f1cd"; } + +.fa.fa-life-saver { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-life-saver:before { + content: "\f1cd"; } + +.fa.fa-support { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-support:before { + content: "\f1cd"; } + +.fa.fa-circle-o-notch:before { + content: "\f1ce"; } + +.fa.fa-rebel { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-ra { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-ra:before { + content: "\f1d0"; } + +.fa.fa-resistance { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-resistance:before { + content: "\f1d0"; } + +.fa.fa-empire { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-ge { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-ge:before { + content: "\f1d1"; } + +.fa.fa-git-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-git { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-hacker-news { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-y-combinator-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-y-combinator-square:before { + content: "\f1d4"; } + +.fa.fa-yc-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-yc-square:before { + content: "\f1d4"; } + +.fa.fa-tencent-weibo { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-qq { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-weixin { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-wechat { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-wechat:before { + content: "\f1d7"; } + +.fa.fa-send:before { + content: "\f1d8"; } + +.fa.fa-paper-plane-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-paper-plane-o:before { + content: "\f1d8"; } + +.fa.fa-send-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-send-o:before { + content: "\f1d8"; } + +.fa.fa-circle-thin { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-circle-thin:before { + content: "\f111"; } + +.fa.fa-header:before { + content: "\f1dc"; } + +.fa.fa-sliders:before { + content: "\f1de"; } + +.fa.fa-futbol-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-futbol-o:before { + content: "\f1e3"; } + +.fa.fa-soccer-ball-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-soccer-ball-o:before { + content: "\f1e3"; } + +.fa.fa-slideshare { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-twitch { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-yelp { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-newspaper-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-newspaper-o:before { + content: "\f1ea"; } + +.fa.fa-paypal { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-google-wallet { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-cc-visa { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-cc-mastercard { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-cc-discover { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-cc-amex { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-cc-paypal { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-cc-stripe { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-bell-slash-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-bell-slash-o:before { + content: "\f1f6"; } + +.fa.fa-trash:before { + content: "\f2ed"; } + +.fa.fa-copyright { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-eyedropper:before { + content: "\f1fb"; } + +.fa.fa-area-chart:before { + content: "\f1fe"; } + +.fa.fa-pie-chart:before { + content: "\f200"; } + +.fa.fa-line-chart:before { + content: "\f201"; } + +.fa.fa-lastfm { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-lastfm-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-ioxhost { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-angellist { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-cc { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-cc:before { + content: "\f20a"; } + +.fa.fa-ils:before { + content: "\f20b"; } + +.fa.fa-shekel:before { + content: "\f20b"; } + +.fa.fa-sheqel:before { + content: "\f20b"; } + +.fa.fa-meanpath { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-meanpath:before { + content: "\f2b4"; } + +.fa.fa-buysellads { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-connectdevelop { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-dashcube { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-forumbee { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-leanpub { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-sellsy { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-shirtsinbulk { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-simplybuilt { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-skyatlas { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-diamond { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-diamond:before { + content: "\f3a5"; } + +.fa.fa-intersex:before { + content: "\f224"; } + +.fa.fa-facebook-official { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-facebook-official:before { + content: "\f09a"; } + +.fa.fa-pinterest-p { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-whatsapp { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-hotel:before { + content: "\f236"; } + +.fa.fa-viacoin { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-medium { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-y-combinator { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-yc { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-yc:before { + content: "\f23b"; } + +.fa.fa-optin-monster { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-opencart { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-expeditedssl { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-battery-4:before { + content: "\f240"; } + +.fa.fa-battery:before { + content: "\f240"; } + +.fa.fa-battery-3:before { + content: "\f241"; } + +.fa.fa-battery-2:before { + content: "\f242"; } + +.fa.fa-battery-1:before { + content: "\f243"; } + +.fa.fa-battery-0:before { + content: "\f244"; } + +.fa.fa-object-group { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-object-ungroup { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-sticky-note-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-sticky-note-o:before { + content: "\f249"; } + +.fa.fa-cc-jcb { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-cc-diners-club { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-clone { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hourglass-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hourglass-o:before { + content: "\f254"; } + +.fa.fa-hourglass-1:before { + content: "\f251"; } + +.fa.fa-hourglass-2:before { + content: "\f252"; } + +.fa.fa-hourglass-3:before { + content: "\f253"; } + +.fa.fa-hand-rock-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-rock-o:before { + content: "\f255"; } + +.fa.fa-hand-grab-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-grab-o:before { + content: "\f255"; } + +.fa.fa-hand-paper-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-paper-o:before { + content: "\f256"; } + +.fa.fa-hand-stop-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-stop-o:before { + content: "\f256"; } + +.fa.fa-hand-scissors-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-scissors-o:before { + content: "\f257"; } + +.fa.fa-hand-lizard-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-lizard-o:before { + content: "\f258"; } + +.fa.fa-hand-spock-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-spock-o:before { + content: "\f259"; } + +.fa.fa-hand-pointer-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-pointer-o:before { + content: "\f25a"; } + +.fa.fa-hand-peace-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-hand-peace-o:before { + content: "\f25b"; } + +.fa.fa-registered { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-creative-commons { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-gg { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-gg-circle { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-tripadvisor { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-odnoklassniki { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-odnoklassniki-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-get-pocket { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-wikipedia-w { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-safari { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-chrome { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-firefox { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-opera { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-internet-explorer { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-television:before { + content: "\f26c"; } + +.fa.fa-contao { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-500px { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-amazon { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-calendar-plus-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-calendar-plus-o:before { + content: "\f271"; } + +.fa.fa-calendar-minus-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-calendar-minus-o:before { + content: "\f272"; } + +.fa.fa-calendar-times-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-calendar-times-o:before { + content: "\f273"; } + +.fa.fa-calendar-check-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-calendar-check-o:before { + content: "\f274"; } + +.fa.fa-map-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-map-o:before { + content: "\f279"; } + +.fa.fa-commenting:before { + content: "\f4ad"; } + +.fa.fa-commenting-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-commenting-o:before { + content: "\f4ad"; } + +.fa.fa-houzz { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-vimeo { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-vimeo:before { + content: "\f27d"; } + +.fa.fa-black-tie { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-fonticons { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-reddit-alien { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-edge { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-credit-card-alt:before { + content: "\f09d"; } + +.fa.fa-codiepie { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-modx { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-fort-awesome { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-usb { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-product-hunt { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-mixcloud { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-scribd { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-pause-circle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-pause-circle-o:before { + content: "\f28b"; } + +.fa.fa-stop-circle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-stop-circle-o:before { + content: "\f28d"; } + +.fa.fa-bluetooth { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-bluetooth-b { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-gitlab { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-wpbeginner { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-wpforms { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-envira { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-wheelchair-alt { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-wheelchair-alt:before { + content: "\f368"; } + +.fa.fa-question-circle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-question-circle-o:before { + content: "\f059"; } + +.fa.fa-volume-control-phone:before { + content: "\f2a0"; } + +.fa.fa-asl-interpreting:before { + content: "\f2a3"; } + +.fa.fa-deafness:before { + content: "\f2a4"; } + +.fa.fa-hard-of-hearing:before { + content: "\f2a4"; } + +.fa.fa-glide { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-glide-g { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-signing:before { + content: "\f2a7"; } + +.fa.fa-viadeo { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-viadeo-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-snapchat { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-snapchat-ghost { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-snapchat-square { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-pied-piper { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-first-order { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-yoast { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-themeisle { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-official { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-official:before { + content: "\f2b3"; } + +.fa.fa-google-plus-circle { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-circle:before { + content: "\f2b3"; } + +.fa.fa-font-awesome { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-fa { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-fa:before { + content: "\f2b4"; } + +.fa.fa-handshake-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-handshake-o:before { + content: "\f2b5"; } + +.fa.fa-envelope-open-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-envelope-open-o:before { + content: "\f2b6"; } + +.fa.fa-linode { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-address-book-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-address-book-o:before { + content: "\f2b9"; } + +.fa.fa-vcard:before { + content: "\f2bb"; } + +.fa.fa-address-card-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-address-card-o:before { + content: "\f2bb"; } + +.fa.fa-vcard-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-vcard-o:before { + content: "\f2bb"; } + +.fa.fa-user-circle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-user-circle-o:before { + content: "\f2bd"; } + +.fa.fa-user-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-user-o:before { + content: "\f007"; } + +.fa.fa-id-badge { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-drivers-license:before { + content: "\f2c2"; } + +.fa.fa-id-card-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-id-card-o:before { + content: "\f2c2"; } + +.fa.fa-drivers-license-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-drivers-license-o:before { + content: "\f2c2"; } + +.fa.fa-quora { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-free-code-camp { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-telegram { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-thermometer-4:before { + content: "\f2c7"; } + +.fa.fa-thermometer:before { + content: "\f2c7"; } + +.fa.fa-thermometer-3:before { + content: "\f2c8"; } + +.fa.fa-thermometer-2:before { + content: "\f2c9"; } + +.fa.fa-thermometer-1:before { + content: "\f2ca"; } + +.fa.fa-thermometer-0:before { + content: "\f2cb"; } + +.fa.fa-bathtub:before { + content: "\f2cd"; } + +.fa.fa-s15:before { + content: "\f2cd"; } + +.fa.fa-window-maximize { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-window-restore { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-times-rectangle:before { + content: "\f410"; } + +.fa.fa-window-close-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-window-close-o:before { + content: "\f410"; } + +.fa.fa-times-rectangle-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-times-rectangle-o:before { + content: "\f410"; } + +.fa.fa-bandcamp { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-grav { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-etsy { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-imdb { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-ravelry { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-eercast { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-eercast:before { + content: "\f2da"; } + +.fa.fa-snowflake-o { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; } + +.fa.fa-snowflake-o:before { + content: "\f2dc"; } + +.fa.fa-superpowers { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-wpexplorer { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; } + +.fa.fa-cab:before { + content: "\f1ba"; } diff --git a/dist/fa/css/v4-shims.min.css b/dist/fa/css/v4-shims.min.css new file mode 100644 index 0000000..7942cea --- /dev/null +++ b/dist/fa/css/v4-shims.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa.fa-glass:before{content:"\f000"}.fa.fa-meetup{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-star-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-o:before{content:"\f005"}.fa.fa-close:before,.fa.fa-remove:before{content:"\f00d"}.fa.fa-gear:before{content:"\f013"}.fa.fa-trash-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-trash-o:before{content:"\f2ed"}.fa.fa-file-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-o:before{content:"\f15b"}.fa.fa-clock-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-clock-o:before{content:"\f017"}.fa.fa-arrow-circle-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-down:before{content:"\f358"}.fa.fa-arrow-circle-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-up:before{content:"\f35b"}.fa.fa-play-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-play-circle-o:before{content:"\f144"}.fa.fa-repeat:before,.fa.fa-rotate-right:before{content:"\f01e"}.fa.fa-refresh:before{content:"\f021"}.fa.fa-list-alt{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-dedent:before{content:"\f03b"}.fa.fa-video-camera:before{content:"\f03d"}.fa.fa-picture-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-picture-o:before{content:"\f03e"}.fa.fa-photo{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-photo:before{content:"\f03e"}.fa.fa-image{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-image:before{content:"\f03e"}.fa.fa-pencil:before{content:"\f303"}.fa.fa-map-marker:before{content:"\f3c5"}.fa.fa-pencil-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-pencil-square-o:before{content:"\f044"}.fa.fa-share-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-share-square-o:before{content:"\f14d"}.fa.fa-check-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-check-square-o:before{content:"\f14a"}.fa.fa-arrows:before{content:"\f0b2"}.fa.fa-times-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-times-circle-o:before{content:"\f057"}.fa.fa-check-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-check-circle-o:before{content:"\f058"}.fa.fa-mail-forward:before{content:"\f064"}.fa.fa-expand:before{content:"\f424"}.fa.fa-compress:before{content:"\f422"}.fa.fa-eye,.fa.fa-eye-slash{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-warning:before{content:"\f071"}.fa.fa-calendar:before{content:"\f073"}.fa.fa-arrows-v:before{content:"\f338"}.fa.fa-arrows-h:before{content:"\f337"}.fa.fa-bar-chart{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bar-chart:before{content:"\f080"}.fa.fa-bar-chart-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bar-chart-o:before{content:"\f080"}.fa.fa-facebook-square,.fa.fa-twitter-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-gears:before{content:"\f085"}.fa.fa-thumbs-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-thumbs-o-up:before{content:"\f164"}.fa.fa-thumbs-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-thumbs-o-down:before{content:"\f165"}.fa.fa-heart-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-heart-o:before{content:"\f004"}.fa.fa-sign-out:before{content:"\f2f5"}.fa.fa-linkedin-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-linkedin-square:before{content:"\f08c"}.fa.fa-thumb-tack:before{content:"\f08d"}.fa.fa-external-link:before{content:"\f35d"}.fa.fa-sign-in:before{content:"\f2f6"}.fa.fa-github-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-lemon-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-lemon-o:before{content:"\f094"}.fa.fa-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-square-o:before{content:"\f0c8"}.fa.fa-bookmark-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bookmark-o:before{content:"\f02e"}.fa.fa-facebook,.fa.fa-twitter{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-facebook:before{content:"\f39e"}.fa.fa-facebook-f{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-facebook-f:before{content:"\f39e"}.fa.fa-github{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-credit-card{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-feed:before{content:"\f09e"}.fa.fa-hdd-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hdd-o:before{content:"\f0a0"}.fa.fa-hand-o-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-right:before{content:"\f0a4"}.fa.fa-hand-o-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-left:before{content:"\f0a5"}.fa.fa-hand-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-up:before{content:"\f0a6"}.fa.fa-hand-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-down:before{content:"\f0a7"}.fa.fa-arrows-alt:before{content:"\f31e"}.fa.fa-group:before{content:"\f0c0"}.fa.fa-chain:before{content:"\f0c1"}.fa.fa-scissors:before{content:"\f0c4"}.fa.fa-files-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-files-o:before{content:"\f0c5"}.fa.fa-floppy-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-floppy-o:before{content:"\f0c7"}.fa.fa-navicon:before,.fa.fa-reorder:before{content:"\f0c9"}.fa.fa-google-plus,.fa.fa-google-plus-square,.fa.fa-pinterest,.fa.fa-pinterest-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-google-plus:before{content:"\f0d5"}.fa.fa-money{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-money:before{content:"\f3d1"}.fa.fa-unsorted:before{content:"\f0dc"}.fa.fa-sort-desc:before{content:"\f0dd"}.fa.fa-sort-asc:before{content:"\f0de"}.fa.fa-linkedin{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-linkedin:before{content:"\f0e1"}.fa.fa-rotate-left:before{content:"\f0e2"}.fa.fa-legal:before{content:"\f0e3"}.fa.fa-dashboard:before,.fa.fa-tachometer:before{content:"\f3fd"}.fa.fa-comment-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-comment-o:before{content:"\f075"}.fa.fa-comments-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-comments-o:before{content:"\f086"}.fa.fa-flash:before{content:"\f0e7"}.fa.fa-clipboard,.fa.fa-paste{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-paste:before{content:"\f328"}.fa.fa-lightbulb-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-lightbulb-o:before{content:"\f0eb"}.fa.fa-exchange:before{content:"\f362"}.fa.fa-cloud-download:before{content:"\f381"}.fa.fa-cloud-upload:before{content:"\f382"}.fa.fa-bell-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bell-o:before{content:"\f0f3"}.fa.fa-cutlery:before{content:"\f2e7"}.fa.fa-file-text-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-text-o:before{content:"\f15c"}.fa.fa-building-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-building-o:before{content:"\f1ad"}.fa.fa-hospital-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hospital-o:before{content:"\f0f8"}.fa.fa-tablet:before{content:"\f3fa"}.fa.fa-mobile-phone:before,.fa.fa-mobile:before{content:"\f3cd"}.fa.fa-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-circle-o:before{content:"\f111"}.fa.fa-mail-reply:before{content:"\f3e5"}.fa.fa-github-alt{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-folder-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-folder-o:before{content:"\f07b"}.fa.fa-folder-open-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-folder-open-o:before{content:"\f07c"}.fa.fa-smile-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-smile-o:before{content:"\f118"}.fa.fa-frown-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-frown-o:before{content:"\f119"}.fa.fa-meh-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-meh-o:before{content:"\f11a"}.fa.fa-keyboard-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-keyboard-o:before{content:"\f11c"}.fa.fa-flag-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-flag-o:before{content:"\f024"}.fa.fa-mail-reply-all:before{content:"\f122"}.fa.fa-star-half-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-half-o:before{content:"\f089"}.fa.fa-star-half-empty{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-half-empty:before{content:"\f089"}.fa.fa-star-half-full{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-half-full:before{content:"\f089"}.fa.fa-code-fork:before{content:"\f126"}.fa.fa-chain-broken:before{content:"\f127"}.fa.fa-shield:before{content:"\f3ed"}.fa.fa-calendar-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-o:before{content:"\f133"}.fa.fa-css3,.fa.fa-html5,.fa.fa-maxcdn{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-ticket:before{content:"\f3ff"}.fa.fa-minus-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-minus-square-o:before{content:"\f146"}.fa.fa-level-up:before{content:"\f3bf"}.fa.fa-level-down:before{content:"\f3be"}.fa.fa-pencil-square:before{content:"\f14b"}.fa.fa-external-link-square:before{content:"\f360"}.fa.fa-compass{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-down:before{content:"\f150"}.fa.fa-toggle-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-down:before{content:"\f150"}.fa.fa-caret-square-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-up:before{content:"\f151"}.fa.fa-toggle-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-up:before{content:"\f151"}.fa.fa-caret-square-o-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-right:before{content:"\f152"}.fa.fa-toggle-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-right:before{content:"\f152"}.fa.fa-eur:before,.fa.fa-euro:before{content:"\f153"}.fa.fa-gbp:before{content:"\f154"}.fa.fa-dollar:before,.fa.fa-usd:before{content:"\f155"}.fa.fa-inr:before,.fa.fa-rupee:before{content:"\f156"}.fa.fa-cny:before,.fa.fa-jpy:before,.fa.fa-rmb:before,.fa.fa-yen:before{content:"\f157"}.fa.fa-rouble:before,.fa.fa-rub:before,.fa.fa-ruble:before{content:"\f158"}.fa.fa-krw:before,.fa.fa-won:before{content:"\f159"}.fa.fa-bitcoin,.fa.fa-btc{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bitcoin:before{content:"\f15a"}.fa.fa-file-text:before{content:"\f15c"}.fa.fa-sort-alpha-asc:before{content:"\f15d"}.fa.fa-sort-alpha-desc:before{content:"\f881"}.fa.fa-sort-amount-asc:before{content:"\f160"}.fa.fa-sort-amount-desc:before{content:"\f884"}.fa.fa-sort-numeric-asc:before{content:"\f162"}.fa.fa-sort-numeric-desc:before{content:"\f886"}.fa.fa-xing,.fa.fa-xing-square,.fa.fa-youtube,.fa.fa-youtube-play,.fa.fa-youtube-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-youtube-play:before{content:"\f167"}.fa.fa-adn,.fa.fa-bitbucket,.fa.fa-bitbucket-square,.fa.fa-dropbox,.fa.fa-flickr,.fa.fa-instagram,.fa.fa-stack-overflow{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bitbucket-square:before{content:"\f171"}.fa.fa-tumblr,.fa.fa-tumblr-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-long-arrow-down:before{content:"\f309"}.fa.fa-long-arrow-up:before{content:"\f30c"}.fa.fa-long-arrow-left:before{content:"\f30a"}.fa.fa-long-arrow-right:before{content:"\f30b"}.fa.fa-android,.fa.fa-apple,.fa.fa-dribbble,.fa.fa-foursquare,.fa.fa-gittip,.fa.fa-gratipay,.fa.fa-linux,.fa.fa-skype,.fa.fa-trello,.fa.fa-windows{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-gittip:before{content:"\f184"}.fa.fa-sun-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-sun-o:before{content:"\f185"}.fa.fa-moon-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-moon-o:before{content:"\f186"}.fa.fa-pagelines,.fa.fa-renren,.fa.fa-stack-exchange,.fa.fa-vk,.fa.fa-weibo{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-arrow-circle-o-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-right:before{content:"\f35a"}.fa.fa-arrow-circle-o-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-left:before{content:"\f359"}.fa.fa-caret-square-o-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-left:before{content:"\f191"}.fa.fa-toggle-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-left:before{content:"\f191"}.fa.fa-dot-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-dot-circle-o:before{content:"\f192"}.fa.fa-vimeo-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-try:before,.fa.fa-turkish-lira:before{content:"\f195"}.fa.fa-plus-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-plus-square-o:before{content:"\f0fe"}.fa.fa-openid,.fa.fa-slack,.fa.fa-wordpress{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bank:before,.fa.fa-institution:before{content:"\f19c"}.fa.fa-mortar-board:before{content:"\f19d"}.fa.fa-delicious,.fa.fa-digg,.fa.fa-drupal,.fa.fa-google,.fa.fa-joomla,.fa.fa-pied-piper-alt,.fa.fa-pied-piper-pp,.fa.fa-reddit,.fa.fa-reddit-square,.fa.fa-stumbleupon,.fa.fa-stumbleupon-circle,.fa.fa-yahoo{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-spoon:before{content:"\f2e5"}.fa.fa-behance,.fa.fa-behance-square,.fa.fa-steam,.fa.fa-steam-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-automobile:before{content:"\f1b9"}.fa.fa-envelope-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-envelope-o:before{content:"\f0e0"}.fa.fa-deviantart,.fa.fa-soundcloud,.fa.fa-spotify{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-file-pdf-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-pdf-o:before{content:"\f1c1"}.fa.fa-file-word-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-word-o:before{content:"\f1c2"}.fa.fa-file-excel-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-excel-o:before{content:"\f1c3"}.fa.fa-file-powerpoint-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-powerpoint-o:before{content:"\f1c4"}.fa.fa-file-image-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-image-o:before{content:"\f1c5"}.fa.fa-file-photo-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-photo-o:before{content:"\f1c5"}.fa.fa-file-picture-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-picture-o:before{content:"\f1c5"}.fa.fa-file-archive-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-archive-o:before{content:"\f1c6"}.fa.fa-file-zip-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-zip-o:before{content:"\f1c6"}.fa.fa-file-audio-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-audio-o:before{content:"\f1c7"}.fa.fa-file-sound-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-sound-o:before{content:"\f1c7"}.fa.fa-file-video-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-video-o:before{content:"\f1c8"}.fa.fa-file-movie-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-movie-o:before{content:"\f1c8"}.fa.fa-file-code-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-code-o:before{content:"\f1c9"}.fa.fa-codepen,.fa.fa-jsfiddle,.fa.fa-vine{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-life-bouy,.fa.fa-life-ring{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-life-bouy:before{content:"\f1cd"}.fa.fa-life-buoy{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-life-buoy:before{content:"\f1cd"}.fa.fa-life-saver{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-life-saver:before{content:"\f1cd"}.fa.fa-support{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-support:before{content:"\f1cd"}.fa.fa-circle-o-notch:before{content:"\f1ce"}.fa.fa-ra,.fa.fa-rebel{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-ra:before{content:"\f1d0"}.fa.fa-resistance{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-resistance:before{content:"\f1d0"}.fa.fa-empire,.fa.fa-ge{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-ge:before{content:"\f1d1"}.fa.fa-git,.fa.fa-git-square,.fa.fa-hacker-news,.fa.fa-y-combinator-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-y-combinator-square:before{content:"\f1d4"}.fa.fa-yc-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-yc-square:before{content:"\f1d4"}.fa.fa-qq,.fa.fa-tencent-weibo,.fa.fa-wechat,.fa.fa-weixin{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-wechat:before{content:"\f1d7"}.fa.fa-send:before{content:"\f1d8"}.fa.fa-paper-plane-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-paper-plane-o:before{content:"\f1d8"}.fa.fa-send-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-send-o:before{content:"\f1d8"}.fa.fa-circle-thin{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-circle-thin:before{content:"\f111"}.fa.fa-header:before{content:"\f1dc"}.fa.fa-sliders:before{content:"\f1de"}.fa.fa-futbol-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-futbol-o:before{content:"\f1e3"}.fa.fa-soccer-ball-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-soccer-ball-o:before{content:"\f1e3"}.fa.fa-slideshare,.fa.fa-twitch,.fa.fa-yelp{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-newspaper-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-newspaper-o:before{content:"\f1ea"}.fa.fa-cc-amex,.fa.fa-cc-discover,.fa.fa-cc-mastercard,.fa.fa-cc-paypal,.fa.fa-cc-stripe,.fa.fa-cc-visa,.fa.fa-google-wallet,.fa.fa-paypal{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bell-slash-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bell-slash-o:before{content:"\f1f6"}.fa.fa-trash:before{content:"\f2ed"}.fa.fa-copyright{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-eyedropper:before{content:"\f1fb"}.fa.fa-area-chart:before{content:"\f1fe"}.fa.fa-pie-chart:before{content:"\f200"}.fa.fa-line-chart:before{content:"\f201"}.fa.fa-angellist,.fa.fa-ioxhost,.fa.fa-lastfm,.fa.fa-lastfm-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-cc{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-cc:before{content:"\f20a"}.fa.fa-ils:before,.fa.fa-shekel:before,.fa.fa-sheqel:before{content:"\f20b"}.fa.fa-meanpath{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-meanpath:before{content:"\f2b4"}.fa.fa-buysellads,.fa.fa-connectdevelop,.fa.fa-dashcube,.fa.fa-forumbee,.fa.fa-leanpub,.fa.fa-sellsy,.fa.fa-shirtsinbulk,.fa.fa-simplybuilt,.fa.fa-skyatlas{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-diamond{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-diamond:before{content:"\f3a5"}.fa.fa-intersex:before{content:"\f224"}.fa.fa-facebook-official{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-facebook-official:before{content:"\f09a"}.fa.fa-pinterest-p,.fa.fa-whatsapp{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-hotel:before{content:"\f236"}.fa.fa-medium,.fa.fa-viacoin,.fa.fa-y-combinator,.fa.fa-yc{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-yc:before{content:"\f23b"}.fa.fa-expeditedssl,.fa.fa-opencart,.fa.fa-optin-monster{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-battery-4:before,.fa.fa-battery:before{content:"\f240"}.fa.fa-battery-3:before{content:"\f241"}.fa.fa-battery-2:before{content:"\f242"}.fa.fa-battery-1:before{content:"\f243"}.fa.fa-battery-0:before{content:"\f244"}.fa.fa-object-group,.fa.fa-object-ungroup,.fa.fa-sticky-note-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-sticky-note-o:before{content:"\f249"}.fa.fa-cc-diners-club,.fa.fa-cc-jcb{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-clone,.fa.fa-hourglass-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hourglass-o:before{content:"\f254"}.fa.fa-hourglass-1:before{content:"\f251"}.fa.fa-hourglass-2:before{content:"\f252"}.fa.fa-hourglass-3:before{content:"\f253"}.fa.fa-hand-rock-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-rock-o:before{content:"\f255"}.fa.fa-hand-grab-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-grab-o:before{content:"\f255"}.fa.fa-hand-paper-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-paper-o:before{content:"\f256"}.fa.fa-hand-stop-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-stop-o:before{content:"\f256"}.fa.fa-hand-scissors-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-scissors-o:before{content:"\f257"}.fa.fa-hand-lizard-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-lizard-o:before{content:"\f258"}.fa.fa-hand-spock-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-spock-o:before{content:"\f259"}.fa.fa-hand-pointer-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-pointer-o:before{content:"\f25a"}.fa.fa-hand-peace-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-peace-o:before{content:"\f25b"}.fa.fa-registered{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-chrome,.fa.fa-creative-commons,.fa.fa-firefox,.fa.fa-get-pocket,.fa.fa-gg,.fa.fa-gg-circle,.fa.fa-internet-explorer,.fa.fa-odnoklassniki,.fa.fa-odnoklassniki-square,.fa.fa-opera,.fa.fa-safari,.fa.fa-tripadvisor,.fa.fa-wikipedia-w{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-television:before{content:"\f26c"}.fa.fa-500px,.fa.fa-amazon,.fa.fa-contao{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-calendar-plus-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-plus-o:before{content:"\f271"}.fa.fa-calendar-minus-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-minus-o:before{content:"\f272"}.fa.fa-calendar-times-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-times-o:before{content:"\f273"}.fa.fa-calendar-check-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-check-o:before{content:"\f274"}.fa.fa-map-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-map-o:before{content:"\f279"}.fa.fa-commenting:before{content:"\f4ad"}.fa.fa-commenting-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-commenting-o:before{content:"\f4ad"}.fa.fa-houzz,.fa.fa-vimeo{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-vimeo:before{content:"\f27d"}.fa.fa-black-tie,.fa.fa-edge,.fa.fa-fonticons,.fa.fa-reddit-alien{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-credit-card-alt:before{content:"\f09d"}.fa.fa-codiepie,.fa.fa-fort-awesome,.fa.fa-mixcloud,.fa.fa-modx,.fa.fa-product-hunt,.fa.fa-scribd,.fa.fa-usb{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-pause-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-pause-circle-o:before{content:"\f28b"}.fa.fa-stop-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-stop-circle-o:before{content:"\f28d"}.fa.fa-bluetooth,.fa.fa-bluetooth-b,.fa.fa-envira,.fa.fa-gitlab,.fa.fa-wheelchair-alt,.fa.fa-wpbeginner,.fa.fa-wpforms{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-wheelchair-alt:before{content:"\f368"}.fa.fa-question-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-question-circle-o:before{content:"\f059"}.fa.fa-volume-control-phone:before{content:"\f2a0"}.fa.fa-asl-interpreting:before{content:"\f2a3"}.fa.fa-deafness:before,.fa.fa-hard-of-hearing:before{content:"\f2a4"}.fa.fa-glide,.fa.fa-glide-g{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-signing:before{content:"\f2a7"}.fa.fa-first-order,.fa.fa-google-plus-official,.fa.fa-pied-piper,.fa.fa-snapchat,.fa.fa-snapchat-ghost,.fa.fa-snapchat-square,.fa.fa-themeisle,.fa.fa-viadeo,.fa.fa-viadeo-square,.fa.fa-yoast{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-google-plus-official:before{content:"\f2b3"}.fa.fa-google-plus-circle{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-google-plus-circle:before{content:"\f2b3"}.fa.fa-fa,.fa.fa-font-awesome{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-fa:before{content:"\f2b4"}.fa.fa-handshake-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-handshake-o:before{content:"\f2b5"}.fa.fa-envelope-open-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-envelope-open-o:before{content:"\f2b6"}.fa.fa-linode{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-address-book-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-address-book-o:before{content:"\f2b9"}.fa.fa-vcard:before{content:"\f2bb"}.fa.fa-address-card-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-address-card-o:before{content:"\f2bb"}.fa.fa-vcard-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-vcard-o:before{content:"\f2bb"}.fa.fa-user-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-user-circle-o:before{content:"\f2bd"}.fa.fa-user-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-user-o:before{content:"\f007"}.fa.fa-id-badge{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-drivers-license:before{content:"\f2c2"}.fa.fa-id-card-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-id-card-o:before{content:"\f2c2"}.fa.fa-drivers-license-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-drivers-license-o:before{content:"\f2c2"}.fa.fa-free-code-camp,.fa.fa-quora,.fa.fa-telegram{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-thermometer-4:before,.fa.fa-thermometer:before{content:"\f2c7"}.fa.fa-thermometer-3:before{content:"\f2c8"}.fa.fa-thermometer-2:before{content:"\f2c9"}.fa.fa-thermometer-1:before{content:"\f2ca"}.fa.fa-thermometer-0:before{content:"\f2cb"}.fa.fa-bathtub:before,.fa.fa-s15:before{content:"\f2cd"}.fa.fa-window-maximize,.fa.fa-window-restore{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-times-rectangle:before{content:"\f410"}.fa.fa-window-close-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-window-close-o:before{content:"\f410"}.fa.fa-times-rectangle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-times-rectangle-o:before{content:"\f410"}.fa.fa-bandcamp,.fa.fa-eercast,.fa.fa-etsy,.fa.fa-grav,.fa.fa-imdb,.fa.fa-ravelry{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-eercast:before{content:"\f2da"}.fa.fa-snowflake-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-snowflake-o:before{content:"\f2dc"}.fa.fa-superpowers,.fa.fa-wpexplorer{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-cab:before{content:"\f1ba"} \ No newline at end of file diff --git a/dist/fa/webfonts/fa-brands-400.eot b/dist/fa/webfonts/fa-brands-400.eot new file mode 100644 index 0000000000000000000000000000000000000000..e4ccce2d5c2355fd80f8a3fa48ca66d0dee2c1f5 GIT binary patch literal 133034 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

;N&Lo3J|S=;BLZ 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 literal 0 HcmV?d00001 diff --git a/dist/fa/webfonts/fa-brands-400.svg b/dist/fa/webfonts/fa-brands-400.svg new file mode 100644 index 0000000..eb0f26f --- /dev/null +++ b/dist/fa/webfonts/fa-brands-400.svg @@ -0,0 +1,3570 @@ + + + + + +Created by FontForge 20190801 at Tue Feb 4 18:05:39 2020 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dist/fa/webfonts/fa-brands-400.ttf b/dist/fa/webfonts/fa-brands-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..08622a3b0fdea1ed16bdfd38f66f19d781fcc7e3 GIT binary patch literal 132728 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

iBe0QriI(hOQ0Q2gUk6!v~U}929 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

w`Ao`B8FfP>nd2WTiT*&L> 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�d261qc>pomd%U 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�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 MYknY2PJsjYKZ}NvDF6Tf literal 0 HcmV?d00001 diff --git a/dist/fa/webfonts/fa-regular-400.eot b/dist/fa/webfonts/fa-regular-400.eot new file mode 100644 index 0000000000000000000000000000000000000000..dbc06a4a3397b3b20c5109b616e725d473d047f7 GIT binary patch literal 34390 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 TzBl^| + + + + +Created by FontForge 20190801 at Tue Feb 4 18:05:39 2020 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dist/fa/webfonts/fa-regular-400.ttf b/dist/fa/webfonts/fa-regular-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4b6fdef613a07bf2ca1300d33281ef4483a7d9e2 GIT binary patch literal 34092 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 literal 0 HcmV?d00001 diff --git a/dist/fa/webfonts/fa-regular-400.woff b/dist/fa/webfonts/fa-regular-400.woff new file mode 100644 index 0000000000000000000000000000000000000000..f17953a79f9bbcf310e3b94da4d50d25575e74b3 GIT binary patch literal 16800 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

HoX$&PY%1k<*T((0L}; z%_p-KW=k4|z>eCd6Fv#<`{(#aro?3=k)IA6SPctchzZ{Re|q(PeYkIbdlG>a2Y=Z4 z8?pf@0)WT>0Af$TAb;OS%lE?$Fu*w7pU0A4IH8E%aZAq!$Gr=KFr2JO;6eq6laHoW zTIMpp{XsTPNHFCr61iak#G0;f<`?DiW|B@#l9HX&^pKQsU{*9Z=chyE&-Nw}< zdXj1K{Gt{sG>aWG*!qdhRw}M>WY9Q4`;PQ}_9F#-49jZgbEPDc)ou#?`+fnv^g&)8RUJ*w2 zdIkmqh7BeFW)2nw_81NiP6jRvZUkN!J_vpQ0RVv)!3LoNkpr;>i2}(4sR(HXSsHl; zMHrHVU=|_9c!P&N;3y?iOAW zJ_f!Ceis1{feAqyAq1f~VGQB#ADQTqSem$p1dhavWQpXH6opiVjGwHC9D-biJczu5 z{FZ`@!h&Lgl8Dlea*IluYKWSJ+Kc*=Mx3UI7J)X64vfx-9*jPOfr=r65s$Hn35v;v z>6$r)d4+|8C4uFf6^}KJ4S-FJZG;_!UGM+pPTFu?h<_{~NSa?-JRr$2!0~S*DoHS4 z#%~@pC-lo83t)`?G-?v?3jzRRTMY_6OVP z>*Ni9-|H^~x9tgl*N=kNJ7`^;HGoAhEXthvG&$bA`T24M@6*1+0Xp2pbxH%BaGSo= zgTqhL-a@Bygfza3a0f%ZOLs?W&GwvvcH8UH*BJ_V$acqU-9meSI^Hs!s-)<&O6w=P=C?QS>s@>4Pqv?1Gqm z8|sRR;F|3UAbnwcpyIriI%ZwyGSwlUR=pG?9>!!6J~adY4yO`aGP|BvH*j@f2oRLH zNHe)Sf24_g2PUr6|NHD@@NY)^h_j@z@|$FTGXc}SextBH78wR{4$p_4$a{S!o`oWwj$+&e|hmX@Kqbx@D_R^CV?7W;Jo;sm5+3 z1S{2wjmM^srb;P|ta6GN=h=jP%!WvuIj}EMzK=Qx-3j{FD*4yVqBW%lH59I1VuS=$ zi8&oo(X-AM6><5)oQ4#qstV%Vd7O#RM~2gA5n~eg2QaDFxgK+B{YNSgJsthh-LB8UB=6Zz zPwuL2CidwA`D*xE^KVXAE19|;vLP&Gkz^(rO+FvdwLk8p?|9yHzkraalE@GU0OuM1 z=_YqQyAt}=@R0`cYqH`KyMf$N_nYiD0Lv!E{rPywoe7`$`TB10b&A=8=s3-fC8Z(e z4+9MOE$LTc7{Xqx^~q=X8*;=j+oQ?sS!D$}+T+cPg0>-`?;B_ZNZDi3jiR<8sqR~7 z1zIBRb85w6+Y#FgOt*oy9tP0lH{Cc zjV!u>%^v*WjzzyE(ixa^1Fbz^?b`Vh%zjI@GqC9fesjRn6${^oKr8??0D|dYmoJIr9`Ug`%R6Y2pOb zWc>t99r-DxIl6^>V$36H>GuFAbvWdsG+{_Zb9ULq=B#9MB?+Aj@jDv!LvKg{xTL<}kYXj(}ZQka-=5hm#+Rf|)^TeEoSN@V3 zHaNZApq(KksI5Ityo@e71M5_{&9UUO^NveYg%t4KJr6eVV)Jz{`)QGh$*OXd;>0;{ z=JEyqSTim{MjMl(s3cn(=A&e03$rqk6V0W6>e&wKL7Lp8>q*i^=N-KEo)nGx!&KDJ zn{5dxWX<8l5KN1kAx gQ1ie&9o@E%u3VsNRVl8iZ@9gb{{teYfsg04FCWD0EH|705rt`O2EVb00000000000000000000 z0000#Mn+Uk92y=5U;u|&5eN!_-9Uk@N&z+kBm;z03xYNP1Rw>9TL+IT8yRag<5-J; z^8li-#2-TT|DTg=98w*-C>XZiD=MQHL8)#kbeKeIU3_>And1&=GQ+DiFb&olx^lIO za{(#>Dgr73%JQ@>+`P(R@;>LOx`@M)!yvOS<&UNq!KCG)FxTr;T|GZTl!88Ca!oD? zpLFo;eb65V{puj z{V(6mymd3XSQM5MMUJO5P2ZBze@Pron1AiPcC%kNnow0nNa)97G5_{=SuH}X1QwO% zzwSqY%?4APO3DLW^r?c|&b@%7m{Au0V7tGIHodtKNlJZ67n61QFE0=e4e(zOaByD8 zBMxFDAfS!tM_->0+7cAJgv46;^y_8bX?_7IrmD(%X=5$Pv zX!q<20bG?G?I3ej!?MK=Eh1P!iL3+&D}%A?-H&?&2*6k6djNoMZ#csuCTO{MATxj> z7-xXE>z;tiuj@hpnW7zlQSe#+;ni{jN`!&Ky_#DNuh9A*zXy*dU2{=OLY(w+8$huv znjz%Fefp}p{C_V$yp8}oS*tRCuDZFI1n|KVmkr#Q=MQDV>Qm|y>Rsv&)PvMr)Gq2G>H=yl)lRih zEmRX#Plc&?$|uTyl%FUsC^soLDBn`{PoYEIlPPuzN=0Y9x<{TO&1~|X-p{Q1FzTs&f|hWYzAlQ z0E1Tump1tBEY>(|PYSU2+q2U2RAW1k@CXX-OTc@HMG=D>^2`uJL^g`Heu=Bl#MOij z5Xnjb_e*`q3J(k1O=(ou+N%su=sfLuV~gmXQ67zwKr+u0hzfRtD6%?(xsRgaIBzY` zP*J|U{#47U;PnRASnmlm^n&q`!utnxeNj5F@S|Z}OC3&11$FTIQ&Wpsue}X~gWMtx zrPKVde5#!;L1DKPRTp|7XiaI`i->_36~1kk8lichy02wZ6o)_iJbxLlA0DRfkg|FL z#(FeE5r9d1Fc)etXktkNqwosz9+UQbr;zxzjAR@k#Rw0$kbu!EBcnqQ%Si5WN>J7HmcJ`QnV)-IY{|F&^PG0bW!XBqWQnpomoo)C}r znP$I`mSLC%F-tT8*)3GF104z0J^H|ec#U`$@jl{9P{PrQ^Xi?H(0Uo(-g3J0}*5!?LHe&x>%73zxgVw!4sDoD>LriAcNHgJY-P)sdjQ* zO?Z2)ZXmIM31)+mR}l>BYLw476s2*H&&u{YvK-LjhPG`SH4HMeQ7DBYgR+|HONWod zsnd=gj{OFNe(dOegHky$&is>+pQ3%R?MQ z6S2+|?45V8UWKKH^hqIfj@5(EF6B=YXOxQ?zeH z1dT4S)ZvpST4FH0bt!Q(8!K0e-bYbzWck`)RU99u`3(;rU<=nmL0vsK}tPx0tU6Cs63}vQbxraKS7-zbP5a}ZX76{THt?VVOy&5i%Xp1G)QnCT8f>; z;ACLA#-jjJc+T5gz&-b ztT5dE3M-$_HnKwNF9ET4VQcV@@4s^wQtb4Z^XJ2t;oZA8t}FHX^B2?d+}TT)k~hhN z2NPZ0H@*2x{qFs{A%9)ZUpSwt%;jZwfLnqRI8?T|BG#2$IU~PXgZ36R_dj(Wlbrhp=rf~Wt z+Jh@N!>FkK-g1}@!a$efUV!xsP)r&?bWmU%0QDeAYNd#tD`C}!ZuEt2%JDoP(yBb*1TTYStc}9+GIbzf8!aIRn_x2mE>V_Wv5@% zYKXunSjb3zN32L^Xje{Cqadz!ixaOvc6bG62g`i44xItm(L|F<4WiK&Q;E|-Y=PWq zWcRGmP#eXmKI|pXv0XG3aYKnPcQ@VF&_~4ET>woXLr&cwP;ce=w)hw}LB79B%)GPa?``U?U;B?%U-A)_AD?VOmQ>NYK z4J=;<@aOfDi~OU(T6wC>Z8k+mi`NcOZZpJLfVqO+!N*~mtt?NzGHs<8q7kr}T}~lK zzqV~0BGwB6D{j5d!7`0?w9;)zN}ORg7s4)G3K9?RE{LF%m5FDO>Tj$3jP5Ojip zmu+}#Qnt1;1ECG*NV)1|JJZBL$IwlZhS}J*BkOC*kUp;}H{GqmlMQu_hUI$Mudk49 z;T457wT@e0by3sz#H8P~4GKr%*Q}A4>4BW;M@(H0ejfblQyixHHA7Z49KfJ3KwUfI zwqh{x;e)UKUJhzPf14028@q%zOjFFb$pEzJv&lq#k$;=W{cJske(}-nt3Dl=jv+RU z@9PqXC&lB$0=)hjGdThrsGap%m21`Q=1r+jgHSdUrJng>lhr^+S+=te-oiRMk$NP? zx!OO}Y9qm#;0#xm^5H2V3KZvCH90G6J%R9tjP4^bug~WOXGOpBB}0QVhlOe)Eks6*UF2U zXreJx*hs5|!f5n9+mh#g1EHlV@Dhc2Z8>&P6SuVi&p(r3QS5;w?ZwsKI&43)hpE5! z*Uz{l2u_0 zk*sT$!HWG(H<7#^#eYY@;vdX%dqs54o^|J)q1H3;+Lx_r=B6!Oj1%tQwqEY87e^g#8srTq;b z{z&3tP4hBjSOlmJk!~2(w&9vcbRSK*ax-OeulS%+&_J0BmVSd&S9q%=E+Q(8z#LFv z2ibLp7#G3ZH6j#I*|}3=5yV|~!69sD0O1=6(06VhBBv~GP7m6UM;T0BX(5iK2~5KZ zsShE9%NT&9H>uCHnYM96{(a>3nu94FO?bZAwhOFTtGrt+8z8%`9Ua#bvg}i+9bLS^ zyq$iotS*FFhHMAN=U84a+g=w}=6~%_=<9x8TF0H7qU(-6+?zC{2RTR0acAY>EALs; z?&>2?_824fiepzlEc?$=$19nHfv8S;y#u{(Ud)@@J~4+*nxwrgT8={FI$~_a37H8$ zagibQ@nstgV+*;xcQrUbtcRQ5HV?tAZI-qE!WQ$)& zOAgk)$nh~#?pABXq0B5|3~}cL)&>sjyjllwkkZ`38kBrk8#tIW0{X?b!q*TZne6KSH3>r0E5Nib%sCLTP~y`2_gY2?m3J=|H%tJj`n%{zO{DUdyq zF&OHxbRwZcvqW3d(`u$FS+1H~%C1y59TFWtiT$z-Lf#968!c)1O&fbM+D0o*K=gY{ zH9=e(r`oCaSnfz`rT~zGnEA_9Krv2-D1uFb48+!I5QD+TmOw%Br-J@OyYKC^416rU z^;WWL$WC1`SW_pS4YI3Nbbw_8O^tvRq^v;5oq35o`JZmVoZzY*mLHWpQ$`(uk9DpwSft5Njqa-%dg z`5uwJ-0G>K4bI~YH9CQET71y$h^AX-E%eo3Z+UPdiz`nRR(E;|XceS{I4JbARG+DI zqlA}Iy)F;+avPh?G8m%^00!%q|JiZ*=$vhoh0?>q;_`75IWL=`*Go_HfzzIiFw9&t z{aqPy#+39N8vCSP^0TflFWp&jx$U;x!J435ya*<{D+eT35tit;JPgh$h|$!@jKrm2 zObFT>RT>T7FqJ!8yET-8koBbnwSf6RB|fF{uU*0!vqOYtS>Va7bAUsOZj72H9Q_z< z4ff*^`m)ubur}$$pE%-lDOHnL#_b+b|8%XQu34(b>5{9a37_iDVw*_@`LXpd7>K-h zxUzU%AaLtm{c%<>YpQOONM~otN2S6$b~{|#r>zOq-f+wn2SElK+ za$wiC7H9;0ci~Siz-r~58##@qIGOAA2({|sw}rawi3MnBO{{%6NE^qkTc|jHPTtkf z{qtc%L`jq37P&B>VHYA8tvI(@0h8hu0pbrcU%?=NTlaw2TxA-z^)u#b|MyxCe2hAL zV&ERNcrZ*0chyMHzs$Cp5Gah5Qc)P7svJvS6_iCvVdG0*yDuT3>f_7|b9Sjhmw_K^1qt1-rpOZ#Vj%RK zsCj-BmZ&O~q*_rj9C-TJFXZ52jHGhrY6Au43P&Ft5RRm3aZpljD}{nG=YH+SVz^>q zoF5j(wP3CujjIYLhODSZLs_@hX-pQ&-A=lV%0DX;<-WUJTP$yrR$TlG7`Kgt79QO> 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 literal 0 HcmV?d00001 diff --git a/dist/fa/webfonts/fa-solid-900.eot b/dist/fa/webfonts/fa-solid-900.eot new file mode 100644 index 0000000000000000000000000000000000000000..550f8f021fa5c28451051def8cf50be4672e0d7b GIT binary patch literal 194078 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�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 Q&cAcx2PiK%{T}^)0E}_arvLx| literal 0 HcmV?d00001 diff --git a/dist/fa/webfonts/fa-solid-900.svg b/dist/fa/webfonts/fa-solid-900.svg new file mode 100644 index 0000000..6933b2b --- /dev/null +++ b/dist/fa/webfonts/fa-solid-900.svg @@ -0,0 +1,4700 @@ + + + + + +Created by FontForge 20190801 at Tue Feb 4 18:05:39 2020 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dist/fa/webfonts/fa-solid-900.ttf b/dist/fa/webfonts/fa-solid-900.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9dd8c7fd781711897b57043c79015cecb8e810ad GIT binary patch literal 193792 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�A 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 y!_zeM#LWuge}| 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 WFhlXd+8F0xGv)sQb}Lbr0001igO;)Y literal 0 HcmV?d00001 diff --git a/dist/fa/webfonts/fa-solid-900.woff2 b/dist/fa/webfonts/fa-solid-900.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ba7507b18d866705904ec0b95a710ed931754660 GIT binary patch literal 76120 zcmV((K;XZ3Pew8T0RR910V!Aj4FCWD0`&X<0Vw9D+k^gTi95Vg1F5Y zPXlt>0Q$>~;)vh6U>uupJD0F|FN+myn^rUE4&X?7vt0K7|NsAQN)|)5|AXBGfM-s1 zZmBLattv&K(53G;Axe}WDVJ)JHqxX@t3d|YO2}~(s+93A1CEgHd!c(NhhrWhFjXp? zx^&v9Qnp@Z2_fhOyeT?T5m23j3eo-I;R@;FGEGw{+Z$YSTME zjAkY#5$EpJ#*}pH+(DnNibBQUh0us^ntH^e|9AQh`mR475B9ppy%2qZr&p7gq9YN7 z&U7B|ILj(W^_-UTvgnFmm~f!q1cDx9<1u2oe`UGoV8vpsR=@qx-(3Pi z15X)&t*z;j9D*}D(OlWVUs=(9@(rIv z5^dhp8zirR4yF83ArU%@WY_=yynpve3L(Fq5~qM>0A^k5+%L`ksLCtEdy`LhO664w z)4|S6IXFaf`yUlQax-s?iXk=oh&DDWZ|3Z`Ddn(oSov0im1hMytbBWzqxvk|@9q7f zt#JZ4*(#zV%8}y$EesEzw|AR;un7-vpc9xSfu;#%X`nU4aK-TO^EoyCrF5s8JTwGa z4j2+12pEbGxR5p*>Wm-v!D3@=t?fPcSXQ8583O}JLrpRaw)F`A@BaV+fEKP*Pzy4dZ0ULwC=)nf9`zxZh0V9=- z+7MAvz}!rR1&RR{7zN&eg@GPu-^rbx(WrN)rx(VBamkRK&RNE__3;HqnpmsN&?2Ri zDV-?(?`!VonEC%Yt1oC3Ts$~@0$5*yiYgCZIW%eXEPq2zUkxP z|BucoTmeUb$<&4Vz&vyE2;U_?9|S5}D?XEY?pSTD;)%hUix2ZAc|a$IYI34hfD~`3tzNOB z-}GoZ<8Q+vtcR6H%1*8A|5CN@tIpe1&E#8E3=Xe*NHN(~2S+)+m;u6SZY1ON<76$o z*Z^B#W`_b8WXUsTKv1yTmaRaMoo#ov4GP8(=%=b$|^Vbo_w@ zAIR~|xVlNv?zYnX5)t&ILnzO}IiuvcaXBN$!c3?_sPv&x2o!(-12`CRXJdx{6~An* zYym_}WS2Oo_f%5Tl)h&fOW$@xf=$HK;Y=OBY_|OWuj&QEoSdP1UiMnsg<>nlA0g9{ zNG^B&OV#R1NTQo|TW)!BlqaRLTOG$6VmR#)KU5W~e*FTg3I(!I1W5n{B@m=U0E9#k zqy-c}xlkl!2%>C?R`<$s&#bKW&dRc9o@`G*ASeb=W-w*ZvU(Kk2_dS}JdY=JdwM6w z(}sBJ;~w|Cr#;>CaS!M9|GA%he;j}R{lr=oST^8v#wj}1sN+%E!gHOC;ltN{l0uae z(tq9!lw}xv2*pQK*v+Z^RHzDu&Ho2SS>WE$ zqNIY!6mg6e72S{e@#p-1akRZ-YZ(Rwk>x620vRXC3Dp1hf6Uqc(bZ&IC$8Z~qDXB5 z1JmxEV%|T*&5X&5Z_lhu5#3lR)RHECxl2H0IO$DE8j9{R$eiCF3iXXytAPqK1c5qH zQP>GdNW!Rh|9`L~y7m6tKIn&k+}tyh946n794+2bda!eC5<#QrL%%}&V*Jcxtxva5 z_cuB&{`q~!HqPgDe0SriCV_s9(`d7bcdo(*GlJu!PSHTbF}B=$3=#Y-bs8nhcBl>i z*OCFh)srTfns{nPR#)HX8M9aK+#@J7GBzTt3=z9mg4sCvuZ!Nb$r$M-J) z1VNy&1S*Te7pwF}o4eQW_|(Gk*5&=%$IpY&()#}KSlPsQ8?eqX3C<2+mktqx=PXGi#ATc;Rkz8f6IXD9_jzppHR0gxHl~!Nd z+_#s>V&&}m>)+(;!ok(s*RSE(2Js zYdWW7S<|dKW`9PZDWSk_N1)N0ogQl+9u=FB+Y5-b$dJc&7H6UzNYLoc?QwyOPsoQ- zEL0}5#r5WjOrpsV8&fYRh0kj&yq2WJtcgFKr5({1v%-W&sWx(Pc@6}~nI&!c0P$Yy z=@437kWc{?Aeuy)6!^(b={V&3D6Oe=HM#YC2)cRpQE&kA^b${rShjTCR#E0*d zUq8IFK3pw4vg=P&cGlUMz0<=ZNaSH>22!Qbij#}5gkD=gn^)k4Qup{dkahNBvYuth zlu`S5e|>(qzh2IV-DWwPjtBi-w~$YhIQVmSyIywN&3d(5%%+p!px^5T1Fs(U+hsnR z4!f;lA)iZ!f`Na3dg`(JP91yKszo-_iT(NaaC336ScqiwLi_M=*$(@?M*hcjKAVh(gMP2uYSgR6TsD(T#G>KA#}98Wy6}R{ ztCqK(e%j(ivuDkiHf7{^G#vE0op!6)sF!(`CQ(46(3XGubsD)yNX26yz@HzR)nd}A zRSLOGBoy$u92O3Xgn$9AY!ibh{s_uFa!dAj2e|fCKWMBL_E%e8+9sGC}m}mEYWT;tE7aF zAANjre9Qk;f%!9q=Xts9k~+do>J-0u>(9`8k_W=xR(=09xJmMP+< zBdU}iyGjLQ-Zlt;qjde&7t0F%;HPrmR>k}YRDNVH?ImKG;ckI@7}J1g?bj&LYB0fm zTD=C5^lpH)3a~PGm2*jT(Cm;Dn_4~P+Prdx^y!S9A1v5~d;3RNAvfik54s)F?EcfY z6kdgEnj@pt%ArpR{S(6qfhdF-F-+tz#emBy8yNHvWej9RA7#-JLMK7>z+|YOCiX^O z?Bz3=2OHAp*_@KO8BELxkEA5nx)r*SrhLM5$hZVILK!;?ZRJ+9PrGi$v{(v$kDtT` zPhnLssGu}+Ldzn6NVHs8aGp8ujM>)o_IRbjdx8D}t@DoZ9Wp2;n zG;dfn#xl}SJw=AD>(xzc={Frjva2X#tr|+TJ%F0#sMR#?73=t~Y1_iXfaVoiU)|Hb z0`m!^pGQdEY{ReItrp_4L({_DF$K>XJ0NNg=QI8MH<7T&K`w^r&duUE<% zkTtIO5?|q>IX?iQ14b8RzAbllf(udsXIyuJtsrt^z>pzTYg(@BwGQTf4rDEd$~N*1~9XaB1c%pppX3{@N@pa5{eed=GSsvn?nCq#J$o3ye=ZPyyw&N3Sc%|R`#7^AiA zD$u$XnjMgh(~bSkYFwd>Y+}cb9wsY>D&##WB>3#n(_mT6H8LXM{*5`hcC1_U?Lt@= z;s*vXKBy`S&k#tAeg8B*H6QV)RQhHWdL)xpXmP~@euxz=9nRYoPB>$)HAyZXG{U8i z!WaerPyx`XC4_IDxjH>qEjHYwo6|9CJ`0!hg%7ve?_88pm+k`0Mm3nU2uDkmj=(eW zh2j7ahy`$D+rFYOU#jjH*yfN{R<=P7m2mHXs2;0Fb1%!~V|lv7E=LYC?z@8*I9`JR z5r!kWhnr?8LeRwl6T93~df>$d0q!^lAto%8M* zz$u}@pJ5)vh0yyBrBt@2>$+{k{Yt>Yvbz8?6S(DUB4ASkj-ZmjNpgh!GRr154Bu%0 z;2IZ*qbO8KwmZlukcV-KpUs%(xCTQ7p@?i%;ZcB?%p1TUQr8wup6NT43O#@VBw+I; zSo>u8*oryB0{)_Hy3?c*b!^X;n2{VB3P|inE)RofB|>RT_!cnXC~C@!Iafscpqvt? znD0$PhZ+#~tymNufOxyZ=PO!Z(`>$WSg$v;7ohmI{t7C++@gdOqXL=|7Sjd?Aj2H< zNOM5~-~{4u1&;72;Na>5Tm&Rpk4G~>jAYq(gex#zn`68QH>W1N7{RD)Z5wZgn`n)5 zXfLD*Mgt`tAg3C#47rHP19EZh!aLL!BJ0l}_v$NU8C%(A))wV6t2mWb86000^G|%o z93+fRa*fodfP^Lth?h;_HHxGZDS92p*E^B`A_Lgw2oRv`Y}Oh>vYDS9|8-Ks29H$_ z^tN3a)^mX=;Ny1+nA+X^B;lJERCQwZ4H=rw zY>OYDZZ?|}HTB5pcy-3UgHn($O(pK?FQgXI>V<2#7`uOm@2`HniC*5?3o26HZiM+dO`jsM=I&+jnF z6>S+VTXwnZk^+W9H!tmv8H`jWFwBm{zUiR_Xl|Ky1i%LrC7s~&GQP}*f!IwaS#c2% zvEghBmhkq*Pt&~1ws?l8~Pp^5tAo@%x ztMD5c1d)?DKlT0L4zqlsCYm&)a^9jeC`&UOdMEuT@91VTqmHmqd9LtsQ496x=h!;# z4t}*<;S>K9a8rTVt`l~=VT6u=m8#XCs?VosLQA?%$tMYV6ImbdMJMq<6p%>kh`7wE{^eHB!q*neNgG{nB9)Y=EI&{mf{#>8r*L1-DYGk z{7-4wXA)Kr`6Pu9LsIG&?NcdBg<1|V6k-9z(Zvxio{C2uL|ri|7H#9WG~Y_lJT4lEHdurm^)%v#8ZmZh0X}d#F zyV4%hs_gov=swgp)}uS0z%KKEhLcQ@M4K@Y-Z>5iJe8Kl<_|OwKEg$>+z@qydzLg2 zGfV;GeT4cJMH$2V+yfPoY2X80c?$}UP!O1^j>McLSj_ZkANE-rv_Sf6%cx!~suXkD zt2&|she}#orn)doOVxN8V;xUHOREt+I4Ajd>9{8NqNp$~RY&W>j$cw@B4_5umH7A~ zva#wZ-4tKX0?M7rM9q8jBEaa%ftr43j;)c=9K$pPWY;}foHlvWh(?|#Za`T;fwutm8GZUgTl`W zB&e3>;ma$Cn@vke`#OSD8`cS4mF+_DUY$j#6^n0*wwNI*<6wv77}8E@;Sy{Upw&)a zB-&`7%~LXoj1azU0%Az>u_@7W2UXe!oP~)9$nEVr8jqz)Aj-`b$rv5z`Zo5&aHf@b z`*P>3m39u57t~BAILOlYjm*z2&>c<6?R-g1C8CW6s4V@j)hQ#eBQvH}ZKD|ry7PMZ zw4Mhe>Numl0VX~MC8>s70ZhG(#1H#WW_k>BQgnlCnyv5J$>cU7j&Ff)IW}kIyuKhN zqdZ#!o_yLCP#p|uU>}ubkMmcvZU zqBPZ$OV6=6ht4VmduCX<$kR9DLH;6%MVwBd#(kkT3 zQCpl!#STb_&OaqMS}AnomjbN|Wj3;Hcx4plk5(9*2H6yJY$|+ubzwS(4Og~_vfVPyR#-u_1m_3yG-`!M|YKuo{)OCJr=tSyF!H0f2s_J z>RsB5IEra*;OIlKV?FUU=Xynw&vDP#we0Q zTIn+28zo_KnDl#-#~x~|K*yDFosNCk@=TY+7}K>JB&jk0N~P-xAy5MYN(L%d#*{p3 zDrrg(-wH2X`w=TuRwY15vMa`5C_N)1oy{ZKL%?YnyXYm?D9q>ITej={Ze|D)eCLgN z^2okvn_(Hr@0x$|9;5D56Fh@S2`O%-Zw{lbd9Gb>?eMrGFP z7lOgbAkT7jr`Ix@B94#*S%X;Sl4N5br10Jf5T}su`J#WfXt;?vg#zrQ=wC^zdaFl? zI=}%yB@o*Yn{m+V`(%ab>-+2^Xioe9obEmeW%+hJju-2^@JS0P-MaHpjO=-0_*Q5} zEl~RpYnQ(F`R@QL-v6Z1siJ7>x)uliLpHV>?JGi;*LB&kl+d`mqeZG<quyAW8gC`MG>?|A0AyPdVg0`oRQ;HqNV}$&}CR?rWp*10uV^U!^1Z4jjst-?v;6t z%Ag|}gzye{f5(9s)5QR0W(HSYH#7kC_E}$-v+P8_XAQN^I7loI+fTu;US3tedPsjh zR|d1@*6qccb{s489HoZ<@PLYErEGl#f~adcuoVes-W@VmDZ!R zA5*}32Vrv5E%CrChfJ`iQ)4S{ye~T}-oICvGq$E;toZ&*A>pHWvafsG!JLwKP{Xi1 z{6PFk@OOx3_8LiHBR}WZ*;W#C2KNy&?XDRMLnoiqqps`xfUQvOyGQGiZD4{DX9BX%NKwNPk_4jX_)2gWSoCWX5sdFx=ShqS9I##6r;O zhgaVkP~DoK=IZYUW5Ext!KciXIcZXX_gPnv(5R&>NxfREHnh6PNF#bmMpRgPVj?N* zOaW_ZNFi0kZ`uNWdlrI1d5^mHyOQboK(p~EGy`6Co*YlgbL9m*AI_Sh^cDR_Do!)g z-@>r%=MoFh%LViYkD2I3Kp=RmcRmO_zyc$r`2bZOGW*#LB8m{u0@|U(aCG_5YWgHE za3z9@`;X4$k$NGlJFtYzpSs}OE(7oZBNnqWl2``lYhD&456G9?d#ky^on>Xr&1BEX znMkRi$${;Y%EdTT4dwY}E?1h!<;M$oXBLZH)sk*{V)uk4{Z%x|nMzNQZDj4jsI632 zH+JuoOUvs!_ZDx4JY(UFd-IFx;bY8HuUn~rLt^e5hnu+mnUnEv0ckejiV4Ee-JSIo z16eC?Wv19=IuYN>2m?~9_WwHhr*FRd!D)@!nE)D$s_jw7+#Tn>%K!A@@(O32Jy={l zWN6ZL+Hs&*I#eAdF390>G#-LN5w1rArcvVA{rw=9uU)?$JL|J&H?D!aJ6;jEx^m-2 zTC=}=dHtq91wGe=FHATs>lZ4ssKi=Yb&=nb$njiBAe;K$jZLe(aEdUD?6=WkJVOGg zMA%r3^(*R#P!mxFj@g7UFNRW&mI78yhFO)Juc=j_nUIdtkU6o{>b{K?t#Hsa96GgI z0C(HJ-5dbj@i1i+(PL&734?NPV>VwH+%vqQC>kwC0q0aaxmbL9rfd2W*`YbV|A4+HXX125M2 zuv*C%R)moWF{4Fml_s`4QsHMiwv{bzvE6;dK;i}u@{5_vO?wKMdqrTn8O>KkXZCxh zs;^Djz0x>W$?T+#L8FuM&P?_WZ~J3J*wB5zEO$y@dg?nlQBQ_Nd|~nciny1-7}z3+ zkku`jztAhG=Q#YZpo7=>SUX4+A{RErR7DG>Fl*j4bLxL&s-g=q7gm~vF|k||G!xs% z7)$hN>Pwjagc;}4vW*tzSu+pO^g(0QJWQ5VqS!7I|6GzY@jUrB`IW7%#9k?m(~>nd zYhpF+tEMrKKp88K{C%ejT{;bECFbWN49}pghBJ&%bOambv1XMd6p}u|N%YZ0YQ=R|lc5Q6TRB24m zM0o!779$CVSyc1LI7i?36$(S9lAQ(cm9AIHcFh;ot+>K3fciiRes;jEDwk6tSiMoL zSY=u=D!>3;*#u>e&5Pn>$=$zbPpzB^(1Xw`wDsjBK5sdNbK%3xJ5c<#Eh5eSwT zK*_4|kc|*7C*3TWkR*l;49|o`)vf^iCvHbS3#31MAV{CbmKyuCZ^$q`ql}Fx04p22 z#uX4J_WAoxF1_1Zxlt3yLJU&LfH@&2ca@AsI_v&#tR@KMP^0W0k$a)R%W3AJsra_* zHP(2ZOwymY&@Kt~DOVZ~#I{s`YCM7rsDwP>v?LrMg248Od`Wimq}WvqAO$>n(kw59 zv~PpELl2V#$TJOesQPWBiemXO}_t5wlJAJ&_>H9u)Si|1v?-9l_D7xM8+3mN9`& zuzl1|gD2{dU)ICuc8+T7Yb{u6f!_R5&}b4QAOucqnBSp4p;843JvV`jd;BXiD_t5L z(8QUX(jMDaA&~t()zIr?Pk1ada6{5Pz`_AEuW?eA@tvOLs&_w2=^C6%gpC>ON9tYk zMcm(0F5MrIV2WUZ`e~Z@8S;ySFNd9eRD4X9LwT&u%3JL;g6qySq5F`8lg}6`tp)It z-IM&N3k393fURKHB%>D5;gxsm+MO0R-QR%$iP0i{^P^{;bcHuZh{`w-wsLJHO(PP! zIn^EZhvg&>_tWFXal3N&V0kIk|Ahpm8^MfQYC=q9fD}L*8%+q3SA^|ZkV|h4n5aek z%7xFQO;Q)j(x#=!)csp&f}OTB983FBJ9H+r)Bd=bi{Xq8%(Y9FC$!TeVVSH8L=btm zZtm@%v`OX%(Syv5j@x(2Z?kx^E|n`JFN`i#D1 zP*#H&GLoV0N;KngT!A$8_aKZB$_rYamVzILtre&mMk9CVBkdBwxs)!AVKHcyt#AGluF~np&kY`KwnTU3@>qseD z9EoGOpOyf@T`F#xzRclDv)|IFjk9OJ2&+?itRJ!DqXDeP2XI5@JSms>(HN1L3kE!D zGy>`xiMgh3kA%M*z_iO*eL6d2Y+ZFFR&i(EmK)^i$wO z(}4a%R((?clzvTE7lvlZ?BSb3FfS%1f`+@IRgZp}4R~0q)!wT^ zICMk5&0trGO3^PI*Y4^1mGc+v?UTCtv3B>kp8uitsHELHp_M<<$zNNL>!sEs(`wV8y_K2zVdSL@ocRcd!(9Zp!Xq>=&A?%!>Ul9lN(|MDA;ST8lF?tT>Gb&ax z_U)P}^Ta?su~%{e-+olp99!kyd1>+Y%dhUe>x4NgL2hnu``m~@tI@Djj4F6N}f)`J8A zvipMjd5AvW{MaOum^HnVoqK|c26(DK= z_N*{AD1%r?3%BE~h@P>j=d|IpKpr)tHhYCl6vQ3JflE9mATLsJXd=5;an3Bt7O z7g#XPZ6{l23rLcD4kev`48=RkF~R+IXQ@zl9l;$mgP%l@&;g5ME!-jy;{%ZwdJ zYg*Nn`;*A<;#g-B9U z5fVSY(<)a>*C_oAK%SgOG2w8*353t&=~|8i(@ zp8-q?;%U|S36iCZm<_LWPdp>=#vnTATieU0Lpmm!cQgrVS`z5z1IB7neizO*9sk6L zZMR~K>^>|C3i-`<_N?3eiP5?ivapd7 zJyv+Y@SRDpE7luI`p+?u3AS-%_3%_kR@;X&%;j6R{!2pcE>r{~PwkQ%}ss<%VIY*=c^*h~{agZvwIQk+NYg zXT(?jjJ$JasMTLL*W0X`*5lz+7Z>Rx~ua<$+xz?+h=U2Jf*vNhK>y$@>4&3T9 zI|J7;cFsY{$cR|Hg)H}a69t_Yg<6S#6byH}dX`v{U4R*5`OZZQR>2AV7vZ>AUdf8i z8Wj-L6`uhTy-xsjN}#nF%>!k8_uwK(*o%?mwe6)33`KI>UbE9tGDzAt6DTtUhHvrd zJsN77>fEHXLQ~A-s6>GMj`I}`vnjHr5Z^8k)2QHU4XDML2+mK4?ZB=0(1hE)Z|iL^ zYY2mJ#yL;Yz>K1zyPr+Bd^l4ZN-rV{jhR4MA6j4GrC_E@?1TB6+6u~(P}i6L3=Uu{ z&At_gTTd(i5D(b2ZBw4IdXFxy8mGS@DFd<{-@EsKfS|g8ajRqge2{F?$wK<@{{19o z0Bf-nYjx%3V>(&KWbI37FSNqjjBdJ4gB+9xizP*VZ?If&a5Z{0N!qA~$J_Z0i5afs za)HsQVdBxkK>TtGaoNcK=)}Edcs>INK&W8Psp{0;DVU|DVvz~Ps=srwJK7oJ+&Nn_ z<6tSFjr%mqiYqWI889jL^MfdsfL~cr@vXze`g_x(O{tBjk7QzlfaoA?4xFNoNi0A~ zP={!n@}NxI<5ABs!(l3d$R3e~l3=-H6DmjO^7NN9AI59SPxK2S&zqk1Wt1$oO@b5< z*YT?{;)_%RAlr2L;F!cNW@-;Z_{)a5+~&RH+JouU2=+r*{)+0ZU*EpFk$0k@Qg|(W zc>UG^>HEFLu@Ybi$_08tg~F%mLQpMuz18a`bv@DGC;W_362Ek0jP4%PDa6YfTx$ZD zqin&slYkx{r*a*qCx?%&9tz_SyC6y?7K4ra*@?boA5B;OK2RBU4b>47%r@4xiAa^% z)zBvIS7HKLill;Rb!AvjuJYldx-g^$GWHAbs87Hs8dBE}8~YXqTZUCgEclA0!}DT} z7xMHEv3LF!A}QUr_3As~g_}nUgp@O@6m&ELz@T zkW?#&)^cjlgY0u3l=CA7RNwhNvQM?jl_p4ipvUs$E;-Z_poY!|lu@h6J;AYa2z3=+ zJ+TjuqCnRrW#OdS;%W~ycbLfT6`$8{938S5gwrmgMGRAAPs8$7W&F1Y2AX~nt9>C<7^rmi#L;P`&5=Bg& zNd6Hcm?Nx8ru@pRIo`CpsoU&KBMc-Wkp2iPN<8*Q4nq)jro1YZN_Dbasp+r57xl>( zrSep@M$46%N|jY>)1`9C9J28T0Zv3+2i%~0FnD6Td zYzCj&gE$l-dVV>DR0N?0r#z~wIQr%hu7)%cZNIP1j_(LiBPUrfBkF)KKhy3To13e;eQP~w zeHl;4D&-Z~FTAETBL_YzvIDiw<#>jM5>}4pVa|K5S{Rk)F_vSV{CkZ-U_^nnIgX|C zvJ|F`o1W2O2{yiCQuYo`0R5i$7xmNc|C?GlipEjgg`|_|IoCHxQcQqm@;ar@rN8ve z&e;iwgAXkaF^Jx6Rdig`_t7)NS8VaD?dg-2)@D;=s?&!1l?zfLJw=~E6RHY$V!#tg z`}qL}N2v%H-{uyHu?!e{QZSr^?rWFXn?ozViZA|4>P-f|2erSQFGg&8gM;Kx` z(9ZU%C1NW_kLc#J&%TF$pfPzNNp5$SS0f#j9<7reG1j`_(|;UC3M(p=DYcM{HKQ+1 zMfjN|p_VM%T$lt%^5`12GH~t%c{|puXgG-y?ZL5e!x%jtSucXKi;s*EmDm|kT`DZY zqbkyd3v$SBP^i_W9$g9wZ~-!m&+X`Ec(2p!jumv@_fd zbH7~a)yE-Bx!t>p8es(}Loc;(FKXKJlhdPbFyZHUt8Z9&)Q{nBF|}7(JVF=5Wtu+Q zc&?6oH(gfeSx5g}CT{l%Q|Q|yPHHRkX>`Rv+EG5bu-zXDJlh)3)5grs{MvFBI^59C zSLs}_*pVZT08c(jA`gXqNit)KNyUYZceuXx=5{aS!$fhS*L4yTB{1#w+owpTo$nR( zVu}!D#SCo+?Gnz3ZIwnHNBS8da**BTj*_e~Ech5ijaz9Ucw$=xagLChdvajq!oJm+ zYA{5CVl^)S>DEe@3E6YREq!(*S{pHC~J}(ZB?KfIpg9RXZxg{R`Dox|B9f%pjYBWj6b<74F3T<$e8% zIjjXPCB}~Oo8{x=T=}4I(&Mp2#tmQfGiQWMCTshcA$ zmN2r5#?_X)-*mFgPIJ?>bv6CU8G5xDGBA?oh;XHZv9J#OcQSy3kJl8hc~&ajj5pkd z>r#lgmEVIp{ZS4H)N5F(ZTA@LR!iHx_ZAJLpePylgwsJ({hdm6Z@~ zO9JAinRB#={lx(kcK$LMJ&L+&!Cp18pWl4I@Q_?40PiSb$X9MjgOh>!3zRFVd_4<` z`M@0(%65YGwVTAUFuN~*JnPumjTb*`BXvsZjrMHzbPIajwuslJB(6%rcO{n&8AldK zD`?uK#|g^E<&b4u`WDbtiA#=DZ8;RDja_^eWiQD5zKZL{tGvM|X<0Sf6fohyLIJ=?7+B%_l+^ zD1>NfC#zsI7O zLTt)B^p6C5CMOiT)xO+g9Ec)jGr&mWRj@l(7rSW>O0FDc_@SOkx|OyebPkUe@H}H&gct5V97Q_E zVBZBHN$khVV+qh&2v|cTWNC;ZAWhpv>1<5IFatJntjtR^ol+L_VMxnl zK}BrLNz)F8eVU0AC^oBeJ-ZrZkHB;AlgzMz1w0{|Oy=T}*ix;q#h2tbKu>MceZxB< z_KFJP$+#xKnep(+G2P}xrkBzr(IE~GLq8g=2~A0{QezrBWGTx5leKykWyyir{Jt3W zFCLXR4TL)8kqc04QKo`D-o7q0LsD3QD(TAi+!G+exoEj9i>u%^@Hg;HKQB^PtgI_R zF=1*qra`m~Ps8lj5h;A8R`~Q!AChx8Om3a$hnf;>dC9))PRF|%q?DfM@RL`LYAGJi zb*A{;MGj#M3I>P}p6`A1k$*u0%YiW~gJe<_354}&9;apqz2{`z>S7GnA)?LbKmnQ+ z#-iv!LRj3v(+y_|7Zpz7p}FBhzX)?P+B8Xq{jj01sS@=~GR7ynSak$S0t1xIwGiXURN=VwBD9Fw z&}^o3hMWp0@kq!5=5M#4lsPm3c{ZY2;c9?a}N}GMdRq@;0+me)oh$1RJH4OBG^I!=Nt! zEG|{W$iv|i^J0rIyJWQ4G#>*5e*}!6X*5HthSBmG^NTc25D=!-S}1U@;w<UwE7+F>{q?Gpr$Uc~4&Ti}rE5R0%ubLIw-r-80oE^o!(w{(3o; z3&&|S&Z7u_jMa*}T$!Q=cr%x>PIYrp|MnCaN8ec6@QWt{FbWTtMyc3cdb^h!xTT(-&PBD&3_+&5UO8h5ItV>y(RX4tt8}J3Xdpc)%NJ6^;i{E^Dxdr;CJ_K}?d zfcH!~+DeblF>dnUv(K?!^P$4!*Y(#GXt$}2bI~311v~rP%qo>cphi7cRa0wZkvysJsGS{?VPy*9NVgVpK ziXUU9v$qQib?7LZmi(BH$DdZkFQ*J1)o`Ylu5j{)DdubA-S@;LsVP8LS#bDwTqHdG zWYz3CND4-nko1z+aH06cRGx_k1mi2s=9#4Ou`H;&ywBW+Um;-Tc7JLcMF#*%8y|0D z;`$zH`>g1=A~ixsmUeJPUu%{D-LB{um5@U^p-35E?9s#dF)E-u(KGJ01=*PFd3>yt zj6KjdcZ_yqVN#a%)}((@+v8Ui{8`vCflPr>tR3&$L>IsRKqzj;rjFu?H*vb&VK{@t zW?J~!ZK#9XImA{}A>6>!qD<0CTVQ$=8#1U2&`vggJaz6PwV7*(Ig3xtD*ZZ+PA)ym zYT3B3zCG@B1O3FN;wqYh$D$m^qD%6cQ$N{&6~u$8CLslQQ7OzXFohUc!2L8toFZLh z5;I8X@pN8#I-4Xx#NbVi=UeFel(_{k)vZ3Mq`u>T=uSfHbU83E2zF9e)r}NHKDhnP zBNTli%t-OjB6FGlP4c+jFuV>_YCfPkwpwxb5pA%@NvT3csP9kc1T%-m!vIw3w#a+~ zu+3SA*$?$w3qDf0G!9%TrrG@8&q`n`nk~h?gh`n^OwQ=Mu32^TDV3oR9=QI8AyBH* z!0;`7o3-n6vs7pNz-NN8!(qx8eG`wn?X9H+5h1GrTPb~ny2LT;ThDOV^AS=jAAp%7 z7?}B6dO{T^cpTTVyvb<`tVB1+X(!1TLFUCWOFf>T^`O{lbp&IAh!ZRh5xjg()rnPV7@d3~|4KU*Y+mF9+9Rg{+9~ZHT;7u%ot|wJPHrzDKNX z4sBZo`G;-RaAeD#*boqy{Gp|lnG}L>M(rfGwm_f1(Ot5ww|`x zrDKWJ3|kd005qfZy{%azS6`x-izq45o7Kup+YfVYtc2m+cjKK#Z$jJF=~nN$@-qih z#6BlptvsYz&q=Q41dG2hsg05+MB(eiH!$^#!al)Y@)w(!k9QdsjOmZ;Rxk*zYkCElZDbj!AoZO^i zBOB?nY%{9%k`0!z_v#yGCdTDeXS>(SjX;(U_H0%?%}YnR)@s{&nJUK?J<(ZbqQ-j~ za;`SPf945K)>qB5ADCB8h+lb)#naMQz4Y-#lC}9b{Y`k>n`S@!#P^}8VLaB|rg6pO z%*Xc>U}?X6smHRj@tpArKjdfS7E2F)&NA9&sF@QZ2rGpgQQ?U0SgJ zEj_}={UP#04R~fVItc*7fTB7q-vM7ufMxte(K;|RY>;7sCT*S=l_SjiW4uvtfM`6z zD4<`V`VtIzkB}Ek0tRD}8l^EGgepyJ=B?*cwZzQG2Su=5og@ify-YU}_ppmGR2E

_ZUKmAWoX*-|Zw1??L4>IUe(RZT;>Bk_j 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

'+this.createMarker("relative",s)+(s%2==0||2===this.scaleBarSteps_?this.createStepText(s,t,!1,e,r):"")+""),s===this.scaleBarSteps_-1&&i.push(this.createStepText(s+1,t,!0,e,r)),a="#ffffff"===a?"#000000":"#ffffff";return'
'+(this.scaleBarText_?'
'+n+"
":"")+i.join("")+"
"},e.prototype.createMarker=function(t,e){return'
'},e.prototype.createStepText=function(t,e,r,n,i){var o=(0===t?0:Math.round(n/this.scaleBarSteps_*t*100)/100)+(0===t?"":" "+i);return'
'+o+"
"},e.prototype.getScaleForResolution=function(){var t=this.getMap().getView().getResolution(),e=this.viewState_.projection.getMetersPerUnit();return parseFloat(t.toString())*e*39.37*(25.4/.28)},e}(Li),HT=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),qT={VERTICAL:0,HORIZONTAL:1};function JT(t){if(t.frameState){this.sliderInitialized_||this.initSlider_();var e=t.frameState.viewState.resolution;this.currentResolution_=e,this.setThumbPosition_(e)}}var QT=function(t){function e(e){var r=this,n=e||{};(r=t.call(this,{element:document.createElement("div"),render:n.render||JT})||this).dragListenerKeys_=[],r.currentResolution_=void 0,r.direction_=qT.VERTICAL,r.dragging_,r.heightLimit_=0,r.widthLimit_=0,r.startX_,r.startY_,r.thumbSize_=null,r.sliderInitialized_=!1,r.duration_=void 0!==n.duration?n.duration:200;var i=void 0!==n.className?n.className:"ol-zoomslider",o=document.createElement("button");o.setAttribute("type","button"),o.className=i+"-thumb "+Ai;var a=r.element;return a.className=i+" "+Ai+" "+Gi,a.appendChild(o),a.addEventListener(pn.POINTERDOWN,r.handleDraggerStart_.bind(r),!1),a.addEventListener(pn.POINTERMOVE,r.handleDraggerDrag_.bind(r),!1),a.addEventListener(pn.POINTERUP,r.handleDraggerEnd_.bind(r),!1),a.addEventListener(N.CLICK,r.handleContainerClick_.bind(r),!1),o.addEventListener(N.CLICK,L,!1),r}return HT(e,t),e.prototype.setMap=function(e){t.prototype.setMap.call(this,e),e&&e.render()},e.prototype.initSlider_=function(){var t=this.element,e=t.offsetWidth,r=t.offsetHeight,n=t.firstElementChild,i=getComputedStyle(n),o=n.offsetWidth+parseFloat(i.marginRight)+parseFloat(i.marginLeft),a=n.offsetHeight+parseFloat(i.marginTop)+parseFloat(i.marginBottom);this.thumbSize_=[o,a],e>r?(this.direction_=qT.HORIZONTAL,this.widthLimit_=e-o):(this.direction_=qT.VERTICAL,this.heightLimit_=r-a),this.sliderInitialized_=!0},e.prototype.handleContainerClick_=function(t){var e=this.getMap().getView(),r=this.getRelativePosition_(t.offsetX-this.thumbSize_[0]/2,t.offsetY-this.thumbSize_[1]/2),n=this.getResolutionForPosition_(r),i=e.getConstrainedZoom(e.getZoomForResolution(n));e.animateInternal({zoom:i,duration:this.duration_,easing:ri})},e.prototype.handleDraggerStart_=function(t){if(!this.dragging_&&t.target===this.element.firstElementChild){var e=this.element.firstElementChild;if(this.getMap().getView().beginInteraction(),this.startX_=t.clientX-parseFloat(e.style.left),this.startY_=t.clientY-parseFloat(e.style.top),this.dragging_=!0,0===this.dragListenerKeys_.length){var r=this.handleDraggerDrag_,n=this.handleDraggerEnd_;this.dragListenerKeys_.push(g(document,pn.POINTERMOVE,r,this),g(document,pn.POINTERUP,n,this))}}},e.prototype.handleDraggerDrag_=function(t){if(this.dragging_){var e=t.clientX-this.startX_,r=t.clientY-this.startY_,n=this.getRelativePosition_(e,r);this.currentResolution_=this.getResolutionForPosition_(n),this.getMap().getView().setResolution(this.currentResolution_)}},e.prototype.handleDraggerEnd_=function(t){this.dragging_&&(this.getMap().getView().endInteraction(),this.dragging_=!1,this.startX_=void 0,this.startY_=void 0,this.dragListenerKeys_.forEach(v),this.dragListenerKeys_.length=0)},e.prototype.setThumbPosition_=function(t){var e=this.getPositionForResolution_(t),r=this.element.firstElementChild;this.direction_==qT.HORIZONTAL?r.style.left=this.widthLimit_*e+"px":r.style.top=this.heightLimit_*e+"px"},e.prototype.getRelativePosition_=function(t,e){return kt(this.direction_===qT.HORIZONTAL?t/this.widthLimit_:e/this.heightLimit_,0,1)},e.prototype.getResolutionForPosition_=function(t){return this.getMap().getView().getResolutionForValueFunction()(1-t)},e.prototype.getPositionForResolution_=function(t){return kt(1-this.getMap().getView().getValueForResolutionFunction()(t),0,1)},e}(Li),$T=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),tS=function(t){function e(e){var r=this,n=e||{};(r=t.call(this,{element:document.createElement("div"),target:n.target})||this).extent=n.extent?n.extent:null;var i=void 0!==n.className?n.className:"ol-zoom-extent",o=void 0!==n.label?n.label:"E",a=void 0!==n.tipLabel?n.tipLabel:"Fit to extent",s=document.createElement("button");s.setAttribute("type","button"),s.title=a,s.appendChild("string"==typeof o?document.createTextNode(o):o),s.addEventListener(N.CLICK,r.handleClick_.bind(r),!1);var u=i+" "+Ai+" "+Gi,l=r.element;return l.className=u,l.appendChild(s),r}return $T(e,t),e.prototype.handleClick_=function(t){t.preventDefault(),this.handleZoomToExtent()},e.prototype.handleZoomToExtent=function(){var t=this.getMap().getView(),e=this.extent?this.extent:t.getProjection().getExtent();t.fitInternal(zr(e))},e}(Li),eS={array:{},color:{},colorlike:{},control:{},coordinate:{},easing:{},events:{}};eS.events.condition={},eS.extent={},eS.featureloader={},eS.format={},eS.format.filter={},eS.geom={},eS.has={},eS.interaction={},eS.layer={},eS.loadingstrategy={},eS.proj={},eS.proj.Units={},eS.proj.proj4={},eS.render={},eS.render.canvas={},eS.renderer={},eS.renderer.canvas={},eS.renderer.webgl={},eS.size={},eS.source={},eS.sphere={},eS.style={},eS.style.IconImageCache={},eS.tilegrid={},eS.transform={},eS.util={},eS.webgl={},eS.xml={},eS.Collection=Z,eS.Feature=q,eS.Geolocation=Hr,eS.Kinetic=qr,eS.Map=za,eS.Object=z,eS.Observable=D,eS.Observable.unByKey=function(t){if(Array.isArray(t))for(var e=0,r=t.length;e180)&&(r[0]=Vt(n+180,360)-180),r},eS.proj.transform=Me,eS.proj.transformExtent=Fe,eS.render.VectorContext=ha,eS.render.canvas.labelCache=da,eS.render.getRenderPixel=function(t,e){var r=e.slice(0);return Ze(t.inversePixelTransform.slice(),r),r},eS.render.getVectorContext=function(t){var e,r=t.frameState,n=Ve(t.inversePixelTransform.slice(),r.coordinateToPixelTransform),i=Fa(r.viewState.resolution,r.pixelRatio),o=je();return o&&(e=be(o,r.viewState.projection)),new Ca(t.context,r.pixelRatio,r.extent,n,r.viewState.rotation,i,e)},eS.render.toContext=function(t,e){var r=t.canvas,n=e||{},i=n.pixelRatio||an,o=n.size;o&&(r.width=o[0]*i,r.height=o[1]*i,r.style.width=o[0]+"px",r.style.height=o[1]+"px");var a=[0,0,r.width,r.height],s=Ke([1,0,0,1,0,0],i,i);return new Ca(t,i,a,s,0)},eS.renderer.Composite=Ya,eS.renderer.canvas.ImageLayer=Mh,eS.renderer.canvas.TileLayer=Yh,eS.renderer.canvas.VectorImageLayer=Cp,eS.renderer.canvas.VectorLayer=Rp,eS.renderer.canvas.VectorTileLayer=Mp,eS.renderer.webgl.PointsLayer=Yc,eS.size.toSize=Ri,eS.source.BingMaps=ml,eS.source.CartoDB=xl,eS.source.Cluster=Ml,eS.source.IIIF=Wl,eS.source.Image=eh,eS.source.ImageArcGISRest=ih,eS.source.ImageCanvas=uh,eS.source.ImageMapGuide=hh,eS.source.ImageStatic=ph,eS.source.ImageWMS=Eh,eS.source.OSM=xh,eS.source.OSM.ATTRIBUTION=Sh,eS.source.Raster=$h,eS.source.Source=ol,eS.source.Stamen=ic,eS.source.Tile=ll,eS.source.TileArcGISRest=sc,eS.source.TileDebug=hc,eS.source.TileImage=yl,eS.source.TileJSON=pc,eS.source.TileWMS=_c,eS.source.UTFGrid=vc,eS.source.Vector=bl,eS.source.VectorTile=Rc,eS.source.WMTS=Ic,eS.source.WMTS.optionsFromCapabilities=function(t,e){var r=R(t.Contents.Layer,function(t,r,n){return t.Identifier==e.layer});if(null===r)return null;var n,i=t.Contents.TileMatrixSet;(n=r.TileMatrixSetLink.length>1?C(r.TileMatrixSetLink,"projection"in e?function(t,r,n){var o=R(i,function(e){return e.Identifier==t.TileMatrixSet}).SupportedCRS,a=xe(o.replace(/urn:ogc:def:crs:(\w+):(.*:)?(\w+)$/,"$1:$3"))||xe(o),s=xe(e.projection);return a&&s?Ie(a,s):o==e.projection}:function(t,r,n){return t.TileMatrixSet==e.matrixSet}):0)<0&&(n=0);var o=r.TileMatrixSetLink[n].TileMatrixSet,a=r.TileMatrixSetLink[n].TileMatrixSetLimits,s=r.Format[0];"format"in e&&(s=e.format),(n=C(r.Style,function(t,r,n){return"style"in e?t.Title==e.style:t.isDefault}))<0&&(n=0);var u=r.Style[n].Identifier,l={};"Dimension"in r&&r.Dimension.forEach(function(t,e,r){var n=t.Identifier,i=t.Default;void 0===i&&(i=t.Value[0]),l[n]=i});var h,c=R(t.Contents.TileMatrixSet,function(t,e,r){return t.Identifier==o}),p=c.SupportedCRS;if(p&&(h=xe(p.replace(/urn:ogc:def:crs:(\w+):(.*:)?(\w+)$/,"$1:$3"))||xe(p)),"projection"in e){var f=xe(e.projection);f&&(h&&!Ie(f,h)||(h=f))}var d,_,g=r.WGS84BoundingBox;if(void 0!==g){var y=xe("EPSG:4326").getExtent();_=g[0]==y[0]&&g[2]==y[2],d=Fe(g,"EPSG:4326",h);var v=h.getExtent();v&&(it(v,d)||(d=void 0))}var m=uu(c,d,a),E=[],S=e.requestEncoding;if(S=void 0!==S?S:"","OperationsMetadata"in t&&"GetTile"in t.OperationsMetadata)for(var x=t.OperationsMetadata.GetTile.DCP.HTTP.Get,w=0,O=x.length;w left) {\n if (right - left > 600) {\n var n = right - left + 1;\n var m = k - left + 1;\n var z = Math.log(n);\n var s = 0.5 * Math.exp(2 * z / 3);\n var sd = 0.5 * Math.sqrt(z * s * (n - s) / n) * (m - n / 2 < 0 ? -1 : 1);\n var newLeft = Math.max(left, Math.floor(k - m * s / n + sd));\n var newRight = Math.min(right, Math.floor(k + (n - m) * s / n + sd));\n quickselectStep(arr, k, newLeft, newRight, compare);\n }\n\n var t = arr[k];\n var i = left;\n var j = right;\n\n swap(arr, left, k);\n if (compare(arr[right], t) > 0) { swap(arr, left, right); }\n\n while (i < j) {\n swap(arr, i, j);\n i++;\n j--;\n while (compare(arr[i], t) < 0) { i++; }\n while (compare(arr[j], t) > 0) { j--; }\n }\n\n if (compare(arr[left], t) === 0) { swap(arr, left, j); }\n else {\n j++;\n swap(arr, j, right);\n }\n\n if (j <= k) { left = j + 1; }\n if (k <= j) { right = j - 1; }\n }\n}\n\nfunction swap(arr, i, j) {\n var tmp = arr[i];\n arr[i] = arr[j];\n arr[j] = tmp;\n}\n\nfunction defaultCompare(a, b) {\n return a < b ? -1 : a > b ? 1 : 0;\n}\n\nvar RBush = function RBush(maxEntries) {\n if ( maxEntries === void 0 ) maxEntries = 9;\n\n // max entries in a node is 9 by default; min node fill is 40% for best performance\n this._maxEntries = Math.max(4, maxEntries);\n this._minEntries = Math.max(2, Math.ceil(this._maxEntries * 0.4));\n this.clear();\n};\n\nRBush.prototype.all = function all () {\n return this._all(this.data, []);\n};\n\nRBush.prototype.search = function search (bbox) {\n var node = this.data;\n var result = [];\n\n if (!intersects(bbox, node)) { return result; }\n\n var toBBox = this.toBBox;\n var nodesToSearch = [];\n\n while (node) {\n for (var i = 0; i < node.children.length; i++) {\n var child = node.children[i];\n var childBBox = node.leaf ? toBBox(child) : child;\n\n if (intersects(bbox, childBBox)) {\n if (node.leaf) { result.push(child); }\n else if (contains(bbox, childBBox)) { this._all(child, result); }\n else { nodesToSearch.push(child); }\n }\n }\n node = nodesToSearch.pop();\n }\n\n return result;\n};\n\nRBush.prototype.collides = function collides (bbox) {\n var node = this.data;\n\n if (!intersects(bbox, node)) { return false; }\n\n var nodesToSearch = [];\n while (node) {\n for (var i = 0; i < node.children.length; i++) {\n var child = node.children[i];\n var childBBox = node.leaf ? this.toBBox(child) : child;\n\n if (intersects(bbox, childBBox)) {\n if (node.leaf || contains(bbox, childBBox)) { return true; }\n nodesToSearch.push(child);\n }\n }\n node = nodesToSearch.pop();\n }\n\n return false;\n};\n\nRBush.prototype.load = function load (data) {\n if (!(data && data.length)) { return this; }\n\n if (data.length < this._minEntries) {\n for (var i = 0; i < data.length; i++) {\n this.insert(data[i]);\n }\n return this;\n }\n\n // recursively build the tree with the given data from scratch using OMT algorithm\n var node = this._build(data.slice(), 0, data.length - 1, 0);\n\n if (!this.data.children.length) {\n // save as is if tree is empty\n this.data = node;\n\n } else if (this.data.height === node.height) {\n // split root if trees have the same height\n this._splitRoot(this.data, node);\n\n } else {\n if (this.data.height < node.height) {\n // swap trees if inserted one is bigger\n var tmpNode = this.data;\n this.data = node;\n node = tmpNode;\n }\n\n // insert the small tree into the large tree at appropriate level\n this._insert(node, this.data.height - node.height - 1, true);\n }\n\n return this;\n};\n\nRBush.prototype.insert = function insert (item) {\n if (item) { this._insert(item, this.data.height - 1); }\n return this;\n};\n\nRBush.prototype.clear = function clear () {\n this.data = createNode([]);\n return this;\n};\n\nRBush.prototype.remove = function remove (item, equalsFn) {\n if (!item) { return this; }\n\n var node = this.data;\n var bbox = this.toBBox(item);\n var path = [];\n var indexes = [];\n var i, parent, goingUp;\n\n // depth-first iterative tree traversal\n while (node || path.length) {\n\n if (!node) { // go up\n node = path.pop();\n parent = path[path.length - 1];\n i = indexes.pop();\n goingUp = true;\n }\n\n if (node.leaf) { // check current node\n var index = findItem(item, node.children, equalsFn);\n\n if (index !== -1) {\n // item found, remove the item and condense tree upwards\n node.children.splice(index, 1);\n path.push(node);\n this._condense(path);\n return this;\n }\n }\n\n if (!goingUp && !node.leaf && contains(node, bbox)) { // go down\n path.push(node);\n indexes.push(i);\n i = 0;\n parent = node;\n node = node.children[0];\n\n } else if (parent) { // go right\n i++;\n node = parent.children[i];\n goingUp = false;\n\n } else { node = null; } // nothing found\n }\n\n return this;\n};\n\nRBush.prototype.toBBox = function toBBox (item) { return item; };\n\nRBush.prototype.compareMinX = function compareMinX (a, b) { return a.minX - b.minX; };\nRBush.prototype.compareMinY = function compareMinY (a, b) { return a.minY - b.minY; };\n\nRBush.prototype.toJSON = function toJSON () { return this.data; };\n\nRBush.prototype.fromJSON = function fromJSON (data) {\n this.data = data;\n return this;\n};\n\nRBush.prototype._all = function _all (node, result) {\n var nodesToSearch = [];\n while (node) {\n if (node.leaf) { result.push.apply(result, node.children); }\n else { nodesToSearch.push.apply(nodesToSearch, node.children); }\n\n node = nodesToSearch.pop();\n }\n return result;\n};\n\nRBush.prototype._build = function _build (items, left, right, height) {\n\n var N = right - left + 1;\n var M = this._maxEntries;\n var node;\n\n if (N <= M) {\n // reached leaf level; return leaf\n node = createNode(items.slice(left, right + 1));\n calcBBox(node, this.toBBox);\n return node;\n }\n\n if (!height) {\n // target height of the bulk-loaded tree\n height = Math.ceil(Math.log(N) / Math.log(M));\n\n // target number of root entries to maximize storage utilization\n M = Math.ceil(N / Math.pow(M, height - 1));\n }\n\n node = createNode([]);\n node.leaf = false;\n node.height = height;\n\n // split the items into M mostly square tiles\n\n var N2 = Math.ceil(N / M);\n var N1 = N2 * Math.ceil(Math.sqrt(M));\n\n multiSelect(items, left, right, N1, this.compareMinX);\n\n for (var i = left; i <= right; i += N1) {\n\n var right2 = Math.min(i + N1 - 1, right);\n\n multiSelect(items, i, right2, N2, this.compareMinY);\n\n for (var j = i; j <= right2; j += N2) {\n\n var right3 = Math.min(j + N2 - 1, right2);\n\n // pack each entry recursively\n node.children.push(this._build(items, j, right3, height - 1));\n }\n }\n\n calcBBox(node, this.toBBox);\n\n return node;\n};\n\nRBush.prototype._chooseSubtree = function _chooseSubtree (bbox, node, level, path) {\n while (true) {\n path.push(node);\n\n if (node.leaf || path.length - 1 === level) { break; }\n\n var minArea = Infinity;\n var minEnlargement = Infinity;\n var targetNode = (void 0);\n\n for (var i = 0; i < node.children.length; i++) {\n var child = node.children[i];\n var area = bboxArea(child);\n var enlargement = enlargedArea(bbox, child) - area;\n\n // choose entry with the least area enlargement\n if (enlargement < minEnlargement) {\n minEnlargement = enlargement;\n minArea = area < minArea ? area : minArea;\n targetNode = child;\n\n } else if (enlargement === minEnlargement) {\n // otherwise choose one with the smallest area\n if (area < minArea) {\n minArea = area;\n targetNode = child;\n }\n }\n }\n\n node = targetNode || node.children[0];\n }\n\n return node;\n};\n\nRBush.prototype._insert = function _insert (item, level, isNode) {\n var bbox = isNode ? item : this.toBBox(item);\n var insertPath = [];\n\n // find the best node for accommodating the item, saving all nodes along the path too\n var node = this._chooseSubtree(bbox, this.data, level, insertPath);\n\n // put the item into the node\n node.children.push(item);\n extend(node, bbox);\n\n // split on node overflow; propagate upwards if necessary\n while (level >= 0) {\n if (insertPath[level].children.length > this._maxEntries) {\n this._split(insertPath, level);\n level--;\n } else { break; }\n }\n\n // adjust bboxes along the insertion path\n this._adjustParentBBoxes(bbox, insertPath, level);\n};\n\n// split overflowed node into two\nRBush.prototype._split = function _split (insertPath, level) {\n var node = insertPath[level];\n var M = node.children.length;\n var m = this._minEntries;\n\n this._chooseSplitAxis(node, m, M);\n\n var splitIndex = this._chooseSplitIndex(node, m, M);\n\n var newNode = createNode(node.children.splice(splitIndex, node.children.length - splitIndex));\n newNode.height = node.height;\n newNode.leaf = node.leaf;\n\n calcBBox(node, this.toBBox);\n calcBBox(newNode, this.toBBox);\n\n if (level) { insertPath[level - 1].children.push(newNode); }\n else { this._splitRoot(node, newNode); }\n};\n\nRBush.prototype._splitRoot = function _splitRoot (node, newNode) {\n // split root node\n this.data = createNode([node, newNode]);\n this.data.height = node.height + 1;\n this.data.leaf = false;\n calcBBox(this.data, this.toBBox);\n};\n\nRBush.prototype._chooseSplitIndex = function _chooseSplitIndex (node, m, M) {\n var index;\n var minOverlap = Infinity;\n var minArea = Infinity;\n\n for (var i = m; i <= M - m; i++) {\n var bbox1 = distBBox(node, 0, i, this.toBBox);\n var bbox2 = distBBox(node, i, M, this.toBBox);\n\n var overlap = intersectionArea(bbox1, bbox2);\n var area = bboxArea(bbox1) + bboxArea(bbox2);\n\n // choose distribution with minimum overlap\n if (overlap < minOverlap) {\n minOverlap = overlap;\n index = i;\n\n minArea = area < minArea ? area : minArea;\n\n } else if (overlap === minOverlap) {\n // otherwise choose distribution with minimum area\n if (area < minArea) {\n minArea = area;\n index = i;\n }\n }\n }\n\n return index || M - m;\n};\n\n// sorts node children by the best axis for split\nRBush.prototype._chooseSplitAxis = function _chooseSplitAxis (node, m, M) {\n var compareMinX = node.leaf ? this.compareMinX : compareNodeMinX;\n var compareMinY = node.leaf ? this.compareMinY : compareNodeMinY;\n var xMargin = this._allDistMargin(node, m, M, compareMinX);\n var yMargin = this._allDistMargin(node, m, M, compareMinY);\n\n // if total distributions margin value is minimal for x, sort by minX,\n // otherwise it's already sorted by minY\n if (xMargin < yMargin) { node.children.sort(compareMinX); }\n};\n\n// total margin of all possible split distributions where each node is at least m full\nRBush.prototype._allDistMargin = function _allDistMargin (node, m, M, compare) {\n node.children.sort(compare);\n\n var toBBox = this.toBBox;\n var leftBBox = distBBox(node, 0, m, toBBox);\n var rightBBox = distBBox(node, M - m, M, toBBox);\n var margin = bboxMargin(leftBBox) + bboxMargin(rightBBox);\n\n for (var i = m; i < M - m; i++) {\n var child = node.children[i];\n extend(leftBBox, node.leaf ? toBBox(child) : child);\n margin += bboxMargin(leftBBox);\n }\n\n for (var i$1 = M - m - 1; i$1 >= m; i$1--) {\n var child$1 = node.children[i$1];\n extend(rightBBox, node.leaf ? toBBox(child$1) : child$1);\n margin += bboxMargin(rightBBox);\n }\n\n return margin;\n};\n\nRBush.prototype._adjustParentBBoxes = function _adjustParentBBoxes (bbox, path, level) {\n // adjust bboxes along the given tree path\n for (var i = level; i >= 0; i--) {\n extend(path[i], bbox);\n }\n};\n\nRBush.prototype._condense = function _condense (path) {\n // go through the path, removing empty nodes and updating bboxes\n for (var i = path.length - 1, siblings = (void 0); i >= 0; i--) {\n if (path[i].children.length === 0) {\n if (i > 0) {\n siblings = path[i - 1].children;\n siblings.splice(siblings.indexOf(path[i]), 1);\n\n } else { this.clear(); }\n\n } else { calcBBox(path[i], this.toBBox); }\n }\n};\n\nfunction findItem(item, items, equalsFn) {\n if (!equalsFn) { return items.indexOf(item); }\n\n for (var i = 0; i < items.length; i++) {\n if (equalsFn(item, items[i])) { return i; }\n }\n return -1;\n}\n\n// calculate node's bbox from bboxes of its children\nfunction calcBBox(node, toBBox) {\n distBBox(node, 0, node.children.length, toBBox, node);\n}\n\n// min bounding rectangle of node children from k to p-1\nfunction distBBox(node, k, p, toBBox, destNode) {\n if (!destNode) { destNode = createNode(null); }\n destNode.minX = Infinity;\n destNode.minY = Infinity;\n destNode.maxX = -Infinity;\n destNode.maxY = -Infinity;\n\n for (var i = k; i < p; i++) {\n var child = node.children[i];\n extend(destNode, node.leaf ? toBBox(child) : child);\n }\n\n return destNode;\n}\n\nfunction extend(a, b) {\n a.minX = Math.min(a.minX, b.minX);\n a.minY = Math.min(a.minY, b.minY);\n a.maxX = Math.max(a.maxX, b.maxX);\n a.maxY = Math.max(a.maxY, b.maxY);\n return a;\n}\n\nfunction compareNodeMinX(a, b) { return a.minX - b.minX; }\nfunction compareNodeMinY(a, b) { return a.minY - b.minY; }\n\nfunction bboxArea(a) { return (a.maxX - a.minX) * (a.maxY - a.minY); }\nfunction bboxMargin(a) { return (a.maxX - a.minX) + (a.maxY - a.minY); }\n\nfunction enlargedArea(a, b) {\n return (Math.max(b.maxX, a.maxX) - Math.min(b.minX, a.minX)) *\n (Math.max(b.maxY, a.maxY) - Math.min(b.minY, a.minY));\n}\n\nfunction intersectionArea(a, b) {\n var minX = Math.max(a.minX, b.minX);\n var minY = Math.max(a.minY, b.minY);\n var maxX = Math.min(a.maxX, b.maxX);\n var maxY = Math.min(a.maxY, b.maxY);\n\n return Math.max(0, maxX - minX) *\n Math.max(0, maxY - minY);\n}\n\nfunction contains(a, b) {\n return a.minX <= b.minX &&\n a.minY <= b.minY &&\n b.maxX <= a.maxX &&\n b.maxY <= a.maxY;\n}\n\nfunction intersects(a, b) {\n return b.minX <= a.maxX &&\n b.minY <= a.maxY &&\n b.maxX >= a.minX &&\n b.maxY >= a.minY;\n}\n\nfunction createNode(children) {\n return {\n children: children,\n height: 1,\n leaf: true,\n minX: Infinity,\n minY: Infinity,\n maxX: -Infinity,\n maxY: -Infinity\n };\n}\n\n// sort an array so that items come in groups of n unsorted items, with groups sorted between each other;\n// combines selection algorithm with binary divide & conquer approach\n\nfunction multiSelect(arr, left, right, n, compare) {\n var stack = [left, right];\n\n while (stack.length) {\n right = stack.pop();\n left = stack.pop();\n\n if (right - left <= n) { continue; }\n\n var mid = left + Math.ceil((right - left) / n / 2) * n;\n quickselect(arr, mid, left, right, compare);\n\n stack.push(left, mid, mid, right);\n }\n}\n\nreturn RBush;\n\n}));\n","// This Source Code Form is subject to the terms of the Mozilla Public\n// License, v. 2.0. If a copy of the MPL was not distributed with this\n// file, You can obtain one at http://mozilla.org/MPL/2.0/\n// Variable to hold current primary touch event identifier.\n// iOS needs this since it does not attribute\n// identifier 0 to primary touch event.\nvar primaryTouchId = null;\n// Variable to hold mouse pointer captures.\nvar mouseCaptureTarget = null;\nif (!(\"PointerEvent\" in window)) {\n // Define {set,release}PointerCapture\n definePointerCapture();\n // Create Pointer polyfill from mouse events only on non-touch device\n if (!(\"TouchEvent\" in window)) {\n addMouseToPointerListener(document, \"mousedown\", \"pointerdown\");\n addMouseToPointerListener(document, \"mousemove\", \"pointermove\");\n addMouseToPointerListener(document, \"mouseup\", \"pointerup\");\n }\n // Define Pointer polyfill from touch events\n addTouchToPointerListener(document, \"touchstart\", \"pointerdown\");\n addTouchToPointerListener(document, \"touchmove\", \"pointermove\");\n addTouchToPointerListener(document, \"touchend\", \"pointerup\");\n}\n// Function defining {set,release}PointerCapture from {set,releas}Capture\nfunction definePointerCapture() {\n Element.prototype.setPointerCapture = Element.prototype.setCapture;\n Element.prototype.releasePointerCapture = Element.prototype.releaseCapture;\n}\n// Function converting a Mouse event to a Pointer event.\nfunction addMouseToPointerListener(target, mouseType, pointerType) {\n target.addEventListener(mouseType, function (mouseEvent) {\n var pointerEvent = new MouseEvent(pointerType, mouseEvent);\n pointerEvent.pointerId = 1;\n pointerEvent.isPrimary = true;\n pointerEvent.pointerType = \"mouse\";\n pointerEvent.width = 1;\n pointerEvent.height = 1;\n pointerEvent.tiltX = 0;\n pointerEvent.tiltY = 0;\n // pressure is 0.5 if a button is holded\n \"buttons\" in mouseEvent && mouseEvent.buttons !== 0\n ? (pointerEvent.pressure = 0.5)\n : (pointerEvent.pressure = 0);\n // if already capturing mouse event, transfer target\n // and don't forget implicit release on mouseup.\n var target = mouseEvent.target;\n if (mouseCaptureTarget !== null) {\n target = mouseCaptureTarget;\n if (mouseType === \"mouseup\") {\n mouseCaptureTarget = null;\n }\n }\n target.dispatchEvent(pointerEvent);\n if (pointerEvent.defaultPrevented) {\n mouseEvent.preventDefault();\n }\n });\n}\n// Function converting a Touch event to a Pointer event.\nfunction addTouchToPointerListener(target, touchType, pointerType) {\n target.addEventListener(touchType, function (touchEvent) {\n var changedTouches = touchEvent.changedTouches;\n var nbTouches = changedTouches.length;\n for (var t = 0; t < nbTouches; t++) {\n var pointerEvent = new CustomEvent(pointerType, {\n bubbles: true,\n cancelable: true\n });\n pointerEvent.ctrlKey = touchEvent.ctrlKey;\n pointerEvent.shiftKey = touchEvent.shiftKey;\n pointerEvent.altKey = touchEvent.altKey;\n pointerEvent.metaKey = touchEvent.metaKey;\n var touch = changedTouches.item(t);\n pointerEvent.clientX = touch.clientX;\n pointerEvent.clientY = touch.clientY;\n pointerEvent.screenX = touch.screenX;\n pointerEvent.screenY = touch.screenY;\n pointerEvent.pageX = touch.pageX;\n pointerEvent.pageY = touch.pageY;\n var rect = touch.target.getBoundingClientRect();\n pointerEvent.offsetX = touch.clientX - rect.left;\n pointerEvent.offsetY = touch.clientY - rect.top;\n pointerEvent.pointerId = 1 + touch.identifier;\n // Default values for standard MouseEvent fields.\n pointerEvent.button = 0;\n pointerEvent.buttons = 1;\n pointerEvent.movementX = 0;\n pointerEvent.movementY = 0;\n pointerEvent.region = null;\n pointerEvent.relatedTarget = null;\n pointerEvent.x = pointerEvent.clientX;\n pointerEvent.y = pointerEvent.clientY;\n // Pointer event details\n pointerEvent.pointerType = \"touch\";\n pointerEvent.width = 1;\n pointerEvent.height = 1;\n pointerEvent.tiltX = 0;\n pointerEvent.tiltY = 0;\n pointerEvent.pressure = 1;\n // First touch is the primary pointer event.\n if (touchType === \"touchstart\" && primaryTouchId === null) {\n primaryTouchId = touch.identifier;\n }\n pointerEvent.isPrimary = touch.identifier === primaryTouchId;\n // If first touch ends, reset primary touch id.\n if (touchType === \"touchend\" && pointerEvent.isPrimary) {\n primaryTouchId = null;\n }\n touchEvent.target.dispatchEvent(pointerEvent);\n if (pointerEvent.defaultPrevented) {\n touchEvent.preventDefault();\n }\n }\n });\n}\n//# sourceMappingURL=elm-pep.js.map","'use strict';\n\nmodule.exports = Pbf;\n\nvar ieee754 = require('ieee754');\n\nfunction Pbf(buf) {\n this.buf = ArrayBuffer.isView && ArrayBuffer.isView(buf) ? buf : new Uint8Array(buf || 0);\n this.pos = 0;\n this.type = 0;\n this.length = this.buf.length;\n}\n\nPbf.Varint = 0; // varint: int32, int64, uint32, uint64, sint32, sint64, bool, enum\nPbf.Fixed64 = 1; // 64-bit: double, fixed64, sfixed64\nPbf.Bytes = 2; // length-delimited: string, bytes, embedded messages, packed repeated fields\nPbf.Fixed32 = 5; // 32-bit: float, fixed32, sfixed32\n\nvar SHIFT_LEFT_32 = (1 << 16) * (1 << 16),\n SHIFT_RIGHT_32 = 1 / SHIFT_LEFT_32;\n\n// Threshold chosen based on both benchmarking and knowledge about browser string\n// data structures (which currently switch structure types at 12 bytes or more)\nvar TEXT_DECODER_MIN_LENGTH = 12;\nvar utf8TextDecoder = typeof TextDecoder === 'undefined' ? null : new TextDecoder('utf8');\n\nPbf.prototype = {\n\n destroy: function() {\n this.buf = null;\n },\n\n // === READING =================================================================\n\n readFields: function(readField, result, end) {\n end = end || this.length;\n\n while (this.pos < end) {\n var val = this.readVarint(),\n tag = val >> 3,\n startPos = this.pos;\n\n this.type = val & 0x7;\n readField(tag, result, this);\n\n if (this.pos === startPos) this.skip(val);\n }\n return result;\n },\n\n readMessage: function(readField, result) {\n return this.readFields(readField, result, this.readVarint() + this.pos);\n },\n\n readFixed32: function() {\n var val = readUInt32(this.buf, this.pos);\n this.pos += 4;\n return val;\n },\n\n readSFixed32: function() {\n var val = readInt32(this.buf, this.pos);\n this.pos += 4;\n return val;\n },\n\n // 64-bit int handling is based on github.com/dpw/node-buffer-more-ints (MIT-licensed)\n\n readFixed64: function() {\n var val = readUInt32(this.buf, this.pos) + readUInt32(this.buf, this.pos + 4) * SHIFT_LEFT_32;\n this.pos += 8;\n return val;\n },\n\n readSFixed64: function() {\n var val = readUInt32(this.buf, this.pos) + readInt32(this.buf, this.pos + 4) * SHIFT_LEFT_32;\n this.pos += 8;\n return val;\n },\n\n readFloat: function() {\n var val = ieee754.read(this.buf, this.pos, true, 23, 4);\n this.pos += 4;\n return val;\n },\n\n readDouble: function() {\n var val = ieee754.read(this.buf, this.pos, true, 52, 8);\n this.pos += 8;\n return val;\n },\n\n readVarint: function(isSigned) {\n var buf = this.buf,\n val, b;\n\n b = buf[this.pos++]; val = b & 0x7f; if (b < 0x80) return val;\n b = buf[this.pos++]; val |= (b & 0x7f) << 7; if (b < 0x80) return val;\n b = buf[this.pos++]; val |= (b & 0x7f) << 14; if (b < 0x80) return val;\n b = buf[this.pos++]; val |= (b & 0x7f) << 21; if (b < 0x80) return val;\n b = buf[this.pos]; val |= (b & 0x0f) << 28;\n\n return readVarintRemainder(val, isSigned, this);\n },\n\n readVarint64: function() { // for compatibility with v2.0.1\n return this.readVarint(true);\n },\n\n readSVarint: function() {\n var num = this.readVarint();\n return num % 2 === 1 ? (num + 1) / -2 : num / 2; // zigzag encoding\n },\n\n readBoolean: function() {\n return Boolean(this.readVarint());\n },\n\n readString: function() {\n var end = this.readVarint() + this.pos;\n var pos = this.pos;\n this.pos = end;\n\n if (end - pos >= TEXT_DECODER_MIN_LENGTH && utf8TextDecoder) {\n // longer strings are fast with the built-in browser TextDecoder API\n return readUtf8TextDecoder(this.buf, pos, end);\n }\n // short strings are fast with our custom implementation\n return readUtf8(this.buf, pos, end);\n },\n\n readBytes: function() {\n var end = this.readVarint() + this.pos,\n buffer = this.buf.subarray(this.pos, end);\n this.pos = end;\n return buffer;\n },\n\n // verbose for performance reasons; doesn't affect gzipped size\n\n readPackedVarint: function(arr, isSigned) {\n if (this.type !== Pbf.Bytes) return arr.push(this.readVarint(isSigned));\n var end = readPackedEnd(this);\n arr = arr || [];\n while (this.pos < end) arr.push(this.readVarint(isSigned));\n return arr;\n },\n readPackedSVarint: function(arr) {\n if (this.type !== Pbf.Bytes) return arr.push(this.readSVarint());\n var end = readPackedEnd(this);\n arr = arr || [];\n while (this.pos < end) arr.push(this.readSVarint());\n return arr;\n },\n readPackedBoolean: function(arr) {\n if (this.type !== Pbf.Bytes) return arr.push(this.readBoolean());\n var end = readPackedEnd(this);\n arr = arr || [];\n while (this.pos < end) arr.push(this.readBoolean());\n return arr;\n },\n readPackedFloat: function(arr) {\n if (this.type !== Pbf.Bytes) return arr.push(this.readFloat());\n var end = readPackedEnd(this);\n arr = arr || [];\n while (this.pos < end) arr.push(this.readFloat());\n return arr;\n },\n readPackedDouble: function(arr) {\n if (this.type !== Pbf.Bytes) return arr.push(this.readDouble());\n var end = readPackedEnd(this);\n arr = arr || [];\n while (this.pos < end) arr.push(this.readDouble());\n return arr;\n },\n readPackedFixed32: function(arr) {\n if (this.type !== Pbf.Bytes) return arr.push(this.readFixed32());\n var end = readPackedEnd(this);\n arr = arr || [];\n while (this.pos < end) arr.push(this.readFixed32());\n return arr;\n },\n readPackedSFixed32: function(arr) {\n if (this.type !== Pbf.Bytes) return arr.push(this.readSFixed32());\n var end = readPackedEnd(this);\n arr = arr || [];\n while (this.pos < end) arr.push(this.readSFixed32());\n return arr;\n },\n readPackedFixed64: function(arr) {\n if (this.type !== Pbf.Bytes) return arr.push(this.readFixed64());\n var end = readPackedEnd(this);\n arr = arr || [];\n while (this.pos < end) arr.push(this.readFixed64());\n return arr;\n },\n readPackedSFixed64: function(arr) {\n if (this.type !== Pbf.Bytes) return arr.push(this.readSFixed64());\n var end = readPackedEnd(this);\n arr = arr || [];\n while (this.pos < end) arr.push(this.readSFixed64());\n return arr;\n },\n\n skip: function(val) {\n var type = val & 0x7;\n if (type === Pbf.Varint) while (this.buf[this.pos++] > 0x7f) {}\n else if (type === Pbf.Bytes) this.pos = this.readVarint() + this.pos;\n else if (type === Pbf.Fixed32) this.pos += 4;\n else if (type === Pbf.Fixed64) this.pos += 8;\n else throw new Error('Unimplemented type: ' + type);\n },\n\n // === WRITING =================================================================\n\n writeTag: function(tag, type) {\n this.writeVarint((tag << 3) | type);\n },\n\n realloc: function(min) {\n var length = this.length || 16;\n\n while (length < this.pos + min) length *= 2;\n\n if (length !== this.length) {\n var buf = new Uint8Array(length);\n buf.set(this.buf);\n this.buf = buf;\n this.length = length;\n }\n },\n\n finish: function() {\n this.length = this.pos;\n this.pos = 0;\n return this.buf.subarray(0, this.length);\n },\n\n writeFixed32: function(val) {\n this.realloc(4);\n writeInt32(this.buf, val, this.pos);\n this.pos += 4;\n },\n\n writeSFixed32: function(val) {\n this.realloc(4);\n writeInt32(this.buf, val, this.pos);\n this.pos += 4;\n },\n\n writeFixed64: function(val) {\n this.realloc(8);\n writeInt32(this.buf, val & -1, this.pos);\n writeInt32(this.buf, Math.floor(val * SHIFT_RIGHT_32), this.pos + 4);\n this.pos += 8;\n },\n\n writeSFixed64: function(val) {\n this.realloc(8);\n writeInt32(this.buf, val & -1, this.pos);\n writeInt32(this.buf, Math.floor(val * SHIFT_RIGHT_32), this.pos + 4);\n this.pos += 8;\n },\n\n writeVarint: function(val) {\n val = +val || 0;\n\n if (val > 0xfffffff || val < 0) {\n writeBigVarint(val, this);\n return;\n }\n\n this.realloc(4);\n\n this.buf[this.pos++] = val & 0x7f | (val > 0x7f ? 0x80 : 0); if (val <= 0x7f) return;\n this.buf[this.pos++] = ((val >>>= 7) & 0x7f) | (val > 0x7f ? 0x80 : 0); if (val <= 0x7f) return;\n this.buf[this.pos++] = ((val >>>= 7) & 0x7f) | (val > 0x7f ? 0x80 : 0); if (val <= 0x7f) return;\n this.buf[this.pos++] = (val >>> 7) & 0x7f;\n },\n\n writeSVarint: function(val) {\n this.writeVarint(val < 0 ? -val * 2 - 1 : val * 2);\n },\n\n writeBoolean: function(val) {\n this.writeVarint(Boolean(val));\n },\n\n writeString: function(str) {\n str = String(str);\n this.realloc(str.length * 4);\n\n this.pos++; // reserve 1 byte for short string length\n\n var startPos = this.pos;\n // write the string directly to the buffer and see how much was written\n this.pos = writeUtf8(this.buf, str, this.pos);\n var len = this.pos - startPos;\n\n if (len >= 0x80) makeRoomForExtraLength(startPos, len, this);\n\n // finally, write the message length in the reserved place and restore the position\n this.pos = startPos - 1;\n this.writeVarint(len);\n this.pos += len;\n },\n\n writeFloat: function(val) {\n this.realloc(4);\n ieee754.write(this.buf, val, this.pos, true, 23, 4);\n this.pos += 4;\n },\n\n writeDouble: function(val) {\n this.realloc(8);\n ieee754.write(this.buf, val, this.pos, true, 52, 8);\n this.pos += 8;\n },\n\n writeBytes: function(buffer) {\n var len = buffer.length;\n this.writeVarint(len);\n this.realloc(len);\n for (var i = 0; i < len; i++) this.buf[this.pos++] = buffer[i];\n },\n\n writeRawMessage: function(fn, obj) {\n this.pos++; // reserve 1 byte for short message length\n\n // write the message directly to the buffer and see how much was written\n var startPos = this.pos;\n fn(obj, this);\n var len = this.pos - startPos;\n\n if (len >= 0x80) makeRoomForExtraLength(startPos, len, this);\n\n // finally, write the message length in the reserved place and restore the position\n this.pos = startPos - 1;\n this.writeVarint(len);\n this.pos += len;\n },\n\n writeMessage: function(tag, fn, obj) {\n this.writeTag(tag, Pbf.Bytes);\n this.writeRawMessage(fn, obj);\n },\n\n writePackedVarint: function(tag, arr) { if (arr.length) this.writeMessage(tag, writePackedVarint, arr); },\n writePackedSVarint: function(tag, arr) { if (arr.length) this.writeMessage(tag, writePackedSVarint, arr); },\n writePackedBoolean: function(tag, arr) { if (arr.length) this.writeMessage(tag, writePackedBoolean, arr); },\n writePackedFloat: function(tag, arr) { if (arr.length) this.writeMessage(tag, writePackedFloat, arr); },\n writePackedDouble: function(tag, arr) { if (arr.length) this.writeMessage(tag, writePackedDouble, arr); },\n writePackedFixed32: function(tag, arr) { if (arr.length) this.writeMessage(tag, writePackedFixed32, arr); },\n writePackedSFixed32: function(tag, arr) { if (arr.length) this.writeMessage(tag, writePackedSFixed32, arr); },\n writePackedFixed64: function(tag, arr) { if (arr.length) this.writeMessage(tag, writePackedFixed64, arr); },\n writePackedSFixed64: function(tag, arr) { if (arr.length) this.writeMessage(tag, writePackedSFixed64, arr); },\n\n writeBytesField: function(tag, buffer) {\n this.writeTag(tag, Pbf.Bytes);\n this.writeBytes(buffer);\n },\n writeFixed32Field: function(tag, val) {\n this.writeTag(tag, Pbf.Fixed32);\n this.writeFixed32(val);\n },\n writeSFixed32Field: function(tag, val) {\n this.writeTag(tag, Pbf.Fixed32);\n this.writeSFixed32(val);\n },\n writeFixed64Field: function(tag, val) {\n this.writeTag(tag, Pbf.Fixed64);\n this.writeFixed64(val);\n },\n writeSFixed64Field: function(tag, val) {\n this.writeTag(tag, Pbf.Fixed64);\n this.writeSFixed64(val);\n },\n writeVarintField: function(tag, val) {\n this.writeTag(tag, Pbf.Varint);\n this.writeVarint(val);\n },\n writeSVarintField: function(tag, val) {\n this.writeTag(tag, Pbf.Varint);\n this.writeSVarint(val);\n },\n writeStringField: function(tag, str) {\n this.writeTag(tag, Pbf.Bytes);\n this.writeString(str);\n },\n writeFloatField: function(tag, val) {\n this.writeTag(tag, Pbf.Fixed32);\n this.writeFloat(val);\n },\n writeDoubleField: function(tag, val) {\n this.writeTag(tag, Pbf.Fixed64);\n this.writeDouble(val);\n },\n writeBooleanField: function(tag, val) {\n this.writeVarintField(tag, Boolean(val));\n }\n};\n\nfunction readVarintRemainder(l, s, p) {\n var buf = p.buf,\n h, b;\n\n b = buf[p.pos++]; h = (b & 0x70) >> 4; if (b < 0x80) return toNum(l, h, s);\n b = buf[p.pos++]; h |= (b & 0x7f) << 3; if (b < 0x80) return toNum(l, h, s);\n b = buf[p.pos++]; h |= (b & 0x7f) << 10; if (b < 0x80) return toNum(l, h, s);\n b = buf[p.pos++]; h |= (b & 0x7f) << 17; if (b < 0x80) return toNum(l, h, s);\n b = buf[p.pos++]; h |= (b & 0x7f) << 24; if (b < 0x80) return toNum(l, h, s);\n b = buf[p.pos++]; h |= (b & 0x01) << 31; if (b < 0x80) return toNum(l, h, s);\n\n throw new Error('Expected varint not more than 10 bytes');\n}\n\nfunction readPackedEnd(pbf) {\n return pbf.type === Pbf.Bytes ?\n pbf.readVarint() + pbf.pos : pbf.pos + 1;\n}\n\nfunction toNum(low, high, isSigned) {\n if (isSigned) {\n return high * 0x100000000 + (low >>> 0);\n }\n\n return ((high >>> 0) * 0x100000000) + (low >>> 0);\n}\n\nfunction writeBigVarint(val, pbf) {\n var low, high;\n\n if (val >= 0) {\n low = (val % 0x100000000) | 0;\n high = (val / 0x100000000) | 0;\n } else {\n low = ~(-val % 0x100000000);\n high = ~(-val / 0x100000000);\n\n if (low ^ 0xffffffff) {\n low = (low + 1) | 0;\n } else {\n low = 0;\n high = (high + 1) | 0;\n }\n }\n\n if (val >= 0x10000000000000000 || val < -0x10000000000000000) {\n throw new Error('Given varint doesn\\'t fit into 10 bytes');\n }\n\n pbf.realloc(10);\n\n writeBigVarintLow(low, high, pbf);\n writeBigVarintHigh(high, pbf);\n}\n\nfunction writeBigVarintLow(low, high, pbf) {\n pbf.buf[pbf.pos++] = low & 0x7f | 0x80; low >>>= 7;\n pbf.buf[pbf.pos++] = low & 0x7f | 0x80; low >>>= 7;\n pbf.buf[pbf.pos++] = low & 0x7f | 0x80; low >>>= 7;\n pbf.buf[pbf.pos++] = low & 0x7f | 0x80; low >>>= 7;\n pbf.buf[pbf.pos] = low & 0x7f;\n}\n\nfunction writeBigVarintHigh(high, pbf) {\n var lsb = (high & 0x07) << 4;\n\n pbf.buf[pbf.pos++] |= lsb | ((high >>>= 3) ? 0x80 : 0); if (!high) return;\n pbf.buf[pbf.pos++] = high & 0x7f | ((high >>>= 7) ? 0x80 : 0); if (!high) return;\n pbf.buf[pbf.pos++] = high & 0x7f | ((high >>>= 7) ? 0x80 : 0); if (!high) return;\n pbf.buf[pbf.pos++] = high & 0x7f | ((high >>>= 7) ? 0x80 : 0); if (!high) return;\n pbf.buf[pbf.pos++] = high & 0x7f | ((high >>>= 7) ? 0x80 : 0); if (!high) return;\n pbf.buf[pbf.pos++] = high & 0x7f;\n}\n\nfunction makeRoomForExtraLength(startPos, len, pbf) {\n var extraLen =\n len <= 0x3fff ? 1 :\n len <= 0x1fffff ? 2 :\n len <= 0xfffffff ? 3 : Math.floor(Math.log(len) / (Math.LN2 * 7));\n\n // if 1 byte isn't enough for encoding message length, shift the data to the right\n pbf.realloc(extraLen);\n for (var i = pbf.pos - 1; i >= startPos; i--) pbf.buf[i + extraLen] = pbf.buf[i];\n}\n\nfunction writePackedVarint(arr, pbf) { for (var i = 0; i < arr.length; i++) pbf.writeVarint(arr[i]); }\nfunction writePackedSVarint(arr, pbf) { for (var i = 0; i < arr.length; i++) pbf.writeSVarint(arr[i]); }\nfunction writePackedFloat(arr, pbf) { for (var i = 0; i < arr.length; i++) pbf.writeFloat(arr[i]); }\nfunction writePackedDouble(arr, pbf) { for (var i = 0; i < arr.length; i++) pbf.writeDouble(arr[i]); }\nfunction writePackedBoolean(arr, pbf) { for (var i = 0; i < arr.length; i++) pbf.writeBoolean(arr[i]); }\nfunction writePackedFixed32(arr, pbf) { for (var i = 0; i < arr.length; i++) pbf.writeFixed32(arr[i]); }\nfunction writePackedSFixed32(arr, pbf) { for (var i = 0; i < arr.length; i++) pbf.writeSFixed32(arr[i]); }\nfunction writePackedFixed64(arr, pbf) { for (var i = 0; i < arr.length; i++) pbf.writeFixed64(arr[i]); }\nfunction writePackedSFixed64(arr, pbf) { for (var i = 0; i < arr.length; i++) pbf.writeSFixed64(arr[i]); }\n\n// Buffer code below from https://github.com/feross/buffer, MIT-licensed\n\nfunction readUInt32(buf, pos) {\n return ((buf[pos]) |\n (buf[pos + 1] << 8) |\n (buf[pos + 2] << 16)) +\n (buf[pos + 3] * 0x1000000);\n}\n\nfunction writeInt32(buf, val, pos) {\n buf[pos] = val;\n buf[pos + 1] = (val >>> 8);\n buf[pos + 2] = (val >>> 16);\n buf[pos + 3] = (val >>> 24);\n}\n\nfunction readInt32(buf, pos) {\n return ((buf[pos]) |\n (buf[pos + 1] << 8) |\n (buf[pos + 2] << 16)) +\n (buf[pos + 3] << 24);\n}\n\nfunction readUtf8(buf, pos, end) {\n var str = '';\n var i = pos;\n\n while (i < end) {\n var b0 = buf[i];\n var c = null; // codepoint\n var bytesPerSequence =\n b0 > 0xEF ? 4 :\n b0 > 0xDF ? 3 :\n b0 > 0xBF ? 2 : 1;\n\n if (i + bytesPerSequence > end) break;\n\n var b1, b2, b3;\n\n if (bytesPerSequence === 1) {\n if (b0 < 0x80) {\n c = b0;\n }\n } else if (bytesPerSequence === 2) {\n b1 = buf[i + 1];\n if ((b1 & 0xC0) === 0x80) {\n c = (b0 & 0x1F) << 0x6 | (b1 & 0x3F);\n if (c <= 0x7F) {\n c = null;\n }\n }\n } else if (bytesPerSequence === 3) {\n b1 = buf[i + 1];\n b2 = buf[i + 2];\n if ((b1 & 0xC0) === 0x80 && (b2 & 0xC0) === 0x80) {\n c = (b0 & 0xF) << 0xC | (b1 & 0x3F) << 0x6 | (b2 & 0x3F);\n if (c <= 0x7FF || (c >= 0xD800 && c <= 0xDFFF)) {\n c = null;\n }\n }\n } else if (bytesPerSequence === 4) {\n b1 = buf[i + 1];\n b2 = buf[i + 2];\n b3 = buf[i + 3];\n if ((b1 & 0xC0) === 0x80 && (b2 & 0xC0) === 0x80 && (b3 & 0xC0) === 0x80) {\n c = (b0 & 0xF) << 0x12 | (b1 & 0x3F) << 0xC | (b2 & 0x3F) << 0x6 | (b3 & 0x3F);\n if (c <= 0xFFFF || c >= 0x110000) {\n c = null;\n }\n }\n }\n\n if (c === null) {\n c = 0xFFFD;\n bytesPerSequence = 1;\n\n } else if (c > 0xFFFF) {\n c -= 0x10000;\n str += String.fromCharCode(c >>> 10 & 0x3FF | 0xD800);\n c = 0xDC00 | c & 0x3FF;\n }\n\n str += String.fromCharCode(c);\n i += bytesPerSequence;\n }\n\n return str;\n}\n\nfunction readUtf8TextDecoder(buf, pos, end) {\n return utf8TextDecoder.decode(buf.subarray(pos, end));\n}\n\nfunction writeUtf8(buf, str, pos) {\n for (var i = 0, c, lead; i < str.length; i++) {\n c = str.charCodeAt(i); // code point\n\n if (c > 0xD7FF && c < 0xE000) {\n if (lead) {\n if (c < 0xDC00) {\n buf[pos++] = 0xEF;\n buf[pos++] = 0xBF;\n buf[pos++] = 0xBD;\n lead = c;\n continue;\n } else {\n c = lead - 0xD800 << 10 | c - 0xDC00 | 0x10000;\n lead = null;\n }\n } else {\n if (c > 0xDBFF || (i + 1 === str.length)) {\n buf[pos++] = 0xEF;\n buf[pos++] = 0xBF;\n buf[pos++] = 0xBD;\n } else {\n lead = c;\n }\n continue;\n }\n } else if (lead) {\n buf[pos++] = 0xEF;\n buf[pos++] = 0xBF;\n buf[pos++] = 0xBD;\n lead = null;\n }\n\n if (c < 0x80) {\n buf[pos++] = c;\n } else {\n if (c < 0x800) {\n buf[pos++] = c >> 0x6 | 0xC0;\n } else {\n if (c < 0x10000) {\n buf[pos++] = c >> 0xC | 0xE0;\n } else {\n buf[pos++] = c >> 0x12 | 0xF0;\n buf[pos++] = c >> 0xC & 0x3F | 0x80;\n }\n buf[pos++] = c >> 0x6 & 0x3F | 0x80;\n }\n buf[pos++] = c & 0x3F | 0x80;\n }\n }\n return pos;\n}\n","var Processor = require('./processor');\n\nexports.Processor = Processor;\n","exports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","var newImageData = require('./util').newImageData;\n\n/**\n * Create a function for running operations. This function is serialized for\n * use in a worker.\n * @param {function(Array, Object):*} operation The operation.\n * @return {function(Object):ArrayBuffer} A function that takes an object with\n * buffers, meta, imageOps, width, and height properties and returns an array\n * buffer.\n */\nfunction createMinion(operation) {\n var workerHasImageData = true;\n try {\n new ImageData(10, 10);\n } catch (_) {\n workerHasImageData = false;\n }\n\n function newWorkerImageData(data, width, height) {\n if (workerHasImageData) {\n return new ImageData(data, width, height);\n } else {\n return {data: data, width: width, height: height};\n }\n }\n\n return function(data) {\n // bracket notation for minification support\n var buffers = data['buffers'];\n var meta = data['meta'];\n var imageOps = data['imageOps'];\n var width = data['width'];\n var height = data['height'];\n\n var numBuffers = buffers.length;\n var numBytes = buffers[0].byteLength;\n var output, b;\n\n if (imageOps) {\n var images = new Array(numBuffers);\n for (b = 0; b < numBuffers; ++b) {\n images[b] = newWorkerImageData(\n new Uint8ClampedArray(buffers[b]), width, height);\n }\n output = operation(images, meta).data;\n } else {\n output = new Uint8ClampedArray(numBytes);\n var arrays = new Array(numBuffers);\n var pixels = new Array(numBuffers);\n for (b = 0; b < numBuffers; ++b) {\n arrays[b] = new Uint8ClampedArray(buffers[b]);\n pixels[b] = [0, 0, 0, 0];\n }\n for (var i = 0; i < numBytes; i += 4) {\n for (var j = 0; j < numBuffers; ++j) {\n var array = arrays[j];\n pixels[j][0] = array[i];\n pixels[j][1] = array[i + 1];\n pixels[j][2] = array[i + 2];\n pixels[j][3] = array[i + 3];\n }\n var pixel = operation(pixels, meta);\n output[i] = pixel[0];\n output[i + 1] = pixel[1];\n output[i + 2] = pixel[2];\n output[i + 3] = pixel[3];\n }\n }\n return output.buffer;\n };\n}\n\n/**\n * Create a worker for running operations.\n * @param {Object} config Configuration.\n * @param {function(MessageEvent)} onMessage Called with a message event.\n * @return {Worker} The worker.\n */\nfunction createWorker(config, onMessage) {\n var lib = Object.keys(config.lib || {}).map(function(name) {\n return 'var ' + name + ' = ' + config.lib[name].toString() + ';';\n });\n\n var lines = lib.concat([\n 'var __minion__ = (' + createMinion.toString() + ')(', config.operation.toString(), ');',\n 'self.addEventListener(\"message\", function(event) {',\n ' var buffer = __minion__(event.data);',\n ' self.postMessage({buffer: buffer, meta: event.data.meta}, [buffer]);',\n '});'\n ]);\n\n var blob = new Blob(lines, {type: 'text/javascript'});\n var source = URL.createObjectURL(blob);\n var worker = new Worker(source);\n worker.addEventListener('message', onMessage);\n return worker;\n}\n\n/**\n * Create a faux worker for running operations.\n * @param {Object} config Configuration.\n * @param {function(MessageEvent)} onMessage Called with a message event.\n * @return {Object} The faux worker.\n */\nfunction createFauxWorker(config, onMessage) {\n var minion = createMinion(config.operation);\n return {\n postMessage: function(data) {\n setTimeout(function() {\n onMessage({'data': {'buffer': minion(data), 'meta': data['meta']}});\n }, 0);\n }\n };\n}\n\n/**\n * A processor runs pixel or image operations in workers.\n * @param {Object} config Configuration.\n */\nfunction Processor(config) {\n this._imageOps = !!config.imageOps;\n var threads;\n if (config.threads === 0) {\n threads = 0;\n } else if (this._imageOps) {\n threads = 1;\n } else {\n threads = config.threads || 1;\n }\n var workers = [];\n if (threads) {\n for (var i = 0; i < threads; ++i) {\n workers[i] = createWorker(config, this._onWorkerMessage.bind(this, i));\n }\n } else {\n workers[0] = createFauxWorker(config, this._onWorkerMessage.bind(this, 0));\n }\n this._workers = workers;\n this._queue = [];\n this._maxQueueLength = config.queue || Infinity;\n this._running = 0;\n this._dataLookup = {};\n this._job = null;\n}\n\n/**\n * Run operation on input data.\n * @param {Array.} inputs Array of pixels or image data\n * (depending on the operation type).\n * @param {Object} meta A user data object. This is passed to all operations\n * and must be serializable.\n * @param {function(Error, ImageData, Object)} callback Called when work\n * completes. The first argument is any error. The second is the ImageData\n * generated by operations. The third is the user data object.\n */\nProcessor.prototype.process = function(inputs, meta, callback) {\n this._enqueue({\n inputs: inputs,\n meta: meta,\n callback: callback\n });\n this._dispatch();\n};\n\n/**\n * Stop responding to any completed work and destroy the processor.\n */\nProcessor.prototype.destroy = function() {\n for (var key in this) {\n this[key] = null;\n }\n this._destroyed = true;\n};\n\n/**\n * Add a job to the queue.\n * @param {Object} job The job.\n */\nProcessor.prototype._enqueue = function(job) {\n this._queue.push(job);\n while (this._queue.length > this._maxQueueLength) {\n this._queue.shift().callback(null, null);\n }\n};\n\n/**\n * Dispatch a job.\n */\nProcessor.prototype._dispatch = function() {\n if (this._running === 0 && this._queue.length > 0) {\n var job = this._job = this._queue.shift();\n var width = job.inputs[0].width;\n var height = job.inputs[0].height;\n var buffers = job.inputs.map(function(input) {\n return input.data.buffer;\n });\n var threads = this._workers.length;\n this._running = threads;\n if (threads === 1) {\n this._workers[0].postMessage({\n 'buffers': buffers,\n 'meta': job.meta,\n 'imageOps': this._imageOps,\n 'width': width,\n 'height': height\n }, buffers);\n } else {\n var length = job.inputs[0].data.length;\n var segmentLength = 4 * Math.ceil(length / 4 / threads);\n for (var i = 0; i < threads; ++i) {\n var offset = i * segmentLength;\n var slices = [];\n for (var j = 0, jj = buffers.length; j < jj; ++j) {\n slices.push(buffers[i].slice(offset, offset + segmentLength));\n }\n this._workers[i].postMessage({\n 'buffers': slices,\n 'meta': job.meta,\n 'imageOps': this._imageOps,\n 'width': width,\n 'height': height\n }, slices);\n }\n }\n }\n};\n\n/**\n * Handle messages from the worker.\n * @param {number} index The worker index.\n * @param {MessageEvent} event The message event.\n */\nProcessor.prototype._onWorkerMessage = function(index, event) {\n if (this._destroyed) {\n return;\n }\n this._dataLookup[index] = event.data;\n --this._running;\n if (this._running === 0) {\n this._resolveJob();\n }\n};\n\n/**\n * Resolve a job. If there are no more worker threads, the processor callback\n * will be called.\n */\nProcessor.prototype._resolveJob = function() {\n var job = this._job;\n var threads = this._workers.length;\n var data, meta;\n if (threads === 1) {\n data = new Uint8ClampedArray(this._dataLookup[0]['buffer']);\n meta = this._dataLookup[0]['meta'];\n } else {\n var length = job.inputs[0].data.length;\n data = new Uint8ClampedArray(length);\n meta = new Array(length);\n var segmentLength = 4 * Math.ceil(length / 4 / threads);\n for (var i = 0; i < threads; ++i) {\n var buffer = this._dataLookup[i]['buffer'];\n var offset = i * segmentLength;\n data.set(new Uint8ClampedArray(buffer), offset);\n meta[i] = this._dataLookup[i]['meta'];\n }\n }\n this._job = null;\n this._dataLookup = {};\n job.callback(null,\n newImageData(data, job.inputs[0].width, job.inputs[0].height), meta);\n this._dispatch();\n};\n\nmodule.exports = Processor;\n","var hasImageData = true;\ntry {\n new ImageData(10, 10);\n} catch (_) {\n hasImageData = false;\n}\n\nvar context = document.createElement('canvas').getContext('2d');\n\nfunction newImageData(data, width, height) {\n if (hasImageData) {\n return new ImageData(data, width, height);\n } else {\n var imageData = context.createImageData(width, height);\n imageData.data.set(data);\n return imageData;\n }\n}\n\nexports.newImageData = newImageData;\n","/**\n * @module ol/util\n */\n/**\n * @return {?} Any return.\n */\nexport function abstract() {\n return /** @type {?} */ ((function () {\n throw new Error('Unimplemented abstract method.');\n })());\n}\n/**\n * Counter for getUid.\n * @type {number}\n * @private\n */\nvar uidCounter_ = 0;\n/**\n * Gets a unique ID for an object. This mutates the object so that further calls\n * with the same object as a parameter returns the same value. Unique IDs are generated\n * as a strictly increasing sequence. Adapted from goog.getUid.\n *\n * @param {Object} obj The object to get the unique ID for.\n * @return {string} The unique ID for the object.\n * @api\n */\nexport function getUid(obj) {\n return obj.ol_uid || (obj.ol_uid = String(++uidCounter_));\n}\n/**\n * OpenLayers version.\n * @type {string}\n */\nexport var VERSION = '6.2.1';\n//# sourceMappingURL=util.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/AssertionError\n */\nimport { VERSION } from './util.js';\n/**\n * Error object thrown when an assertion failed. This is an ECMA-262 Error,\n * extended with a `code` property.\n * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error.\n */\nvar AssertionError = /** @class */ (function (_super) {\n __extends(AssertionError, _super);\n /**\n * @param {number} code Error code.\n */\n function AssertionError(code) {\n var _this = this;\n var path = VERSION === 'latest' ? VERSION : 'v' + VERSION.split('-')[0];\n var message = 'Assertion failed. See https://openlayers.org/en/' + path +\n '/doc/errors/#' + code + ' for details.';\n _this = _super.call(this, message) || this;\n /**\n * Error code. The meaning of the code can be found on\n * https://openlayers.org/en/latest/doc/errors/ (replace `latest` with\n * the version found in the OpenLayers script's header comment if a version\n * other than the latest is used).\n * @type {number}\n * @api\n */\n _this.code = code;\n /**\n * @type {string}\n */\n _this.name = 'AssertionError';\n // Re-assign message, see https://github.com/Rich-Harris/buble/issues/40\n _this.message = message;\n return _this;\n }\n return AssertionError;\n}(Error));\nexport default AssertionError;\n//# sourceMappingURL=AssertionError.js.map","/**\n * @module ol/CollectionEventType\n */\n/**\n * @enum {string}\n */\nexport default {\n /**\n * Triggered when an item is added to the collection.\n * @event module:ol/Collection.CollectionEvent#add\n * @api\n */\n ADD: 'add',\n /**\n * Triggered when an item is removed from the collection.\n * @event module:ol/Collection.CollectionEvent#remove\n * @api\n */\n REMOVE: 'remove'\n};\n//# sourceMappingURL=CollectionEventType.js.map","/**\n * @module ol/ObjectEventType\n */\n/**\n * @enum {string}\n */\nexport default {\n /**\n * Triggered when a property is changed.\n * @event module:ol/Object.ObjectEvent#propertychange\n * @api\n */\n PROPERTYCHANGE: 'propertychange'\n};\n//# sourceMappingURL=ObjectEventType.js.map","/**\n * @module ol/obj\n */\n/**\n * Polyfill for Object.assign(). Assigns enumerable and own properties from\n * one or more source objects to a target object.\n * See https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/assign.\n *\n * @param {!Object} target The target object.\n * @param {...Object} var_sources The source object(s).\n * @return {!Object} The modified target object.\n */\nexport var assign = (typeof Object.assign === 'function') ? Object.assign : function (target, var_sources) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert undefined or null to object');\n }\n var output = Object(target);\n for (var i = 1, ii = arguments.length; i < ii; ++i) {\n var source = arguments[i];\n if (source !== undefined && source !== null) {\n for (var key in source) {\n if (source.hasOwnProperty(key)) {\n output[key] = source[key];\n }\n }\n }\n }\n return output;\n};\n/**\n * Removes all properties from an object.\n * @param {Object} object The object to clear.\n */\nexport function clear(object) {\n for (var property in object) {\n delete object[property];\n }\n}\n/**\n * Polyfill for Object.values(). Get an array of property values from an object.\n * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/values\n *\n * @param {!Object} object The object from which to get the values.\n * @return {!Array} The property values.\n * @template K,V\n */\nexport var getValues = (typeof Object.values === 'function') ? Object.values : function (object) {\n var values = [];\n for (var property in object) {\n values.push(object[property]);\n }\n return values;\n};\n/**\n * Determine if an object has any properties.\n * @param {Object} object The object to check.\n * @return {boolean} The object is empty.\n */\nexport function isEmpty(object) {\n var property;\n for (property in object) {\n return false;\n }\n return !property;\n}\n//# sourceMappingURL=obj.js.map","/**\n * @module ol/events\n */\nimport { clear } from './obj.js';\n/**\n * Key to use with {@link module:ol/Observable~Observable#unByKey}.\n * @typedef {Object} EventsKey\n * @property {ListenerFunction} listener\n * @property {import(\"./events/Target.js\").EventTargetLike} target\n * @property {string} type\n * @api\n */\n/**\n * Listener function. This function is called with an event object as argument.\n * When the function returns `false`, event propagation will stop.\n *\n * @typedef {function((Event|import(\"./events/Event.js\").default)): (void|boolean)} ListenerFunction\n * @api\n */\n/**\n * Registers an event listener on an event target. Inspired by\n * https://google.github.io/closure-library/api/source/closure/goog/events/events.js.src.html\n *\n * This function efficiently binds a `listener` to a `this` object, and returns\n * a key for use with {@link module:ol/events~unlistenByKey}.\n *\n * @param {import(\"./events/Target.js\").EventTargetLike} target Event target.\n * @param {string} type Event type.\n * @param {ListenerFunction} listener Listener.\n * @param {Object=} opt_this Object referenced by the `this` keyword in the\n * listener. Default is the `target`.\n * @param {boolean=} opt_once If true, add the listener as one-off listener.\n * @return {EventsKey} Unique key for the listener.\n */\nexport function listen(target, type, listener, opt_this, opt_once) {\n if (opt_this && opt_this !== target) {\n listener = listener.bind(opt_this);\n }\n if (opt_once) {\n var originalListener_1 = listener;\n listener = function () {\n target.removeEventListener(type, listener);\n originalListener_1.apply(this, arguments);\n };\n }\n var eventsKey = {\n target: target,\n type: type,\n listener: listener\n };\n target.addEventListener(type, listener);\n return eventsKey;\n}\n/**\n * Registers a one-off event listener on an event target. Inspired by\n * https://google.github.io/closure-library/api/source/closure/goog/events/events.js.src.html\n *\n * This function efficiently binds a `listener` as self-unregistering listener\n * to a `this` object, and returns a key for use with\n * {@link module:ol/events~unlistenByKey} in case the listener needs to be\n * unregistered before it is called.\n *\n * When {@link module:ol/events~listen} is called with the same arguments after this\n * function, the self-unregistering listener will be turned into a permanent\n * listener.\n *\n * @param {import(\"./events/Target.js\").EventTargetLike} target Event target.\n * @param {string} type Event type.\n * @param {ListenerFunction} listener Listener.\n * @param {Object=} opt_this Object referenced by the `this` keyword in the\n * listener. Default is the `target`.\n * @return {EventsKey} Key for unlistenByKey.\n */\nexport function listenOnce(target, type, listener, opt_this) {\n return listen(target, type, listener, opt_this, true);\n}\n/**\n * Unregisters event listeners on an event target. Inspired by\n * https://google.github.io/closure-library/api/source/closure/goog/events/events.js.src.html\n *\n * The argument passed to this function is the key returned from\n * {@link module:ol/events~listen} or {@link module:ol/events~listenOnce}.\n *\n * @param {EventsKey} key The key.\n */\nexport function unlistenByKey(key) {\n if (key && key.target) {\n key.target.removeEventListener(key.type, key.listener);\n clear(key);\n }\n}\n//# sourceMappingURL=events.js.map","/**\n * @module ol/Disposable\n */\n/**\n * @classdesc\n * Objects that need to clean up after themselves.\n */\nvar Disposable = /** @class */ (function () {\n function Disposable() {\n /**\n * The object has already been disposed.\n * @type {boolean}\n * @private\n */\n this.disposed_ = false;\n }\n /**\n * Clean up.\n */\n Disposable.prototype.dispose = function () {\n if (!this.disposed_) {\n this.disposed_ = true;\n this.disposeInternal();\n }\n };\n /**\n * Extension point for disposable objects.\n * @protected\n */\n Disposable.prototype.disposeInternal = function () { };\n return Disposable;\n}());\nexport default Disposable;\n//# sourceMappingURL=Disposable.js.map","/**\n * @module ol/array\n */\n/**\n * Performs a binary search on the provided sorted list and returns the index of the item if found. If it can't be found it'll return -1.\n * https://github.com/darkskyapp/binary-search\n *\n * @param {Array<*>} haystack Items to search through.\n * @param {*} needle The item to look for.\n * @param {Function=} opt_comparator Comparator function.\n * @return {number} The index of the item if found, -1 if not.\n */\nexport function binarySearch(haystack, needle, opt_comparator) {\n var mid, cmp;\n var comparator = opt_comparator || numberSafeCompareFunction;\n var low = 0;\n var high = haystack.length;\n var found = false;\n while (low < high) {\n /* Note that \"(low + high) >>> 1\" may overflow, and results in a typecast\n * to double (which gives the wrong results). */\n mid = low + (high - low >> 1);\n cmp = +comparator(haystack[mid], needle);\n if (cmp < 0.0) { /* Too low. */\n low = mid + 1;\n }\n else { /* Key found or too high */\n high = mid;\n found = !cmp;\n }\n }\n /* Key not found. */\n return found ? low : ~low;\n}\n/**\n * Compare function for array sort that is safe for numbers.\n * @param {*} a The first object to be compared.\n * @param {*} b The second object to be compared.\n * @return {number} A negative number, zero, or a positive number as the first\n * argument is less than, equal to, or greater than the second.\n */\nexport function numberSafeCompareFunction(a, b) {\n return a > b ? 1 : a < b ? -1 : 0;\n}\n/**\n * Whether the array contains the given object.\n * @param {Array<*>} arr The array to test for the presence of the element.\n * @param {*} obj The object for which to test.\n * @return {boolean} The object is in the array.\n */\nexport function includes(arr, obj) {\n return arr.indexOf(obj) >= 0;\n}\n/**\n * @param {Array} arr Array.\n * @param {number} target Target.\n * @param {number} direction 0 means return the nearest, > 0\n * means return the largest nearest, < 0 means return the\n * smallest nearest.\n * @return {number} Index.\n */\nexport function linearFindNearest(arr, target, direction) {\n var n = arr.length;\n if (arr[0] <= target) {\n return 0;\n }\n else if (target <= arr[n - 1]) {\n return n - 1;\n }\n else {\n var i = void 0;\n if (direction > 0) {\n for (i = 1; i < n; ++i) {\n if (arr[i] < target) {\n return i - 1;\n }\n }\n }\n else if (direction < 0) {\n for (i = 1; i < n; ++i) {\n if (arr[i] <= target) {\n return i;\n }\n }\n }\n else {\n for (i = 1; i < n; ++i) {\n if (arr[i] == target) {\n return i;\n }\n else if (arr[i] < target) {\n if (arr[i - 1] - target < target - arr[i]) {\n return i - 1;\n }\n else {\n return i;\n }\n }\n }\n }\n return n - 1;\n }\n}\n/**\n * @param {Array<*>} arr Array.\n * @param {number} begin Begin index.\n * @param {number} end End index.\n */\nexport function reverseSubArray(arr, begin, end) {\n while (begin < end) {\n var tmp = arr[begin];\n arr[begin] = arr[end];\n arr[end] = tmp;\n ++begin;\n --end;\n }\n}\n/**\n * @param {Array} arr The array to modify.\n * @param {!Array|VALUE} data The elements or arrays of elements to add to arr.\n * @template VALUE\n */\nexport function extend(arr, data) {\n var extension = Array.isArray(data) ? data : [data];\n var length = extension.length;\n for (var i = 0; i < length; i++) {\n arr[arr.length] = extension[i];\n }\n}\n/**\n * @param {Array} arr The array to modify.\n * @param {VALUE} obj The element to remove.\n * @template VALUE\n * @return {boolean} If the element was removed.\n */\nexport function remove(arr, obj) {\n var i = arr.indexOf(obj);\n var found = i > -1;\n if (found) {\n arr.splice(i, 1);\n }\n return found;\n}\n/**\n * @param {Array} arr The array to search in.\n * @param {function(VALUE, number, ?) : boolean} func The function to compare.\n * @template VALUE\n * @return {VALUE|null} The element found or null.\n */\nexport function find(arr, func) {\n var length = arr.length >>> 0;\n var value;\n for (var i = 0; i < length; i++) {\n value = arr[i];\n if (func(value, i, arr)) {\n return value;\n }\n }\n return null;\n}\n/**\n * @param {Array|Uint8ClampedArray} arr1 The first array to compare.\n * @param {Array|Uint8ClampedArray} arr2 The second array to compare.\n * @return {boolean} Whether the two arrays are equal.\n */\nexport function equals(arr1, arr2) {\n var len1 = arr1.length;\n if (len1 !== arr2.length) {\n return false;\n }\n for (var i = 0; i < len1; i++) {\n if (arr1[i] !== arr2[i]) {\n return false;\n }\n }\n return true;\n}\n/**\n * Sort the passed array such that the relative order of equal elements is preverved.\n * See https://en.wikipedia.org/wiki/Sorting_algorithm#Stability for details.\n * @param {Array<*>} arr The array to sort (modifies original).\n * @param {!function(*, *): number} compareFnc Comparison function.\n * @api\n */\nexport function stableSort(arr, compareFnc) {\n var length = arr.length;\n var tmp = Array(arr.length);\n var i;\n for (i = 0; i < length; i++) {\n tmp[i] = { index: i, value: arr[i] };\n }\n tmp.sort(function (a, b) {\n return compareFnc(a.value, b.value) || a.index - b.index;\n });\n for (i = 0; i < arr.length; i++) {\n arr[i] = tmp[i].value;\n }\n}\n/**\n * @param {Array<*>} arr The array to search in.\n * @param {Function} func Comparison function.\n * @return {number} Return index.\n */\nexport function findIndex(arr, func) {\n var index;\n var found = !arr.every(function (el, idx) {\n index = idx;\n return !func(el, idx, arr);\n });\n return found ? index : -1;\n}\n/**\n * @param {Array<*>} arr The array to test.\n * @param {Function=} opt_func Comparison function.\n * @param {boolean=} opt_strict Strictly sorted (default false).\n * @return {boolean} Return index.\n */\nexport function isSorted(arr, opt_func, opt_strict) {\n var compare = opt_func || numberSafeCompareFunction;\n return arr.every(function (currentVal, index) {\n if (index === 0) {\n return true;\n }\n var res = compare(arr[index - 1], currentVal);\n return !(res > 0 || opt_strict && res === 0);\n });\n}\n//# sourceMappingURL=array.js.map","/**\n * @module ol/functions\n */\nimport { equals as arrayEquals } from './array.js';\n/**\n * Always returns true.\n * @returns {boolean} true.\n */\nexport function TRUE() {\n return true;\n}\n/**\n * Always returns false.\n * @returns {boolean} false.\n */\nexport function FALSE() {\n return false;\n}\n/**\n * A reusable function, used e.g. as a default for callbacks.\n *\n * @return {void} Nothing.\n */\nexport function VOID() { }\n/**\n * Wrap a function in another function that remembers the last return. If the\n * returned function is called twice in a row with the same arguments and the same\n * this object, it will return the value from the first call in the second call.\n *\n * @param {function(...any): ReturnType} fn The function to memoize.\n * @return {function(...any): ReturnType} The memoized function.\n * @template ReturnType\n */\nexport function memoizeOne(fn) {\n var called = false;\n /** @type {ReturnType} */\n var lastResult;\n /** @type {Array} */\n var lastArgs;\n var lastThis;\n return function () {\n var nextArgs = Array.prototype.slice.call(arguments);\n if (!called || this !== lastThis || !arrayEquals(nextArgs, lastArgs)) {\n called = true;\n lastThis = this;\n lastArgs = nextArgs;\n lastResult = fn.apply(this, arguments);\n }\n return lastResult;\n };\n}\n//# sourceMappingURL=functions.js.map","/**\n * @module ol/events/Event\n */\n/**\n * @classdesc\n * Stripped down implementation of the W3C DOM Level 2 Event interface.\n * See https://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-interface.\n *\n * This implementation only provides `type` and `target` properties, and\n * `stopPropagation` and `preventDefault` methods. It is meant as base class\n * for higher level events defined in the library, and works with\n * {@link module:ol/events/Target~Target}.\n */\nvar BaseEvent = /** @class */ (function () {\n /**\n * @param {string} type Type.\n */\n function BaseEvent(type) {\n /**\n * @type {boolean}\n */\n this.propagationStopped;\n /**\n * The event type.\n * @type {string}\n * @api\n */\n this.type = type;\n /**\n * The event target.\n * @type {Object}\n * @api\n */\n this.target = null;\n }\n /**\n * Stop event propagation.\n * @api\n */\n BaseEvent.prototype.preventDefault = function () {\n this.propagationStopped = true;\n };\n /**\n * Stop event propagation.\n * @api\n */\n BaseEvent.prototype.stopPropagation = function () {\n this.propagationStopped = true;\n };\n return BaseEvent;\n}());\n/**\n * @param {Event|import(\"./Event.js\").default} evt Event\n */\nexport function stopPropagation(evt) {\n evt.stopPropagation();\n}\n/**\n * @param {Event|import(\"./Event.js\").default} evt Event\n */\nexport function preventDefault(evt) {\n evt.preventDefault();\n}\nexport default BaseEvent;\n//# sourceMappingURL=Event.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/events/Target\n */\nimport Disposable from '../Disposable.js';\nimport { VOID } from '../functions.js';\nimport Event from './Event.js';\nimport { clear } from '../obj.js';\n/**\n * @typedef {EventTarget|Target} EventTargetLike\n */\n/**\n * @classdesc\n * A simplified implementation of the W3C DOM Level 2 EventTarget interface.\n * See https://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-EventTarget.\n *\n * There are two important simplifications compared to the specification:\n *\n * 1. The handling of `useCapture` in `addEventListener` and\n * `removeEventListener`. There is no real capture model.\n * 2. The handling of `stopPropagation` and `preventDefault` on `dispatchEvent`.\n * There is no event target hierarchy. When a listener calls\n * `stopPropagation` or `preventDefault` on an event object, it means that no\n * more listeners after this one will be called. Same as when the listener\n * returns false.\n */\nvar Target = /** @class */ (function (_super) {\n __extends(Target, _super);\n /**\n * @param {*=} opt_target Default event target for dispatched events.\n */\n function Target(opt_target) {\n var _this = _super.call(this) || this;\n /**\n * @private\n * @type {*}\n */\n _this.eventTarget_ = opt_target;\n /**\n * @private\n * @type {!Object}\n */\n _this.pendingRemovals_ = {};\n /**\n * @private\n * @type {!Object}\n */\n _this.dispatching_ = {};\n /**\n * @private\n * @type {!Object>}\n */\n _this.listeners_ = {};\n return _this;\n }\n /**\n * @param {string} type Type.\n * @param {import(\"../events.js\").ListenerFunction} listener Listener.\n */\n Target.prototype.addEventListener = function (type, listener) {\n if (!type || !listener) {\n return;\n }\n var listeners = this.listeners_[type];\n if (!listeners) {\n listeners = [];\n this.listeners_[type] = listeners;\n }\n if (listeners.indexOf(listener) === -1) {\n listeners.push(listener);\n }\n };\n /**\n * Dispatches an event and calls all listeners listening for events\n * of this type. The event parameter can either be a string or an\n * Object with a `type` property.\n *\n * @param {{type: string,\n * target: (EventTargetLike|undefined),\n * propagationStopped: (boolean|undefined)}|\n * import(\"./Event.js\").default|string} event Event object.\n * @return {boolean|undefined} `false` if anyone called preventDefault on the\n * event object or if any of the listeners returned false.\n * @api\n */\n Target.prototype.dispatchEvent = function (event) {\n var evt = typeof event === 'string' ? new Event(event) : event;\n var type = evt.type;\n if (!evt.target) {\n evt.target = this.eventTarget_ || this;\n }\n var listeners = this.listeners_[type];\n var propagate;\n if (listeners) {\n if (!(type in this.dispatching_)) {\n this.dispatching_[type] = 0;\n this.pendingRemovals_[type] = 0;\n }\n ++this.dispatching_[type];\n for (var i = 0, ii = listeners.length; i < ii; ++i) {\n if (listeners[i].call(this, evt) === false || evt.propagationStopped) {\n propagate = false;\n break;\n }\n }\n --this.dispatching_[type];\n if (this.dispatching_[type] === 0) {\n var pendingRemovals = this.pendingRemovals_[type];\n delete this.pendingRemovals_[type];\n while (pendingRemovals--) {\n this.removeEventListener(type, VOID);\n }\n delete this.dispatching_[type];\n }\n return propagate;\n }\n };\n /**\n * @inheritDoc\n */\n Target.prototype.disposeInternal = function () {\n clear(this.listeners_);\n };\n /**\n * Get the listeners for a specified event type. Listeners are returned in the\n * order that they will be called in.\n *\n * @param {string} type Type.\n * @return {Array} Listeners.\n */\n Target.prototype.getListeners = function (type) {\n return this.listeners_[type];\n };\n /**\n * @param {string=} opt_type Type. If not provided,\n * `true` will be returned if this event target has any listeners.\n * @return {boolean} Has listeners.\n */\n Target.prototype.hasListener = function (opt_type) {\n return opt_type ?\n opt_type in this.listeners_ :\n Object.keys(this.listeners_).length > 0;\n };\n /**\n * @param {string} type Type.\n * @param {import(\"../events.js\").ListenerFunction} listener Listener.\n */\n Target.prototype.removeEventListener = function (type, listener) {\n var listeners = this.listeners_[type];\n if (listeners) {\n var index = listeners.indexOf(listener);\n if (index !== -1) {\n if (type in this.pendingRemovals_) {\n // make listener a no-op, and remove later in #dispatchEvent()\n listeners[index] = VOID;\n ++this.pendingRemovals_[type];\n }\n else {\n listeners.splice(index, 1);\n if (listeners.length === 0) {\n delete this.listeners_[type];\n }\n }\n }\n }\n };\n return Target;\n}(Disposable));\nexport default Target;\n//# sourceMappingURL=Target.js.map","/**\n * @module ol/events/EventType\n */\n/**\n * @enum {string}\n * @const\n */\nexport default {\n /**\n * Generic change event. Triggered when the revision counter is increased.\n * @event module:ol/events/Event~BaseEvent#change\n * @api\n */\n CHANGE: 'change',\n /**\n * Generic error event. Triggered when an error occurs.\n * @event module:ol/events/Event~BaseEvent#error\n * @api\n */\n ERROR: 'error',\n BLUR: 'blur',\n CLEAR: 'clear',\n CONTEXTMENU: 'contextmenu',\n CLICK: 'click',\n DBLCLICK: 'dblclick',\n DRAGENTER: 'dragenter',\n DRAGOVER: 'dragover',\n DROP: 'drop',\n FOCUS: 'focus',\n KEYDOWN: 'keydown',\n KEYPRESS: 'keypress',\n LOAD: 'load',\n RESIZE: 'resize',\n TOUCHMOVE: 'touchmove',\n WHEEL: 'wheel'\n};\n//# sourceMappingURL=EventType.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/Observable\n */\nimport { listen, unlistenByKey, listenOnce } from './events.js';\nimport EventTarget from './events/Target.js';\nimport EventType from './events/EventType.js';\n/**\n * @classdesc\n * Abstract base class; normally only used for creating subclasses and not\n * instantiated in apps.\n * An event target providing convenient methods for listener registration\n * and unregistration. A generic `change` event is always available through\n * {@link module:ol/Observable~Observable#changed}.\n *\n * @fires import(\"./events/Event.js\").default\n * @api\n */\nvar Observable = /** @class */ (function (_super) {\n __extends(Observable, _super);\n function Observable() {\n var _this = _super.call(this) || this;\n /**\n * @private\n * @type {number}\n */\n _this.revision_ = 0;\n return _this;\n }\n /**\n * Increases the revision counter and dispatches a 'change' event.\n * @api\n */\n Observable.prototype.changed = function () {\n ++this.revision_;\n this.dispatchEvent(EventType.CHANGE);\n };\n /**\n * Get the version number for this object. Each time the object is modified,\n * its version number will be incremented.\n * @return {number} Revision.\n * @api\n */\n Observable.prototype.getRevision = function () {\n return this.revision_;\n };\n /**\n * Listen for a certain type of event.\n * @param {string|Array} type The event type or array of event types.\n * @param {function(?): ?} listener The listener function.\n * @return {import(\"./events.js\").EventsKey|Array} Unique key for the listener. If\n * called with an array of event types as the first argument, the return\n * will be an array of keys.\n * @api\n */\n Observable.prototype.on = function (type, listener) {\n if (Array.isArray(type)) {\n var len = type.length;\n var keys = new Array(len);\n for (var i = 0; i < len; ++i) {\n keys[i] = listen(this, type[i], listener);\n }\n return keys;\n }\n else {\n return listen(this, /** @type {string} */ (type), listener);\n }\n };\n /**\n * Listen once for a certain type of event.\n * @param {string|Array} type The event type or array of event types.\n * @param {function(?): ?} listener The listener function.\n * @return {import(\"./events.js\").EventsKey|Array} Unique key for the listener. If\n * called with an array of event types as the first argument, the return\n * will be an array of keys.\n * @api\n */\n Observable.prototype.once = function (type, listener) {\n if (Array.isArray(type)) {\n var len = type.length;\n var keys = new Array(len);\n for (var i = 0; i < len; ++i) {\n keys[i] = listenOnce(this, type[i], listener);\n }\n return keys;\n }\n else {\n return listenOnce(this, /** @type {string} */ (type), listener);\n }\n };\n /**\n * Unlisten for a certain type of event.\n * @param {string|Array} type The event type or array of event types.\n * @param {function(?): ?} listener The listener function.\n * @api\n */\n Observable.prototype.un = function (type, listener) {\n if (Array.isArray(type)) {\n for (var i = 0, ii = type.length; i < ii; ++i) {\n this.removeEventListener(type[i], listener);\n }\n }\n else {\n this.removeEventListener(type, listener);\n }\n };\n return Observable;\n}(EventTarget));\n/**\n * Removes an event listener using the key returned by `on()` or `once()`.\n * @param {import(\"./events.js\").EventsKey|Array} key The key returned by `on()`\n * or `once()` (or an array of keys).\n * @api\n */\nexport function unByKey(key) {\n if (Array.isArray(key)) {\n for (var i = 0, ii = key.length; i < ii; ++i) {\n unlistenByKey(key[i]);\n }\n }\n else {\n unlistenByKey(/** @type {import(\"./events.js\").EventsKey} */ (key));\n }\n}\nexport default Observable;\n//# sourceMappingURL=Observable.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/Object\n */\nimport { getUid } from './util.js';\nimport ObjectEventType from './ObjectEventType.js';\nimport Observable from './Observable.js';\nimport Event from './events/Event.js';\nimport { assign } from './obj.js';\n/**\n * @classdesc\n * Events emitted by {@link module:ol/Object~BaseObject} instances are instances of this type.\n */\nvar ObjectEvent = /** @class */ (function (_super) {\n __extends(ObjectEvent, _super);\n /**\n * @param {string} type The event type.\n * @param {string} key The property name.\n * @param {*} oldValue The old value for `key`.\n */\n function ObjectEvent(type, key, oldValue) {\n var _this = _super.call(this, type) || this;\n /**\n * The name of the property whose value is changing.\n * @type {string}\n * @api\n */\n _this.key = key;\n /**\n * The old value. To get the new value use `e.target.get(e.key)` where\n * `e` is the event object.\n * @type {*}\n * @api\n */\n _this.oldValue = oldValue;\n return _this;\n }\n return ObjectEvent;\n}(Event));\nexport { ObjectEvent };\n/**\n * @classdesc\n * Abstract base class; normally only used for creating subclasses and not\n * instantiated in apps.\n * Most non-trivial classes inherit from this.\n *\n * This extends {@link module:ol/Observable} with observable\n * properties, where each property is observable as well as the object as a\n * whole.\n *\n * Classes that inherit from this have pre-defined properties, to which you can\n * add your owns. The pre-defined properties are listed in this documentation as\n * 'Observable Properties', and have their own accessors; for example,\n * {@link module:ol/Map~Map} has a `target` property, accessed with\n * `getTarget()` and changed with `setTarget()`. Not all properties are however\n * settable. There are also general-purpose accessors `get()` and `set()`. For\n * example, `get('target')` is equivalent to `getTarget()`.\n *\n * The `set` accessors trigger a change event, and you can monitor this by\n * registering a listener. For example, {@link module:ol/View~View} has a\n * `center` property, so `view.on('change:center', function(evt) {...});` would\n * call the function whenever the value of the center property changes. Within\n * the function, `evt.target` would be the view, so `evt.target.getCenter()`\n * would return the new center.\n *\n * You can add your own observable properties with\n * `object.set('prop', 'value')`, and retrieve that with `object.get('prop')`.\n * You can listen for changes on that property value with\n * `object.on('change:prop', listener)`. You can get a list of all\n * properties with {@link module:ol/Object~BaseObject#getProperties}.\n *\n * Note that the observable properties are separate from standard JS properties.\n * You can, for example, give your map object a title with\n * `map.title='New title'` and with `map.set('title', 'Another title')`. The\n * first will be a `hasOwnProperty`; the second will appear in\n * `getProperties()`. Only the second is observable.\n *\n * Properties can be deleted by using the unset method. E.g.\n * object.unset('foo').\n *\n * @fires ObjectEvent\n * @api\n */\nvar BaseObject = /** @class */ (function (_super) {\n __extends(BaseObject, _super);\n /**\n * @param {Object=} opt_values An object with key-value pairs.\n */\n function BaseObject(opt_values) {\n var _this = _super.call(this) || this;\n // Call {@link module:ol/util~getUid} to ensure that the order of objects' ids is\n // the same as the order in which they were created. This also helps to\n // ensure that object properties are always added in the same order, which\n // helps many JavaScript engines generate faster code.\n getUid(_this);\n /**\n * @private\n * @type {!Object}\n */\n _this.values_ = {};\n if (opt_values !== undefined) {\n _this.setProperties(opt_values);\n }\n return _this;\n }\n /**\n * Gets a value.\n * @param {string} key Key name.\n * @return {*} Value.\n * @api\n */\n BaseObject.prototype.get = function (key) {\n var value;\n if (this.values_.hasOwnProperty(key)) {\n value = this.values_[key];\n }\n return value;\n };\n /**\n * Get a list of object property names.\n * @return {Array} List of property names.\n * @api\n */\n BaseObject.prototype.getKeys = function () {\n return Object.keys(this.values_);\n };\n /**\n * Get an object of all property names and values.\n * @return {Object} Object.\n * @api\n */\n BaseObject.prototype.getProperties = function () {\n return assign({}, this.values_);\n };\n /**\n * @param {string} key Key name.\n * @param {*} oldValue Old value.\n */\n BaseObject.prototype.notify = function (key, oldValue) {\n var eventType;\n eventType = getChangeEventType(key);\n this.dispatchEvent(new ObjectEvent(eventType, key, oldValue));\n eventType = ObjectEventType.PROPERTYCHANGE;\n this.dispatchEvent(new ObjectEvent(eventType, key, oldValue));\n };\n /**\n * Sets a value.\n * @param {string} key Key name.\n * @param {*} value Value.\n * @param {boolean=} opt_silent Update without triggering an event.\n * @api\n */\n BaseObject.prototype.set = function (key, value, opt_silent) {\n if (opt_silent) {\n this.values_[key] = value;\n }\n else {\n var oldValue = this.values_[key];\n this.values_[key] = value;\n if (oldValue !== value) {\n this.notify(key, oldValue);\n }\n }\n };\n /**\n * Sets a collection of key-value pairs. Note that this changes any existing\n * properties and adds new ones (it does not remove any existing properties).\n * @param {Object} values Values.\n * @param {boolean=} opt_silent Update without triggering an event.\n * @api\n */\n BaseObject.prototype.setProperties = function (values, opt_silent) {\n for (var key in values) {\n this.set(key, values[key], opt_silent);\n }\n };\n /**\n * Unsets a property.\n * @param {string} key Key name.\n * @param {boolean=} opt_silent Unset without triggering an event.\n * @api\n */\n BaseObject.prototype.unset = function (key, opt_silent) {\n if (key in this.values_) {\n var oldValue = this.values_[key];\n delete this.values_[key];\n if (!opt_silent) {\n this.notify(key, oldValue);\n }\n }\n };\n return BaseObject;\n}(Observable));\n/**\n * @type {Object}\n */\nvar changeEventTypeCache = {};\n/**\n * @param {string} key Key name.\n * @return {string} Change name.\n */\nexport function getChangeEventType(key) {\n return changeEventTypeCache.hasOwnProperty(key) ?\n changeEventTypeCache[key] :\n (changeEventTypeCache[key] = 'change:' + key);\n}\nexport default BaseObject;\n//# sourceMappingURL=Object.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/Collection\n */\nimport AssertionError from './AssertionError.js';\nimport CollectionEventType from './CollectionEventType.js';\nimport BaseObject from './Object.js';\nimport Event from './events/Event.js';\n/**\n * @enum {string}\n * @private\n */\nvar Property = {\n LENGTH: 'length'\n};\n/**\n * @classdesc\n * Events emitted by {@link module:ol/Collection~Collection} instances are instances of this\n * type.\n */\nvar CollectionEvent = /** @class */ (function (_super) {\n __extends(CollectionEvent, _super);\n /**\n * @param {CollectionEventType} type Type.\n * @param {*=} opt_element Element.\n * @param {number} opt_index The index of the added or removed element.\n */\n function CollectionEvent(type, opt_element, opt_index) {\n var _this = _super.call(this, type) || this;\n /**\n * The element that is added to or removed from the collection.\n * @type {*}\n * @api\n */\n _this.element = opt_element;\n /**\n * The index of the added or removed element.\n * @type {number}\n * @api\n */\n _this.index = opt_index;\n return _this;\n }\n return CollectionEvent;\n}(Event));\nexport { CollectionEvent };\n/**\n * @typedef {Object} Options\n * @property {boolean} [unique=false] Disallow the same item from being added to\n * the collection twice.\n */\n/**\n * @classdesc\n * An expanded version of standard JS Array, adding convenience methods for\n * manipulation. Add and remove changes to the Collection trigger a Collection\n * event. Note that this does not cover changes to the objects _within_ the\n * Collection; they trigger events on the appropriate object, not on the\n * Collection as a whole.\n *\n * @fires CollectionEvent\n *\n * @template T\n * @api\n */\nvar Collection = /** @class */ (function (_super) {\n __extends(Collection, _super);\n /**\n * @param {Array=} opt_array Array.\n * @param {Options=} opt_options Collection options.\n */\n function Collection(opt_array, opt_options) {\n var _this = _super.call(this) || this;\n var options = opt_options || {};\n /**\n * @private\n * @type {boolean}\n */\n _this.unique_ = !!options.unique;\n /**\n * @private\n * @type {!Array}\n */\n _this.array_ = opt_array ? opt_array : [];\n if (_this.unique_) {\n for (var i = 0, ii = _this.array_.length; i < ii; ++i) {\n _this.assertUnique_(_this.array_[i], i);\n }\n }\n _this.updateLength_();\n return _this;\n }\n /**\n * Remove all elements from the collection.\n * @api\n */\n Collection.prototype.clear = function () {\n while (this.getLength() > 0) {\n this.pop();\n }\n };\n /**\n * Add elements to the collection. This pushes each item in the provided array\n * to the end of the collection.\n * @param {!Array} arr Array.\n * @return {Collection} This collection.\n * @api\n */\n Collection.prototype.extend = function (arr) {\n for (var i = 0, ii = arr.length; i < ii; ++i) {\n this.push(arr[i]);\n }\n return this;\n };\n /**\n * Iterate over each element, calling the provided callback.\n * @param {function(T, number, Array): *} f The function to call\n * for every element. This function takes 3 arguments (the element, the\n * index and the array). The return value is ignored.\n * @api\n */\n Collection.prototype.forEach = function (f) {\n var array = this.array_;\n for (var i = 0, ii = array.length; i < ii; ++i) {\n f(array[i], i, array);\n }\n };\n /**\n * Get a reference to the underlying Array object. Warning: if the array\n * is mutated, no events will be dispatched by the collection, and the\n * collection's \"length\" property won't be in sync with the actual length\n * of the array.\n * @return {!Array} Array.\n * @api\n */\n Collection.prototype.getArray = function () {\n return this.array_;\n };\n /**\n * Get the element at the provided index.\n * @param {number} index Index.\n * @return {T} Element.\n * @api\n */\n Collection.prototype.item = function (index) {\n return this.array_[index];\n };\n /**\n * Get the length of this collection.\n * @return {number} The length of the array.\n * @observable\n * @api\n */\n Collection.prototype.getLength = function () {\n return this.get(Property.LENGTH);\n };\n /**\n * Insert an element at the provided index.\n * @param {number} index Index.\n * @param {T} elem Element.\n * @api\n */\n Collection.prototype.insertAt = function (index, elem) {\n if (this.unique_) {\n this.assertUnique_(elem);\n }\n this.array_.splice(index, 0, elem);\n this.updateLength_();\n this.dispatchEvent(new CollectionEvent(CollectionEventType.ADD, elem, index));\n };\n /**\n * Remove the last element of the collection and return it.\n * Return `undefined` if the collection is empty.\n * @return {T|undefined} Element.\n * @api\n */\n Collection.prototype.pop = function () {\n return this.removeAt(this.getLength() - 1);\n };\n /**\n * Insert the provided element at the end of the collection.\n * @param {T} elem Element.\n * @return {number} New length of the collection.\n * @api\n */\n Collection.prototype.push = function (elem) {\n if (this.unique_) {\n this.assertUnique_(elem);\n }\n var n = this.getLength();\n this.insertAt(n, elem);\n return this.getLength();\n };\n /**\n * Remove the first occurrence of an element from the collection.\n * @param {T} elem Element.\n * @return {T|undefined} The removed element or undefined if none found.\n * @api\n */\n Collection.prototype.remove = function (elem) {\n var arr = this.array_;\n for (var i = 0, ii = arr.length; i < ii; ++i) {\n if (arr[i] === elem) {\n return this.removeAt(i);\n }\n }\n return undefined;\n };\n /**\n * Remove the element at the provided index and return it.\n * Return `undefined` if the collection does not contain this index.\n * @param {number} index Index.\n * @return {T|undefined} Value.\n * @api\n */\n Collection.prototype.removeAt = function (index) {\n var prev = this.array_[index];\n this.array_.splice(index, 1);\n this.updateLength_();\n this.dispatchEvent(new CollectionEvent(CollectionEventType.REMOVE, prev, index));\n return prev;\n };\n /**\n * Set the element at the provided index.\n * @param {number} index Index.\n * @param {T} elem Element.\n * @api\n */\n Collection.prototype.setAt = function (index, elem) {\n var n = this.getLength();\n if (index < n) {\n if (this.unique_) {\n this.assertUnique_(elem, index);\n }\n var prev = this.array_[index];\n this.array_[index] = elem;\n this.dispatchEvent(new CollectionEvent(CollectionEventType.REMOVE, prev, index));\n this.dispatchEvent(new CollectionEvent(CollectionEventType.ADD, elem, index));\n }\n else {\n for (var j = n; j < index; ++j) {\n this.insertAt(j, undefined);\n }\n this.insertAt(index, elem);\n }\n };\n /**\n * @private\n */\n Collection.prototype.updateLength_ = function () {\n this.set(Property.LENGTH, this.array_.length);\n };\n /**\n * @private\n * @param {T} elem Element.\n * @param {number=} opt_except Optional index to ignore.\n */\n Collection.prototype.assertUnique_ = function (elem, opt_except) {\n for (var i = 0, ii = this.array_.length; i < ii; ++i) {\n if (this.array_[i] === elem && i !== opt_except) {\n throw new AssertionError(58);\n }\n }\n };\n return Collection;\n}(BaseObject));\nexport default Collection;\n//# sourceMappingURL=Collection.js.map","/**\n * @module ol/asserts\n */\nimport AssertionError from './AssertionError.js';\n/**\n * @param {*} assertion Assertion we expected to be truthy.\n * @param {number} errorCode Error code.\n */\nexport function assert(assertion, errorCode) {\n if (!assertion) {\n throw new AssertionError(errorCode);\n }\n}\n//# sourceMappingURL=asserts.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/Feature\n */\nimport { assert } from './asserts.js';\nimport { listen, unlistenByKey } from './events.js';\nimport EventType from './events/EventType.js';\nimport BaseObject, { getChangeEventType } from './Object.js';\n/**\n * @typedef {typeof Feature|typeof import(\"./render/Feature.js\").default} FeatureClass\n */\n/**\n * @typedef {Feature|import(\"./render/Feature.js\").default} FeatureLike\n */\n/**\n * @classdesc\n * A vector object for geographic features with a geometry and other\n * attribute properties, similar to the features in vector file formats like\n * GeoJSON.\n *\n * Features can be styled individually with `setStyle`; otherwise they use the\n * style of their vector layer.\n *\n * Note that attribute properties are set as {@link module:ol/Object} properties on\n * the feature object, so they are observable, and have get/set accessors.\n *\n * Typically, a feature has a single geometry property. You can set the\n * geometry using the `setGeometry` method and get it with `getGeometry`.\n * It is possible to store more than one geometry on a feature using attribute\n * properties. By default, the geometry used for rendering is identified by\n * the property name `geometry`. If you want to use another geometry property\n * for rendering, use the `setGeometryName` method to change the attribute\n * property associated with the geometry for the feature. For example:\n *\n * ```js\n *\n * import Feature from 'ol/Feature';\n * import Polygon from 'ol/geom/Polygon';\n * import Point from 'ol/geom/Point';\n *\n * var feature = new Feature({\n * geometry: new Polygon(polyCoords),\n * labelPoint: new Point(labelCoords),\n * name: 'My Polygon'\n * });\n *\n * // get the polygon geometry\n * var poly = feature.getGeometry();\n *\n * // Render the feature as a point using the coordinates from labelPoint\n * feature.setGeometryName('labelPoint');\n *\n * // get the point geometry\n * var point = feature.getGeometry();\n * ```\n *\n * @api\n * @template {import(\"./geom/Geometry.js\").default} Geometry\n */\nvar Feature = /** @class */ (function (_super) {\n __extends(Feature, _super);\n /**\n * @param {Geometry|Object=} opt_geometryOrProperties\n * You may pass a Geometry object directly, or an object literal containing\n * properties. If you pass an object literal, you may include a Geometry\n * associated with a `geometry` key.\n */\n function Feature(opt_geometryOrProperties) {\n var _this = _super.call(this) || this;\n /**\n * @private\n * @type {number|string|undefined}\n */\n _this.id_ = undefined;\n /**\n * @type {string}\n * @private\n */\n _this.geometryName_ = 'geometry';\n /**\n * User provided style.\n * @private\n * @type {import(\"./style/Style.js\").StyleLike}\n */\n _this.style_ = null;\n /**\n * @private\n * @type {import(\"./style/Style.js\").StyleFunction|undefined}\n */\n _this.styleFunction_ = undefined;\n /**\n * @private\n * @type {?import(\"./events.js\").EventsKey}\n */\n _this.geometryChangeKey_ = null;\n _this.addEventListener(getChangeEventType(_this.geometryName_), _this.handleGeometryChanged_);\n if (opt_geometryOrProperties) {\n if (typeof /** @type {?} */ (opt_geometryOrProperties).getSimplifiedGeometry === 'function') {\n var geometry = /** @type {Geometry} */ (opt_geometryOrProperties);\n _this.setGeometry(geometry);\n }\n else {\n /** @type {Object} */\n var properties = opt_geometryOrProperties;\n _this.setProperties(properties);\n }\n }\n return _this;\n }\n /**\n * Clone this feature. If the original feature has a geometry it\n * is also cloned. The feature id is not set in the clone.\n * @return {Feature} The clone.\n * @api\n */\n Feature.prototype.clone = function () {\n var clone = new Feature(this.getProperties());\n clone.setGeometryName(this.getGeometryName());\n var geometry = this.getGeometry();\n if (geometry) {\n clone.setGeometry(geometry.clone());\n }\n var style = this.getStyle();\n if (style) {\n clone.setStyle(style);\n }\n return clone;\n };\n /**\n * Get the feature's default geometry. A feature may have any number of named\n * geometries. The \"default\" geometry (the one that is rendered by default) is\n * set when calling {@link module:ol/Feature~Feature#setGeometry}.\n * @return {Geometry|undefined} The default geometry for the feature.\n * @api\n * @observable\n */\n Feature.prototype.getGeometry = function () {\n return (\n /** @type {Geometry|undefined} */ (this.get(this.geometryName_)));\n };\n /**\n * Get the feature identifier. This is a stable identifier for the feature and\n * is either set when reading data from a remote source or set explicitly by\n * calling {@link module:ol/Feature~Feature#setId}.\n * @return {number|string|undefined} Id.\n * @api\n */\n Feature.prototype.getId = function () {\n return this.id_;\n };\n /**\n * Get the name of the feature's default geometry. By default, the default\n * geometry is named `geometry`.\n * @return {string} Get the property name associated with the default geometry\n * for this feature.\n * @api\n */\n Feature.prototype.getGeometryName = function () {\n return this.geometryName_;\n };\n /**\n * Get the feature's style. Will return what was provided to the\n * {@link module:ol/Feature~Feature#setStyle} method.\n * @return {import(\"./style/Style.js\").StyleLike} The feature style.\n * @api\n */\n Feature.prototype.getStyle = function () {\n return this.style_;\n };\n /**\n * Get the feature's style function.\n * @return {import(\"./style/Style.js\").StyleFunction|undefined} Return a function\n * representing the current style of this feature.\n * @api\n */\n Feature.prototype.getStyleFunction = function () {\n return this.styleFunction_;\n };\n /**\n * @private\n */\n Feature.prototype.handleGeometryChange_ = function () {\n this.changed();\n };\n /**\n * @private\n */\n Feature.prototype.handleGeometryChanged_ = function () {\n if (this.geometryChangeKey_) {\n unlistenByKey(this.geometryChangeKey_);\n this.geometryChangeKey_ = null;\n }\n var geometry = this.getGeometry();\n if (geometry) {\n this.geometryChangeKey_ = listen(geometry, EventType.CHANGE, this.handleGeometryChange_, this);\n }\n this.changed();\n };\n /**\n * Set the default geometry for the feature. This will update the property\n * with the name returned by {@link module:ol/Feature~Feature#getGeometryName}.\n * @param {Geometry|undefined} geometry The new geometry.\n * @api\n * @observable\n */\n Feature.prototype.setGeometry = function (geometry) {\n this.set(this.geometryName_, geometry);\n };\n /**\n * Set the style for the feature. This can be a single style object, an array\n * of styles, or a function that takes a resolution and returns an array of\n * styles. If it is `null` the feature has no style (a `null` style).\n * @param {import(\"./style/Style.js\").StyleLike} style Style for this feature.\n * @api\n * @fires module:ol/events/Event~BaseEvent#event:change\n */\n Feature.prototype.setStyle = function (style) {\n this.style_ = style;\n this.styleFunction_ = !style ? undefined : createStyleFunction(style);\n this.changed();\n };\n /**\n * Set the feature id. The feature id is considered stable and may be used when\n * requesting features or comparing identifiers returned from a remote source.\n * The feature id can be used with the\n * {@link module:ol/source/Vector~VectorSource#getFeatureById} method.\n * @param {number|string|undefined} id The feature id.\n * @api\n * @fires module:ol/events/Event~BaseEvent#event:change\n */\n Feature.prototype.setId = function (id) {\n this.id_ = id;\n this.changed();\n };\n /**\n * Set the property name to be used when getting the feature's default geometry.\n * When calling {@link module:ol/Feature~Feature#getGeometry}, the value of the property with\n * this name will be returned.\n * @param {string} name The property name of the default geometry.\n * @api\n */\n Feature.prototype.setGeometryName = function (name) {\n this.removeEventListener(getChangeEventType(this.geometryName_), this.handleGeometryChanged_);\n this.geometryName_ = name;\n this.addEventListener(getChangeEventType(this.geometryName_), this.handleGeometryChanged_);\n this.handleGeometryChanged_();\n };\n return Feature;\n}(BaseObject));\n/**\n * Convert the provided object into a feature style function. Functions passed\n * through unchanged. Arrays of Style or single style objects wrapped\n * in a new feature style function.\n * @param {!import(\"./style/Style.js\").StyleFunction|!Array|!import(\"./style/Style.js\").default} obj\n * A feature style function, a single style, or an array of styles.\n * @return {import(\"./style/Style.js\").StyleFunction} A style function.\n */\nexport function createStyleFunction(obj) {\n if (typeof obj === 'function') {\n return obj;\n }\n else {\n /**\n * @type {Array}\n */\n var styles_1;\n if (Array.isArray(obj)) {\n styles_1 = obj;\n }\n else {\n assert(typeof /** @type {?} */ (obj).getZIndex === 'function', 41); // Expected an `import(\"./style/Style.js\").Style` or an array of `import(\"./style/Style.js\").Style`\n var style = /** @type {import(\"./style/Style.js\").default} */ (obj);\n styles_1 = [style];\n }\n return function () {\n return styles_1;\n };\n }\n}\nexport default Feature;\n//# sourceMappingURL=Feature.js.map","/**\n * @module ol/extent/Corner\n */\n/**\n * Extent corner.\n * @enum {string}\n */\nexport default {\n BOTTOM_LEFT: 'bottom-left',\n BOTTOM_RIGHT: 'bottom-right',\n TOP_LEFT: 'top-left',\n TOP_RIGHT: 'top-right'\n};\n//# sourceMappingURL=Corner.js.map","/**\n * @module ol/extent/Relationship\n */\n/**\n * Relationship to an extent.\n * @enum {number}\n */\nexport default {\n UNKNOWN: 0,\n INTERSECTING: 1,\n ABOVE: 2,\n RIGHT: 4,\n BELOW: 8,\n LEFT: 16\n};\n//# sourceMappingURL=Relationship.js.map","/**\n * @module ol/extent\n */\nimport { assert } from './asserts.js';\nimport Corner from './extent/Corner.js';\nimport Relationship from './extent/Relationship.js';\n/**\n * An array of numbers representing an extent: `[minx, miny, maxx, maxy]`.\n * @typedef {Array} Extent\n * @api\n */\n/**\n * Build an extent that includes all given coordinates.\n *\n * @param {Array} coordinates Coordinates.\n * @return {Extent} Bounding extent.\n * @api\n */\nexport function boundingExtent(coordinates) {\n var extent = createEmpty();\n for (var i = 0, ii = coordinates.length; i < ii; ++i) {\n extendCoordinate(extent, coordinates[i]);\n }\n return extent;\n}\n/**\n * @param {Array} xs Xs.\n * @param {Array} ys Ys.\n * @param {Extent=} opt_extent Destination extent.\n * @private\n * @return {Extent} Extent.\n */\nfunction _boundingExtentXYs(xs, ys, opt_extent) {\n var minX = Math.min.apply(null, xs);\n var minY = Math.min.apply(null, ys);\n var maxX = Math.max.apply(null, xs);\n var maxY = Math.max.apply(null, ys);\n return createOrUpdate(minX, minY, maxX, maxY, opt_extent);\n}\n/**\n * Return extent increased by the provided value.\n * @param {Extent} extent Extent.\n * @param {number} value The amount by which the extent should be buffered.\n * @param {Extent=} opt_extent Extent.\n * @return {Extent} Extent.\n * @api\n */\nexport function buffer(extent, value, opt_extent) {\n if (opt_extent) {\n opt_extent[0] = extent[0] - value;\n opt_extent[1] = extent[1] - value;\n opt_extent[2] = extent[2] + value;\n opt_extent[3] = extent[3] + value;\n return opt_extent;\n }\n else {\n return [\n extent[0] - value,\n extent[1] - value,\n extent[2] + value,\n extent[3] + value\n ];\n }\n}\n/**\n * Creates a clone of an extent.\n *\n * @param {Extent} extent Extent to clone.\n * @param {Extent=} opt_extent Extent.\n * @return {Extent} The clone.\n */\nexport function clone(extent, opt_extent) {\n if (opt_extent) {\n opt_extent[0] = extent[0];\n opt_extent[1] = extent[1];\n opt_extent[2] = extent[2];\n opt_extent[3] = extent[3];\n return opt_extent;\n }\n else {\n return extent.slice();\n }\n}\n/**\n * @param {Extent} extent Extent.\n * @param {number} x X.\n * @param {number} y Y.\n * @return {number} Closest squared distance.\n */\nexport function closestSquaredDistanceXY(extent, x, y) {\n var dx, dy;\n if (x < extent[0]) {\n dx = extent[0] - x;\n }\n else if (extent[2] < x) {\n dx = x - extent[2];\n }\n else {\n dx = 0;\n }\n if (y < extent[1]) {\n dy = extent[1] - y;\n }\n else if (extent[3] < y) {\n dy = y - extent[3];\n }\n else {\n dy = 0;\n }\n return dx * dx + dy * dy;\n}\n/**\n * Check if the passed coordinate is contained or on the edge of the extent.\n *\n * @param {Extent} extent Extent.\n * @param {import(\"./coordinate.js\").Coordinate} coordinate Coordinate.\n * @return {boolean} The coordinate is contained in the extent.\n * @api\n */\nexport function containsCoordinate(extent, coordinate) {\n return containsXY(extent, coordinate[0], coordinate[1]);\n}\n/**\n * Check if one extent contains another.\n *\n * An extent is deemed contained if it lies completely within the other extent,\n * including if they share one or more edges.\n *\n * @param {Extent} extent1 Extent 1.\n * @param {Extent} extent2 Extent 2.\n * @return {boolean} The second extent is contained by or on the edge of the\n * first.\n * @api\n */\nexport function containsExtent(extent1, extent2) {\n return extent1[0] <= extent2[0] && extent2[2] <= extent1[2] &&\n extent1[1] <= extent2[1] && extent2[3] <= extent1[3];\n}\n/**\n * Check if the passed coordinate is contained or on the edge of the extent.\n *\n * @param {Extent} extent Extent.\n * @param {number} x X coordinate.\n * @param {number} y Y coordinate.\n * @return {boolean} The x, y values are contained in the extent.\n * @api\n */\nexport function containsXY(extent, x, y) {\n return extent[0] <= x && x <= extent[2] && extent[1] <= y && y <= extent[3];\n}\n/**\n * Get the relationship between a coordinate and extent.\n * @param {Extent} extent The extent.\n * @param {import(\"./coordinate.js\").Coordinate} coordinate The coordinate.\n * @return {Relationship} The relationship (bitwise compare with\n * import(\"./extent/Relationship.js\").Relationship).\n */\nexport function coordinateRelationship(extent, coordinate) {\n var minX = extent[0];\n var minY = extent[1];\n var maxX = extent[2];\n var maxY = extent[3];\n var x = coordinate[0];\n var y = coordinate[1];\n var relationship = Relationship.UNKNOWN;\n if (x < minX) {\n relationship = relationship | Relationship.LEFT;\n }\n else if (x > maxX) {\n relationship = relationship | Relationship.RIGHT;\n }\n if (y < minY) {\n relationship = relationship | Relationship.BELOW;\n }\n else if (y > maxY) {\n relationship = relationship | Relationship.ABOVE;\n }\n if (relationship === Relationship.UNKNOWN) {\n relationship = Relationship.INTERSECTING;\n }\n return relationship;\n}\n/**\n * Create an empty extent.\n * @return {Extent} Empty extent.\n * @api\n */\nexport function createEmpty() {\n return [Infinity, Infinity, -Infinity, -Infinity];\n}\n/**\n * Create a new extent or update the provided extent.\n * @param {number} minX Minimum X.\n * @param {number} minY Minimum Y.\n * @param {number} maxX Maximum X.\n * @param {number} maxY Maximum Y.\n * @param {Extent=} opt_extent Destination extent.\n * @return {Extent} Extent.\n */\nexport function createOrUpdate(minX, minY, maxX, maxY, opt_extent) {\n if (opt_extent) {\n opt_extent[0] = minX;\n opt_extent[1] = minY;\n opt_extent[2] = maxX;\n opt_extent[3] = maxY;\n return opt_extent;\n }\n else {\n return [minX, minY, maxX, maxY];\n }\n}\n/**\n * Create a new empty extent or make the provided one empty.\n * @param {Extent=} opt_extent Extent.\n * @return {Extent} Extent.\n */\nexport function createOrUpdateEmpty(opt_extent) {\n return createOrUpdate(Infinity, Infinity, -Infinity, -Infinity, opt_extent);\n}\n/**\n * @param {import(\"./coordinate.js\").Coordinate} coordinate Coordinate.\n * @param {Extent=} opt_extent Extent.\n * @return {Extent} Extent.\n */\nexport function createOrUpdateFromCoordinate(coordinate, opt_extent) {\n var x = coordinate[0];\n var y = coordinate[1];\n return createOrUpdate(x, y, x, y, opt_extent);\n}\n/**\n * @param {Array} coordinates Coordinates.\n * @param {Extent=} opt_extent Extent.\n * @return {Extent} Extent.\n */\nexport function createOrUpdateFromCoordinates(coordinates, opt_extent) {\n var extent = createOrUpdateEmpty(opt_extent);\n return extendCoordinates(extent, coordinates);\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {Extent=} opt_extent Extent.\n * @return {Extent} Extent.\n */\nexport function createOrUpdateFromFlatCoordinates(flatCoordinates, offset, end, stride, opt_extent) {\n var extent = createOrUpdateEmpty(opt_extent);\n return extendFlatCoordinates(extent, flatCoordinates, offset, end, stride);\n}\n/**\n * @param {Array>} rings Rings.\n * @param {Extent=} opt_extent Extent.\n * @return {Extent} Extent.\n */\nexport function createOrUpdateFromRings(rings, opt_extent) {\n var extent = createOrUpdateEmpty(opt_extent);\n return extendRings(extent, rings);\n}\n/**\n * Determine if two extents are equivalent.\n * @param {Extent} extent1 Extent 1.\n * @param {Extent} extent2 Extent 2.\n * @return {boolean} The two extents are equivalent.\n * @api\n */\nexport function equals(extent1, extent2) {\n return extent1[0] == extent2[0] && extent1[2] == extent2[2] &&\n extent1[1] == extent2[1] && extent1[3] == extent2[3];\n}\n/**\n * Modify an extent to include another extent.\n * @param {Extent} extent1 The extent to be modified.\n * @param {Extent} extent2 The extent that will be included in the first.\n * @return {Extent} A reference to the first (extended) extent.\n * @api\n */\nexport function extend(extent1, extent2) {\n if (extent2[0] < extent1[0]) {\n extent1[0] = extent2[0];\n }\n if (extent2[2] > extent1[2]) {\n extent1[2] = extent2[2];\n }\n if (extent2[1] < extent1[1]) {\n extent1[1] = extent2[1];\n }\n if (extent2[3] > extent1[3]) {\n extent1[3] = extent2[3];\n }\n return extent1;\n}\n/**\n * @param {Extent} extent Extent.\n * @param {import(\"./coordinate.js\").Coordinate} coordinate Coordinate.\n */\nexport function extendCoordinate(extent, coordinate) {\n if (coordinate[0] < extent[0]) {\n extent[0] = coordinate[0];\n }\n if (coordinate[0] > extent[2]) {\n extent[2] = coordinate[0];\n }\n if (coordinate[1] < extent[1]) {\n extent[1] = coordinate[1];\n }\n if (coordinate[1] > extent[3]) {\n extent[3] = coordinate[1];\n }\n}\n/**\n * @param {Extent} extent Extent.\n * @param {Array} coordinates Coordinates.\n * @return {Extent} Extent.\n */\nexport function extendCoordinates(extent, coordinates) {\n for (var i = 0, ii = coordinates.length; i < ii; ++i) {\n extendCoordinate(extent, coordinates[i]);\n }\n return extent;\n}\n/**\n * @param {Extent} extent Extent.\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @return {Extent} Extent.\n */\nexport function extendFlatCoordinates(extent, flatCoordinates, offset, end, stride) {\n for (; offset < end; offset += stride) {\n extendXY(extent, flatCoordinates[offset], flatCoordinates[offset + 1]);\n }\n return extent;\n}\n/**\n * @param {Extent} extent Extent.\n * @param {Array>} rings Rings.\n * @return {Extent} Extent.\n */\nexport function extendRings(extent, rings) {\n for (var i = 0, ii = rings.length; i < ii; ++i) {\n extendCoordinates(extent, rings[i]);\n }\n return extent;\n}\n/**\n * @param {Extent} extent Extent.\n * @param {number} x X.\n * @param {number} y Y.\n */\nexport function extendXY(extent, x, y) {\n extent[0] = Math.min(extent[0], x);\n extent[1] = Math.min(extent[1], y);\n extent[2] = Math.max(extent[2], x);\n extent[3] = Math.max(extent[3], y);\n}\n/**\n * This function calls `callback` for each corner of the extent. If the\n * callback returns a truthy value the function returns that value\n * immediately. Otherwise the function returns `false`.\n * @param {Extent} extent Extent.\n * @param {function(import(\"./coordinate.js\").Coordinate): S} callback Callback.\n * @return {S|boolean} Value.\n * @template S\n */\nexport function forEachCorner(extent, callback) {\n var val;\n val = callback(getBottomLeft(extent));\n if (val) {\n return val;\n }\n val = callback(getBottomRight(extent));\n if (val) {\n return val;\n }\n val = callback(getTopRight(extent));\n if (val) {\n return val;\n }\n val = callback(getTopLeft(extent));\n if (val) {\n return val;\n }\n return false;\n}\n/**\n * Get the size of an extent.\n * @param {Extent} extent Extent.\n * @return {number} Area.\n * @api\n */\nexport function getArea(extent) {\n var area = 0;\n if (!isEmpty(extent)) {\n area = getWidth(extent) * getHeight(extent);\n }\n return area;\n}\n/**\n * Get the bottom left coordinate of an extent.\n * @param {Extent} extent Extent.\n * @return {import(\"./coordinate.js\").Coordinate} Bottom left coordinate.\n * @api\n */\nexport function getBottomLeft(extent) {\n return [extent[0], extent[1]];\n}\n/**\n * Get the bottom right coordinate of an extent.\n * @param {Extent} extent Extent.\n * @return {import(\"./coordinate.js\").Coordinate} Bottom right coordinate.\n * @api\n */\nexport function getBottomRight(extent) {\n return [extent[2], extent[1]];\n}\n/**\n * Get the center coordinate of an extent.\n * @param {Extent} extent Extent.\n * @return {import(\"./coordinate.js\").Coordinate} Center.\n * @api\n */\nexport function getCenter(extent) {\n return [(extent[0] + extent[2]) / 2, (extent[1] + extent[3]) / 2];\n}\n/**\n * Get a corner coordinate of an extent.\n * @param {Extent} extent Extent.\n * @param {Corner} corner Corner.\n * @return {import(\"./coordinate.js\").Coordinate} Corner coordinate.\n */\nexport function getCorner(extent, corner) {\n var coordinate;\n if (corner === Corner.BOTTOM_LEFT) {\n coordinate = getBottomLeft(extent);\n }\n else if (corner === Corner.BOTTOM_RIGHT) {\n coordinate = getBottomRight(extent);\n }\n else if (corner === Corner.TOP_LEFT) {\n coordinate = getTopLeft(extent);\n }\n else if (corner === Corner.TOP_RIGHT) {\n coordinate = getTopRight(extent);\n }\n else {\n assert(false, 13); // Invalid corner\n }\n return coordinate;\n}\n/**\n * @param {Extent} extent1 Extent 1.\n * @param {Extent} extent2 Extent 2.\n * @return {number} Enlarged area.\n */\nexport function getEnlargedArea(extent1, extent2) {\n var minX = Math.min(extent1[0], extent2[0]);\n var minY = Math.min(extent1[1], extent2[1]);\n var maxX = Math.max(extent1[2], extent2[2]);\n var maxY = Math.max(extent1[3], extent2[3]);\n return (maxX - minX) * (maxY - minY);\n}\n/**\n * @param {import(\"./coordinate.js\").Coordinate} center Center.\n * @param {number} resolution Resolution.\n * @param {number} rotation Rotation.\n * @param {import(\"./size.js\").Size} size Size.\n * @param {Extent=} opt_extent Destination extent.\n * @return {Extent} Extent.\n */\nexport function getForViewAndSize(center, resolution, rotation, size, opt_extent) {\n var dx = resolution * size[0] / 2;\n var dy = resolution * size[1] / 2;\n var cosRotation = Math.cos(rotation);\n var sinRotation = Math.sin(rotation);\n var xCos = dx * cosRotation;\n var xSin = dx * sinRotation;\n var yCos = dy * cosRotation;\n var ySin = dy * sinRotation;\n var x = center[0];\n var y = center[1];\n var x0 = x - xCos + ySin;\n var x1 = x - xCos - ySin;\n var x2 = x + xCos - ySin;\n var x3 = x + xCos + ySin;\n var y0 = y - xSin - yCos;\n var y1 = y - xSin + yCos;\n var y2 = y + xSin + yCos;\n var y3 = y + xSin - yCos;\n return createOrUpdate(Math.min(x0, x1, x2, x3), Math.min(y0, y1, y2, y3), Math.max(x0, x1, x2, x3), Math.max(y0, y1, y2, y3), opt_extent);\n}\n/**\n * Get the height of an extent.\n * @param {Extent} extent Extent.\n * @return {number} Height.\n * @api\n */\nexport function getHeight(extent) {\n return extent[3] - extent[1];\n}\n/**\n * @param {Extent} extent1 Extent 1.\n * @param {Extent} extent2 Extent 2.\n * @return {number} Intersection area.\n */\nexport function getIntersectionArea(extent1, extent2) {\n var intersection = getIntersection(extent1, extent2);\n return getArea(intersection);\n}\n/**\n * Get the intersection of two extents.\n * @param {Extent} extent1 Extent 1.\n * @param {Extent} extent2 Extent 2.\n * @param {Extent=} opt_extent Optional extent to populate with intersection.\n * @return {Extent} Intersecting extent.\n * @api\n */\nexport function getIntersection(extent1, extent2, opt_extent) {\n var intersection = opt_extent ? opt_extent : createEmpty();\n if (intersects(extent1, extent2)) {\n if (extent1[0] > extent2[0]) {\n intersection[0] = extent1[0];\n }\n else {\n intersection[0] = extent2[0];\n }\n if (extent1[1] > extent2[1]) {\n intersection[1] = extent1[1];\n }\n else {\n intersection[1] = extent2[1];\n }\n if (extent1[2] < extent2[2]) {\n intersection[2] = extent1[2];\n }\n else {\n intersection[2] = extent2[2];\n }\n if (extent1[3] < extent2[3]) {\n intersection[3] = extent1[3];\n }\n else {\n intersection[3] = extent2[3];\n }\n }\n else {\n createOrUpdateEmpty(intersection);\n }\n return intersection;\n}\n/**\n * @param {Extent} extent Extent.\n * @return {number} Margin.\n */\nexport function getMargin(extent) {\n return getWidth(extent) + getHeight(extent);\n}\n/**\n * Get the size (width, height) of an extent.\n * @param {Extent} extent The extent.\n * @return {import(\"./size.js\").Size} The extent size.\n * @api\n */\nexport function getSize(extent) {\n return [extent[2] - extent[0], extent[3] - extent[1]];\n}\n/**\n * Get the top left coordinate of an extent.\n * @param {Extent} extent Extent.\n * @return {import(\"./coordinate.js\").Coordinate} Top left coordinate.\n * @api\n */\nexport function getTopLeft(extent) {\n return [extent[0], extent[3]];\n}\n/**\n * Get the top right coordinate of an extent.\n * @param {Extent} extent Extent.\n * @return {import(\"./coordinate.js\").Coordinate} Top right coordinate.\n * @api\n */\nexport function getTopRight(extent) {\n return [extent[2], extent[3]];\n}\n/**\n * Get the width of an extent.\n * @param {Extent} extent Extent.\n * @return {number} Width.\n * @api\n */\nexport function getWidth(extent) {\n return extent[2] - extent[0];\n}\n/**\n * Determine if one extent intersects another.\n * @param {Extent} extent1 Extent 1.\n * @param {Extent} extent2 Extent.\n * @return {boolean} The two extents intersect.\n * @api\n */\nexport function intersects(extent1, extent2) {\n return extent1[0] <= extent2[2] &&\n extent1[2] >= extent2[0] &&\n extent1[1] <= extent2[3] &&\n extent1[3] >= extent2[1];\n}\n/**\n * Determine if an extent is empty.\n * @param {Extent} extent Extent.\n * @return {boolean} Is empty.\n * @api\n */\nexport function isEmpty(extent) {\n return extent[2] < extent[0] || extent[3] < extent[1];\n}\n/**\n * @param {Extent} extent Extent.\n * @param {Extent=} opt_extent Extent.\n * @return {Extent} Extent.\n */\nexport function returnOrUpdate(extent, opt_extent) {\n if (opt_extent) {\n opt_extent[0] = extent[0];\n opt_extent[1] = extent[1];\n opt_extent[2] = extent[2];\n opt_extent[3] = extent[3];\n return opt_extent;\n }\n else {\n return extent;\n }\n}\n/**\n * @param {Extent} extent Extent.\n * @param {number} value Value.\n */\nexport function scaleFromCenter(extent, value) {\n var deltaX = ((extent[2] - extent[0]) / 2) * (value - 1);\n var deltaY = ((extent[3] - extent[1]) / 2) * (value - 1);\n extent[0] -= deltaX;\n extent[2] += deltaX;\n extent[1] -= deltaY;\n extent[3] += deltaY;\n}\n/**\n * Determine if the segment between two coordinates intersects (crosses,\n * touches, or is contained by) the provided extent.\n * @param {Extent} extent The extent.\n * @param {import(\"./coordinate.js\").Coordinate} start Segment start coordinate.\n * @param {import(\"./coordinate.js\").Coordinate} end Segment end coordinate.\n * @return {boolean} The segment intersects the extent.\n */\nexport function intersectsSegment(extent, start, end) {\n var intersects = false;\n var startRel = coordinateRelationship(extent, start);\n var endRel = coordinateRelationship(extent, end);\n if (startRel === Relationship.INTERSECTING ||\n endRel === Relationship.INTERSECTING) {\n intersects = true;\n }\n else {\n var minX = extent[0];\n var minY = extent[1];\n var maxX = extent[2];\n var maxY = extent[3];\n var startX = start[0];\n var startY = start[1];\n var endX = end[0];\n var endY = end[1];\n var slope = (endY - startY) / (endX - startX);\n var x = void 0, y = void 0;\n if (!!(endRel & Relationship.ABOVE) &&\n !(startRel & Relationship.ABOVE)) {\n // potentially intersects top\n x = endX - ((endY - maxY) / slope);\n intersects = x >= minX && x <= maxX;\n }\n if (!intersects && !!(endRel & Relationship.RIGHT) &&\n !(startRel & Relationship.RIGHT)) {\n // potentially intersects right\n y = endY - ((endX - maxX) * slope);\n intersects = y >= minY && y <= maxY;\n }\n if (!intersects && !!(endRel & Relationship.BELOW) &&\n !(startRel & Relationship.BELOW)) {\n // potentially intersects bottom\n x = endX - ((endY - minY) / slope);\n intersects = x >= minX && x <= maxX;\n }\n if (!intersects && !!(endRel & Relationship.LEFT) &&\n !(startRel & Relationship.LEFT)) {\n // potentially intersects left\n y = endY - ((endX - minX) * slope);\n intersects = y >= minY && y <= maxY;\n }\n }\n return intersects;\n}\n/**\n * Apply a transform function to the extent.\n * @param {Extent} extent Extent.\n * @param {import(\"./proj.js\").TransformFunction} transformFn Transform function.\n * Called with `[minX, minY, maxX, maxY]` extent coordinates.\n * @param {Extent=} opt_extent Destination extent.\n * @return {Extent} Extent.\n * @api\n */\nexport function applyTransform(extent, transformFn, opt_extent) {\n var coordinates = [\n extent[0], extent[1],\n extent[0], extent[3],\n extent[2], extent[1],\n extent[2], extent[3]\n ];\n transformFn(coordinates, coordinates, 2);\n var xs = [coordinates[0], coordinates[2], coordinates[4], coordinates[6]];\n var ys = [coordinates[1], coordinates[3], coordinates[5], coordinates[7]];\n return _boundingExtentXYs(xs, ys, opt_extent);\n}\n//# sourceMappingURL=extent.js.map","/**\n * @module ol/geom/GeometryLayout\n */\n/**\n * The coordinate layout for geometries, indicating whether a 3rd or 4th z ('Z')\n * or measure ('M') coordinate is available. Supported values are `'XY'`,\n * `'XYZ'`, `'XYM'`, `'XYZM'`.\n * @enum {string}\n */\nexport default {\n XY: 'XY',\n XYZ: 'XYZ',\n XYM: 'XYM',\n XYZM: 'XYZM'\n};\n//# sourceMappingURL=GeometryLayout.js.map","/**\n * @module ol/geom/GeometryType\n */\n/**\n * The geometry type. One of `'Point'`, `'LineString'`, `'LinearRing'`,\n * `'Polygon'`, `'MultiPoint'`, `'MultiLineString'`, `'MultiPolygon'`,\n * `'GeometryCollection'`, `'Circle'`.\n * @enum {string}\n */\nexport default {\n POINT: 'Point',\n LINE_STRING: 'LineString',\n LINEAR_RING: 'LinearRing',\n POLYGON: 'Polygon',\n MULTI_POINT: 'MultiPoint',\n MULTI_LINE_STRING: 'MultiLineString',\n MULTI_POLYGON: 'MultiPolygon',\n GEOMETRY_COLLECTION: 'GeometryCollection',\n CIRCLE: 'Circle'\n};\n//# sourceMappingURL=GeometryType.js.map","/**\n * @module ol/geom/flat/transform\n */\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {import(\"../../transform.js\").Transform} transform Transform.\n * @param {Array=} opt_dest Destination.\n * @return {Array} Transformed coordinates.\n */\nexport function transform2D(flatCoordinates, offset, end, stride, transform, opt_dest) {\n var dest = opt_dest ? opt_dest : [];\n var i = 0;\n for (var j = offset; j < end; j += stride) {\n var x = flatCoordinates[j];\n var y = flatCoordinates[j + 1];\n dest[i++] = transform[0] * x + transform[2] * y + transform[4];\n dest[i++] = transform[1] * x + transform[3] * y + transform[5];\n }\n if (opt_dest && dest.length != i) {\n dest.length = i;\n }\n return dest;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} angle Angle.\n * @param {Array} anchor Rotation anchor point.\n * @param {Array=} opt_dest Destination.\n * @return {Array} Transformed coordinates.\n */\nexport function rotate(flatCoordinates, offset, end, stride, angle, anchor, opt_dest) {\n var dest = opt_dest ? opt_dest : [];\n var cos = Math.cos(angle);\n var sin = Math.sin(angle);\n var anchorX = anchor[0];\n var anchorY = anchor[1];\n var i = 0;\n for (var j = offset; j < end; j += stride) {\n var deltaX = flatCoordinates[j] - anchorX;\n var deltaY = flatCoordinates[j + 1] - anchorY;\n dest[i++] = anchorX + deltaX * cos - deltaY * sin;\n dest[i++] = anchorY + deltaX * sin + deltaY * cos;\n for (var k = j + 2; k < j + stride; ++k) {\n dest[i++] = flatCoordinates[k];\n }\n }\n if (opt_dest && dest.length != i) {\n dest.length = i;\n }\n return dest;\n}\n/**\n * Scale the coordinates.\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} sx Scale factor in the x-direction.\n * @param {number} sy Scale factor in the y-direction.\n * @param {Array} anchor Scale anchor point.\n * @param {Array=} opt_dest Destination.\n * @return {Array} Transformed coordinates.\n */\nexport function scale(flatCoordinates, offset, end, stride, sx, sy, anchor, opt_dest) {\n var dest = opt_dest ? opt_dest : [];\n var anchorX = anchor[0];\n var anchorY = anchor[1];\n var i = 0;\n for (var j = offset; j < end; j += stride) {\n var deltaX = flatCoordinates[j] - anchorX;\n var deltaY = flatCoordinates[j + 1] - anchorY;\n dest[i++] = anchorX + sx * deltaX;\n dest[i++] = anchorY + sy * deltaY;\n for (var k = j + 2; k < j + stride; ++k) {\n dest[i++] = flatCoordinates[k];\n }\n }\n if (opt_dest && dest.length != i) {\n dest.length = i;\n }\n return dest;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} deltaX Delta X.\n * @param {number} deltaY Delta Y.\n * @param {Array=} opt_dest Destination.\n * @return {Array} Transformed coordinates.\n */\nexport function translate(flatCoordinates, offset, end, stride, deltaX, deltaY, opt_dest) {\n var dest = opt_dest ? opt_dest : [];\n var i = 0;\n for (var j = offset; j < end; j += stride) {\n dest[i++] = flatCoordinates[j] + deltaX;\n dest[i++] = flatCoordinates[j + 1] + deltaY;\n for (var k = j + 2; k < j + stride; ++k) {\n dest[i++] = flatCoordinates[k];\n }\n }\n if (opt_dest && dest.length != i) {\n dest.length = i;\n }\n return dest;\n}\n//# sourceMappingURL=transform.js.map","/**\n * @module ol/math\n */\n/**\n * Takes a number and clamps it to within the provided bounds.\n * @param {number} value The input number.\n * @param {number} min The minimum value to return.\n * @param {number} max The maximum value to return.\n * @return {number} The input number if it is within bounds, or the nearest\n * number within the bounds.\n */\nexport function clamp(value, min, max) {\n return Math.min(Math.max(value, min), max);\n}\n/**\n * Return the hyperbolic cosine of a given number. The method will use the\n * native `Math.cosh` function if it is available, otherwise the hyperbolic\n * cosine will be calculated via the reference implementation of the Mozilla\n * developer network.\n *\n * @param {number} x X.\n * @return {number} Hyperbolic cosine of x.\n */\nexport var cosh = (function () {\n // Wrapped in a iife, to save the overhead of checking for the native\n // implementation on every invocation.\n var cosh;\n if ('cosh' in Math) {\n // The environment supports the native Math.cosh function, use it…\n cosh = Math.cosh;\n }\n else {\n // … else, use the reference implementation of MDN:\n cosh = function (x) {\n var y = /** @type {Math} */ (Math).exp(x);\n return (y + 1 / y) / 2;\n };\n }\n return cosh;\n}());\n/**\n * Returns the square of the closest distance between the point (x, y) and the\n * line segment (x1, y1) to (x2, y2).\n * @param {number} x X.\n * @param {number} y Y.\n * @param {number} x1 X1.\n * @param {number} y1 Y1.\n * @param {number} x2 X2.\n * @param {number} y2 Y2.\n * @return {number} Squared distance.\n */\nexport function squaredSegmentDistance(x, y, x1, y1, x2, y2) {\n var dx = x2 - x1;\n var dy = y2 - y1;\n if (dx !== 0 || dy !== 0) {\n var t = ((x - x1) * dx + (y - y1) * dy) / (dx * dx + dy * dy);\n if (t > 1) {\n x1 = x2;\n y1 = y2;\n }\n else if (t > 0) {\n x1 += dx * t;\n y1 += dy * t;\n }\n }\n return squaredDistance(x, y, x1, y1);\n}\n/**\n * Returns the square of the distance between the points (x1, y1) and (x2, y2).\n * @param {number} x1 X1.\n * @param {number} y1 Y1.\n * @param {number} x2 X2.\n * @param {number} y2 Y2.\n * @return {number} Squared distance.\n */\nexport function squaredDistance(x1, y1, x2, y2) {\n var dx = x2 - x1;\n var dy = y2 - y1;\n return dx * dx + dy * dy;\n}\n/**\n * Solves system of linear equations using Gaussian elimination method.\n *\n * @param {Array>} mat Augmented matrix (n x n + 1 column)\n * in row-major order.\n * @return {Array} The resulting vector.\n */\nexport function solveLinearSystem(mat) {\n var n = mat.length;\n for (var i = 0; i < n; i++) {\n // Find max in the i-th column (ignoring i - 1 first rows)\n var maxRow = i;\n var maxEl = Math.abs(mat[i][i]);\n for (var r = i + 1; r < n; r++) {\n var absValue = Math.abs(mat[r][i]);\n if (absValue > maxEl) {\n maxEl = absValue;\n maxRow = r;\n }\n }\n if (maxEl === 0) {\n return null; // matrix is singular\n }\n // Swap max row with i-th (current) row\n var tmp = mat[maxRow];\n mat[maxRow] = mat[i];\n mat[i] = tmp;\n // Subtract the i-th row to make all the remaining rows 0 in the i-th column\n for (var j = i + 1; j < n; j++) {\n var coef = -mat[j][i] / mat[i][i];\n for (var k = i; k < n + 1; k++) {\n if (i == k) {\n mat[j][k] = 0;\n }\n else {\n mat[j][k] += coef * mat[i][k];\n }\n }\n }\n }\n // Solve Ax=b for upper triangular matrix A (mat)\n var x = new Array(n);\n for (var l = n - 1; l >= 0; l--) {\n x[l] = mat[l][n] / mat[l][l];\n for (var m = l - 1; m >= 0; m--) {\n mat[m][n] -= mat[m][l] * x[l];\n }\n }\n return x;\n}\n/**\n * Converts radians to to degrees.\n *\n * @param {number} angleInRadians Angle in radians.\n * @return {number} Angle in degrees.\n */\nexport function toDegrees(angleInRadians) {\n return angleInRadians * 180 / Math.PI;\n}\n/**\n * Converts degrees to radians.\n *\n * @param {number} angleInDegrees Angle in degrees.\n * @return {number} Angle in radians.\n */\nexport function toRadians(angleInDegrees) {\n return angleInDegrees * Math.PI / 180;\n}\n/**\n * Returns the modulo of a / b, depending on the sign of b.\n *\n * @param {number} a Dividend.\n * @param {number} b Divisor.\n * @return {number} Modulo.\n */\nexport function modulo(a, b) {\n var r = a % b;\n return r * b < 0 ? r + b : r;\n}\n/**\n * Calculates the linearly interpolated value of x between a and b.\n *\n * @param {number} a Number\n * @param {number} b Number\n * @param {number} x Value to be interpolated.\n * @return {number} Interpolated value.\n */\nexport function lerp(a, b, x) {\n return a + x * (b - a);\n}\n//# sourceMappingURL=math.js.map","/**\n * @module ol/sphere\n */\nimport { toRadians, toDegrees } from './math.js';\nimport GeometryType from './geom/GeometryType.js';\n/**\n * Object literal with options for the {@link getLength} or {@link getArea}\n * functions.\n * @typedef {Object} SphereMetricOptions\n * @property {import(\"./proj.js\").ProjectionLike} [projection='EPSG:3857']\n * Projection of the geometry. By default, the geometry is assumed to be in\n * Web Mercator.\n * @property {number} [radius=6371008.8] Sphere radius. By default, the\n * [mean Earth radius](https://en.wikipedia.org/wiki/Earth_radius#Mean_radius)\n * for the WGS84 ellipsoid is used.\n */\n/**\n * The mean Earth radius (1/3 * (2a + b)) for the WGS84 ellipsoid.\n * https://en.wikipedia.org/wiki/Earth_radius#Mean_radius\n * @type {number}\n */\nexport var DEFAULT_RADIUS = 6371008.8;\n/**\n * Get the great circle distance (in meters) between two geographic coordinates.\n * @param {Array} c1 Starting coordinate.\n * @param {Array} c2 Ending coordinate.\n * @param {number=} opt_radius The sphere radius to use. Defaults to the Earth's\n * mean radius using the WGS84 ellipsoid.\n * @return {number} The great circle distance between the points (in meters).\n * @api\n */\nexport function getDistance(c1, c2, opt_radius) {\n var radius = opt_radius || DEFAULT_RADIUS;\n var lat1 = toRadians(c1[1]);\n var lat2 = toRadians(c2[1]);\n var deltaLatBy2 = (lat2 - lat1) / 2;\n var deltaLonBy2 = toRadians(c2[0] - c1[0]) / 2;\n var a = Math.sin(deltaLatBy2) * Math.sin(deltaLatBy2) +\n Math.sin(deltaLonBy2) * Math.sin(deltaLonBy2) *\n Math.cos(lat1) * Math.cos(lat2);\n return 2 * radius * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\n}\n/**\n * Get the cumulative great circle length of linestring coordinates (geographic).\n * @param {Array} coordinates Linestring coordinates.\n * @param {number} radius The sphere radius to use.\n * @return {number} The length (in meters).\n */\nfunction getLengthInternal(coordinates, radius) {\n var length = 0;\n for (var i = 0, ii = coordinates.length; i < ii - 1; ++i) {\n length += getDistance(coordinates[i], coordinates[i + 1], radius);\n }\n return length;\n}\n/**\n * Get the spherical length of a geometry. This length is the sum of the\n * great circle distances between coordinates. For polygons, the length is\n * the sum of all rings. For points, the length is zero. For multi-part\n * geometries, the length is the sum of the length of each part.\n * @param {import(\"./geom/Geometry.js\").default} geometry A geometry.\n * @param {SphereMetricOptions=} opt_options Options for the\n * length calculation. By default, geometries are assumed to be in 'EPSG:3857'.\n * You can change this by providing a `projection` option.\n * @return {number} The spherical length (in meters).\n * @api\n */\nexport function getLength(geometry, opt_options) {\n var options = opt_options || {};\n var radius = options.radius || DEFAULT_RADIUS;\n var projection = options.projection || 'EPSG:3857';\n var type = geometry.getType();\n if (type !== GeometryType.GEOMETRY_COLLECTION) {\n geometry = geometry.clone().transform(projection, 'EPSG:4326');\n }\n var length = 0;\n var coordinates, coords, i, ii, j, jj;\n switch (type) {\n case GeometryType.POINT:\n case GeometryType.MULTI_POINT: {\n break;\n }\n case GeometryType.LINE_STRING:\n case GeometryType.LINEAR_RING: {\n coordinates = /** @type {import(\"./geom/SimpleGeometry.js\").default} */ (geometry).getCoordinates();\n length = getLengthInternal(coordinates, radius);\n break;\n }\n case GeometryType.MULTI_LINE_STRING:\n case GeometryType.POLYGON: {\n coordinates = /** @type {import(\"./geom/SimpleGeometry.js\").default} */ (geometry).getCoordinates();\n for (i = 0, ii = coordinates.length; i < ii; ++i) {\n length += getLengthInternal(coordinates[i], radius);\n }\n break;\n }\n case GeometryType.MULTI_POLYGON: {\n coordinates = /** @type {import(\"./geom/SimpleGeometry.js\").default} */ (geometry).getCoordinates();\n for (i = 0, ii = coordinates.length; i < ii; ++i) {\n coords = coordinates[i];\n for (j = 0, jj = coords.length; j < jj; ++j) {\n length += getLengthInternal(coords[j], radius);\n }\n }\n break;\n }\n case GeometryType.GEOMETRY_COLLECTION: {\n var geometries = /** @type {import(\"./geom/GeometryCollection.js\").default} */ (geometry).getGeometries();\n for (i = 0, ii = geometries.length; i < ii; ++i) {\n length += getLength(geometries[i], opt_options);\n }\n break;\n }\n default: {\n throw new Error('Unsupported geometry type: ' + type);\n }\n }\n return length;\n}\n/**\n * Returns the spherical area for a list of coordinates.\n *\n * [Reference](https://trs-new.jpl.nasa.gov/handle/2014/40409)\n * Robert. G. Chamberlain and William H. Duquette, \"Some Algorithms for\n * Polygons on a Sphere\", JPL Publication 07-03, Jet Propulsion\n * Laboratory, Pasadena, CA, June 2007\n *\n * @param {Array} coordinates List of coordinates of a linear\n * ring. If the ring is oriented clockwise, the area will be positive,\n * otherwise it will be negative.\n * @param {number} radius The sphere radius.\n * @return {number} Area (in square meters).\n */\nfunction getAreaInternal(coordinates, radius) {\n var area = 0;\n var len = coordinates.length;\n var x1 = coordinates[len - 1][0];\n var y1 = coordinates[len - 1][1];\n for (var i = 0; i < len; i++) {\n var x2 = coordinates[i][0];\n var y2 = coordinates[i][1];\n area += toRadians(x2 - x1) *\n (2 + Math.sin(toRadians(y1)) +\n Math.sin(toRadians(y2)));\n x1 = x2;\n y1 = y2;\n }\n return area * radius * radius / 2.0;\n}\n/**\n * Get the spherical area of a geometry. This is the area (in meters) assuming\n * that polygon edges are segments of great circles on a sphere.\n * @param {import(\"./geom/Geometry.js\").default} geometry A geometry.\n * @param {SphereMetricOptions=} opt_options Options for the area\n * calculation. By default, geometries are assumed to be in 'EPSG:3857'.\n * You can change this by providing a `projection` option.\n * @return {number} The spherical area (in square meters).\n * @api\n */\nexport function getArea(geometry, opt_options) {\n var options = opt_options || {};\n var radius = options.radius || DEFAULT_RADIUS;\n var projection = options.projection || 'EPSG:3857';\n var type = geometry.getType();\n if (type !== GeometryType.GEOMETRY_COLLECTION) {\n geometry = geometry.clone().transform(projection, 'EPSG:4326');\n }\n var area = 0;\n var coordinates, coords, i, ii, j, jj;\n switch (type) {\n case GeometryType.POINT:\n case GeometryType.MULTI_POINT:\n case GeometryType.LINE_STRING:\n case GeometryType.MULTI_LINE_STRING:\n case GeometryType.LINEAR_RING: {\n break;\n }\n case GeometryType.POLYGON: {\n coordinates = /** @type {import(\"./geom/Polygon.js\").default} */ (geometry).getCoordinates();\n area = Math.abs(getAreaInternal(coordinates[0], radius));\n for (i = 1, ii = coordinates.length; i < ii; ++i) {\n area -= Math.abs(getAreaInternal(coordinates[i], radius));\n }\n break;\n }\n case GeometryType.MULTI_POLYGON: {\n coordinates = /** @type {import(\"./geom/SimpleGeometry.js\").default} */ (geometry).getCoordinates();\n for (i = 0, ii = coordinates.length; i < ii; ++i) {\n coords = coordinates[i];\n area += Math.abs(getAreaInternal(coords[0], radius));\n for (j = 1, jj = coords.length; j < jj; ++j) {\n area -= Math.abs(getAreaInternal(coords[j], radius));\n }\n }\n break;\n }\n case GeometryType.GEOMETRY_COLLECTION: {\n var geometries = /** @type {import(\"./geom/GeometryCollection.js\").default} */ (geometry).getGeometries();\n for (i = 0, ii = geometries.length; i < ii; ++i) {\n area += getArea(geometries[i], opt_options);\n }\n break;\n }\n default: {\n throw new Error('Unsupported geometry type: ' + type);\n }\n }\n return area;\n}\n/**\n * Returns the coordinate at the given distance and bearing from `c1`.\n *\n * @param {import(\"./coordinate.js\").Coordinate} c1 The origin point (`[lon, lat]` in degrees).\n * @param {number} distance The great-circle distance between the origin\n * point and the target point.\n * @param {number} bearing The bearing (in radians).\n * @param {number=} opt_radius The sphere radius to use. Defaults to the Earth's\n * mean radius using the WGS84 ellipsoid.\n * @return {import(\"./coordinate.js\").Coordinate} The target point.\n */\nexport function offset(c1, distance, bearing, opt_radius) {\n var radius = opt_radius || DEFAULT_RADIUS;\n var lat1 = toRadians(c1[1]);\n var lon1 = toRadians(c1[0]);\n var dByR = distance / radius;\n var lat = Math.asin(Math.sin(lat1) * Math.cos(dByR) +\n Math.cos(lat1) * Math.sin(dByR) * Math.cos(bearing));\n var lon = lon1 + Math.atan2(Math.sin(bearing) * Math.sin(dByR) * Math.cos(lat1), Math.cos(dByR) - Math.sin(lat1) * Math.sin(lat));\n return [toDegrees(lon), toDegrees(lat)];\n}\n//# sourceMappingURL=sphere.js.map","/**\n * @module ol/proj/Units\n */\n/**\n * Projection units: `'degrees'`, `'ft'`, `'m'`, `'pixels'`, `'tile-pixels'` or\n * `'us-ft'`.\n * @enum {string}\n */\nvar Units = {\n DEGREES: 'degrees',\n FEET: 'ft',\n METERS: 'm',\n PIXELS: 'pixels',\n TILE_PIXELS: 'tile-pixels',\n USFEET: 'us-ft'\n};\n/**\n * Meters per unit lookup table.\n * @const\n * @type {Object}\n * @api\n */\nexport var METERS_PER_UNIT = {};\n// use the radius of the Normal sphere\nMETERS_PER_UNIT[Units.DEGREES] = 2 * Math.PI * 6370997 / 360;\nMETERS_PER_UNIT[Units.FEET] = 0.3048;\nMETERS_PER_UNIT[Units.METERS] = 1;\nMETERS_PER_UNIT[Units.USFEET] = 1200 / 3937;\nexport default Units;\n//# sourceMappingURL=Units.js.map","/**\n * @module ol/proj/Projection\n */\nimport { METERS_PER_UNIT } from './Units.js';\n/**\n * @typedef {Object} Options\n * @property {string} code The SRS identifier code, e.g. `EPSG:4326`.\n * @property {import(\"./Units.js\").default|string} [units] Units. Required unless a\n * proj4 projection is defined for `code`.\n * @property {import(\"../extent.js\").Extent} [extent] The validity extent for the SRS.\n * @property {string} [axisOrientation='enu'] The axis orientation as specified in Proj4.\n * @property {boolean} [global=false] Whether the projection is valid for the whole globe.\n * @property {number} [metersPerUnit] The meters per unit for the SRS.\n * If not provided, the `units` are used to get the meters per unit from the {@link module:ol/proj/Units~METERS_PER_UNIT}\n * lookup table.\n * @property {import(\"../extent.js\").Extent} [worldExtent] The world extent for the SRS.\n * @property {function(number, import(\"../coordinate.js\").Coordinate):number} [getPointResolution]\n * Function to determine resolution at a point. The function is called with a\n * `{number}` view resolution and an `{import(\"../coordinate.js\").Coordinate}` as arguments, and returns\n * the `{number}` resolution in projection units at the passed coordinate. If this is `undefined`,\n * the default {@link module:ol/proj#getPointResolution} function will be used.\n */\n/**\n * @classdesc\n * Projection definition class. One of these is created for each projection\n * supported in the application and stored in the {@link module:ol/proj} namespace.\n * You can use these in applications, but this is not required, as API params\n * and options use {@link module:ol/proj~ProjectionLike} which means the simple string\n * code will suffice.\n *\n * You can use {@link module:ol/proj~get} to retrieve the object for a particular\n * projection.\n *\n * The library includes definitions for `EPSG:4326` and `EPSG:3857`, together\n * with the following aliases:\n * * `EPSG:4326`: CRS:84, urn:ogc:def:crs:EPSG:6.6:4326,\n * urn:ogc:def:crs:OGC:1.3:CRS84, urn:ogc:def:crs:OGC:2:84,\n * http://www.opengis.net/gml/srs/epsg.xml#4326,\n * urn:x-ogc:def:crs:EPSG:4326\n * * `EPSG:3857`: EPSG:102100, EPSG:102113, EPSG:900913,\n * urn:ogc:def:crs:EPSG:6.18:3:3857,\n * http://www.opengis.net/gml/srs/epsg.xml#3857\n *\n * If you use [proj4js](https://github.com/proj4js/proj4js), aliases can\n * be added using `proj4.defs()`. After all required projection definitions are\n * added, call the {@link module:ol/proj/proj4~register} function.\n *\n * @api\n */\nvar Projection = /** @class */ (function () {\n /**\n * @param {Options} options Projection options.\n */\n function Projection(options) {\n /**\n * @private\n * @type {string}\n */\n this.code_ = options.code;\n /**\n * Units of projected coordinates. When set to `TILE_PIXELS`, a\n * `this.extent_` and `this.worldExtent_` must be configured properly for each\n * tile.\n * @private\n * @type {import(\"./Units.js\").default}\n */\n this.units_ = /** @type {import(\"./Units.js\").default} */ (options.units);\n /**\n * Validity extent of the projection in projected coordinates. For projections\n * with `TILE_PIXELS` units, this is the extent of the tile in\n * tile pixel space.\n * @private\n * @type {import(\"../extent.js\").Extent}\n */\n this.extent_ = options.extent !== undefined ? options.extent : null;\n /**\n * Extent of the world in EPSG:4326. For projections with\n * `TILE_PIXELS` units, this is the extent of the tile in\n * projected coordinate space.\n * @private\n * @type {import(\"../extent.js\").Extent}\n */\n this.worldExtent_ = options.worldExtent !== undefined ?\n options.worldExtent : null;\n /**\n * @private\n * @type {string}\n */\n this.axisOrientation_ = options.axisOrientation !== undefined ?\n options.axisOrientation : 'enu';\n /**\n * @private\n * @type {boolean}\n */\n this.global_ = options.global !== undefined ? options.global : false;\n /**\n * @private\n * @type {boolean}\n */\n this.canWrapX_ = !!(this.global_ && this.extent_);\n /**\n * @private\n * @type {function(number, import(\"../coordinate.js\").Coordinate):number|undefined}\n */\n this.getPointResolutionFunc_ = options.getPointResolution;\n /**\n * @private\n * @type {import(\"../tilegrid/TileGrid.js\").default}\n */\n this.defaultTileGrid_ = null;\n /**\n * @private\n * @type {number|undefined}\n */\n this.metersPerUnit_ = options.metersPerUnit;\n }\n /**\n * @return {boolean} The projection is suitable for wrapping the x-axis\n */\n Projection.prototype.canWrapX = function () {\n return this.canWrapX_;\n };\n /**\n * Get the code for this projection, e.g. 'EPSG:4326'.\n * @return {string} Code.\n * @api\n */\n Projection.prototype.getCode = function () {\n return this.code_;\n };\n /**\n * Get the validity extent for this projection.\n * @return {import(\"../extent.js\").Extent} Extent.\n * @api\n */\n Projection.prototype.getExtent = function () {\n return this.extent_;\n };\n /**\n * Get the units of this projection.\n * @return {import(\"./Units.js\").default} Units.\n * @api\n */\n Projection.prototype.getUnits = function () {\n return this.units_;\n };\n /**\n * Get the amount of meters per unit of this projection. If the projection is\n * not configured with `metersPerUnit` or a units identifier, the return is\n * `undefined`.\n * @return {number|undefined} Meters.\n * @api\n */\n Projection.prototype.getMetersPerUnit = function () {\n return this.metersPerUnit_ || METERS_PER_UNIT[this.units_];\n };\n /**\n * Get the world extent for this projection.\n * @return {import(\"../extent.js\").Extent} Extent.\n * @api\n */\n Projection.prototype.getWorldExtent = function () {\n return this.worldExtent_;\n };\n /**\n * Get the axis orientation of this projection.\n * Example values are:\n * enu - the default easting, northing, elevation.\n * neu - northing, easting, up - useful for \"lat/long\" geographic coordinates,\n * or south orientated transverse mercator.\n * wnu - westing, northing, up - some planetary coordinate systems have\n * \"west positive\" coordinate systems\n * @return {string} Axis orientation.\n * @api\n */\n Projection.prototype.getAxisOrientation = function () {\n return this.axisOrientation_;\n };\n /**\n * Is this projection a global projection which spans the whole world?\n * @return {boolean} Whether the projection is global.\n * @api\n */\n Projection.prototype.isGlobal = function () {\n return this.global_;\n };\n /**\n * Set if the projection is a global projection which spans the whole world\n * @param {boolean} global Whether the projection is global.\n * @api\n */\n Projection.prototype.setGlobal = function (global) {\n this.global_ = global;\n this.canWrapX_ = !!(global && this.extent_);\n };\n /**\n * @return {import(\"../tilegrid/TileGrid.js\").default} The default tile grid.\n */\n Projection.prototype.getDefaultTileGrid = function () {\n return this.defaultTileGrid_;\n };\n /**\n * @param {import(\"../tilegrid/TileGrid.js\").default} tileGrid The default tile grid.\n */\n Projection.prototype.setDefaultTileGrid = function (tileGrid) {\n this.defaultTileGrid_ = tileGrid;\n };\n /**\n * Set the validity extent for this projection.\n * @param {import(\"../extent.js\").Extent} extent Extent.\n * @api\n */\n Projection.prototype.setExtent = function (extent) {\n this.extent_ = extent;\n this.canWrapX_ = !!(this.global_ && extent);\n };\n /**\n * Set the world extent for this projection.\n * @param {import(\"../extent.js\").Extent} worldExtent World extent\n * [minlon, minlat, maxlon, maxlat].\n * @api\n */\n Projection.prototype.setWorldExtent = function (worldExtent) {\n this.worldExtent_ = worldExtent;\n };\n /**\n * Set the getPointResolution function (see {@link module:ol/proj~getPointResolution}\n * for this projection.\n * @param {function(number, import(\"../coordinate.js\").Coordinate):number} func Function\n * @api\n */\n Projection.prototype.setGetPointResolution = function (func) {\n this.getPointResolutionFunc_ = func;\n };\n /**\n * Get the custom point resolution function for this projection (if set).\n * @return {function(number, import(\"../coordinate.js\").Coordinate):number|undefined} The custom point\n * resolution function (if set).\n */\n Projection.prototype.getPointResolutionFunc = function () {\n return this.getPointResolutionFunc_;\n };\n return Projection;\n}());\nexport default Projection;\n//# sourceMappingURL=Projection.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/proj/epsg3857\n */\nimport { cosh } from '../math.js';\nimport Projection from './Projection.js';\nimport Units from './Units.js';\n/**\n * Radius of WGS84 sphere\n *\n * @const\n * @type {number}\n */\nexport var RADIUS = 6378137;\n/**\n * @const\n * @type {number}\n */\nexport var HALF_SIZE = Math.PI * RADIUS;\n/**\n * @const\n * @type {import(\"../extent.js\").Extent}\n */\nexport var EXTENT = [\n -HALF_SIZE, -HALF_SIZE,\n HALF_SIZE, HALF_SIZE\n];\n/**\n * @const\n * @type {import(\"../extent.js\").Extent}\n */\nexport var WORLD_EXTENT = [-180, -85, 180, 85];\n/**\n * @classdesc\n * Projection object for web/spherical Mercator (EPSG:3857).\n */\nvar EPSG3857Projection = /** @class */ (function (_super) {\n __extends(EPSG3857Projection, _super);\n /**\n * @param {string} code Code.\n */\n function EPSG3857Projection(code) {\n return _super.call(this, {\n code: code,\n units: Units.METERS,\n extent: EXTENT,\n global: true,\n worldExtent: WORLD_EXTENT,\n getPointResolution: function (resolution, point) {\n return resolution / cosh(point[1] / RADIUS);\n }\n }) || this;\n }\n return EPSG3857Projection;\n}(Projection));\n/**\n * Projections equal to EPSG:3857.\n *\n * @const\n * @type {Array}\n */\nexport var PROJECTIONS = [\n new EPSG3857Projection('EPSG:3857'),\n new EPSG3857Projection('EPSG:102100'),\n new EPSG3857Projection('EPSG:102113'),\n new EPSG3857Projection('EPSG:900913'),\n new EPSG3857Projection('urn:ogc:def:crs:EPSG:6.18:3:3857'),\n new EPSG3857Projection('urn:ogc:def:crs:EPSG::3857'),\n new EPSG3857Projection('http://www.opengis.net/gml/srs/epsg.xml#3857')\n];\n/**\n * Transformation from EPSG:4326 to EPSG:3857.\n *\n * @param {Array} input Input array of coordinate values.\n * @param {Array=} opt_output Output array of coordinate values.\n * @param {number=} opt_dimension Dimension (default is `2`).\n * @return {Array} Output array of coordinate values.\n */\nexport function fromEPSG4326(input, opt_output, opt_dimension) {\n var length = input.length;\n var dimension = opt_dimension > 1 ? opt_dimension : 2;\n var output = opt_output;\n if (output === undefined) {\n if (dimension > 2) {\n // preserve values beyond second dimension\n output = input.slice();\n }\n else {\n output = new Array(length);\n }\n }\n var halfSize = HALF_SIZE;\n for (var i = 0; i < length; i += dimension) {\n output[i] = halfSize * input[i] / 180;\n var y = RADIUS *\n Math.log(Math.tan(Math.PI * (+input[i + 1] + 90) / 360));\n if (y > halfSize) {\n y = halfSize;\n }\n else if (y < -halfSize) {\n y = -halfSize;\n }\n output[i + 1] = y;\n }\n return output;\n}\n/**\n * Transformation from EPSG:3857 to EPSG:4326.\n *\n * @param {Array} input Input array of coordinate values.\n * @param {Array=} opt_output Output array of coordinate values.\n * @param {number=} opt_dimension Dimension (default is `2`).\n * @return {Array} Output array of coordinate values.\n */\nexport function toEPSG4326(input, opt_output, opt_dimension) {\n var length = input.length;\n var dimension = opt_dimension > 1 ? opt_dimension : 2;\n var output = opt_output;\n if (output === undefined) {\n if (dimension > 2) {\n // preserve values beyond second dimension\n output = input.slice();\n }\n else {\n output = new Array(length);\n }\n }\n for (var i = 0; i < length; i += dimension) {\n output[i] = 180 * input[i] / HALF_SIZE;\n output[i + 1] = 360 * Math.atan(Math.exp(input[i + 1] / RADIUS)) / Math.PI - 90;\n }\n return output;\n}\n//# sourceMappingURL=epsg3857.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/proj/epsg4326\n */\nimport Projection from './Projection.js';\nimport Units from './Units.js';\n/**\n * Semi-major radius of the WGS84 ellipsoid.\n *\n * @const\n * @type {number}\n */\nexport var RADIUS = 6378137;\n/**\n * Extent of the EPSG:4326 projection which is the whole world.\n *\n * @const\n * @type {import(\"../extent.js\").Extent}\n */\nexport var EXTENT = [-180, -90, 180, 90];\n/**\n * @const\n * @type {number}\n */\nexport var METERS_PER_UNIT = Math.PI * RADIUS / 180;\n/**\n * @classdesc\n * Projection object for WGS84 geographic coordinates (EPSG:4326).\n *\n * Note that OpenLayers does not strictly comply with the EPSG definition.\n * The EPSG registry defines 4326 as a CRS for Latitude,Longitude (y,x).\n * OpenLayers treats EPSG:4326 as a pseudo-projection, with x,y coordinates.\n */\nvar EPSG4326Projection = /** @class */ (function (_super) {\n __extends(EPSG4326Projection, _super);\n /**\n * @param {string} code Code.\n * @param {string=} opt_axisOrientation Axis orientation.\n */\n function EPSG4326Projection(code, opt_axisOrientation) {\n return _super.call(this, {\n code: code,\n units: Units.DEGREES,\n extent: EXTENT,\n axisOrientation: opt_axisOrientation,\n global: true,\n metersPerUnit: METERS_PER_UNIT,\n worldExtent: EXTENT\n }) || this;\n }\n return EPSG4326Projection;\n}(Projection));\n/**\n * Projections equal to EPSG:4326.\n *\n * @const\n * @type {Array}\n */\nexport var PROJECTIONS = [\n new EPSG4326Projection('CRS:84'),\n new EPSG4326Projection('EPSG:4326', 'neu'),\n new EPSG4326Projection('urn:ogc:def:crs:EPSG::4326', 'neu'),\n new EPSG4326Projection('urn:ogc:def:crs:EPSG:6.6:4326', 'neu'),\n new EPSG4326Projection('urn:ogc:def:crs:OGC:1.3:CRS84'),\n new EPSG4326Projection('urn:ogc:def:crs:OGC:2:84'),\n new EPSG4326Projection('http://www.opengis.net/gml/srs/epsg.xml#4326', 'neu'),\n new EPSG4326Projection('urn:x-ogc:def:crs:EPSG:4326', 'neu')\n];\n//# sourceMappingURL=epsg4326.js.map","/**\n * @module ol/proj/transforms\n */\nimport { isEmpty } from '../obj.js';\n/**\n * @private\n * @type {!Object>}\n */\nvar transforms = {};\n/**\n * Clear the transform cache.\n */\nexport function clear() {\n transforms = {};\n}\n/**\n * Registers a conversion function to convert coordinates from the source\n * projection to the destination projection.\n *\n * @param {import(\"./Projection.js\").default} source Source.\n * @param {import(\"./Projection.js\").default} destination Destination.\n * @param {import(\"../proj.js\").TransformFunction} transformFn Transform.\n */\nexport function add(source, destination, transformFn) {\n var sourceCode = source.getCode();\n var destinationCode = destination.getCode();\n if (!(sourceCode in transforms)) {\n transforms[sourceCode] = {};\n }\n transforms[sourceCode][destinationCode] = transformFn;\n}\n/**\n * Unregisters the conversion function to convert coordinates from the source\n * projection to the destination projection. This method is used to clean up\n * cached transforms during testing.\n *\n * @param {import(\"./Projection.js\").default} source Source projection.\n * @param {import(\"./Projection.js\").default} destination Destination projection.\n * @return {import(\"../proj.js\").TransformFunction} transformFn The unregistered transform.\n */\nexport function remove(source, destination) {\n var sourceCode = source.getCode();\n var destinationCode = destination.getCode();\n var transform = transforms[sourceCode][destinationCode];\n delete transforms[sourceCode][destinationCode];\n if (isEmpty(transforms[sourceCode])) {\n delete transforms[sourceCode];\n }\n return transform;\n}\n/**\n * Get a transform given a source code and a destination code.\n * @param {string} sourceCode The code for the source projection.\n * @param {string} destinationCode The code for the destination projection.\n * @return {import(\"../proj.js\").TransformFunction|undefined} The transform function (if found).\n */\nexport function get(sourceCode, destinationCode) {\n var transform;\n if (sourceCode in transforms && destinationCode in transforms[sourceCode]) {\n transform = transforms[sourceCode][destinationCode];\n }\n return transform;\n}\n//# sourceMappingURL=transforms.js.map","/**\n * @module ol/proj/projections\n */\n/**\n * @type {Object}\n */\nvar cache = {};\n/**\n * Clear the projections cache.\n */\nexport function clear() {\n cache = {};\n}\n/**\n * Get a cached projection by code.\n * @param {string} code The code for the projection.\n * @return {import(\"./Projection.js\").default} The projection (if cached).\n */\nexport function get(code) {\n return cache[code] || null;\n}\n/**\n * Add a projection to the cache.\n * @param {string} code The projection code.\n * @param {import(\"./Projection.js\").default} projection The projection to cache.\n */\nexport function add(code, projection) {\n cache[code] = projection;\n}\n//# sourceMappingURL=projections.js.map","/**\n * @module ol/proj\n */\n/**\n * The ol/proj module stores:\n * * a list of {@link module:ol/proj/Projection}\n * objects, one for each projection supported by the application\n * * a list of transform functions needed to convert coordinates in one projection\n * into another.\n *\n * The static functions are the methods used to maintain these.\n * Each transform function can handle not only simple coordinate pairs, but also\n * large arrays of coordinates such as vector geometries.\n *\n * When loaded, the library adds projection objects for EPSG:4326 (WGS84\n * geographic coordinates) and EPSG:3857 (Web or Spherical Mercator, as used\n * for example by Bing Maps or OpenStreetMap), together with the relevant\n * transform functions.\n *\n * Additional transforms may be added by using the http://proj4js.org/\n * library (version 2.2 or later). You can use the full build supplied by\n * Proj4js, or create a custom build to support those projections you need; see\n * the Proj4js website for how to do this. You also need the Proj4js definitions\n * for the required projections. These definitions can be obtained from\n * https://epsg.io/, and are a JS function, so can be loaded in a script\n * tag (as in the examples) or pasted into your application.\n *\n * After all required projection definitions are added to proj4's registry (by\n * using `proj4.defs()`), simply call `register(proj4)` from the `ol/proj/proj4`\n * package. Existing transforms are not changed by this function. See\n * examples/wms-image-custom-proj for an example of this.\n *\n * Additional projection definitions can be registered with `proj4.defs()` any\n * time. Just make sure to call `register(proj4)` again; for example, with user-supplied data where you don't\n * know in advance what projections are needed, you can initially load minimal\n * support and then load whichever are requested.\n *\n * Note that Proj4js does not support projection extents. If you want to add\n * one for creating default tile grids, you can add it after the Projection\n * object has been created with `setExtent`, for example,\n * `get('EPSG:1234').setExtent(extent)`.\n *\n * In addition to Proj4js support, any transform functions can be added with\n * {@link module:ol/proj~addCoordinateTransforms}. To use this, you must first create\n * a {@link module:ol/proj/Projection} object for the new projection and add it with\n * {@link module:ol/proj~addProjection}. You can then add the forward and inverse\n * functions with {@link module:ol/proj~addCoordinateTransforms}. See\n * examples/wms-custom-proj for an example of this.\n *\n * Note that if no transforms are needed and you only need to define the\n * projection, just add a {@link module:ol/proj/Projection} with\n * {@link module:ol/proj~addProjection}. See examples/wms-no-proj for an example of\n * this.\n */\nimport { getDistance } from './sphere.js';\nimport { applyTransform } from './extent.js';\nimport { modulo } from './math.js';\nimport { toEPSG4326, fromEPSG4326, PROJECTIONS as EPSG3857_PROJECTIONS } from './proj/epsg3857.js';\nimport { PROJECTIONS as EPSG4326_PROJECTIONS } from './proj/epsg4326.js';\nimport Projection from './proj/Projection.js';\nimport Units, { METERS_PER_UNIT } from './proj/Units.js';\nimport { add as addTransformFunc, clear as clearTransformFuncs, get as getTransformFunc } from './proj/transforms.js';\nimport { add as addProj, clear as clearProj, get as getProj } from './proj/projections.js';\n/**\n * A projection as {@link module:ol/proj/Projection}, SRS identifier\n * string or undefined.\n * @typedef {Projection|string|undefined} ProjectionLike\n * @api\n */\n/**\n * A transform function accepts an array of input coordinate values, an optional\n * output array, and an optional dimension (default should be 2). The function\n * transforms the input coordinate values, populates the output array, and\n * returns the output array.\n *\n * @typedef {function(Array, Array=, number=): Array} TransformFunction\n * @api\n */\nexport { METERS_PER_UNIT };\nexport { Projection };\n/**\n * @param {Array} input Input coordinate array.\n * @param {Array=} opt_output Output array of coordinate values.\n * @param {number=} opt_dimension Dimension.\n * @return {Array} Output coordinate array (new array, same coordinate\n * values).\n */\nexport function cloneTransform(input, opt_output, opt_dimension) {\n var output;\n if (opt_output !== undefined) {\n for (var i = 0, ii = input.length; i < ii; ++i) {\n opt_output[i] = input[i];\n }\n output = opt_output;\n }\n else {\n output = input.slice();\n }\n return output;\n}\n/**\n * @param {Array} input Input coordinate array.\n * @param {Array=} opt_output Output array of coordinate values.\n * @param {number=} opt_dimension Dimension.\n * @return {Array} Input coordinate array (same array as input).\n */\nexport function identityTransform(input, opt_output, opt_dimension) {\n if (opt_output !== undefined && input !== opt_output) {\n for (var i = 0, ii = input.length; i < ii; ++i) {\n opt_output[i] = input[i];\n }\n input = opt_output;\n }\n return input;\n}\n/**\n * Add a Projection object to the list of supported projections that can be\n * looked up by their code.\n *\n * @param {Projection} projection Projection instance.\n * @api\n */\nexport function addProjection(projection) {\n addProj(projection.getCode(), projection);\n addTransformFunc(projection, projection, cloneTransform);\n}\n/**\n * @param {Array} projections Projections.\n */\nexport function addProjections(projections) {\n projections.forEach(addProjection);\n}\n/**\n * Fetches a Projection object for the code specified.\n *\n * @param {ProjectionLike} projectionLike Either a code string which is\n * a combination of authority and identifier such as \"EPSG:4326\", or an\n * existing projection object, or undefined.\n * @return {Projection} Projection object, or null if not in list.\n * @api\n */\nexport function get(projectionLike) {\n return typeof projectionLike === 'string' ?\n getProj(/** @type {string} */ (projectionLike)) :\n ( /** @type {Projection} */(projectionLike) || null);\n}\n/**\n * Get the resolution of the point in degrees or distance units.\n * For projections with degrees as the unit this will simply return the\n * provided resolution. For other projections the point resolution is\n * by default estimated by transforming the 'point' pixel to EPSG:4326,\n * measuring its width and height on the normal sphere,\n * and taking the average of the width and height.\n * A custom function can be provided for a specific projection, either\n * by setting the `getPointResolution` option in the\n * {@link module:ol/proj/Projection~Projection} constructor or by using\n * {@link module:ol/proj/Projection~Projection#setGetPointResolution} to change an existing\n * projection object.\n * @param {ProjectionLike} projection The projection.\n * @param {number} resolution Nominal resolution in projection units.\n * @param {import(\"./coordinate.js\").Coordinate} point Point to find adjusted resolution at.\n * @param {Units=} opt_units Units to get the point resolution in.\n * Default is the projection's units.\n * @return {number} Point resolution.\n * @api\n */\nexport function getPointResolution(projection, resolution, point, opt_units) {\n projection = get(projection);\n var pointResolution;\n var getter = projection.getPointResolutionFunc();\n if (getter) {\n pointResolution = getter(resolution, point);\n if (opt_units && opt_units !== projection.getUnits()) {\n var metersPerUnit = projection.getMetersPerUnit();\n if (metersPerUnit) {\n pointResolution = pointResolution * metersPerUnit / METERS_PER_UNIT[opt_units];\n }\n }\n }\n else {\n var units = projection.getUnits();\n if (units == Units.DEGREES && !opt_units || opt_units == Units.DEGREES) {\n pointResolution = resolution;\n }\n else {\n // Estimate point resolution by transforming the center pixel to EPSG:4326,\n // measuring its width and height on the normal sphere, and taking the\n // average of the width and height.\n var toEPSG4326_1 = getTransformFromProjections(projection, get('EPSG:4326'));\n var vertices = [\n point[0] - resolution / 2, point[1],\n point[0] + resolution / 2, point[1],\n point[0], point[1] - resolution / 2,\n point[0], point[1] + resolution / 2\n ];\n vertices = toEPSG4326_1(vertices, vertices, 2);\n var width = getDistance(vertices.slice(0, 2), vertices.slice(2, 4));\n var height = getDistance(vertices.slice(4, 6), vertices.slice(6, 8));\n pointResolution = (width + height) / 2;\n var metersPerUnit = opt_units ?\n METERS_PER_UNIT[opt_units] :\n projection.getMetersPerUnit();\n if (metersPerUnit !== undefined) {\n pointResolution /= metersPerUnit;\n }\n }\n }\n return pointResolution;\n}\n/**\n * Registers transformation functions that don't alter coordinates. Those allow\n * to transform between projections with equal meaning.\n *\n * @param {Array} projections Projections.\n * @api\n */\nexport function addEquivalentProjections(projections) {\n addProjections(projections);\n projections.forEach(function (source) {\n projections.forEach(function (destination) {\n if (source !== destination) {\n addTransformFunc(source, destination, cloneTransform);\n }\n });\n });\n}\n/**\n * Registers transformation functions to convert coordinates in any projection\n * in projection1 to any projection in projection2.\n *\n * @param {Array} projections1 Projections with equal\n * meaning.\n * @param {Array} projections2 Projections with equal\n * meaning.\n * @param {TransformFunction} forwardTransform Transformation from any\n * projection in projection1 to any projection in projection2.\n * @param {TransformFunction} inverseTransform Transform from any projection\n * in projection2 to any projection in projection1..\n */\nexport function addEquivalentTransforms(projections1, projections2, forwardTransform, inverseTransform) {\n projections1.forEach(function (projection1) {\n projections2.forEach(function (projection2) {\n addTransformFunc(projection1, projection2, forwardTransform);\n addTransformFunc(projection2, projection1, inverseTransform);\n });\n });\n}\n/**\n * Clear all cached projections and transforms.\n */\nexport function clearAllProjections() {\n clearProj();\n clearTransformFuncs();\n}\n/**\n * @param {Projection|string|undefined} projection Projection.\n * @param {string} defaultCode Default code.\n * @return {Projection} Projection.\n */\nexport function createProjection(projection, defaultCode) {\n if (!projection) {\n return get(defaultCode);\n }\n else if (typeof projection === 'string') {\n return get(projection);\n }\n else {\n return (\n /** @type {Projection} */ (projection));\n }\n}\n/**\n * Creates a {@link module:ol/proj~TransformFunction} from a simple 2D coordinate transform\n * function.\n * @param {function(import(\"./coordinate.js\").Coordinate): import(\"./coordinate.js\").Coordinate} coordTransform Coordinate\n * transform.\n * @return {TransformFunction} Transform function.\n */\nexport function createTransformFromCoordinateTransform(coordTransform) {\n return (\n /**\n * @param {Array} input Input.\n * @param {Array=} opt_output Output.\n * @param {number=} opt_dimension Dimension.\n * @return {Array} Output.\n */\n function (input, opt_output, opt_dimension) {\n var length = input.length;\n var dimension = opt_dimension !== undefined ? opt_dimension : 2;\n var output = opt_output !== undefined ? opt_output : new Array(length);\n for (var i = 0; i < length; i += dimension) {\n var point = coordTransform([input[i], input[i + 1]]);\n output[i] = point[0];\n output[i + 1] = point[1];\n for (var j = dimension - 1; j >= 2; --j) {\n output[i + j] = input[i + j];\n }\n }\n return output;\n });\n}\n/**\n * Registers coordinate transform functions to convert coordinates between the\n * source projection and the destination projection.\n * The forward and inverse functions convert coordinate pairs; this function\n * converts these into the functions used internally which also handle\n * extents and coordinate arrays.\n *\n * @param {ProjectionLike} source Source projection.\n * @param {ProjectionLike} destination Destination projection.\n * @param {function(import(\"./coordinate.js\").Coordinate): import(\"./coordinate.js\").Coordinate} forward The forward transform\n * function (that is, from the source projection to the destination\n * projection) that takes a {@link module:ol/coordinate~Coordinate} as argument and returns\n * the transformed {@link module:ol/coordinate~Coordinate}.\n * @param {function(import(\"./coordinate.js\").Coordinate): import(\"./coordinate.js\").Coordinate} inverse The inverse transform\n * function (that is, from the destination projection to the source\n * projection) that takes a {@link module:ol/coordinate~Coordinate} as argument and returns\n * the transformed {@link module:ol/coordinate~Coordinate}.\n * @api\n */\nexport function addCoordinateTransforms(source, destination, forward, inverse) {\n var sourceProj = get(source);\n var destProj = get(destination);\n addTransformFunc(sourceProj, destProj, createTransformFromCoordinateTransform(forward));\n addTransformFunc(destProj, sourceProj, createTransformFromCoordinateTransform(inverse));\n}\n/**\n * Transforms a coordinate from longitude/latitude to a different projection.\n * @param {import(\"./coordinate.js\").Coordinate} coordinate Coordinate as longitude and latitude, i.e.\n * an array with longitude as 1st and latitude as 2nd element.\n * @param {ProjectionLike=} opt_projection Target projection. The\n * default is Web Mercator, i.e. 'EPSG:3857'.\n * @return {import(\"./coordinate.js\").Coordinate} Coordinate projected to the target projection.\n * @api\n */\nexport function fromLonLat(coordinate, opt_projection) {\n return transform(coordinate, 'EPSG:4326', opt_projection !== undefined ? opt_projection : 'EPSG:3857');\n}\n/**\n * Transforms a coordinate to longitude/latitude.\n * @param {import(\"./coordinate.js\").Coordinate} coordinate Projected coordinate.\n * @param {ProjectionLike=} opt_projection Projection of the coordinate.\n * The default is Web Mercator, i.e. 'EPSG:3857'.\n * @return {import(\"./coordinate.js\").Coordinate} Coordinate as longitude and latitude, i.e. an array\n * with longitude as 1st and latitude as 2nd element.\n * @api\n */\nexport function toLonLat(coordinate, opt_projection) {\n var lonLat = transform(coordinate, opt_projection !== undefined ? opt_projection : 'EPSG:3857', 'EPSG:4326');\n var lon = lonLat[0];\n if (lon < -180 || lon > 180) {\n lonLat[0] = modulo(lon + 180, 360) - 180;\n }\n return lonLat;\n}\n/**\n * Checks if two projections are the same, that is every coordinate in one\n * projection does represent the same geographic point as the same coordinate in\n * the other projection.\n *\n * @param {Projection} projection1 Projection 1.\n * @param {Projection} projection2 Projection 2.\n * @return {boolean} Equivalent.\n * @api\n */\nexport function equivalent(projection1, projection2) {\n if (projection1 === projection2) {\n return true;\n }\n var equalUnits = projection1.getUnits() === projection2.getUnits();\n if (projection1.getCode() === projection2.getCode()) {\n return equalUnits;\n }\n else {\n var transformFunc = getTransformFromProjections(projection1, projection2);\n return transformFunc === cloneTransform && equalUnits;\n }\n}\n/**\n * Searches in the list of transform functions for the function for converting\n * coordinates from the source projection to the destination projection.\n *\n * @param {Projection} sourceProjection Source Projection object.\n * @param {Projection} destinationProjection Destination Projection\n * object.\n * @return {TransformFunction} Transform function.\n */\nexport function getTransformFromProjections(sourceProjection, destinationProjection) {\n var sourceCode = sourceProjection.getCode();\n var destinationCode = destinationProjection.getCode();\n var transformFunc = getTransformFunc(sourceCode, destinationCode);\n if (!transformFunc) {\n transformFunc = identityTransform;\n }\n return transformFunc;\n}\n/**\n * Given the projection-like objects, searches for a transformation\n * function to convert a coordinates array from the source projection to the\n * destination projection.\n *\n * @param {ProjectionLike} source Source.\n * @param {ProjectionLike} destination Destination.\n * @return {TransformFunction} Transform function.\n * @api\n */\nexport function getTransform(source, destination) {\n var sourceProjection = get(source);\n var destinationProjection = get(destination);\n return getTransformFromProjections(sourceProjection, destinationProjection);\n}\n/**\n * Transforms a coordinate from source projection to destination projection.\n * This returns a new coordinate (and does not modify the original).\n *\n * See {@link module:ol/proj~transformExtent} for extent transformation.\n * See the transform method of {@link module:ol/geom/Geometry~Geometry} and its\n * subclasses for geometry transforms.\n *\n * @param {import(\"./coordinate.js\").Coordinate} coordinate Coordinate.\n * @param {ProjectionLike} source Source projection-like.\n * @param {ProjectionLike} destination Destination projection-like.\n * @return {import(\"./coordinate.js\").Coordinate} Coordinate.\n * @api\n */\nexport function transform(coordinate, source, destination) {\n var transformFunc = getTransform(source, destination);\n return transformFunc(coordinate, undefined, coordinate.length);\n}\n/**\n * Transforms an extent from source projection to destination projection. This\n * returns a new extent (and does not modify the original).\n *\n * @param {import(\"./extent.js\").Extent} extent The extent to transform.\n * @param {ProjectionLike} source Source projection-like.\n * @param {ProjectionLike} destination Destination projection-like.\n * @return {import(\"./extent.js\").Extent} The transformed extent.\n * @api\n */\nexport function transformExtent(extent, source, destination) {\n var transformFunc = getTransform(source, destination);\n return applyTransform(extent, transformFunc);\n}\n/**\n * Transforms the given point to the destination projection.\n *\n * @param {import(\"./coordinate.js\").Coordinate} point Point.\n * @param {Projection} sourceProjection Source projection.\n * @param {Projection} destinationProjection Destination projection.\n * @return {import(\"./coordinate.js\").Coordinate} Point.\n */\nexport function transformWithProjections(point, sourceProjection, destinationProjection) {\n var transformFunc = getTransformFromProjections(sourceProjection, destinationProjection);\n return transformFunc(point);\n}\n/**\n * @type {?Projection}\n */\nvar userProjection = null;\n/**\n * Set the projection for coordinates supplied from and returned by API methods.\n * Note that this method is not yet a part of the stable API. Support for user\n * projections is not yet complete and should be considered experimental.\n * @param {ProjectionLike} projection The user projection.\n */\nexport function setUserProjection(projection) {\n userProjection = get(projection);\n}\n/**\n * Clear the user projection if set. Note that this method is not yet a part of\n * the stable API. Support for user projections is not yet complete and should\n * be considered experimental.\n */\nexport function clearUserProjection() {\n userProjection = null;\n}\n/**\n * Get the projection for coordinates supplied from and returned by API methods.\n * Note that this method is not yet a part of the stable API. Support for user\n * projections is not yet complete and should be considered experimental.\n * @returns {?Projection} The user projection (or null if not set).\n */\nexport function getUserProjection() {\n return userProjection;\n}\n/**\n * Use geographic coordinates (WGS-84 datum) in API methods. Note that this\n * method is not yet a part of the stable API. Support for user projections is\n * not yet complete and should be considered experimental.\n */\nexport function useGeographic() {\n setUserProjection('EPSG:4326');\n}\n/**\n * Return a coordinate transformed into the user projection. If no user projection\n * is set, the original coordinate is returned.\n * @param {Array} coordinate Input coordinate.\n * @param {ProjectionLike} sourceProjection The input coordinate projection.\n * @returns {Array} The input coordinate in the user projection.\n */\nexport function toUserCoordinate(coordinate, sourceProjection) {\n if (!userProjection) {\n return coordinate;\n }\n return transform(coordinate, sourceProjection, userProjection);\n}\n/**\n * Return a coordinate transformed from the user projection. If no user projection\n * is set, the original coordinate is returned.\n * @param {Array} coordinate Input coordinate.\n * @param {ProjectionLike} destProjection The destination projection.\n * @returns {Array} The input coordinate transformed.\n */\nexport function fromUserCoordinate(coordinate, destProjection) {\n if (!userProjection) {\n return coordinate;\n }\n return transform(coordinate, userProjection, destProjection);\n}\n/**\n * Return an extent transformed into the user projection. If no user projection\n * is set, the original extent is returned.\n * @param {import(\"./extent.js\").Extent} extent Input extent.\n * @param {ProjectionLike} sourceProjection The input extent projection.\n * @returns {import(\"./extent.js\").Extent} The input extent in the user projection.\n */\nexport function toUserExtent(extent, sourceProjection) {\n if (!userProjection) {\n return extent;\n }\n return transformExtent(extent, sourceProjection, userProjection);\n}\n/**\n * Return an extent transformed from the user projection. If no user projection\n * is set, the original extent is returned.\n * @param {import(\"./extent.js\").Extent} extent Input extent.\n * @param {ProjectionLike} destProjection The destination projection.\n * @returns {import(\"./extent.js\").Extent} The input extent transformed.\n */\nexport function fromUserExtent(extent, destProjection) {\n if (!userProjection) {\n return extent;\n }\n return transformExtent(extent, userProjection, destProjection);\n}\n/**\n * Add transforms to and from EPSG:4326 and EPSG:3857. This function is called\n * by when this module is executed and should only need to be called again after\n * `clearAllProjections()` is called (e.g. in tests).\n */\nexport function addCommon() {\n // Add transformations that don't alter coordinates to convert within set of\n // projections with equal meaning.\n addEquivalentProjections(EPSG3857_PROJECTIONS);\n addEquivalentProjections(EPSG4326_PROJECTIONS);\n // Add transformations to convert EPSG:4326 like coordinates to EPSG:3857 like\n // coordinates and back.\n addEquivalentTransforms(EPSG4326_PROJECTIONS, EPSG3857_PROJECTIONS, fromEPSG4326, toEPSG4326);\n}\naddCommon();\n//# sourceMappingURL=proj.js.map","/**\n * @module ol/transform\n */\nimport { assert } from './asserts.js';\n/**\n * An array representing an affine 2d transformation for use with\n * {@link module:ol/transform} functions. The array has 6 elements.\n * @typedef {!Array} Transform\n * @api\n */\n/**\n * Collection of affine 2d transformation functions. The functions work on an\n * array of 6 elements. The element order is compatible with the [SVGMatrix\n * interface](https://developer.mozilla.org/en-US/docs/Web/API/SVGMatrix) and is\n * a subset (elements a to f) of a 3×3 matrix:\n * ```\n * [ a c e ]\n * [ b d f ]\n * [ 0 0 1 ]\n * ```\n */\n/**\n * @private\n * @type {Transform}\n */\nvar tmp_ = new Array(6);\n/**\n * Create an identity transform.\n * @return {!Transform} Identity transform.\n */\nexport function create() {\n return [1, 0, 0, 1, 0, 0];\n}\n/**\n * Resets the given transform to an identity transform.\n * @param {!Transform} transform Transform.\n * @return {!Transform} Transform.\n */\nexport function reset(transform) {\n return set(transform, 1, 0, 0, 1, 0, 0);\n}\n/**\n * Multiply the underlying matrices of two transforms and return the result in\n * the first transform.\n * @param {!Transform} transform1 Transform parameters of matrix 1.\n * @param {!Transform} transform2 Transform parameters of matrix 2.\n * @return {!Transform} transform1 multiplied with transform2.\n */\nexport function multiply(transform1, transform2) {\n var a1 = transform1[0];\n var b1 = transform1[1];\n var c1 = transform1[2];\n var d1 = transform1[3];\n var e1 = transform1[4];\n var f1 = transform1[5];\n var a2 = transform2[0];\n var b2 = transform2[1];\n var c2 = transform2[2];\n var d2 = transform2[3];\n var e2 = transform2[4];\n var f2 = transform2[5];\n transform1[0] = a1 * a2 + c1 * b2;\n transform1[1] = b1 * a2 + d1 * b2;\n transform1[2] = a1 * c2 + c1 * d2;\n transform1[3] = b1 * c2 + d1 * d2;\n transform1[4] = a1 * e2 + c1 * f2 + e1;\n transform1[5] = b1 * e2 + d1 * f2 + f1;\n return transform1;\n}\n/**\n * Set the transform components a-f on a given transform.\n * @param {!Transform} transform Transform.\n * @param {number} a The a component of the transform.\n * @param {number} b The b component of the transform.\n * @param {number} c The c component of the transform.\n * @param {number} d The d component of the transform.\n * @param {number} e The e component of the transform.\n * @param {number} f The f component of the transform.\n * @return {!Transform} Matrix with transform applied.\n */\nexport function set(transform, a, b, c, d, e, f) {\n transform[0] = a;\n transform[1] = b;\n transform[2] = c;\n transform[3] = d;\n transform[4] = e;\n transform[5] = f;\n return transform;\n}\n/**\n * Set transform on one matrix from another matrix.\n * @param {!Transform} transform1 Matrix to set transform to.\n * @param {!Transform} transform2 Matrix to set transform from.\n * @return {!Transform} transform1 with transform from transform2 applied.\n */\nexport function setFromArray(transform1, transform2) {\n transform1[0] = transform2[0];\n transform1[1] = transform2[1];\n transform1[2] = transform2[2];\n transform1[3] = transform2[3];\n transform1[4] = transform2[4];\n transform1[5] = transform2[5];\n return transform1;\n}\n/**\n * Transforms the given coordinate with the given transform returning the\n * resulting, transformed coordinate. The coordinate will be modified in-place.\n *\n * @param {Transform} transform The transformation.\n * @param {import(\"./coordinate.js\").Coordinate|import(\"./pixel.js\").Pixel} coordinate The coordinate to transform.\n * @return {import(\"./coordinate.js\").Coordinate|import(\"./pixel.js\").Pixel} return coordinate so that operations can be\n * chained together.\n */\nexport function apply(transform, coordinate) {\n var x = coordinate[0];\n var y = coordinate[1];\n coordinate[0] = transform[0] * x + transform[2] * y + transform[4];\n coordinate[1] = transform[1] * x + transform[3] * y + transform[5];\n return coordinate;\n}\n/**\n * Applies rotation to the given transform.\n * @param {!Transform} transform Transform.\n * @param {number} angle Angle in radians.\n * @return {!Transform} The rotated transform.\n */\nexport function rotate(transform, angle) {\n var cos = Math.cos(angle);\n var sin = Math.sin(angle);\n return multiply(transform, set(tmp_, cos, sin, -sin, cos, 0, 0));\n}\n/**\n * Applies scale to a given transform.\n * @param {!Transform} transform Transform.\n * @param {number} x Scale factor x.\n * @param {number} y Scale factor y.\n * @return {!Transform} The scaled transform.\n */\nexport function scale(transform, x, y) {\n return multiply(transform, set(tmp_, x, 0, 0, y, 0, 0));\n}\n/**\n * Creates a scale transform.\n * @param {!Transform} target Transform to overwrite.\n * @param {number} x Scale factor x.\n * @param {number} y Scale factor y.\n * @return {!Transform} The scale transform.\n */\nexport function makeScale(target, x, y) {\n return set(target, x, 0, 0, y, 0, 0);\n}\n/**\n * Applies translation to the given transform.\n * @param {!Transform} transform Transform.\n * @param {number} dx Translation x.\n * @param {number} dy Translation y.\n * @return {!Transform} The translated transform.\n */\nexport function translate(transform, dx, dy) {\n return multiply(transform, set(tmp_, 1, 0, 0, 1, dx, dy));\n}\n/**\n * Creates a composite transform given an initial translation, scale, rotation, and\n * final translation (in that order only, not commutative).\n * @param {!Transform} transform The transform (will be modified in place).\n * @param {number} dx1 Initial translation x.\n * @param {number} dy1 Initial translation y.\n * @param {number} sx Scale factor x.\n * @param {number} sy Scale factor y.\n * @param {number} angle Rotation (in counter-clockwise radians).\n * @param {number} dx2 Final translation x.\n * @param {number} dy2 Final translation y.\n * @return {!Transform} The composite transform.\n */\nexport function compose(transform, dx1, dy1, sx, sy, angle, dx2, dy2) {\n var sin = Math.sin(angle);\n var cos = Math.cos(angle);\n transform[0] = sx * cos;\n transform[1] = sy * sin;\n transform[2] = -sx * sin;\n transform[3] = sy * cos;\n transform[4] = dx2 * sx * cos - dy2 * sx * sin + dx1;\n transform[5] = dx2 * sy * sin + dy2 * sy * cos + dy1;\n return transform;\n}\n/**\n * Creates a composite transform given an initial translation, scale, rotation, and\n * final translation (in that order only, not commutative). The resulting transform\n * string can be applied as `transform` porperty of an HTMLElement's style.\n * @param {number} dx1 Initial translation x.\n * @param {number} dy1 Initial translation y.\n * @param {number} sx Scale factor x.\n * @param {number} sy Scale factor y.\n * @param {number} angle Rotation (in counter-clockwise radians).\n * @param {number} dx2 Final translation x.\n * @param {number} dy2 Final translation y.\n * @return {string} The composite css transform.\n * @api\n */\nexport function composeCssTransform(dx1, dy1, sx, sy, angle, dx2, dy2) {\n return toString(compose(create(), dx1, dy1, sx, sy, angle, dx2, dy2));\n}\n/**\n * Invert the given transform.\n * @param {!Transform} source The source transform to invert.\n * @return {!Transform} The inverted (source) transform.\n */\nexport function invert(source) {\n return makeInverse(source, source);\n}\n/**\n * Invert the given transform.\n * @param {!Transform} target Transform to be set as the inverse of\n * the source transform.\n * @param {!Transform} source The source transform to invert.\n * @return {!Transform} The inverted (target) transform.\n */\nexport function makeInverse(target, source) {\n var det = determinant(source);\n assert(det !== 0, 32); // Transformation matrix cannot be inverted\n var a = source[0];\n var b = source[1];\n var c = source[2];\n var d = source[3];\n var e = source[4];\n var f = source[5];\n target[0] = d / det;\n target[1] = -b / det;\n target[2] = -c / det;\n target[3] = a / det;\n target[4] = (c * f - d * e) / det;\n target[5] = -(a * f - b * e) / det;\n return target;\n}\n/**\n * Returns the determinant of the given matrix.\n * @param {!Transform} mat Matrix.\n * @return {number} Determinant.\n */\nexport function determinant(mat) {\n return mat[0] * mat[3] - mat[1] * mat[2];\n}\n/**\n * A string version of the transform. This can be used\n * for CSS transforms.\n * @param {!Transform} mat Matrix.\n * @return {string} The transform as a string.\n */\nexport function toString(mat) {\n return 'matrix(' + mat.join(', ') + ')';\n}\n//# sourceMappingURL=transform.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/geom/Geometry\n */\nimport { abstract } from '../util.js';\nimport BaseObject from '../Object.js';\nimport { createEmpty, getHeight, returnOrUpdate } from '../extent.js';\nimport { transform2D } from './flat/transform.js';\nimport { get as getProjection, getTransform } from '../proj.js';\nimport Units from '../proj/Units.js';\nimport { create as createTransform, compose as composeTransform } from '../transform.js';\nimport { memoizeOne } from '../functions.js';\n/**\n * @type {import(\"../transform.js\").Transform}\n */\nvar tmpTransform = createTransform();\n/**\n * @classdesc\n * Abstract base class; normally only used for creating subclasses and not\n * instantiated in apps.\n * Base class for vector geometries.\n *\n * To get notified of changes to the geometry, register a listener for the\n * generic `change` event on your geometry instance.\n *\n * @abstract\n * @api\n */\nvar Geometry = /** @class */ (function (_super) {\n __extends(Geometry, _super);\n function Geometry() {\n var _this = _super.call(this) || this;\n /**\n * @private\n * @type {import(\"../extent.js\").Extent}\n */\n _this.extent_ = createEmpty();\n /**\n * @private\n * @type {number}\n */\n _this.extentRevision_ = -1;\n /**\n * @protected\n * @type {number}\n */\n _this.simplifiedGeometryMaxMinSquaredTolerance = 0;\n /**\n * @protected\n * @type {number}\n */\n _this.simplifiedGeometryRevision = 0;\n /**\n * Get a transformed and simplified version of the geometry.\n * @abstract\n * @param {number} revision The geometry revision.\n * @param {number} squaredTolerance Squared tolerance.\n * @param {import(\"../proj.js\").TransformFunction} [opt_transform] Optional transform function.\n * @return {Geometry} Simplified geometry.\n */\n _this.simplifyTransformedInternal = memoizeOne(function (revision, squaredTolerance, opt_transform) {\n if (!opt_transform) {\n return this.getSimplifiedGeometry(squaredTolerance);\n }\n var clone = this.clone();\n clone.applyTransform(opt_transform);\n return clone.getSimplifiedGeometry(squaredTolerance);\n });\n return _this;\n }\n /**\n * Get a transformed and simplified version of the geometry.\n * @abstract\n * @param {number} squaredTolerance Squared tolerance.\n * @param {import(\"../proj.js\").TransformFunction} [opt_transform] Optional transform function.\n * @return {Geometry} Simplified geometry.\n */\n Geometry.prototype.simplifyTransformed = function (squaredTolerance, opt_transform) {\n return this.simplifyTransformedInternal(this.getRevision(), squaredTolerance, opt_transform);\n };\n /**\n * Make a complete copy of the geometry.\n * @abstract\n * @return {!Geometry} Clone.\n */\n Geometry.prototype.clone = function () {\n return abstract();\n };\n /**\n * @abstract\n * @param {number} x X.\n * @param {number} y Y.\n * @param {import(\"../coordinate.js\").Coordinate} closestPoint Closest point.\n * @param {number} minSquaredDistance Minimum squared distance.\n * @return {number} Minimum squared distance.\n */\n Geometry.prototype.closestPointXY = function (x, y, closestPoint, minSquaredDistance) {\n return abstract();\n };\n /**\n * @param {number} x X.\n * @param {number} y Y.\n * @return {boolean} Contains (x, y).\n */\n Geometry.prototype.containsXY = function (x, y) {\n var coord = this.getClosestPoint([x, y]);\n return coord[0] === x && coord[1] === y;\n };\n /**\n * Return the closest point of the geometry to the passed point as\n * {@link module:ol/coordinate~Coordinate coordinate}.\n * @param {import(\"../coordinate.js\").Coordinate} point Point.\n * @param {import(\"../coordinate.js\").Coordinate=} opt_closestPoint Closest point.\n * @return {import(\"../coordinate.js\").Coordinate} Closest point.\n * @api\n */\n Geometry.prototype.getClosestPoint = function (point, opt_closestPoint) {\n var closestPoint = opt_closestPoint ? opt_closestPoint : [NaN, NaN];\n this.closestPointXY(point[0], point[1], closestPoint, Infinity);\n return closestPoint;\n };\n /**\n * Returns true if this geometry includes the specified coordinate. If the\n * coordinate is on the boundary of the geometry, returns false.\n * @param {import(\"../coordinate.js\").Coordinate} coordinate Coordinate.\n * @return {boolean} Contains coordinate.\n * @api\n */\n Geometry.prototype.intersectsCoordinate = function (coordinate) {\n return this.containsXY(coordinate[0], coordinate[1]);\n };\n /**\n * @abstract\n * @param {import(\"../extent.js\").Extent} extent Extent.\n * @protected\n * @return {import(\"../extent.js\").Extent} extent Extent.\n */\n Geometry.prototype.computeExtent = function (extent) {\n return abstract();\n };\n /**\n * Get the extent of the geometry.\n * @param {import(\"../extent.js\").Extent=} opt_extent Extent.\n * @return {import(\"../extent.js\").Extent} extent Extent.\n * @api\n */\n Geometry.prototype.getExtent = function (opt_extent) {\n if (this.extentRevision_ != this.getRevision()) {\n this.extent_ = this.computeExtent(this.extent_);\n this.extentRevision_ = this.getRevision();\n }\n return returnOrUpdate(this.extent_, opt_extent);\n };\n /**\n * Rotate the geometry around a given coordinate. This modifies the geometry\n * coordinates in place.\n * @abstract\n * @param {number} angle Rotation angle in radians.\n * @param {import(\"../coordinate.js\").Coordinate} anchor The rotation center.\n * @api\n */\n Geometry.prototype.rotate = function (angle, anchor) {\n abstract();\n };\n /**\n * Scale the geometry (with an optional origin). This modifies the geometry\n * coordinates in place.\n * @abstract\n * @param {number} sx The scaling factor in the x-direction.\n * @param {number=} opt_sy The scaling factor in the y-direction (defaults to\n * sx).\n * @param {import(\"../coordinate.js\").Coordinate=} opt_anchor The scale origin (defaults to the center\n * of the geometry extent).\n * @api\n */\n Geometry.prototype.scale = function (sx, opt_sy, opt_anchor) {\n abstract();\n };\n /**\n * Create a simplified version of this geometry. For linestrings, this uses\n * the [Douglas Peucker](https://en.wikipedia.org/wiki/Ramer-Douglas-Peucker_algorithm)\n * algorithm. For polygons, a quantization-based\n * simplification is used to preserve topology.\n * @param {number} tolerance The tolerance distance for simplification.\n * @return {Geometry} A new, simplified version of the original geometry.\n * @api\n */\n Geometry.prototype.simplify = function (tolerance) {\n return this.getSimplifiedGeometry(tolerance * tolerance);\n };\n /**\n * Create a simplified version of this geometry using the Douglas Peucker\n * algorithm.\n * See https://en.wikipedia.org/wiki/Ramer-Douglas-Peucker_algorithm.\n * @abstract\n * @param {number} squaredTolerance Squared tolerance.\n * @return {Geometry} Simplified geometry.\n */\n Geometry.prototype.getSimplifiedGeometry = function (squaredTolerance) {\n return abstract();\n };\n /**\n * Get the type of this geometry.\n * @abstract\n * @return {import(\"./GeometryType.js\").default} Geometry type.\n */\n Geometry.prototype.getType = function () {\n return abstract();\n };\n /**\n * Apply a transform function to the coordinates of the geometry.\n * The geometry is modified in place.\n * If you do not want the geometry modified in place, first `clone()` it and\n * then use this function on the clone.\n * @abstract\n * @param {import(\"../proj.js\").TransformFunction} transformFn Transform function.\n * Called with a flat array of geometry coordinates.\n */\n Geometry.prototype.applyTransform = function (transformFn) {\n abstract();\n };\n /**\n * Test if the geometry and the passed extent intersect.\n * @abstract\n * @param {import(\"../extent.js\").Extent} extent Extent.\n * @return {boolean} `true` if the geometry and the extent intersect.\n */\n Geometry.prototype.intersectsExtent = function (extent) {\n return abstract();\n };\n /**\n * Translate the geometry. This modifies the geometry coordinates in place. If\n * instead you want a new geometry, first `clone()` this geometry.\n * @abstract\n * @param {number} deltaX Delta X.\n * @param {number} deltaY Delta Y.\n * @api\n */\n Geometry.prototype.translate = function (deltaX, deltaY) {\n abstract();\n };\n /**\n * Transform each coordinate of the geometry from one coordinate reference\n * system to another. The geometry is modified in place.\n * For example, a line will be transformed to a line and a circle to a circle.\n * If you do not want the geometry modified in place, first `clone()` it and\n * then use this function on the clone.\n *\n * @param {import(\"../proj.js\").ProjectionLike} source The current projection. Can be a\n * string identifier or a {@link module:ol/proj/Projection~Projection} object.\n * @param {import(\"../proj.js\").ProjectionLike} destination The desired projection. Can be a\n * string identifier or a {@link module:ol/proj/Projection~Projection} object.\n * @return {Geometry} This geometry. Note that original geometry is\n * modified in place.\n * @api\n */\n Geometry.prototype.transform = function (source, destination) {\n /** @type {import(\"../proj/Projection.js\").default} */\n var sourceProj = getProjection(source);\n var transformFn = sourceProj.getUnits() == Units.TILE_PIXELS ?\n function (inCoordinates, outCoordinates, stride) {\n var pixelExtent = sourceProj.getExtent();\n var projectedExtent = sourceProj.getWorldExtent();\n var scale = getHeight(projectedExtent) / getHeight(pixelExtent);\n composeTransform(tmpTransform, projectedExtent[0], projectedExtent[3], scale, -scale, 0, 0, 0);\n transform2D(inCoordinates, 0, inCoordinates.length, stride, tmpTransform, outCoordinates);\n return getTransform(sourceProj, destination)(inCoordinates, outCoordinates, stride);\n } :\n getTransform(sourceProj, destination);\n this.applyTransform(transformFn);\n return this;\n };\n return Geometry;\n}(BaseObject));\nexport default Geometry;\n//# sourceMappingURL=Geometry.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/geom/SimpleGeometry\n */\nimport { abstract } from '../util.js';\nimport { createOrUpdateFromFlatCoordinates, getCenter } from '../extent.js';\nimport Geometry from './Geometry.js';\nimport GeometryLayout from './GeometryLayout.js';\nimport { rotate, scale, translate, transform2D } from './flat/transform.js';\n/**\n * @classdesc\n * Abstract base class; only used for creating subclasses; do not instantiate\n * in apps, as cannot be rendered.\n *\n * @abstract\n * @api\n */\nvar SimpleGeometry = /** @class */ (function (_super) {\n __extends(SimpleGeometry, _super);\n function SimpleGeometry() {\n var _this = _super.call(this) || this;\n /**\n * @protected\n * @type {GeometryLayout}\n */\n _this.layout = GeometryLayout.XY;\n /**\n * @protected\n * @type {number}\n */\n _this.stride = 2;\n /**\n * @protected\n * @type {Array}\n */\n _this.flatCoordinates = null;\n return _this;\n }\n /**\n * @inheritDoc\n */\n SimpleGeometry.prototype.computeExtent = function (extent) {\n return createOrUpdateFromFlatCoordinates(this.flatCoordinates, 0, this.flatCoordinates.length, this.stride, extent);\n };\n /**\n * @abstract\n * @return {Array<*>} Coordinates.\n */\n SimpleGeometry.prototype.getCoordinates = function () {\n return abstract();\n };\n /**\n * Return the first coordinate of the geometry.\n * @return {import(\"../coordinate.js\").Coordinate} First coordinate.\n * @api\n */\n SimpleGeometry.prototype.getFirstCoordinate = function () {\n return this.flatCoordinates.slice(0, this.stride);\n };\n /**\n * @return {Array} Flat coordinates.\n */\n SimpleGeometry.prototype.getFlatCoordinates = function () {\n return this.flatCoordinates;\n };\n /**\n * Return the last coordinate of the geometry.\n * @return {import(\"../coordinate.js\").Coordinate} Last point.\n * @api\n */\n SimpleGeometry.prototype.getLastCoordinate = function () {\n return this.flatCoordinates.slice(this.flatCoordinates.length - this.stride);\n };\n /**\n * Return the {@link module:ol/geom/GeometryLayout layout} of the geometry.\n * @return {GeometryLayout} Layout.\n * @api\n */\n SimpleGeometry.prototype.getLayout = function () {\n return this.layout;\n };\n /**\n * @inheritDoc\n */\n SimpleGeometry.prototype.getSimplifiedGeometry = function (squaredTolerance) {\n if (this.simplifiedGeometryRevision !== this.getRevision()) {\n this.simplifiedGeometryMaxMinSquaredTolerance = 0;\n this.simplifiedGeometryRevision = this.getRevision();\n }\n // If squaredTolerance is negative or if we know that simplification will not\n // have any effect then just return this.\n if (squaredTolerance < 0 ||\n (this.simplifiedGeometryMaxMinSquaredTolerance !== 0 &&\n squaredTolerance <= this.simplifiedGeometryMaxMinSquaredTolerance)) {\n return this;\n }\n var simplifiedGeometry = this.getSimplifiedGeometryInternal(squaredTolerance);\n var simplifiedFlatCoordinates = simplifiedGeometry.getFlatCoordinates();\n if (simplifiedFlatCoordinates.length < this.flatCoordinates.length) {\n return simplifiedGeometry;\n }\n else {\n // Simplification did not actually remove any coordinates. We now know\n // that any calls to getSimplifiedGeometry with a squaredTolerance less\n // than or equal to the current squaredTolerance will also not have any\n // effect. This allows us to short circuit simplification (saving CPU\n // cycles) and prevents the cache of simplified geometries from filling\n // up with useless identical copies of this geometry (saving memory).\n this.simplifiedGeometryMaxMinSquaredTolerance = squaredTolerance;\n return this;\n }\n };\n /**\n * @param {number} squaredTolerance Squared tolerance.\n * @return {SimpleGeometry} Simplified geometry.\n * @protected\n */\n SimpleGeometry.prototype.getSimplifiedGeometryInternal = function (squaredTolerance) {\n return this;\n };\n /**\n * @return {number} Stride.\n */\n SimpleGeometry.prototype.getStride = function () {\n return this.stride;\n };\n /**\n * @param {GeometryLayout} layout Layout.\n * @param {Array} flatCoordinates Flat coordinates.\n */\n SimpleGeometry.prototype.setFlatCoordinates = function (layout, flatCoordinates) {\n this.stride = getStrideForLayout(layout);\n this.layout = layout;\n this.flatCoordinates = flatCoordinates;\n };\n /**\n * @abstract\n * @param {!Array<*>} coordinates Coordinates.\n * @param {GeometryLayout=} opt_layout Layout.\n */\n SimpleGeometry.prototype.setCoordinates = function (coordinates, opt_layout) {\n abstract();\n };\n /**\n * @param {GeometryLayout|undefined} layout Layout.\n * @param {Array<*>} coordinates Coordinates.\n * @param {number} nesting Nesting.\n * @protected\n */\n SimpleGeometry.prototype.setLayout = function (layout, coordinates, nesting) {\n /** @type {number} */\n var stride;\n if (layout) {\n stride = getStrideForLayout(layout);\n }\n else {\n for (var i = 0; i < nesting; ++i) {\n if (coordinates.length === 0) {\n this.layout = GeometryLayout.XY;\n this.stride = 2;\n return;\n }\n else {\n coordinates = /** @type {Array} */ (coordinates[0]);\n }\n }\n stride = coordinates.length;\n layout = getLayoutForStride(stride);\n }\n this.layout = layout;\n this.stride = stride;\n };\n /**\n * Apply a transform function to the coordinates of the geometry.\n * The geometry is modified in place.\n * If you do not want the geometry modified in place, first `clone()` it and\n * then use this function on the clone.\n * @param {import(\"../proj.js\").TransformFunction} transformFn Transform function.\n * Called with a flat array of geometry coordinates.\n * @api\n */\n SimpleGeometry.prototype.applyTransform = function (transformFn) {\n if (this.flatCoordinates) {\n transformFn(this.flatCoordinates, this.flatCoordinates, this.stride);\n this.changed();\n }\n };\n /**\n * Rotate the geometry around a given coordinate. This modifies the geometry\n * coordinates in place.\n * @param {number} angle Rotation angle in radians.\n * @param {import(\"../coordinate.js\").Coordinate} anchor The rotation center.\n * @api\n */\n SimpleGeometry.prototype.rotate = function (angle, anchor) {\n var flatCoordinates = this.getFlatCoordinates();\n if (flatCoordinates) {\n var stride = this.getStride();\n rotate(flatCoordinates, 0, flatCoordinates.length, stride, angle, anchor, flatCoordinates);\n this.changed();\n }\n };\n /**\n * Scale the geometry (with an optional origin). This modifies the geometry\n * coordinates in place.\n * @param {number} sx The scaling factor in the x-direction.\n * @param {number=} opt_sy The scaling factor in the y-direction (defaults to\n * sx).\n * @param {import(\"../coordinate.js\").Coordinate=} opt_anchor The scale origin (defaults to the center\n * of the geometry extent).\n * @api\n */\n SimpleGeometry.prototype.scale = function (sx, opt_sy, opt_anchor) {\n var sy = opt_sy;\n if (sy === undefined) {\n sy = sx;\n }\n var anchor = opt_anchor;\n if (!anchor) {\n anchor = getCenter(this.getExtent());\n }\n var flatCoordinates = this.getFlatCoordinates();\n if (flatCoordinates) {\n var stride = this.getStride();\n scale(flatCoordinates, 0, flatCoordinates.length, stride, sx, sy, anchor, flatCoordinates);\n this.changed();\n }\n };\n /**\n * Translate the geometry. This modifies the geometry coordinates in place. If\n * instead you want a new geometry, first `clone()` this geometry.\n * @param {number} deltaX Delta X.\n * @param {number} deltaY Delta Y.\n * @api\n */\n SimpleGeometry.prototype.translate = function (deltaX, deltaY) {\n var flatCoordinates = this.getFlatCoordinates();\n if (flatCoordinates) {\n var stride = this.getStride();\n translate(flatCoordinates, 0, flatCoordinates.length, stride, deltaX, deltaY, flatCoordinates);\n this.changed();\n }\n };\n return SimpleGeometry;\n}(Geometry));\n/**\n * @param {number} stride Stride.\n * @return {GeometryLayout} layout Layout.\n */\nfunction getLayoutForStride(stride) {\n var layout;\n if (stride == 2) {\n layout = GeometryLayout.XY;\n }\n else if (stride == 3) {\n layout = GeometryLayout.XYZ;\n }\n else if (stride == 4) {\n layout = GeometryLayout.XYZM;\n }\n return (\n /** @type {GeometryLayout} */ (layout));\n}\n/**\n * @param {GeometryLayout} layout Layout.\n * @return {number} Stride.\n */\nexport function getStrideForLayout(layout) {\n var stride;\n if (layout == GeometryLayout.XY) {\n stride = 2;\n }\n else if (layout == GeometryLayout.XYZ || layout == GeometryLayout.XYM) {\n stride = 3;\n }\n else if (layout == GeometryLayout.XYZM) {\n stride = 4;\n }\n return /** @type {number} */ (stride);\n}\n/**\n * @param {SimpleGeometry} simpleGeometry Simple geometry.\n * @param {import(\"../transform.js\").Transform} transform Transform.\n * @param {Array=} opt_dest Destination.\n * @return {Array} Transformed flat coordinates.\n */\nexport function transformGeom2D(simpleGeometry, transform, opt_dest) {\n var flatCoordinates = simpleGeometry.getFlatCoordinates();\n if (!flatCoordinates) {\n return null;\n }\n else {\n var stride = simpleGeometry.getStride();\n return transform2D(flatCoordinates, 0, flatCoordinates.length, stride, transform, opt_dest);\n }\n}\nexport default SimpleGeometry;\n//# sourceMappingURL=SimpleGeometry.js.map","/**\n * @module ol/geom/flat/area\n */\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @return {number} Area.\n */\nexport function linearRing(flatCoordinates, offset, end, stride) {\n var twiceArea = 0;\n var x1 = flatCoordinates[end - stride];\n var y1 = flatCoordinates[end - stride + 1];\n for (; offset < end; offset += stride) {\n var x2 = flatCoordinates[offset];\n var y2 = flatCoordinates[offset + 1];\n twiceArea += y1 * x2 - x1 * y2;\n x1 = x2;\n y1 = y2;\n }\n return twiceArea / 2;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @return {number} Area.\n */\nexport function linearRings(flatCoordinates, offset, ends, stride) {\n var area = 0;\n for (var i = 0, ii = ends.length; i < ii; ++i) {\n var end = ends[i];\n area += linearRing(flatCoordinates, offset, end, stride);\n offset = end;\n }\n return area;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Endss.\n * @param {number} stride Stride.\n * @return {number} Area.\n */\nexport function linearRingss(flatCoordinates, offset, endss, stride) {\n var area = 0;\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n var ends = endss[i];\n area += linearRings(flatCoordinates, offset, ends, stride);\n offset = ends[ends.length - 1];\n }\n return area;\n}\n//# sourceMappingURL=area.js.map","/**\n * @module ol/geom/flat/closest\n */\nimport { lerp, squaredDistance as squaredDx } from '../../math.js';\n/**\n * Returns the point on the 2D line segment flatCoordinates[offset1] to\n * flatCoordinates[offset2] that is closest to the point (x, y). Extra\n * dimensions are linearly interpolated.\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset1 Offset 1.\n * @param {number} offset2 Offset 2.\n * @param {number} stride Stride.\n * @param {number} x X.\n * @param {number} y Y.\n * @param {Array} closestPoint Closest point.\n */\nfunction assignClosest(flatCoordinates, offset1, offset2, stride, x, y, closestPoint) {\n var x1 = flatCoordinates[offset1];\n var y1 = flatCoordinates[offset1 + 1];\n var dx = flatCoordinates[offset2] - x1;\n var dy = flatCoordinates[offset2 + 1] - y1;\n var offset;\n if (dx === 0 && dy === 0) {\n offset = offset1;\n }\n else {\n var t = ((x - x1) * dx + (y - y1) * dy) / (dx * dx + dy * dy);\n if (t > 1) {\n offset = offset2;\n }\n else if (t > 0) {\n for (var i = 0; i < stride; ++i) {\n closestPoint[i] = lerp(flatCoordinates[offset1 + i], flatCoordinates[offset2 + i], t);\n }\n closestPoint.length = stride;\n return;\n }\n else {\n offset = offset1;\n }\n }\n for (var i = 0; i < stride; ++i) {\n closestPoint[i] = flatCoordinates[offset + i];\n }\n closestPoint.length = stride;\n}\n/**\n * Return the squared of the largest distance between any pair of consecutive\n * coordinates.\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} max Max squared delta.\n * @return {number} Max squared delta.\n */\nexport function maxSquaredDelta(flatCoordinates, offset, end, stride, max) {\n var x1 = flatCoordinates[offset];\n var y1 = flatCoordinates[offset + 1];\n for (offset += stride; offset < end; offset += stride) {\n var x2 = flatCoordinates[offset];\n var y2 = flatCoordinates[offset + 1];\n var squaredDelta = squaredDx(x1, y1, x2, y2);\n if (squaredDelta > max) {\n max = squaredDelta;\n }\n x1 = x2;\n y1 = y2;\n }\n return max;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {number} max Max squared delta.\n * @return {number} Max squared delta.\n */\nexport function arrayMaxSquaredDelta(flatCoordinates, offset, ends, stride, max) {\n for (var i = 0, ii = ends.length; i < ii; ++i) {\n var end = ends[i];\n max = maxSquaredDelta(flatCoordinates, offset, end, stride, max);\n offset = end;\n }\n return max;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Endss.\n * @param {number} stride Stride.\n * @param {number} max Max squared delta.\n * @return {number} Max squared delta.\n */\nexport function multiArrayMaxSquaredDelta(flatCoordinates, offset, endss, stride, max) {\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n var ends = endss[i];\n max = arrayMaxSquaredDelta(flatCoordinates, offset, ends, stride, max);\n offset = ends[ends.length - 1];\n }\n return max;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} maxDelta Max delta.\n * @param {boolean} isRing Is ring.\n * @param {number} x X.\n * @param {number} y Y.\n * @param {Array} closestPoint Closest point.\n * @param {number} minSquaredDistance Minimum squared distance.\n * @param {Array=} opt_tmpPoint Temporary point object.\n * @return {number} Minimum squared distance.\n */\nexport function assignClosestPoint(flatCoordinates, offset, end, stride, maxDelta, isRing, x, y, closestPoint, minSquaredDistance, opt_tmpPoint) {\n if (offset == end) {\n return minSquaredDistance;\n }\n var i, squaredDistance;\n if (maxDelta === 0) {\n // All points are identical, so just test the first point.\n squaredDistance = squaredDx(x, y, flatCoordinates[offset], flatCoordinates[offset + 1]);\n if (squaredDistance < minSquaredDistance) {\n for (i = 0; i < stride; ++i) {\n closestPoint[i] = flatCoordinates[offset + i];\n }\n closestPoint.length = stride;\n return squaredDistance;\n }\n else {\n return minSquaredDistance;\n }\n }\n var tmpPoint = opt_tmpPoint ? opt_tmpPoint : [NaN, NaN];\n var index = offset + stride;\n while (index < end) {\n assignClosest(flatCoordinates, index - stride, index, stride, x, y, tmpPoint);\n squaredDistance = squaredDx(x, y, tmpPoint[0], tmpPoint[1]);\n if (squaredDistance < minSquaredDistance) {\n minSquaredDistance = squaredDistance;\n for (i = 0; i < stride; ++i) {\n closestPoint[i] = tmpPoint[i];\n }\n closestPoint.length = stride;\n index += stride;\n }\n else {\n // Skip ahead multiple points, because we know that all the skipped\n // points cannot be any closer than the closest point we have found so\n // far. We know this because we know how close the current point is, how\n // close the closest point we have found so far is, and the maximum\n // distance between consecutive points. For example, if we're currently\n // at distance 10, the best we've found so far is 3, and that the maximum\n // distance between consecutive points is 2, then we'll need to skip at\n // least (10 - 3) / 2 == 3 (rounded down) points to have any chance of\n // finding a closer point. We use Math.max(..., 1) to ensure that we\n // always advance at least one point, to avoid an infinite loop.\n index += stride * Math.max(((Math.sqrt(squaredDistance) -\n Math.sqrt(minSquaredDistance)) / maxDelta) | 0, 1);\n }\n }\n if (isRing) {\n // Check the closing segment.\n assignClosest(flatCoordinates, end - stride, offset, stride, x, y, tmpPoint);\n squaredDistance = squaredDx(x, y, tmpPoint[0], tmpPoint[1]);\n if (squaredDistance < minSquaredDistance) {\n minSquaredDistance = squaredDistance;\n for (i = 0; i < stride; ++i) {\n closestPoint[i] = tmpPoint[i];\n }\n closestPoint.length = stride;\n }\n }\n return minSquaredDistance;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {number} maxDelta Max delta.\n * @param {boolean} isRing Is ring.\n * @param {number} x X.\n * @param {number} y Y.\n * @param {Array} closestPoint Closest point.\n * @param {number} minSquaredDistance Minimum squared distance.\n * @param {Array=} opt_tmpPoint Temporary point object.\n * @return {number} Minimum squared distance.\n */\nexport function assignClosestArrayPoint(flatCoordinates, offset, ends, stride, maxDelta, isRing, x, y, closestPoint, minSquaredDistance, opt_tmpPoint) {\n var tmpPoint = opt_tmpPoint ? opt_tmpPoint : [NaN, NaN];\n for (var i = 0, ii = ends.length; i < ii; ++i) {\n var end = ends[i];\n minSquaredDistance = assignClosestPoint(flatCoordinates, offset, end, stride, maxDelta, isRing, x, y, closestPoint, minSquaredDistance, tmpPoint);\n offset = end;\n }\n return minSquaredDistance;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Endss.\n * @param {number} stride Stride.\n * @param {number} maxDelta Max delta.\n * @param {boolean} isRing Is ring.\n * @param {number} x X.\n * @param {number} y Y.\n * @param {Array} closestPoint Closest point.\n * @param {number} minSquaredDistance Minimum squared distance.\n * @param {Array=} opt_tmpPoint Temporary point object.\n * @return {number} Minimum squared distance.\n */\nexport function assignClosestMultiArrayPoint(flatCoordinates, offset, endss, stride, maxDelta, isRing, x, y, closestPoint, minSquaredDistance, opt_tmpPoint) {\n var tmpPoint = opt_tmpPoint ? opt_tmpPoint : [NaN, NaN];\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n var ends = endss[i];\n minSquaredDistance = assignClosestArrayPoint(flatCoordinates, offset, ends, stride, maxDelta, isRing, x, y, closestPoint, minSquaredDistance, tmpPoint);\n offset = ends[ends.length - 1];\n }\n return minSquaredDistance;\n}\n//# sourceMappingURL=closest.js.map","/**\n * @module ol/geom/flat/deflate\n */\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {import(\"../../coordinate.js\").Coordinate} coordinate Coordinate.\n * @param {number} stride Stride.\n * @return {number} offset Offset.\n */\nexport function deflateCoordinate(flatCoordinates, offset, coordinate, stride) {\n for (var i = 0, ii = coordinate.length; i < ii; ++i) {\n flatCoordinates[offset++] = coordinate[i];\n }\n return offset;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} coordinates Coordinates.\n * @param {number} stride Stride.\n * @return {number} offset Offset.\n */\nexport function deflateCoordinates(flatCoordinates, offset, coordinates, stride) {\n for (var i = 0, ii = coordinates.length; i < ii; ++i) {\n var coordinate = coordinates[i];\n for (var j = 0; j < stride; ++j) {\n flatCoordinates[offset++] = coordinate[j];\n }\n }\n return offset;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} coordinatess Coordinatess.\n * @param {number} stride Stride.\n * @param {Array=} opt_ends Ends.\n * @return {Array} Ends.\n */\nexport function deflateCoordinatesArray(flatCoordinates, offset, coordinatess, stride, opt_ends) {\n var ends = opt_ends ? opt_ends : [];\n var i = 0;\n for (var j = 0, jj = coordinatess.length; j < jj; ++j) {\n var end = deflateCoordinates(flatCoordinates, offset, coordinatess[j], stride);\n ends[i++] = end;\n offset = end;\n }\n ends.length = i;\n return ends;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>>} coordinatesss Coordinatesss.\n * @param {number} stride Stride.\n * @param {Array>=} opt_endss Endss.\n * @return {Array>} Endss.\n */\nexport function deflateMultiCoordinatesArray(flatCoordinates, offset, coordinatesss, stride, opt_endss) {\n var endss = opt_endss ? opt_endss : [];\n var i = 0;\n for (var j = 0, jj = coordinatesss.length; j < jj; ++j) {\n var ends = deflateCoordinatesArray(flatCoordinates, offset, coordinatesss[j], stride, endss[i]);\n endss[i++] = ends;\n offset = ends[ends.length - 1];\n }\n endss.length = i;\n return endss;\n}\n//# sourceMappingURL=deflate.js.map","/**\n * @module ol/geom/flat/inflate\n */\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {Array=} opt_coordinates Coordinates.\n * @return {Array} Coordinates.\n */\nexport function inflateCoordinates(flatCoordinates, offset, end, stride, opt_coordinates) {\n var coordinates = opt_coordinates !== undefined ? opt_coordinates : [];\n var i = 0;\n for (var j = offset; j < end; j += stride) {\n coordinates[i++] = flatCoordinates.slice(j, j + stride);\n }\n coordinates.length = i;\n return coordinates;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {Array>=} opt_coordinatess Coordinatess.\n * @return {Array>} Coordinatess.\n */\nexport function inflateCoordinatesArray(flatCoordinates, offset, ends, stride, opt_coordinatess) {\n var coordinatess = opt_coordinatess !== undefined ? opt_coordinatess : [];\n var i = 0;\n for (var j = 0, jj = ends.length; j < jj; ++j) {\n var end = ends[j];\n coordinatess[i++] = inflateCoordinates(flatCoordinates, offset, end, stride, coordinatess[i]);\n offset = end;\n }\n coordinatess.length = i;\n return coordinatess;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Endss.\n * @param {number} stride Stride.\n * @param {Array>>=} opt_coordinatesss\n * Coordinatesss.\n * @return {Array>>} Coordinatesss.\n */\nexport function inflateMultiCoordinatesArray(flatCoordinates, offset, endss, stride, opt_coordinatesss) {\n var coordinatesss = opt_coordinatesss !== undefined ? opt_coordinatesss : [];\n var i = 0;\n for (var j = 0, jj = endss.length; j < jj; ++j) {\n var ends = endss[j];\n coordinatesss[i++] = inflateCoordinatesArray(flatCoordinates, offset, ends, stride, coordinatesss[i]);\n offset = ends[ends.length - 1];\n }\n coordinatesss.length = i;\n return coordinatesss;\n}\n//# sourceMappingURL=inflate.js.map","/**\n * @module ol/geom/flat/simplify\n */\n// Based on simplify-js https://github.com/mourner/simplify-js\n// Copyright (c) 2012, Vladimir Agafonkin\n// All rights reserved.\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are met:\n//\n// 1. Redistributions of source code must retain the above copyright notice,\n// this list of conditions and the following disclaimer.\n//\n// 2. Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE\n// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n// POSSIBILITY OF SUCH DAMAGE.\nimport { squaredSegmentDistance, squaredDistance } from '../../math.js';\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} squaredTolerance Squared tolerance.\n * @param {boolean} highQuality Highest quality.\n * @param {Array=} opt_simplifiedFlatCoordinates Simplified flat\n * coordinates.\n * @return {Array} Simplified line string.\n */\nexport function simplifyLineString(flatCoordinates, offset, end, stride, squaredTolerance, highQuality, opt_simplifiedFlatCoordinates) {\n var simplifiedFlatCoordinates = opt_simplifiedFlatCoordinates !== undefined ?\n opt_simplifiedFlatCoordinates : [];\n if (!highQuality) {\n end = radialDistance(flatCoordinates, offset, end, stride, squaredTolerance, simplifiedFlatCoordinates, 0);\n flatCoordinates = simplifiedFlatCoordinates;\n offset = 0;\n stride = 2;\n }\n simplifiedFlatCoordinates.length = douglasPeucker(flatCoordinates, offset, end, stride, squaredTolerance, simplifiedFlatCoordinates, 0);\n return simplifiedFlatCoordinates;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} squaredTolerance Squared tolerance.\n * @param {Array} simplifiedFlatCoordinates Simplified flat\n * coordinates.\n * @param {number} simplifiedOffset Simplified offset.\n * @return {number} Simplified offset.\n */\nexport function douglasPeucker(flatCoordinates, offset, end, stride, squaredTolerance, simplifiedFlatCoordinates, simplifiedOffset) {\n var n = (end - offset) / stride;\n if (n < 3) {\n for (; offset < end; offset += stride) {\n simplifiedFlatCoordinates[simplifiedOffset++] =\n flatCoordinates[offset];\n simplifiedFlatCoordinates[simplifiedOffset++] =\n flatCoordinates[offset + 1];\n }\n return simplifiedOffset;\n }\n /** @type {Array} */\n var markers = new Array(n);\n markers[0] = 1;\n markers[n - 1] = 1;\n /** @type {Array} */\n var stack = [offset, end - stride];\n var index = 0;\n while (stack.length > 0) {\n var last = stack.pop();\n var first = stack.pop();\n var maxSquaredDistance = 0;\n var x1 = flatCoordinates[first];\n var y1 = flatCoordinates[first + 1];\n var x2 = flatCoordinates[last];\n var y2 = flatCoordinates[last + 1];\n for (var i = first + stride; i < last; i += stride) {\n var x = flatCoordinates[i];\n var y = flatCoordinates[i + 1];\n var squaredDistance_1 = squaredSegmentDistance(x, y, x1, y1, x2, y2);\n if (squaredDistance_1 > maxSquaredDistance) {\n index = i;\n maxSquaredDistance = squaredDistance_1;\n }\n }\n if (maxSquaredDistance > squaredTolerance) {\n markers[(index - offset) / stride] = 1;\n if (first + stride < index) {\n stack.push(first, index);\n }\n if (index + stride < last) {\n stack.push(index, last);\n }\n }\n }\n for (var i = 0; i < n; ++i) {\n if (markers[i]) {\n simplifiedFlatCoordinates[simplifiedOffset++] =\n flatCoordinates[offset + i * stride];\n simplifiedFlatCoordinates[simplifiedOffset++] =\n flatCoordinates[offset + i * stride + 1];\n }\n }\n return simplifiedOffset;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {number} squaredTolerance Squared tolerance.\n * @param {Array} simplifiedFlatCoordinates Simplified flat\n * coordinates.\n * @param {number} simplifiedOffset Simplified offset.\n * @param {Array} simplifiedEnds Simplified ends.\n * @return {number} Simplified offset.\n */\nexport function douglasPeuckerArray(flatCoordinates, offset, ends, stride, squaredTolerance, simplifiedFlatCoordinates, simplifiedOffset, simplifiedEnds) {\n for (var i = 0, ii = ends.length; i < ii; ++i) {\n var end = ends[i];\n simplifiedOffset = douglasPeucker(flatCoordinates, offset, end, stride, squaredTolerance, simplifiedFlatCoordinates, simplifiedOffset);\n simplifiedEnds.push(simplifiedOffset);\n offset = end;\n }\n return simplifiedOffset;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Endss.\n * @param {number} stride Stride.\n * @param {number} squaredTolerance Squared tolerance.\n * @param {Array} simplifiedFlatCoordinates Simplified flat\n * coordinates.\n * @param {number} simplifiedOffset Simplified offset.\n * @param {Array>} simplifiedEndss Simplified endss.\n * @return {number} Simplified offset.\n */\nexport function douglasPeuckerMultiArray(flatCoordinates, offset, endss, stride, squaredTolerance, simplifiedFlatCoordinates, simplifiedOffset, simplifiedEndss) {\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n var ends = endss[i];\n var simplifiedEnds = [];\n simplifiedOffset = douglasPeuckerArray(flatCoordinates, offset, ends, stride, squaredTolerance, simplifiedFlatCoordinates, simplifiedOffset, simplifiedEnds);\n simplifiedEndss.push(simplifiedEnds);\n offset = ends[ends.length - 1];\n }\n return simplifiedOffset;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} squaredTolerance Squared tolerance.\n * @param {Array} simplifiedFlatCoordinates Simplified flat\n * coordinates.\n * @param {number} simplifiedOffset Simplified offset.\n * @return {number} Simplified offset.\n */\nexport function radialDistance(flatCoordinates, offset, end, stride, squaredTolerance, simplifiedFlatCoordinates, simplifiedOffset) {\n if (end <= offset + stride) {\n // zero or one point, no simplification possible, so copy and return\n for (; offset < end; offset += stride) {\n simplifiedFlatCoordinates[simplifiedOffset++] = flatCoordinates[offset];\n simplifiedFlatCoordinates[simplifiedOffset++] =\n flatCoordinates[offset + 1];\n }\n return simplifiedOffset;\n }\n var x1 = flatCoordinates[offset];\n var y1 = flatCoordinates[offset + 1];\n // copy first point\n simplifiedFlatCoordinates[simplifiedOffset++] = x1;\n simplifiedFlatCoordinates[simplifiedOffset++] = y1;\n var x2 = x1;\n var y2 = y1;\n for (offset += stride; offset < end; offset += stride) {\n x2 = flatCoordinates[offset];\n y2 = flatCoordinates[offset + 1];\n if (squaredDistance(x1, y1, x2, y2) > squaredTolerance) {\n // copy point at offset\n simplifiedFlatCoordinates[simplifiedOffset++] = x2;\n simplifiedFlatCoordinates[simplifiedOffset++] = y2;\n x1 = x2;\n y1 = y2;\n }\n }\n if (x2 != x1 || y2 != y1) {\n // copy last point\n simplifiedFlatCoordinates[simplifiedOffset++] = x2;\n simplifiedFlatCoordinates[simplifiedOffset++] = y2;\n }\n return simplifiedOffset;\n}\n/**\n * @param {number} value Value.\n * @param {number} tolerance Tolerance.\n * @return {number} Rounded value.\n */\nexport function snap(value, tolerance) {\n return tolerance * Math.round(value / tolerance);\n}\n/**\n * Simplifies a line string using an algorithm designed by Tim Schaub.\n * Coordinates are snapped to the nearest value in a virtual grid and\n * consecutive duplicate coordinates are discarded. This effectively preserves\n * topology as the simplification of any subsection of a line string is\n * independent of the rest of the line string. This means that, for examples,\n * the common edge between two polygons will be simplified to the same line\n * string independently in both polygons. This implementation uses a single\n * pass over the coordinates and eliminates intermediate collinear points.\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} tolerance Tolerance.\n * @param {Array} simplifiedFlatCoordinates Simplified flat\n * coordinates.\n * @param {number} simplifiedOffset Simplified offset.\n * @return {number} Simplified offset.\n */\nexport function quantize(flatCoordinates, offset, end, stride, tolerance, simplifiedFlatCoordinates, simplifiedOffset) {\n // do nothing if the line is empty\n if (offset == end) {\n return simplifiedOffset;\n }\n // snap the first coordinate (P1)\n var x1 = snap(flatCoordinates[offset], tolerance);\n var y1 = snap(flatCoordinates[offset + 1], tolerance);\n offset += stride;\n // add the first coordinate to the output\n simplifiedFlatCoordinates[simplifiedOffset++] = x1;\n simplifiedFlatCoordinates[simplifiedOffset++] = y1;\n // find the next coordinate that does not snap to the same value as the first\n // coordinate (P2)\n var x2, y2;\n do {\n x2 = snap(flatCoordinates[offset], tolerance);\n y2 = snap(flatCoordinates[offset + 1], tolerance);\n offset += stride;\n if (offset == end) {\n // all coordinates snap to the same value, the line collapses to a point\n // push the last snapped value anyway to ensure that the output contains\n // at least two points\n // FIXME should we really return at least two points anyway?\n simplifiedFlatCoordinates[simplifiedOffset++] = x2;\n simplifiedFlatCoordinates[simplifiedOffset++] = y2;\n return simplifiedOffset;\n }\n } while (x2 == x1 && y2 == y1);\n while (offset < end) {\n // snap the next coordinate (P3)\n var x3 = snap(flatCoordinates[offset], tolerance);\n var y3 = snap(flatCoordinates[offset + 1], tolerance);\n offset += stride;\n // skip P3 if it is equal to P2\n if (x3 == x2 && y3 == y2) {\n continue;\n }\n // calculate the delta between P1 and P2\n var dx1 = x2 - x1;\n var dy1 = y2 - y1;\n // calculate the delta between P3 and P1\n var dx2 = x3 - x1;\n var dy2 = y3 - y1;\n // if P1, P2, and P3 are colinear and P3 is further from P1 than P2 is from\n // P1 in the same direction then P2 is on the straight line between P1 and\n // P3\n if ((dx1 * dy2 == dy1 * dx2) &&\n ((dx1 < 0 && dx2 < dx1) || dx1 == dx2 || (dx1 > 0 && dx2 > dx1)) &&\n ((dy1 < 0 && dy2 < dy1) || dy1 == dy2 || (dy1 > 0 && dy2 > dy1))) {\n // discard P2 and set P2 = P3\n x2 = x3;\n y2 = y3;\n continue;\n }\n // either P1, P2, and P3 are not colinear, or they are colinear but P3 is\n // between P3 and P1 or on the opposite half of the line to P2. add P2,\n // and continue with P1 = P2 and P2 = P3\n simplifiedFlatCoordinates[simplifiedOffset++] = x2;\n simplifiedFlatCoordinates[simplifiedOffset++] = y2;\n x1 = x2;\n y1 = y2;\n x2 = x3;\n y2 = y3;\n }\n // add the last point (P2)\n simplifiedFlatCoordinates[simplifiedOffset++] = x2;\n simplifiedFlatCoordinates[simplifiedOffset++] = y2;\n return simplifiedOffset;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {number} tolerance Tolerance.\n * @param {Array} simplifiedFlatCoordinates Simplified flat\n * coordinates.\n * @param {number} simplifiedOffset Simplified offset.\n * @param {Array} simplifiedEnds Simplified ends.\n * @return {number} Simplified offset.\n */\nexport function quantizeArray(flatCoordinates, offset, ends, stride, tolerance, simplifiedFlatCoordinates, simplifiedOffset, simplifiedEnds) {\n for (var i = 0, ii = ends.length; i < ii; ++i) {\n var end = ends[i];\n simplifiedOffset = quantize(flatCoordinates, offset, end, stride, tolerance, simplifiedFlatCoordinates, simplifiedOffset);\n simplifiedEnds.push(simplifiedOffset);\n offset = end;\n }\n return simplifiedOffset;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Endss.\n * @param {number} stride Stride.\n * @param {number} tolerance Tolerance.\n * @param {Array} simplifiedFlatCoordinates Simplified flat\n * coordinates.\n * @param {number} simplifiedOffset Simplified offset.\n * @param {Array>} simplifiedEndss Simplified endss.\n * @return {number} Simplified offset.\n */\nexport function quantizeMultiArray(flatCoordinates, offset, endss, stride, tolerance, simplifiedFlatCoordinates, simplifiedOffset, simplifiedEndss) {\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n var ends = endss[i];\n var simplifiedEnds = [];\n simplifiedOffset = quantizeArray(flatCoordinates, offset, ends, stride, tolerance, simplifiedFlatCoordinates, simplifiedOffset, simplifiedEnds);\n simplifiedEndss.push(simplifiedEnds);\n offset = ends[ends.length - 1];\n }\n return simplifiedOffset;\n}\n//# sourceMappingURL=simplify.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/geom/LinearRing\n */\nimport { closestSquaredDistanceXY } from '../extent.js';\nimport GeometryLayout from './GeometryLayout.js';\nimport GeometryType from './GeometryType.js';\nimport SimpleGeometry from './SimpleGeometry.js';\nimport { linearRing as linearRingArea } from './flat/area.js';\nimport { assignClosestPoint, maxSquaredDelta } from './flat/closest.js';\nimport { deflateCoordinates } from './flat/deflate.js';\nimport { inflateCoordinates } from './flat/inflate.js';\nimport { douglasPeucker } from './flat/simplify.js';\n/**\n * @classdesc\n * Linear ring geometry. Only used as part of polygon; cannot be rendered\n * on its own.\n *\n * @api\n */\nvar LinearRing = /** @class */ (function (_super) {\n __extends(LinearRing, _super);\n /**\n * @param {Array|Array} coordinates Coordinates.\n * For internal use, flat coordinates in combination with `opt_layout` are also accepted.\n * @param {GeometryLayout=} opt_layout Layout.\n */\n function LinearRing(coordinates, opt_layout) {\n var _this = _super.call(this) || this;\n /**\n * @private\n * @type {number}\n */\n _this.maxDelta_ = -1;\n /**\n * @private\n * @type {number}\n */\n _this.maxDeltaRevision_ = -1;\n if (opt_layout !== undefined && !Array.isArray(coordinates[0])) {\n _this.setFlatCoordinates(opt_layout, /** @type {Array} */ (coordinates));\n }\n else {\n _this.setCoordinates(/** @type {Array} */ (coordinates), opt_layout);\n }\n return _this;\n }\n /**\n * Make a complete copy of the geometry.\n * @return {!LinearRing} Clone.\n * @override\n * @api\n */\n LinearRing.prototype.clone = function () {\n return new LinearRing(this.flatCoordinates.slice(), this.layout);\n };\n /**\n * @inheritDoc\n */\n LinearRing.prototype.closestPointXY = function (x, y, closestPoint, minSquaredDistance) {\n if (minSquaredDistance < closestSquaredDistanceXY(this.getExtent(), x, y)) {\n return minSquaredDistance;\n }\n if (this.maxDeltaRevision_ != this.getRevision()) {\n this.maxDelta_ = Math.sqrt(maxSquaredDelta(this.flatCoordinates, 0, this.flatCoordinates.length, this.stride, 0));\n this.maxDeltaRevision_ = this.getRevision();\n }\n return assignClosestPoint(this.flatCoordinates, 0, this.flatCoordinates.length, this.stride, this.maxDelta_, true, x, y, closestPoint, minSquaredDistance);\n };\n /**\n * Return the area of the linear ring on projected plane.\n * @return {number} Area (on projected plane).\n * @api\n */\n LinearRing.prototype.getArea = function () {\n return linearRingArea(this.flatCoordinates, 0, this.flatCoordinates.length, this.stride);\n };\n /**\n * Return the coordinates of the linear ring.\n * @return {Array} Coordinates.\n * @override\n * @api\n */\n LinearRing.prototype.getCoordinates = function () {\n return inflateCoordinates(this.flatCoordinates, 0, this.flatCoordinates.length, this.stride);\n };\n /**\n * @inheritDoc\n */\n LinearRing.prototype.getSimplifiedGeometryInternal = function (squaredTolerance) {\n var simplifiedFlatCoordinates = [];\n simplifiedFlatCoordinates.length = douglasPeucker(this.flatCoordinates, 0, this.flatCoordinates.length, this.stride, squaredTolerance, simplifiedFlatCoordinates, 0);\n return new LinearRing(simplifiedFlatCoordinates, GeometryLayout.XY);\n };\n /**\n * @inheritDoc\n * @api\n */\n LinearRing.prototype.getType = function () {\n return GeometryType.LINEAR_RING;\n };\n /**\n * @inheritDoc\n */\n LinearRing.prototype.intersectsExtent = function (extent) {\n return false;\n };\n /**\n * Set the coordinates of the linear ring.\n * @param {!Array} coordinates Coordinates.\n * @param {GeometryLayout=} opt_layout Layout.\n * @override\n * @api\n */\n LinearRing.prototype.setCoordinates = function (coordinates, opt_layout) {\n this.setLayout(opt_layout, coordinates, 1);\n if (!this.flatCoordinates) {\n this.flatCoordinates = [];\n }\n this.flatCoordinates.length = deflateCoordinates(this.flatCoordinates, 0, coordinates, this.stride);\n this.changed();\n };\n return LinearRing;\n}(SimpleGeometry));\nexport default LinearRing;\n//# sourceMappingURL=LinearRing.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/geom/Point\n */\nimport { createOrUpdateFromCoordinate, containsXY } from '../extent.js';\nimport GeometryType from './GeometryType.js';\nimport SimpleGeometry from './SimpleGeometry.js';\nimport { deflateCoordinate } from './flat/deflate.js';\nimport { squaredDistance as squaredDx } from '../math.js';\n/**\n * @classdesc\n * Point geometry.\n *\n * @api\n */\nvar Point = /** @class */ (function (_super) {\n __extends(Point, _super);\n /**\n * @param {import(\"../coordinate.js\").Coordinate} coordinates Coordinates.\n * @param {import(\"./GeometryLayout.js\").default=} opt_layout Layout.\n */\n function Point(coordinates, opt_layout) {\n var _this = _super.call(this) || this;\n _this.setCoordinates(coordinates, opt_layout);\n return _this;\n }\n /**\n * Make a complete copy of the geometry.\n * @return {!Point} Clone.\n * @override\n * @api\n */\n Point.prototype.clone = function () {\n var point = new Point(this.flatCoordinates.slice(), this.layout);\n return point;\n };\n /**\n * @inheritDoc\n */\n Point.prototype.closestPointXY = function (x, y, closestPoint, minSquaredDistance) {\n var flatCoordinates = this.flatCoordinates;\n var squaredDistance = squaredDx(x, y, flatCoordinates[0], flatCoordinates[1]);\n if (squaredDistance < minSquaredDistance) {\n var stride = this.stride;\n for (var i = 0; i < stride; ++i) {\n closestPoint[i] = flatCoordinates[i];\n }\n closestPoint.length = stride;\n return squaredDistance;\n }\n else {\n return minSquaredDistance;\n }\n };\n /**\n * Return the coordinate of the point.\n * @return {import(\"../coordinate.js\").Coordinate} Coordinates.\n * @override\n * @api\n */\n Point.prototype.getCoordinates = function () {\n return !this.flatCoordinates ? [] : this.flatCoordinates.slice();\n };\n /**\n * @inheritDoc\n */\n Point.prototype.computeExtent = function (extent) {\n return createOrUpdateFromCoordinate(this.flatCoordinates, extent);\n };\n /**\n * @inheritDoc\n * @api\n */\n Point.prototype.getType = function () {\n return GeometryType.POINT;\n };\n /**\n * @inheritDoc\n * @api\n */\n Point.prototype.intersectsExtent = function (extent) {\n return containsXY(extent, this.flatCoordinates[0], this.flatCoordinates[1]);\n };\n /**\n * @inheritDoc\n * @api\n */\n Point.prototype.setCoordinates = function (coordinates, opt_layout) {\n this.setLayout(opt_layout, coordinates, 0);\n if (!this.flatCoordinates) {\n this.flatCoordinates = [];\n }\n this.flatCoordinates.length = deflateCoordinate(this.flatCoordinates, 0, coordinates, this.stride);\n this.changed();\n };\n return Point;\n}(SimpleGeometry));\nexport default Point;\n//# sourceMappingURL=Point.js.map","/**\n * @module ol/geom/flat/contains\n */\nimport { forEachCorner } from '../../extent.js';\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {import(\"../../extent.js\").Extent} extent Extent.\n * @return {boolean} Contains extent.\n */\nexport function linearRingContainsExtent(flatCoordinates, offset, end, stride, extent) {\n var outside = forEachCorner(extent, \n /**\n * @param {import(\"../../coordinate.js\").Coordinate} coordinate Coordinate.\n * @return {boolean} Contains (x, y).\n */\n function (coordinate) {\n return !linearRingContainsXY(flatCoordinates, offset, end, stride, coordinate[0], coordinate[1]);\n });\n return !outside;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {number} x X.\n * @param {number} y Y.\n * @return {boolean} Contains (x, y).\n */\nexport function linearRingContainsXY(flatCoordinates, offset, end, stride, x, y) {\n // http://geomalgorithms.com/a03-_inclusion.html\n // Copyright 2000 softSurfer, 2012 Dan Sunday\n // This code may be freely used and modified for any purpose\n // providing that this copyright notice is included with it.\n // SoftSurfer makes no warranty for this code, and cannot be held\n // liable for any real or imagined damage resulting from its use.\n // Users of this code must verify correctness for their application.\n var wn = 0;\n var x1 = flatCoordinates[end - stride];\n var y1 = flatCoordinates[end - stride + 1];\n for (; offset < end; offset += stride) {\n var x2 = flatCoordinates[offset];\n var y2 = flatCoordinates[offset + 1];\n if (y1 <= y) {\n if (y2 > y && ((x2 - x1) * (y - y1)) - ((x - x1) * (y2 - y1)) > 0) {\n wn++;\n }\n }\n else if (y2 <= y && ((x2 - x1) * (y - y1)) - ((x - x1) * (y2 - y1)) < 0) {\n wn--;\n }\n x1 = x2;\n y1 = y2;\n }\n return wn !== 0;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {number} x X.\n * @param {number} y Y.\n * @return {boolean} Contains (x, y).\n */\nexport function linearRingsContainsXY(flatCoordinates, offset, ends, stride, x, y) {\n if (ends.length === 0) {\n return false;\n }\n if (!linearRingContainsXY(flatCoordinates, offset, ends[0], stride, x, y)) {\n return false;\n }\n for (var i = 1, ii = ends.length; i < ii; ++i) {\n if (linearRingContainsXY(flatCoordinates, ends[i - 1], ends[i], stride, x, y)) {\n return false;\n }\n }\n return true;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Endss.\n * @param {number} stride Stride.\n * @param {number} x X.\n * @param {number} y Y.\n * @return {boolean} Contains (x, y).\n */\nexport function linearRingssContainsXY(flatCoordinates, offset, endss, stride, x, y) {\n if (endss.length === 0) {\n return false;\n }\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n var ends = endss[i];\n if (linearRingsContainsXY(flatCoordinates, offset, ends, stride, x, y)) {\n return true;\n }\n offset = ends[ends.length - 1];\n }\n return false;\n}\n//# sourceMappingURL=contains.js.map","/**\n * @module ol/geom/flat/interiorpoint\n */\nimport { numberSafeCompareFunction } from '../../array.js';\nimport { linearRingsContainsXY } from './contains.js';\n/**\n * Calculates a point that is likely to lie in the interior of the linear rings.\n * Inspired by JTS's com.vividsolutions.jts.geom.Geometry#getInteriorPoint.\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {Array} flatCenters Flat centers.\n * @param {number} flatCentersOffset Flat center offset.\n * @param {Array=} opt_dest Destination.\n * @return {Array} Destination point as XYM coordinate, where M is the\n * length of the horizontal intersection that the point belongs to.\n */\nexport function getInteriorPointOfArray(flatCoordinates, offset, ends, stride, flatCenters, flatCentersOffset, opt_dest) {\n var i, ii, x, x1, x2, y1, y2;\n var y = flatCenters[flatCentersOffset + 1];\n /** @type {Array} */\n var intersections = [];\n // Calculate intersections with the horizontal line\n for (var r = 0, rr = ends.length; r < rr; ++r) {\n var end = ends[r];\n x1 = flatCoordinates[end - stride];\n y1 = flatCoordinates[end - stride + 1];\n for (i = offset; i < end; i += stride) {\n x2 = flatCoordinates[i];\n y2 = flatCoordinates[i + 1];\n if ((y <= y1 && y2 <= y) || (y1 <= y && y <= y2)) {\n x = (y - y1) / (y2 - y1) * (x2 - x1) + x1;\n intersections.push(x);\n }\n x1 = x2;\n y1 = y2;\n }\n }\n // Find the longest segment of the horizontal line that has its center point\n // inside the linear ring.\n var pointX = NaN;\n var maxSegmentLength = -Infinity;\n intersections.sort(numberSafeCompareFunction);\n x1 = intersections[0];\n for (i = 1, ii = intersections.length; i < ii; ++i) {\n x2 = intersections[i];\n var segmentLength = Math.abs(x2 - x1);\n if (segmentLength > maxSegmentLength) {\n x = (x1 + x2) / 2;\n if (linearRingsContainsXY(flatCoordinates, offset, ends, stride, x, y)) {\n pointX = x;\n maxSegmentLength = segmentLength;\n }\n }\n x1 = x2;\n }\n if (isNaN(pointX)) {\n // There is no horizontal line that has its center point inside the linear\n // ring. Use the center of the the linear ring's extent.\n pointX = flatCenters[flatCentersOffset];\n }\n if (opt_dest) {\n opt_dest.push(pointX, y, maxSegmentLength);\n return opt_dest;\n }\n else {\n return [pointX, y, maxSegmentLength];\n }\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Endss.\n * @param {number} stride Stride.\n * @param {Array} flatCenters Flat centers.\n * @return {Array} Interior points as XYM coordinates, where M is the\n * length of the horizontal intersection that the point belongs to.\n */\nexport function getInteriorPointsOfMultiArray(flatCoordinates, offset, endss, stride, flatCenters) {\n var interiorPoints = [];\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n var ends = endss[i];\n interiorPoints = getInteriorPointOfArray(flatCoordinates, offset, ends, stride, flatCenters, 2 * i, interiorPoints);\n offset = ends[ends.length - 1];\n }\n return interiorPoints;\n}\n//# sourceMappingURL=interiorpoint.js.map","/**\n * @module ol/geom/flat/segments\n */\n/**\n * This function calls `callback` for each segment of the flat coordinates\n * array. If the callback returns a truthy value the function returns that\n * value immediately. Otherwise the function returns `false`.\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {function(import(\"../../coordinate.js\").Coordinate, import(\"../../coordinate.js\").Coordinate): T} callback Function\n * called for each segment.\n * @return {T|boolean} Value.\n * @template T\n */\nexport function forEach(flatCoordinates, offset, end, stride, callback) {\n var point1 = [flatCoordinates[offset], flatCoordinates[offset + 1]];\n var point2 = [];\n var ret;\n for (; (offset + stride) < end; offset += stride) {\n point2[0] = flatCoordinates[offset + stride];\n point2[1] = flatCoordinates[offset + stride + 1];\n ret = callback(point1, point2);\n if (ret) {\n return ret;\n }\n point1[0] = point2[0];\n point1[1] = point2[1];\n }\n return false;\n}\n//# sourceMappingURL=segments.js.map","/**\n * @module ol/geom/flat/intersectsextent\n */\nimport { containsExtent, createEmpty, extendFlatCoordinates, intersects, intersectsSegment } from '../../extent.js';\nimport { linearRingContainsXY, linearRingContainsExtent } from './contains.js';\nimport { forEach as forEachSegment } from './segments.js';\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {import(\"../../extent.js\").Extent} extent Extent.\n * @return {boolean} True if the geometry and the extent intersect.\n */\nexport function intersectsLineString(flatCoordinates, offset, end, stride, extent) {\n var coordinatesExtent = extendFlatCoordinates(createEmpty(), flatCoordinates, offset, end, stride);\n if (!intersects(extent, coordinatesExtent)) {\n return false;\n }\n if (containsExtent(extent, coordinatesExtent)) {\n return true;\n }\n if (coordinatesExtent[0] >= extent[0] &&\n coordinatesExtent[2] <= extent[2]) {\n return true;\n }\n if (coordinatesExtent[1] >= extent[1] &&\n coordinatesExtent[3] <= extent[3]) {\n return true;\n }\n return forEachSegment(flatCoordinates, offset, end, stride, \n /**\n * @param {import(\"../../coordinate.js\").Coordinate} point1 Start point.\n * @param {import(\"../../coordinate.js\").Coordinate} point2 End point.\n * @return {boolean} `true` if the segment and the extent intersect,\n * `false` otherwise.\n */\n function (point1, point2) {\n return intersectsSegment(extent, point1, point2);\n });\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {import(\"../../extent.js\").Extent} extent Extent.\n * @return {boolean} True if the geometry and the extent intersect.\n */\nexport function intersectsLineStringArray(flatCoordinates, offset, ends, stride, extent) {\n for (var i = 0, ii = ends.length; i < ii; ++i) {\n if (intersectsLineString(flatCoordinates, offset, ends[i], stride, extent)) {\n return true;\n }\n offset = ends[i];\n }\n return false;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @param {import(\"../../extent.js\").Extent} extent Extent.\n * @return {boolean} True if the geometry and the extent intersect.\n */\nexport function intersectsLinearRing(flatCoordinates, offset, end, stride, extent) {\n if (intersectsLineString(flatCoordinates, offset, end, stride, extent)) {\n return true;\n }\n if (linearRingContainsXY(flatCoordinates, offset, end, stride, extent[0], extent[1])) {\n return true;\n }\n if (linearRingContainsXY(flatCoordinates, offset, end, stride, extent[0], extent[3])) {\n return true;\n }\n if (linearRingContainsXY(flatCoordinates, offset, end, stride, extent[2], extent[1])) {\n return true;\n }\n if (linearRingContainsXY(flatCoordinates, offset, end, stride, extent[2], extent[3])) {\n return true;\n }\n return false;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {import(\"../../extent.js\").Extent} extent Extent.\n * @return {boolean} True if the geometry and the extent intersect.\n */\nexport function intersectsLinearRingArray(flatCoordinates, offset, ends, stride, extent) {\n if (!intersectsLinearRing(flatCoordinates, offset, ends[0], stride, extent)) {\n return false;\n }\n if (ends.length === 1) {\n return true;\n }\n for (var i = 1, ii = ends.length; i < ii; ++i) {\n if (linearRingContainsExtent(flatCoordinates, ends[i - 1], ends[i], stride, extent)) {\n if (!intersectsLineString(flatCoordinates, ends[i - 1], ends[i], stride, extent)) {\n return false;\n }\n }\n }\n return true;\n}\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Endss.\n * @param {number} stride Stride.\n * @param {import(\"../../extent.js\").Extent} extent Extent.\n * @return {boolean} True if the geometry and the extent intersect.\n */\nexport function intersectsLinearRingMultiArray(flatCoordinates, offset, endss, stride, extent) {\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n var ends = endss[i];\n if (intersectsLinearRingArray(flatCoordinates, offset, ends, stride, extent)) {\n return true;\n }\n offset = ends[ends.length - 1];\n }\n return false;\n}\n//# sourceMappingURL=intersectsextent.js.map","/**\n * @module ol/geom/flat/reverse\n */\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n */\nexport function coordinates(flatCoordinates, offset, end, stride) {\n while (offset < end - stride) {\n for (var i = 0; i < stride; ++i) {\n var tmp = flatCoordinates[offset + i];\n flatCoordinates[offset + i] = flatCoordinates[end - stride + i];\n flatCoordinates[end - stride + i] = tmp;\n }\n offset += stride;\n end -= stride;\n }\n}\n//# sourceMappingURL=reverse.js.map","/**\n * @module ol/geom/flat/orient\n */\nimport { coordinates as reverseCoordinates } from './reverse.js';\n/**\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {number} end End.\n * @param {number} stride Stride.\n * @return {boolean} Is clockwise.\n */\nexport function linearRingIsClockwise(flatCoordinates, offset, end, stride) {\n // http://tinyurl.com/clockwise-method\n // https://github.com/OSGeo/gdal/blob/trunk/gdal/ogr/ogrlinearring.cpp\n var edge = 0;\n var x1 = flatCoordinates[end - stride];\n var y1 = flatCoordinates[end - stride + 1];\n for (; offset < end; offset += stride) {\n var x2 = flatCoordinates[offset];\n var y2 = flatCoordinates[offset + 1];\n edge += (x2 - x1) * (y2 + y1);\n x1 = x2;\n y1 = y2;\n }\n return edge > 0;\n}\n/**\n * Determines if linear rings are oriented. By default, left-hand orientation\n * is tested (first ring must be clockwise, remaining rings counter-clockwise).\n * To test for right-hand orientation, use the `opt_right` argument.\n *\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Array of end indexes.\n * @param {number} stride Stride.\n * @param {boolean=} opt_right Test for right-hand orientation\n * (counter-clockwise exterior ring and clockwise interior rings).\n * @return {boolean} Rings are correctly oriented.\n */\nexport function linearRingsAreOriented(flatCoordinates, offset, ends, stride, opt_right) {\n var right = opt_right !== undefined ? opt_right : false;\n for (var i = 0, ii = ends.length; i < ii; ++i) {\n var end = ends[i];\n var isClockwise = linearRingIsClockwise(flatCoordinates, offset, end, stride);\n if (i === 0) {\n if ((right && isClockwise) || (!right && !isClockwise)) {\n return false;\n }\n }\n else {\n if ((right && !isClockwise) || (!right && isClockwise)) {\n return false;\n }\n }\n offset = end;\n }\n return true;\n}\n/**\n * Determines if linear rings are oriented. By default, left-hand orientation\n * is tested (first ring must be clockwise, remaining rings counter-clockwise).\n * To test for right-hand orientation, use the `opt_right` argument.\n *\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Array of array of end indexes.\n * @param {number} stride Stride.\n * @param {boolean=} opt_right Test for right-hand orientation\n * (counter-clockwise exterior ring and clockwise interior rings).\n * @return {boolean} Rings are correctly oriented.\n */\nexport function linearRingssAreOriented(flatCoordinates, offset, endss, stride, opt_right) {\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n var ends = endss[i];\n if (!linearRingsAreOriented(flatCoordinates, offset, ends, stride, opt_right)) {\n return false;\n }\n if (ends.length) {\n offset = ends[ends.length - 1];\n }\n }\n return true;\n}\n/**\n * Orient coordinates in a flat array of linear rings. By default, rings\n * are oriented following the left-hand rule (clockwise for exterior and\n * counter-clockwise for interior rings). To orient according to the\n * right-hand rule, use the `opt_right` argument.\n *\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array} ends Ends.\n * @param {number} stride Stride.\n * @param {boolean=} opt_right Follow the right-hand rule for orientation.\n * @return {number} End.\n */\nexport function orientLinearRings(flatCoordinates, offset, ends, stride, opt_right) {\n var right = opt_right !== undefined ? opt_right : false;\n for (var i = 0, ii = ends.length; i < ii; ++i) {\n var end = ends[i];\n var isClockwise = linearRingIsClockwise(flatCoordinates, offset, end, stride);\n var reverse = i === 0 ?\n (right && isClockwise) || (!right && !isClockwise) :\n (right && !isClockwise) || (!right && isClockwise);\n if (reverse) {\n reverseCoordinates(flatCoordinates, offset, end, stride);\n }\n offset = end;\n }\n return offset;\n}\n/**\n * Orient coordinates in a flat array of linear rings. By default, rings\n * are oriented following the left-hand rule (clockwise for exterior and\n * counter-clockwise for interior rings). To orient according to the\n * right-hand rule, use the `opt_right` argument.\n *\n * @param {Array} flatCoordinates Flat coordinates.\n * @param {number} offset Offset.\n * @param {Array>} endss Array of array of end indexes.\n * @param {number} stride Stride.\n * @param {boolean=} opt_right Follow the right-hand rule for orientation.\n * @return {number} End.\n */\nexport function orientLinearRingsArray(flatCoordinates, offset, endss, stride, opt_right) {\n for (var i = 0, ii = endss.length; i < ii; ++i) {\n offset = orientLinearRings(flatCoordinates, offset, endss[i], stride, opt_right);\n }\n return offset;\n}\n//# sourceMappingURL=orient.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/geom/Polygon\n */\nimport { extend } from '../array.js';\nimport { closestSquaredDistanceXY, getCenter } from '../extent.js';\nimport GeometryLayout from './GeometryLayout.js';\nimport GeometryType from './GeometryType.js';\nimport LinearRing from './LinearRing.js';\nimport Point from './Point.js';\nimport SimpleGeometry from './SimpleGeometry.js';\nimport { offset as sphereOffset } from '../sphere.js';\nimport { linearRings as linearRingsArea } from './flat/area.js';\nimport { assignClosestArrayPoint, arrayMaxSquaredDelta } from './flat/closest.js';\nimport { linearRingsContainsXY } from './flat/contains.js';\nimport { deflateCoordinatesArray } from './flat/deflate.js';\nimport { inflateCoordinatesArray } from './flat/inflate.js';\nimport { getInteriorPointOfArray } from './flat/interiorpoint.js';\nimport { intersectsLinearRingArray } from './flat/intersectsextent.js';\nimport { linearRingsAreOriented, orientLinearRings } from './flat/orient.js';\nimport { quantizeArray } from './flat/simplify.js';\nimport { modulo } from '../math.js';\n/**\n * @classdesc\n * Polygon geometry.\n *\n * @api\n */\nvar Polygon = /** @class */ (function (_super) {\n __extends(Polygon, _super);\n /**\n * @param {!Array>|!Array} coordinates\n * Array of linear rings that define the polygon. The first linear ring of the\n * array defines the outer-boundary or surface of the polygon. Each subsequent\n * linear ring defines a hole in the surface of the polygon. A linear ring is\n * an array of vertices' coordinates where the first coordinate and the last are\n * equivalent. (For internal use, flat coordinates in combination with\n * `opt_layout` and `opt_ends` are also accepted.)\n * @param {GeometryLayout=} opt_layout Layout.\n * @param {Array=} opt_ends Ends (for internal use with flat coordinates).\n */\n function Polygon(coordinates, opt_layout, opt_ends) {\n var _this = _super.call(this) || this;\n /**\n * @type {Array}\n * @private\n */\n _this.ends_ = [];\n /**\n * @private\n * @type {number}\n */\n _this.flatInteriorPointRevision_ = -1;\n /**\n * @private\n * @type {import(\"../coordinate.js\").Coordinate}\n */\n _this.flatInteriorPoint_ = null;\n /**\n * @private\n * @type {number}\n */\n _this.maxDelta_ = -1;\n /**\n * @private\n * @type {number}\n */\n _this.maxDeltaRevision_ = -1;\n /**\n * @private\n * @type {number}\n */\n _this.orientedRevision_ = -1;\n /**\n * @private\n * @type {Array}\n */\n _this.orientedFlatCoordinates_ = null;\n if (opt_layout !== undefined && opt_ends) {\n _this.setFlatCoordinates(opt_layout, /** @type {Array} */ (coordinates));\n _this.ends_ = opt_ends;\n }\n else {\n _this.setCoordinates(/** @type {Array>} */ (coordinates), opt_layout);\n }\n return _this;\n }\n /**\n * Append the passed linear ring to this polygon.\n * @param {LinearRing} linearRing Linear ring.\n * @api\n */\n Polygon.prototype.appendLinearRing = function (linearRing) {\n if (!this.flatCoordinates) {\n this.flatCoordinates = linearRing.getFlatCoordinates().slice();\n }\n else {\n extend(this.flatCoordinates, linearRing.getFlatCoordinates());\n }\n this.ends_.push(this.flatCoordinates.length);\n this.changed();\n };\n /**\n * Make a complete copy of the geometry.\n * @return {!Polygon} Clone.\n * @override\n * @api\n */\n Polygon.prototype.clone = function () {\n return new Polygon(this.flatCoordinates.slice(), this.layout, this.ends_.slice());\n };\n /**\n * @inheritDoc\n */\n Polygon.prototype.closestPointXY = function (x, y, closestPoint, minSquaredDistance) {\n if (minSquaredDistance < closestSquaredDistanceXY(this.getExtent(), x, y)) {\n return minSquaredDistance;\n }\n if (this.maxDeltaRevision_ != this.getRevision()) {\n this.maxDelta_ = Math.sqrt(arrayMaxSquaredDelta(this.flatCoordinates, 0, this.ends_, this.stride, 0));\n this.maxDeltaRevision_ = this.getRevision();\n }\n return assignClosestArrayPoint(this.flatCoordinates, 0, this.ends_, this.stride, this.maxDelta_, true, x, y, closestPoint, minSquaredDistance);\n };\n /**\n * @inheritDoc\n */\n Polygon.prototype.containsXY = function (x, y) {\n return linearRingsContainsXY(this.getOrientedFlatCoordinates(), 0, this.ends_, this.stride, x, y);\n };\n /**\n * Return the area of the polygon on projected plane.\n * @return {number} Area (on projected plane).\n * @api\n */\n Polygon.prototype.getArea = function () {\n return linearRingsArea(this.getOrientedFlatCoordinates(), 0, this.ends_, this.stride);\n };\n /**\n * Get the coordinate array for this geometry. This array has the structure\n * of a GeoJSON coordinate array for polygons.\n *\n * @param {boolean=} opt_right Orient coordinates according to the right-hand\n * rule (counter-clockwise for exterior and clockwise for interior rings).\n * If `false`, coordinates will be oriented according to the left-hand rule\n * (clockwise for exterior and counter-clockwise for interior rings).\n * By default, coordinate orientation will depend on how the geometry was\n * constructed.\n * @return {Array>} Coordinates.\n * @override\n * @api\n */\n Polygon.prototype.getCoordinates = function (opt_right) {\n var flatCoordinates;\n if (opt_right !== undefined) {\n flatCoordinates = this.getOrientedFlatCoordinates().slice();\n orientLinearRings(flatCoordinates, 0, this.ends_, this.stride, opt_right);\n }\n else {\n flatCoordinates = this.flatCoordinates;\n }\n return inflateCoordinatesArray(flatCoordinates, 0, this.ends_, this.stride);\n };\n /**\n * @return {Array} Ends.\n */\n Polygon.prototype.getEnds = function () {\n return this.ends_;\n };\n /**\n * @return {Array} Interior point.\n */\n Polygon.prototype.getFlatInteriorPoint = function () {\n if (this.flatInteriorPointRevision_ != this.getRevision()) {\n var flatCenter = getCenter(this.getExtent());\n this.flatInteriorPoint_ = getInteriorPointOfArray(this.getOrientedFlatCoordinates(), 0, this.ends_, this.stride, flatCenter, 0);\n this.flatInteriorPointRevision_ = this.getRevision();\n }\n return this.flatInteriorPoint_;\n };\n /**\n * Return an interior point of the polygon.\n * @return {Point} Interior point as XYM coordinate, where M is the\n * length of the horizontal intersection that the point belongs to.\n * @api\n */\n Polygon.prototype.getInteriorPoint = function () {\n return new Point(this.getFlatInteriorPoint(), GeometryLayout.XYM);\n };\n /**\n * Return the number of rings of the polygon, this includes the exterior\n * ring and any interior rings.\n *\n * @return {number} Number of rings.\n * @api\n */\n Polygon.prototype.getLinearRingCount = function () {\n return this.ends_.length;\n };\n /**\n * Return the Nth linear ring of the polygon geometry. Return `null` if the\n * given index is out of range.\n * The exterior linear ring is available at index `0` and the interior rings\n * at index `1` and beyond.\n *\n * @param {number} index Index.\n * @return {LinearRing} Linear ring.\n * @api\n */\n Polygon.prototype.getLinearRing = function (index) {\n if (index < 0 || this.ends_.length <= index) {\n return null;\n }\n return new LinearRing(this.flatCoordinates.slice(index === 0 ? 0 : this.ends_[index - 1], this.ends_[index]), this.layout);\n };\n /**\n * Return the linear rings of the polygon.\n * @return {Array} Linear rings.\n * @api\n */\n Polygon.prototype.getLinearRings = function () {\n var layout = this.layout;\n var flatCoordinates = this.flatCoordinates;\n var ends = this.ends_;\n var linearRings = [];\n var offset = 0;\n for (var i = 0, ii = ends.length; i < ii; ++i) {\n var end = ends[i];\n var linearRing = new LinearRing(flatCoordinates.slice(offset, end), layout);\n linearRings.push(linearRing);\n offset = end;\n }\n return linearRings;\n };\n /**\n * @return {Array} Oriented flat coordinates.\n */\n Polygon.prototype.getOrientedFlatCoordinates = function () {\n if (this.orientedRevision_ != this.getRevision()) {\n var flatCoordinates = this.flatCoordinates;\n if (linearRingsAreOriented(flatCoordinates, 0, this.ends_, this.stride)) {\n this.orientedFlatCoordinates_ = flatCoordinates;\n }\n else {\n this.orientedFlatCoordinates_ = flatCoordinates.slice();\n this.orientedFlatCoordinates_.length =\n orientLinearRings(this.orientedFlatCoordinates_, 0, this.ends_, this.stride);\n }\n this.orientedRevision_ = this.getRevision();\n }\n return this.orientedFlatCoordinates_;\n };\n /**\n * @inheritDoc\n */\n Polygon.prototype.getSimplifiedGeometryInternal = function (squaredTolerance) {\n var simplifiedFlatCoordinates = [];\n var simplifiedEnds = [];\n simplifiedFlatCoordinates.length = quantizeArray(this.flatCoordinates, 0, this.ends_, this.stride, Math.sqrt(squaredTolerance), simplifiedFlatCoordinates, 0, simplifiedEnds);\n return new Polygon(simplifiedFlatCoordinates, GeometryLayout.XY, simplifiedEnds);\n };\n /**\n * @inheritDoc\n * @api\n */\n Polygon.prototype.getType = function () {\n return GeometryType.POLYGON;\n };\n /**\n * @inheritDoc\n * @api\n */\n Polygon.prototype.intersectsExtent = function (extent) {\n return intersectsLinearRingArray(this.getOrientedFlatCoordinates(), 0, this.ends_, this.stride, extent);\n };\n /**\n * Set the coordinates of the polygon.\n * @param {!Array>} coordinates Coordinates.\n * @param {GeometryLayout=} opt_layout Layout.\n * @override\n * @api\n */\n Polygon.prototype.setCoordinates = function (coordinates, opt_layout) {\n this.setLayout(opt_layout, coordinates, 2);\n if (!this.flatCoordinates) {\n this.flatCoordinates = [];\n }\n var ends = deflateCoordinatesArray(this.flatCoordinates, 0, coordinates, this.stride, this.ends_);\n this.flatCoordinates.length = ends.length === 0 ? 0 : ends[ends.length - 1];\n this.changed();\n };\n return Polygon;\n}(SimpleGeometry));\nexport default Polygon;\n/**\n * Create an approximation of a circle on the surface of a sphere.\n * @param {import(\"../coordinate.js\").Coordinate} center Center (`[lon, lat]` in degrees).\n * @param {number} radius The great-circle distance from the center to\n * the polygon vertices.\n * @param {number=} opt_n Optional number of vertices for the resulting\n * polygon. Default is `32`.\n * @param {number=} opt_sphereRadius Optional radius for the sphere (defaults to\n * the Earth's mean radius using the WGS84 ellipsoid).\n * @return {Polygon} The \"circular\" polygon.\n * @api\n */\nexport function circular(center, radius, opt_n, opt_sphereRadius) {\n var n = opt_n ? opt_n : 32;\n /** @type {Array} */\n var flatCoordinates = [];\n for (var i = 0; i < n; ++i) {\n extend(flatCoordinates, sphereOffset(center, radius, 2 * Math.PI * i / n, opt_sphereRadius));\n }\n flatCoordinates.push(flatCoordinates[0], flatCoordinates[1]);\n return new Polygon(flatCoordinates, GeometryLayout.XY, [flatCoordinates.length]);\n}\n/**\n * Create a polygon from an extent. The layout used is `XY`.\n * @param {import(\"../extent.js\").Extent} extent The extent.\n * @return {Polygon} The polygon.\n * @api\n */\nexport function fromExtent(extent) {\n var minX = extent[0];\n var minY = extent[1];\n var maxX = extent[2];\n var maxY = extent[3];\n var flatCoordinates = [minX, minY, minX, maxY, maxX, maxY, maxX, minY, minX, minY];\n return new Polygon(flatCoordinates, GeometryLayout.XY, [flatCoordinates.length]);\n}\n/**\n * Create a regular polygon from a circle.\n * @param {import(\"./Circle.js\").default} circle Circle geometry.\n * @param {number=} opt_sides Number of sides of the polygon. Default is 32.\n * @param {number=} opt_angle Start angle for the first vertex of the polygon in\n * radians. Default is 0.\n * @return {Polygon} Polygon geometry.\n * @api\n */\nexport function fromCircle(circle, opt_sides, opt_angle) {\n var sides = opt_sides ? opt_sides : 32;\n var stride = circle.getStride();\n var layout = circle.getLayout();\n var center = circle.getCenter();\n var arrayLength = stride * (sides + 1);\n var flatCoordinates = new Array(arrayLength);\n for (var i = 0; i < arrayLength; i += stride) {\n flatCoordinates[i] = 0;\n flatCoordinates[i + 1] = 0;\n for (var j = 2; j < stride; j++) {\n flatCoordinates[i + j] = center[j];\n }\n }\n var ends = [flatCoordinates.length];\n var polygon = new Polygon(flatCoordinates, layout, ends);\n makeRegular(polygon, center, circle.getRadius(), opt_angle);\n return polygon;\n}\n/**\n * Modify the coordinates of a polygon to make it a regular polygon.\n * @param {Polygon} polygon Polygon geometry.\n * @param {import(\"../coordinate.js\").Coordinate} center Center of the regular polygon.\n * @param {number} radius Radius of the regular polygon.\n * @param {number=} opt_angle Start angle for the first vertex of the polygon in\n * radians. Default is 0.\n */\nexport function makeRegular(polygon, center, radius, opt_angle) {\n var flatCoordinates = polygon.getFlatCoordinates();\n var stride = polygon.getStride();\n var sides = flatCoordinates.length / stride - 1;\n var startAngle = opt_angle ? opt_angle : 0;\n for (var i = 0; i <= sides; ++i) {\n var offset = i * stride;\n var angle = startAngle + (modulo(i, sides) * 2 * Math.PI / sides);\n flatCoordinates[offset] = center[0] + (radius * Math.cos(angle));\n flatCoordinates[offset + 1] = center[1] + (radius * Math.sin(angle));\n }\n polygon.changed();\n}\n//# sourceMappingURL=Polygon.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/Geolocation\n */\nimport BaseObject, { getChangeEventType } from './Object.js';\nimport BaseEvent from './events/Event.js';\nimport EventType from './events/EventType.js';\nimport { circular as circularPolygon } from './geom/Polygon.js';\nimport { toRadians } from './math.js';\nimport { get as getProjection, getTransformFromProjections, identityTransform } from './proj.js';\n/**\n * @enum {string}\n */\nvar Property = {\n ACCURACY: 'accuracy',\n ACCURACY_GEOMETRY: 'accuracyGeometry',\n ALTITUDE: 'altitude',\n ALTITUDE_ACCURACY: 'altitudeAccuracy',\n HEADING: 'heading',\n POSITION: 'position',\n PROJECTION: 'projection',\n SPEED: 'speed',\n TRACKING: 'tracking',\n TRACKING_OPTIONS: 'trackingOptions'\n};\n/**\n * @classdesc\n * Events emitted on Geolocation error.\n */\nvar GeolocationError = /** @class */ (function (_super) {\n __extends(GeolocationError, _super);\n /**\n * @param {PositionError} error error object.\n */\n function GeolocationError(error) {\n var _this = _super.call(this, EventType.ERROR) || this;\n /**\n * @type {number}\n */\n _this.code = error.code;\n /**\n * @type {string}\n */\n _this.message = error.message;\n return _this;\n }\n return GeolocationError;\n}(BaseEvent));\n/**\n * @typedef {Object} Options\n * @property {boolean} [tracking=false] Start Tracking right after\n * instantiation.\n * @property {PositionOptions} [trackingOptions] Tracking options.\n * See http://www.w3.org/TR/geolocation-API/#position_options_interface.\n * @property {import(\"./proj.js\").ProjectionLike} [projection] The projection the position\n * is reported in.\n */\n/**\n * @classdesc\n * Helper class for providing HTML5 Geolocation capabilities.\n * The [Geolocation API](http://www.w3.org/TR/geolocation-API/)\n * is used to locate a user's position.\n *\n * To get notified of position changes, register a listener for the generic\n * `change` event on your instance of {@link module:ol/Geolocation~Geolocation}.\n *\n * Example:\n *\n * var geolocation = new Geolocation({\n * // take the projection to use from the map's view\n * projection: view.getProjection()\n * });\n * // listen to changes in position\n * geolocation.on('change', function(evt) {\n * window.console.log(geolocation.getPosition());\n * });\n *\n * @fires module:ol/events/Event~BaseEvent#event:error\n * @api\n */\nvar Geolocation = /** @class */ (function (_super) {\n __extends(Geolocation, _super);\n /**\n * @param {Options=} opt_options Options.\n */\n function Geolocation(opt_options) {\n var _this = _super.call(this) || this;\n var options = opt_options || {};\n /**\n * The unprojected (EPSG:4326) device position.\n * @private\n * @type {?import(\"./coordinate.js\").Coordinate}\n */\n _this.position_ = null;\n /**\n * @private\n * @type {import(\"./proj.js\").TransformFunction}\n */\n _this.transform_ = identityTransform;\n /**\n * @private\n * @type {number|undefined}\n */\n _this.watchId_ = undefined;\n _this.addEventListener(getChangeEventType(Property.PROJECTION), _this.handleProjectionChanged_);\n _this.addEventListener(getChangeEventType(Property.TRACKING), _this.handleTrackingChanged_);\n if (options.projection !== undefined) {\n _this.setProjection(options.projection);\n }\n if (options.trackingOptions !== undefined) {\n _this.setTrackingOptions(options.trackingOptions);\n }\n _this.setTracking(options.tracking !== undefined ? options.tracking : false);\n return _this;\n }\n /**\n * @inheritDoc\n */\n Geolocation.prototype.disposeInternal = function () {\n this.setTracking(false);\n _super.prototype.disposeInternal.call(this);\n };\n /**\n * @private\n */\n Geolocation.prototype.handleProjectionChanged_ = function () {\n var projection = this.getProjection();\n if (projection) {\n this.transform_ = getTransformFromProjections(getProjection('EPSG:4326'), projection);\n if (this.position_) {\n this.set(Property.POSITION, this.transform_(this.position_));\n }\n }\n };\n /**\n * @private\n */\n Geolocation.prototype.handleTrackingChanged_ = function () {\n if ('geolocation' in navigator) {\n var tracking = this.getTracking();\n if (tracking && this.watchId_ === undefined) {\n this.watchId_ = navigator.geolocation.watchPosition(this.positionChange_.bind(this), this.positionError_.bind(this), this.getTrackingOptions());\n }\n else if (!tracking && this.watchId_ !== undefined) {\n navigator.geolocation.clearWatch(this.watchId_);\n this.watchId_ = undefined;\n }\n }\n };\n /**\n * @private\n * @param {Position} position position event.\n */\n Geolocation.prototype.positionChange_ = function (position) {\n var coords = position.coords;\n this.set(Property.ACCURACY, coords.accuracy);\n this.set(Property.ALTITUDE, coords.altitude === null ? undefined : coords.altitude);\n this.set(Property.ALTITUDE_ACCURACY, coords.altitudeAccuracy === null ?\n undefined : coords.altitudeAccuracy);\n this.set(Property.HEADING, coords.heading === null ?\n undefined : toRadians(coords.heading));\n if (!this.position_) {\n this.position_ = [coords.longitude, coords.latitude];\n }\n else {\n this.position_[0] = coords.longitude;\n this.position_[1] = coords.latitude;\n }\n var projectedPosition = this.transform_(this.position_);\n this.set(Property.POSITION, projectedPosition);\n this.set(Property.SPEED, coords.speed === null ? undefined : coords.speed);\n var geometry = circularPolygon(this.position_, coords.accuracy);\n geometry.applyTransform(this.transform_);\n this.set(Property.ACCURACY_GEOMETRY, geometry);\n this.changed();\n };\n /**\n * @private\n * @param {PositionError} error error object.\n */\n Geolocation.prototype.positionError_ = function (error) {\n this.setTracking(false);\n this.dispatchEvent(new GeolocationError(error));\n };\n /**\n * Get the accuracy of the position in meters.\n * @return {number|undefined} The accuracy of the position measurement in\n * meters.\n * @observable\n * @api\n */\n Geolocation.prototype.getAccuracy = function () {\n return /** @type {number|undefined} */ (this.get(Property.ACCURACY));\n };\n /**\n * Get a geometry of the position accuracy.\n * @return {?import(\"./geom/Polygon.js\").default} A geometry of the position accuracy.\n * @observable\n * @api\n */\n Geolocation.prototype.getAccuracyGeometry = function () {\n return (\n /** @type {?import(\"./geom/Polygon.js\").default} */ (this.get(Property.ACCURACY_GEOMETRY) || null));\n };\n /**\n * Get the altitude associated with the position.\n * @return {number|undefined} The altitude of the position in meters above mean\n * sea level.\n * @observable\n * @api\n */\n Geolocation.prototype.getAltitude = function () {\n return /** @type {number|undefined} */ (this.get(Property.ALTITUDE));\n };\n /**\n * Get the altitude accuracy of the position.\n * @return {number|undefined} The accuracy of the altitude measurement in\n * meters.\n * @observable\n * @api\n */\n Geolocation.prototype.getAltitudeAccuracy = function () {\n return /** @type {number|undefined} */ (this.get(Property.ALTITUDE_ACCURACY));\n };\n /**\n * Get the heading as radians clockwise from North.\n * Note: depending on the browser, the heading is only defined if the `enableHighAccuracy`\n * is set to `true` in the tracking options.\n * @return {number|undefined} The heading of the device in radians from north.\n * @observable\n * @api\n */\n Geolocation.prototype.getHeading = function () {\n return /** @type {number|undefined} */ (this.get(Property.HEADING));\n };\n /**\n * Get the position of the device.\n * @return {import(\"./coordinate.js\").Coordinate|undefined} The current position of the device reported\n * in the current projection.\n * @observable\n * @api\n */\n Geolocation.prototype.getPosition = function () {\n return (\n /** @type {import(\"./coordinate.js\").Coordinate|undefined} */ (this.get(Property.POSITION)));\n };\n /**\n * Get the projection associated with the position.\n * @return {import(\"./proj/Projection.js\").default|undefined} The projection the position is\n * reported in.\n * @observable\n * @api\n */\n Geolocation.prototype.getProjection = function () {\n return (\n /** @type {import(\"./proj/Projection.js\").default|undefined} */ (this.get(Property.PROJECTION)));\n };\n /**\n * Get the speed in meters per second.\n * @return {number|undefined} The instantaneous speed of the device in meters\n * per second.\n * @observable\n * @api\n */\n Geolocation.prototype.getSpeed = function () {\n return /** @type {number|undefined} */ (this.get(Property.SPEED));\n };\n /**\n * Determine if the device location is being tracked.\n * @return {boolean} The device location is being tracked.\n * @observable\n * @api\n */\n Geolocation.prototype.getTracking = function () {\n return /** @type {boolean} */ (this.get(Property.TRACKING));\n };\n /**\n * Get the tracking options.\n * See http://www.w3.org/TR/geolocation-API/#position-options.\n * @return {PositionOptions|undefined} PositionOptions as defined by\n * the [HTML5 Geolocation spec\n * ](http://www.w3.org/TR/geolocation-API/#position_options_interface).\n * @observable\n * @api\n */\n Geolocation.prototype.getTrackingOptions = function () {\n return /** @type {PositionOptions|undefined} */ (this.get(Property.TRACKING_OPTIONS));\n };\n /**\n * Set the projection to use for transforming the coordinates.\n * @param {import(\"./proj.js\").ProjectionLike} projection The projection the position is\n * reported in.\n * @observable\n * @api\n */\n Geolocation.prototype.setProjection = function (projection) {\n this.set(Property.PROJECTION, getProjection(projection));\n };\n /**\n * Enable or disable tracking.\n * @param {boolean} tracking Enable tracking.\n * @observable\n * @api\n */\n Geolocation.prototype.setTracking = function (tracking) {\n this.set(Property.TRACKING, tracking);\n };\n /**\n * Set the tracking options.\n * See http://www.w3.org/TR/geolocation-API/#position-options.\n * @param {PositionOptions} options PositionOptions as defined by the\n * [HTML5 Geolocation spec\n * ](http://www.w3.org/TR/geolocation-API/#position_options_interface).\n * @observable\n * @api\n */\n Geolocation.prototype.setTrackingOptions = function (options) {\n this.set(Property.TRACKING_OPTIONS, options);\n };\n return Geolocation;\n}(BaseObject));\nexport default Geolocation;\n//# sourceMappingURL=Geolocation.js.map","/**\n * @module ol/Kinetic\n */\n/**\n * @classdesc\n * Implementation of inertial deceleration for map movement.\n *\n * @api\n */\nvar Kinetic = /** @class */ (function () {\n /**\n * @param {number} decay Rate of decay (must be negative).\n * @param {number} minVelocity Minimum velocity (pixels/millisecond).\n * @param {number} delay Delay to consider to calculate the kinetic\n * initial values (milliseconds).\n */\n function Kinetic(decay, minVelocity, delay) {\n /**\n * @private\n * @type {number}\n */\n this.decay_ = decay;\n /**\n * @private\n * @type {number}\n */\n this.minVelocity_ = minVelocity;\n /**\n * @private\n * @type {number}\n */\n this.delay_ = delay;\n /**\n * @private\n * @type {Array}\n */\n this.points_ = [];\n /**\n * @private\n * @type {number}\n */\n this.angle_ = 0;\n /**\n * @private\n * @type {number}\n */\n this.initialVelocity_ = 0;\n }\n /**\n * FIXME empty description for jsdoc\n */\n Kinetic.prototype.begin = function () {\n this.points_.length = 0;\n this.angle_ = 0;\n this.initialVelocity_ = 0;\n };\n /**\n * @param {number} x X.\n * @param {number} y Y.\n */\n Kinetic.prototype.update = function (x, y) {\n this.points_.push(x, y, Date.now());\n };\n /**\n * @return {boolean} Whether we should do kinetic animation.\n */\n Kinetic.prototype.end = function () {\n if (this.points_.length < 6) {\n // at least 2 points are required (i.e. there must be at least 6 elements\n // in the array)\n return false;\n }\n var delay = Date.now() - this.delay_;\n var lastIndex = this.points_.length - 3;\n if (this.points_[lastIndex + 2] < delay) {\n // the last tracked point is too old, which means that the user stopped\n // panning before releasing the map\n return false;\n }\n // get the first point which still falls into the delay time\n var firstIndex = lastIndex - 3;\n while (firstIndex > 0 && this.points_[firstIndex + 2] > delay) {\n firstIndex -= 3;\n }\n var duration = this.points_[lastIndex + 2] - this.points_[firstIndex + 2];\n // we don't want a duration of 0 (divide by zero)\n // we also make sure the user panned for a duration of at least one frame\n // (1/60s) to compute sane displacement values\n if (duration < 1000 / 60) {\n return false;\n }\n var dx = this.points_[lastIndex] - this.points_[firstIndex];\n var dy = this.points_[lastIndex + 1] - this.points_[firstIndex + 1];\n this.angle_ = Math.atan2(dy, dx);\n this.initialVelocity_ = Math.sqrt(dx * dx + dy * dy) / duration;\n return this.initialVelocity_ > this.minVelocity_;\n };\n /**\n * @return {number} Total distance travelled (pixels).\n */\n Kinetic.prototype.getDistance = function () {\n return (this.minVelocity_ - this.initialVelocity_) / this.decay_;\n };\n /**\n * @return {number} Angle of the kinetic panning animation (radians).\n */\n Kinetic.prototype.getAngle = function () {\n return this.angle_;\n };\n return Kinetic;\n}());\nexport default Kinetic;\n//# sourceMappingURL=Kinetic.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/MapEvent\n */\nimport Event from './events/Event.js';\n/**\n * @classdesc\n * Events emitted as map events are instances of this type.\n * See {@link module:ol/PluggableMap~PluggableMap} for which events trigger a map event.\n */\nvar MapEvent = /** @class */ (function (_super) {\n __extends(MapEvent, _super);\n /**\n * @param {string} type Event type.\n * @param {import(\"./PluggableMap.js\").default} map Map.\n * @param {?import(\"./PluggableMap.js\").FrameState=} opt_frameState Frame state.\n */\n function MapEvent(type, map, opt_frameState) {\n var _this = _super.call(this, type) || this;\n /**\n * The map where the event occurred.\n * @type {import(\"./PluggableMap.js\").default}\n * @api\n */\n _this.map = map;\n /**\n * The frame state at the time of the event.\n * @type {?import(\"./PluggableMap.js\").FrameState}\n * @api\n */\n _this.frameState = opt_frameState !== undefined ? opt_frameState : null;\n return _this;\n }\n return MapEvent;\n}(Event));\nexport default MapEvent;\n//# sourceMappingURL=MapEvent.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/MapBrowserEvent\n */\nimport MapEvent from './MapEvent.js';\n/**\n * @classdesc\n * Events emitted as map browser events are instances of this type.\n * See {@link module:ol/PluggableMap~PluggableMap} for which events trigger a map browser event.\n */\nvar MapBrowserEvent = /** @class */ (function (_super) {\n __extends(MapBrowserEvent, _super);\n /**\n * @param {string} type Event type.\n * @param {import(\"./PluggableMap.js\").default} map Map.\n * @param {Event} browserEvent Browser event.\n * @param {boolean=} opt_dragging Is the map currently being dragged?\n * @param {?import(\"./PluggableMap.js\").FrameState=} opt_frameState Frame state.\n */\n function MapBrowserEvent(type, map, browserEvent, opt_dragging, opt_frameState) {\n var _this = _super.call(this, type, map, opt_frameState) || this;\n /**\n * The original browser event.\n * @const\n * @type {Event}\n * @api\n */\n _this.originalEvent = browserEvent;\n /**\n * The map pixel relative to the viewport corresponding to the original browser event.\n * @type {?import(\"./pixel.js\").Pixel}\n */\n _this.pixel_ = null;\n /**\n * The coordinate in the user projection corresponding to the original browser event.\n * @type {?import(\"./coordinate.js\").Coordinate}\n */\n _this.coordinate_ = null;\n /**\n * Indicates if the map is currently being dragged. Only set for\n * `POINTERDRAG` and `POINTERMOVE` events. Default is `false`.\n *\n * @type {boolean}\n * @api\n */\n _this.dragging = opt_dragging !== undefined ? opt_dragging : false;\n return _this;\n }\n Object.defineProperty(MapBrowserEvent.prototype, \"pixel\", {\n /**\n * The map pixel relative to the viewport corresponding to the original browser event.\n * @type {import(\"./pixel.js\").Pixel}\n * @api\n */\n get: function () {\n if (!this.pixel_) {\n this.pixel_ = this.map.getEventPixel(this.originalEvent);\n }\n return this.pixel_;\n },\n set: function (pixel) {\n this.pixel_ = pixel;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MapBrowserEvent.prototype, \"coordinate\", {\n /**\n * The coordinate corresponding to the original browser event. This will be in the user\n * projection if one is set. Otherwise it will be in the view projection.\n * @type {import(\"./coordinate.js\").Coordinate}\n * @api\n */\n get: function () {\n if (!this.coordinate_) {\n this.coordinate_ = this.map.getCoordinateFromPixel(this.pixel);\n }\n return this.coordinate_;\n },\n set: function (coordinate) {\n this.coordinate_ = coordinate;\n },\n enumerable: true,\n configurable: true\n });\n /**\n * Prevents the default browser action.\n * See https://developer.mozilla.org/en-US/docs/Web/API/event.preventDefault.\n * @override\n * @api\n */\n MapBrowserEvent.prototype.preventDefault = function () {\n _super.prototype.preventDefault.call(this);\n this.originalEvent.preventDefault();\n };\n /**\n * Prevents further propagation of the current event.\n * See https://developer.mozilla.org/en-US/docs/Web/API/event.stopPropagation.\n * @override\n * @api\n */\n MapBrowserEvent.prototype.stopPropagation = function () {\n _super.prototype.stopPropagation.call(this);\n this.originalEvent.stopPropagation();\n };\n return MapBrowserEvent;\n}(MapEvent));\nexport default MapBrowserEvent;\n//# sourceMappingURL=MapBrowserEvent.js.map","/**\n * @module ol/has\n */\nvar ua = typeof navigator !== 'undefined' ?\n navigator.userAgent.toLowerCase() : '';\n/**\n * User agent string says we are dealing with Firefox as browser.\n * @type {boolean}\n */\nexport var FIREFOX = ua.indexOf('firefox') !== -1;\n/**\n * User agent string says we are dealing with Safari as browser.\n * @type {boolean}\n */\nexport var SAFARI = ua.indexOf('safari') !== -1 && ua.indexOf('chrom') == -1;\n/**\n * User agent string says we are dealing with a WebKit engine.\n * @type {boolean}\n */\nexport var WEBKIT = ua.indexOf('webkit') !== -1 && ua.indexOf('edge') == -1;\n/**\n * User agent string says we are dealing with a Mac as platform.\n * @type {boolean}\n */\nexport var MAC = ua.indexOf('macintosh') !== -1;\n/**\n * The ratio between physical pixels and device-independent pixels\n * (dips) on the device (`window.devicePixelRatio`).\n * @const\n * @type {number}\n * @api\n */\nexport var DEVICE_PIXEL_RATIO = window.devicePixelRatio || 1;\n/**\n * Image.prototype.decode() is supported.\n * @type {boolean}\n */\nexport var IMAGE_DECODE = typeof Image !== 'undefined' && Image.prototype.decode;\n/**\n * @type {boolean}\n */\nexport var PASSIVE_EVENT_LISTENERS = (function () {\n var passive = false;\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function () {\n passive = true;\n }\n });\n window.addEventListener('_', null, options);\n window.removeEventListener('_', null, options);\n }\n catch (error) {\n // passive not supported\n }\n return passive;\n})();\n//# sourceMappingURL=has.js.map","/**\n * @module ol/MapBrowserEventType\n */\nimport EventType from './events/EventType.js';\n/**\n * Constants for event names.\n * @enum {string}\n */\nexport default {\n /**\n * A true single click with no dragging and no double click. Note that this\n * event is delayed by 250 ms to ensure that it is not a double click.\n * @event module:ol/MapBrowserEvent~MapBrowserEvent#singleclick\n * @api\n */\n SINGLECLICK: 'singleclick',\n /**\n * A click with no dragging. A double click will fire two of this.\n * @event module:ol/MapBrowserEvent~MapBrowserEvent#click\n * @api\n */\n CLICK: EventType.CLICK,\n /**\n * A true double click, with no dragging.\n * @event module:ol/MapBrowserEvent~MapBrowserEvent#dblclick\n * @api\n */\n DBLCLICK: EventType.DBLCLICK,\n /**\n * Triggered when a pointer is dragged.\n * @event module:ol/MapBrowserEvent~MapBrowserEvent#pointerdrag\n * @api\n */\n POINTERDRAG: 'pointerdrag',\n /**\n * Triggered when a pointer is moved. Note that on touch devices this is\n * triggered when the map is panned, so is not the same as mousemove.\n * @event module:ol/MapBrowserEvent~MapBrowserEvent#pointermove\n * @api\n */\n POINTERMOVE: 'pointermove',\n POINTERDOWN: 'pointerdown',\n POINTERUP: 'pointerup',\n POINTEROVER: 'pointerover',\n POINTEROUT: 'pointerout',\n POINTERENTER: 'pointerenter',\n POINTERLEAVE: 'pointerleave',\n POINTERCANCEL: 'pointercancel'\n};\n//# sourceMappingURL=MapBrowserEventType.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/MapBrowserPointerEvent\n */\nimport MapBrowserEvent from './MapBrowserEvent.js';\nvar MapBrowserPointerEvent = /** @class */ (function (_super) {\n __extends(MapBrowserPointerEvent, _super);\n /**\n * @param {string} type Event type.\n * @param {import(\"./PluggableMap.js\").default} map Map.\n * @param {PointerEvent} pointerEvent Pointer event.\n * @param {boolean=} opt_dragging Is the map currently being dragged?\n * @param {?import(\"./PluggableMap.js\").FrameState=} opt_frameState Frame state.\n */\n function MapBrowserPointerEvent(type, map, pointerEvent, opt_dragging, opt_frameState) {\n var _this = _super.call(this, type, map, pointerEvent, opt_dragging, opt_frameState) || this;\n /**\n * @const\n * @type {PointerEvent}\n */\n _this.pointerEvent = pointerEvent;\n return _this;\n }\n return MapBrowserPointerEvent;\n}(MapBrowserEvent));\nexport default MapBrowserPointerEvent;\n//# sourceMappingURL=MapBrowserPointerEvent.js.map","/**\n * @module ol/pointer/EventType\n */\n/**\n * Constants for event names.\n * @enum {string}\n */\nexport default {\n POINTERMOVE: 'pointermove',\n POINTERDOWN: 'pointerdown',\n POINTERUP: 'pointerup',\n POINTEROVER: 'pointerover',\n POINTEROUT: 'pointerout',\n POINTERENTER: 'pointerenter',\n POINTERLEAVE: 'pointerleave',\n POINTERCANCEL: 'pointercancel'\n};\n//# sourceMappingURL=EventType.js.map","/**\n * @module ol/MapBrowserEventHandler\n */\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nimport 'elm-pep';\nimport { DEVICE_PIXEL_RATIO, PASSIVE_EVENT_LISTENERS } from './has.js';\nimport MapBrowserEventType from './MapBrowserEventType.js';\nimport MapBrowserPointerEvent from './MapBrowserPointerEvent.js';\nimport { listen, unlistenByKey } from './events.js';\nimport EventTarget from './events/Target.js';\nimport PointerEventType from './pointer/EventType.js';\nimport EventType from './events/EventType.js';\nvar MapBrowserEventHandler = /** @class */ (function (_super) {\n __extends(MapBrowserEventHandler, _super);\n /**\n * @param {import(\"./PluggableMap.js\").default} map The map with the viewport to listen to events on.\n * @param {number=} moveTolerance The minimal distance the pointer must travel to trigger a move.\n */\n function MapBrowserEventHandler(map, moveTolerance) {\n var _this = _super.call(this, map) || this;\n /**\n * This is the element that we will listen to the real events on.\n * @type {import(\"./PluggableMap.js\").default}\n * @private\n */\n _this.map_ = map;\n /**\n * @type {any}\n * @private\n */\n _this.clickTimeoutId_;\n /**\n * @type {boolean}\n * @private\n */\n _this.dragging_ = false;\n /**\n * @type {!Array}\n * @private\n */\n _this.dragListenerKeys_ = [];\n /**\n * @type {number}\n * @private\n */\n _this.moveTolerance_ = moveTolerance ?\n moveTolerance * DEVICE_PIXEL_RATIO : DEVICE_PIXEL_RATIO;\n /**\n * The most recent \"down\" type event (or null if none have occurred).\n * Set on pointerdown.\n * @type {PointerEvent}\n * @private\n */\n _this.down_ = null;\n var element = _this.map_.getViewport();\n /**\n * @type {number}\n * @private\n */\n _this.activePointers_ = 0;\n /**\n * @type {!Object}\n * @private\n */\n _this.trackedTouches_ = {};\n _this.element_ = element;\n /**\n * @type {?import(\"./events.js\").EventsKey}\n * @private\n */\n _this.pointerdownListenerKey_ = listen(element, PointerEventType.POINTERDOWN, _this.handlePointerDown_, _this);\n /**\n * @type {PointerEvent}\n * @private\n */\n _this.originalPointerMoveEvent_;\n /**\n * @type {?import(\"./events.js\").EventsKey}\n * @private\n */\n _this.relayedListenerKey_ = listen(element, PointerEventType.POINTERMOVE, _this.relayEvent_, _this);\n /**\n * @private\n */\n _this.boundHandleTouchMove_ = _this.handleTouchMove_.bind(_this);\n _this.element_.addEventListener(EventType.TOUCHMOVE, _this.boundHandleTouchMove_, PASSIVE_EVENT_LISTENERS ? { passive: false } : false);\n return _this;\n }\n /**\n * @param {PointerEvent} pointerEvent Pointer\n * event.\n * @private\n */\n MapBrowserEventHandler.prototype.emulateClick_ = function (pointerEvent) {\n var newEvent = new MapBrowserPointerEvent(MapBrowserEventType.CLICK, this.map_, pointerEvent);\n this.dispatchEvent(newEvent);\n if (this.clickTimeoutId_ !== undefined) {\n // double-click\n clearTimeout(this.clickTimeoutId_);\n this.clickTimeoutId_ = undefined;\n newEvent = new MapBrowserPointerEvent(MapBrowserEventType.DBLCLICK, this.map_, pointerEvent);\n this.dispatchEvent(newEvent);\n }\n else {\n // click\n this.clickTimeoutId_ = setTimeout(function () {\n this.clickTimeoutId_ = undefined;\n var newEvent = new MapBrowserPointerEvent(MapBrowserEventType.SINGLECLICK, this.map_, pointerEvent);\n this.dispatchEvent(newEvent);\n }.bind(this), 250);\n }\n };\n /**\n * Keeps track on how many pointers are currently active.\n *\n * @param {PointerEvent} pointerEvent Pointer\n * event.\n * @private\n */\n MapBrowserEventHandler.prototype.updateActivePointers_ = function (pointerEvent) {\n var event = pointerEvent;\n if (event.type == MapBrowserEventType.POINTERUP ||\n event.type == MapBrowserEventType.POINTERCANCEL) {\n delete this.trackedTouches_[event.pointerId];\n }\n else if (event.type == MapBrowserEventType.POINTERDOWN) {\n this.trackedTouches_[event.pointerId] = true;\n }\n this.activePointers_ = Object.keys(this.trackedTouches_).length;\n };\n /**\n * @param {PointerEvent} pointerEvent Pointer\n * event.\n * @private\n */\n MapBrowserEventHandler.prototype.handlePointerUp_ = function (pointerEvent) {\n this.updateActivePointers_(pointerEvent);\n var newEvent = new MapBrowserPointerEvent(MapBrowserEventType.POINTERUP, this.map_, pointerEvent);\n this.dispatchEvent(newEvent);\n // We emulate click events on left mouse button click, touch contact, and pen\n // contact. isMouseActionButton returns true in these cases (evt.button is set\n // to 0).\n // See http://www.w3.org/TR/pointerevents/#button-states\n // We only fire click, singleclick, and doubleclick if nobody has called\n // event.stopPropagation() or event.preventDefault().\n if (!newEvent.propagationStopped && !this.dragging_ && this.isMouseActionButton_(pointerEvent)) {\n this.emulateClick_(this.down_);\n }\n if (this.activePointers_ === 0) {\n this.dragListenerKeys_.forEach(unlistenByKey);\n this.dragListenerKeys_.length = 0;\n this.dragging_ = false;\n this.down_ = null;\n }\n };\n /**\n * @param {PointerEvent} pointerEvent Pointer\n * event.\n * @return {boolean} If the left mouse button was pressed.\n * @private\n */\n MapBrowserEventHandler.prototype.isMouseActionButton_ = function (pointerEvent) {\n return pointerEvent.button === 0;\n };\n /**\n * @param {PointerEvent} pointerEvent Pointer\n * event.\n * @private\n */\n MapBrowserEventHandler.prototype.handlePointerDown_ = function (pointerEvent) {\n this.updateActivePointers_(pointerEvent);\n var newEvent = new MapBrowserPointerEvent(MapBrowserEventType.POINTERDOWN, this.map_, pointerEvent);\n this.dispatchEvent(newEvent);\n this.down_ = pointerEvent;\n if (this.dragListenerKeys_.length === 0) {\n this.dragListenerKeys_.push(listen(document, MapBrowserEventType.POINTERMOVE, this.handlePointerMove_, this), listen(document, MapBrowserEventType.POINTERUP, this.handlePointerUp_, this), \n /* Note that the listener for `pointercancel is set up on\n * `pointerEventHandler_` and not `documentPointerEventHandler_` like\n * the `pointerup` and `pointermove` listeners.\n *\n * The reason for this is the following: `TouchSource.vacuumTouches_()`\n * issues `pointercancel` events, when there was no `touchend` for a\n * `touchstart`. Now, let's say a first `touchstart` is registered on\n * `pointerEventHandler_`. The `documentPointerEventHandler_` is set up.\n * But `documentPointerEventHandler_` doesn't know about the first\n * `touchstart`. If there is no `touchend` for the `touchstart`, we can\n * only receive a `touchcancel` from `pointerEventHandler_`, because it is\n * only registered there.\n */\n listen(this.element_, MapBrowserEventType.POINTERCANCEL, this.handlePointerUp_, this));\n }\n };\n /**\n * @param {PointerEvent} pointerEvent Pointer\n * event.\n * @private\n */\n MapBrowserEventHandler.prototype.handlePointerMove_ = function (pointerEvent) {\n // Between pointerdown and pointerup, pointermove events are triggered.\n // To avoid a 'false' touchmove event to be dispatched, we test if the pointer\n // moved a significant distance.\n if (this.isMoving_(pointerEvent)) {\n this.dragging_ = true;\n var newEvent = new MapBrowserPointerEvent(MapBrowserEventType.POINTERDRAG, this.map_, pointerEvent, this.dragging_);\n this.dispatchEvent(newEvent);\n }\n };\n /**\n * Wrap and relay a pointer event. Note that this requires that the type\n * string for the MapBrowserPointerEvent matches the PointerEvent type.\n * @param {PointerEvent} pointerEvent Pointer\n * event.\n * @private\n */\n MapBrowserEventHandler.prototype.relayEvent_ = function (pointerEvent) {\n this.originalPointerMoveEvent_ = pointerEvent;\n var dragging = !!(this.down_ && this.isMoving_(pointerEvent));\n this.dispatchEvent(new MapBrowserPointerEvent(pointerEvent.type, this.map_, pointerEvent, dragging));\n };\n /**\n * Flexible handling of a `touch-action: none` css equivalent: because calling\n * `preventDefault()` on a `pointermove` event does not stop native page scrolling\n * and zooming, we also listen for `touchmove` and call `preventDefault()` on it\n * when an interaction (currently `DragPan` handles the event.\n * @param {TouchEvent} event Event.\n * @private\n */\n MapBrowserEventHandler.prototype.handleTouchMove_ = function (event) {\n if (this.originalPointerMoveEvent_.defaultPrevented) {\n event.preventDefault();\n }\n };\n /**\n * @param {PointerEvent} pointerEvent Pointer\n * event.\n * @return {boolean} Is moving.\n * @private\n */\n MapBrowserEventHandler.prototype.isMoving_ = function (pointerEvent) {\n return this.dragging_ ||\n Math.abs(pointerEvent.clientX - this.down_.clientX) > this.moveTolerance_ ||\n Math.abs(pointerEvent.clientY - this.down_.clientY) > this.moveTolerance_;\n };\n /**\n * @inheritDoc\n */\n MapBrowserEventHandler.prototype.disposeInternal = function () {\n if (this.relayedListenerKey_) {\n unlistenByKey(this.relayedListenerKey_);\n this.relayedListenerKey_ = null;\n }\n this.element_.removeEventListener(EventType.TOUCHMOVE, this.boundHandleTouchMove_);\n if (this.pointerdownListenerKey_) {\n unlistenByKey(this.pointerdownListenerKey_);\n this.pointerdownListenerKey_ = null;\n }\n this.dragListenerKeys_.forEach(unlistenByKey);\n this.dragListenerKeys_.length = 0;\n this.element_ = null;\n _super.prototype.disposeInternal.call(this);\n };\n return MapBrowserEventHandler;\n}(EventTarget));\nexport default MapBrowserEventHandler;\n//# sourceMappingURL=MapBrowserEventHandler.js.map","/**\n * @module ol/MapEventType\n */\n/**\n * @enum {string}\n */\nexport default {\n /**\n * Triggered after a map frame is rendered.\n * @event module:ol/MapEvent~MapEvent#postrender\n * @api\n */\n POSTRENDER: 'postrender',\n /**\n * Triggered when the map starts moving.\n * @event module:ol/MapEvent~MapEvent#movestart\n * @api\n */\n MOVESTART: 'movestart',\n /**\n * Triggered after the map is moved.\n * @event module:ol/MapEvent~MapEvent#moveend\n * @api\n */\n MOVEEND: 'moveend'\n};\n//# sourceMappingURL=MapEventType.js.map","/**\n * @module ol/MapProperty\n */\n/**\n * @enum {string}\n */\nexport default {\n LAYERGROUP: 'layergroup',\n SIZE: 'size',\n TARGET: 'target',\n VIEW: 'view'\n};\n//# sourceMappingURL=MapProperty.js.map","/**\n * @module ol/render/EventType\n */\n/**\n * @enum {string}\n */\nexport default {\n /**\n * Triggered before a layer is rendered.\n * @event module:ol/render/Event~RenderEvent#prerender\n * @api\n */\n PRERENDER: 'prerender',\n /**\n * Triggered after a layer is rendered.\n * @event module:ol/render/Event~RenderEvent#postrender\n * @api\n */\n POSTRENDER: 'postrender',\n /**\n * Triggered before layers are rendered.\n * The event object will not have a `context` set.\n * @event module:ol/render/Event~RenderEvent#precompose\n * @api\n */\n PRECOMPOSE: 'precompose',\n /**\n * Triggered after all layers are rendered.\n * The event object will not have a `context` set.\n * @event module:ol/render/Event~RenderEvent#postcompose\n * @api\n */\n POSTCOMPOSE: 'postcompose',\n /**\n * Triggered when rendering is complete, i.e. all sources and tiles have\n * finished loading for the current viewport, and all tiles are faded in.\n * The event object will not have a `context` set.\n * @event module:ol/render/Event~RenderEvent#rendercomplete\n * @api\n */\n RENDERCOMPLETE: 'rendercomplete'\n};\n//# sourceMappingURL=EventType.js.map","/**\n * @module ol/TileState\n */\n/**\n * @enum {number}\n */\nexport default {\n IDLE: 0,\n LOADING: 1,\n LOADED: 2,\n /**\n * Indicates that tile loading failed\n * @type {number}\n */\n ERROR: 3,\n EMPTY: 4\n};\n//# sourceMappingURL=TileState.js.map","/**\n * @module ol/structs/PriorityQueue\n */\nimport { assert } from '../asserts.js';\nimport { clear } from '../obj.js';\n/**\n * @type {number}\n */\nexport var DROP = Infinity;\n/**\n * @classdesc\n * Priority queue.\n *\n * The implementation is inspired from the Closure Library's Heap class and\n * Python's heapq module.\n *\n * See http://closure-library.googlecode.com/svn/docs/closure_goog_structs_heap.js.source.html\n * and http://hg.python.org/cpython/file/2.7/Lib/heapq.py.\n *\n * @template T\n */\nvar PriorityQueue = /** @class */ (function () {\n /**\n * @param {function(T): number} priorityFunction Priority function.\n * @param {function(T): string} keyFunction Key function.\n */\n function PriorityQueue(priorityFunction, keyFunction) {\n /**\n * @type {function(T): number}\n * @private\n */\n this.priorityFunction_ = priorityFunction;\n /**\n * @type {function(T): string}\n * @private\n */\n this.keyFunction_ = keyFunction;\n /**\n * @type {Array}\n * @private\n */\n this.elements_ = [];\n /**\n * @type {Array}\n * @private\n */\n this.priorities_ = [];\n /**\n * @type {!Object}\n * @private\n */\n this.queuedElements_ = {};\n }\n /**\n * FIXME empty description for jsdoc\n */\n PriorityQueue.prototype.clear = function () {\n this.elements_.length = 0;\n this.priorities_.length = 0;\n clear(this.queuedElements_);\n };\n /**\n * Remove and return the highest-priority element. O(log N).\n * @return {T} Element.\n */\n PriorityQueue.prototype.dequeue = function () {\n var elements = this.elements_;\n var priorities = this.priorities_;\n var element = elements[0];\n if (elements.length == 1) {\n elements.length = 0;\n priorities.length = 0;\n }\n else {\n elements[0] = elements.pop();\n priorities[0] = priorities.pop();\n this.siftUp_(0);\n }\n var elementKey = this.keyFunction_(element);\n delete this.queuedElements_[elementKey];\n return element;\n };\n /**\n * Enqueue an element. O(log N).\n * @param {T} element Element.\n * @return {boolean} The element was added to the queue.\n */\n PriorityQueue.prototype.enqueue = function (element) {\n assert(!(this.keyFunction_(element) in this.queuedElements_), 31); // Tried to enqueue an `element` that was already added to the queue\n var priority = this.priorityFunction_(element);\n if (priority != DROP) {\n this.elements_.push(element);\n this.priorities_.push(priority);\n this.queuedElements_[this.keyFunction_(element)] = true;\n this.siftDown_(0, this.elements_.length - 1);\n return true;\n }\n return false;\n };\n /**\n * @return {number} Count.\n */\n PriorityQueue.prototype.getCount = function () {\n return this.elements_.length;\n };\n /**\n * Gets the index of the left child of the node at the given index.\n * @param {number} index The index of the node to get the left child for.\n * @return {number} The index of the left child.\n * @private\n */\n PriorityQueue.prototype.getLeftChildIndex_ = function (index) {\n return index * 2 + 1;\n };\n /**\n * Gets the index of the right child of the node at the given index.\n * @param {number} index The index of the node to get the right child for.\n * @return {number} The index of the right child.\n * @private\n */\n PriorityQueue.prototype.getRightChildIndex_ = function (index) {\n return index * 2 + 2;\n };\n /**\n * Gets the index of the parent of the node at the given index.\n * @param {number} index The index of the node to get the parent for.\n * @return {number} The index of the parent.\n * @private\n */\n PriorityQueue.prototype.getParentIndex_ = function (index) {\n return (index - 1) >> 1;\n };\n /**\n * Make this a heap. O(N).\n * @private\n */\n PriorityQueue.prototype.heapify_ = function () {\n var i;\n for (i = (this.elements_.length >> 1) - 1; i >= 0; i--) {\n this.siftUp_(i);\n }\n };\n /**\n * @return {boolean} Is empty.\n */\n PriorityQueue.prototype.isEmpty = function () {\n return this.elements_.length === 0;\n };\n /**\n * @param {string} key Key.\n * @return {boolean} Is key queued.\n */\n PriorityQueue.prototype.isKeyQueued = function (key) {\n return key in this.queuedElements_;\n };\n /**\n * @param {T} element Element.\n * @return {boolean} Is queued.\n */\n PriorityQueue.prototype.isQueued = function (element) {\n return this.isKeyQueued(this.keyFunction_(element));\n };\n /**\n * @param {number} index The index of the node to move down.\n * @private\n */\n PriorityQueue.prototype.siftUp_ = function (index) {\n var elements = this.elements_;\n var priorities = this.priorities_;\n var count = elements.length;\n var element = elements[index];\n var priority = priorities[index];\n var startIndex = index;\n while (index < (count >> 1)) {\n var lIndex = this.getLeftChildIndex_(index);\n var rIndex = this.getRightChildIndex_(index);\n var smallerChildIndex = rIndex < count &&\n priorities[rIndex] < priorities[lIndex] ?\n rIndex : lIndex;\n elements[index] = elements[smallerChildIndex];\n priorities[index] = priorities[smallerChildIndex];\n index = smallerChildIndex;\n }\n elements[index] = element;\n priorities[index] = priority;\n this.siftDown_(startIndex, index);\n };\n /**\n * @param {number} startIndex The index of the root.\n * @param {number} index The index of the node to move up.\n * @private\n */\n PriorityQueue.prototype.siftDown_ = function (startIndex, index) {\n var elements = this.elements_;\n var priorities = this.priorities_;\n var element = elements[index];\n var priority = priorities[index];\n while (index > startIndex) {\n var parentIndex = this.getParentIndex_(index);\n if (priorities[parentIndex] > priority) {\n elements[index] = elements[parentIndex];\n priorities[index] = priorities[parentIndex];\n index = parentIndex;\n }\n else {\n break;\n }\n }\n elements[index] = element;\n priorities[index] = priority;\n };\n /**\n * FIXME empty description for jsdoc\n */\n PriorityQueue.prototype.reprioritize = function () {\n var priorityFunction = this.priorityFunction_;\n var elements = this.elements_;\n var priorities = this.priorities_;\n var index = 0;\n var n = elements.length;\n var element, i, priority;\n for (i = 0; i < n; ++i) {\n element = elements[i];\n priority = priorityFunction(element);\n if (priority == DROP) {\n delete this.queuedElements_[this.keyFunction_(element)];\n }\n else {\n priorities[index] = priority;\n elements[index++] = element;\n }\n }\n elements.length = index;\n priorities.length = index;\n this.heapify_();\n };\n return PriorityQueue;\n}());\nexport default PriorityQueue;\n//# sourceMappingURL=PriorityQueue.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/TileQueue\n */\nimport TileState from './TileState.js';\nimport EventType from './events/EventType.js';\nimport PriorityQueue from './structs/PriorityQueue.js';\n/**\n * @typedef {function(import(\"./Tile.js\").default, string, import(\"./coordinate.js\").Coordinate, number): number} PriorityFunction\n */\nvar TileQueue = /** @class */ (function (_super) {\n __extends(TileQueue, _super);\n /**\n * @param {PriorityFunction} tilePriorityFunction Tile priority function.\n * @param {function(): ?} tileChangeCallback Function called on each tile change event.\n */\n function TileQueue(tilePriorityFunction, tileChangeCallback) {\n var _this = _super.call(this, \n /**\n * @param {Array} element Element.\n * @return {number} Priority.\n */\n function (element) {\n return tilePriorityFunction.apply(null, element);\n }, \n /**\n * @param {Array} element Element.\n * @return {string} Key.\n */\n function (element) {\n return ( /** @type {import(\"./Tile.js\").default} */(element[0]).getKey());\n }) || this;\n /** @private */\n _this.boundHandleTileChange_ = _this.handleTileChange.bind(_this);\n /**\n * @private\n * @type {function(): ?}\n */\n _this.tileChangeCallback_ = tileChangeCallback;\n /**\n * @private\n * @type {number}\n */\n _this.tilesLoading_ = 0;\n /**\n * @private\n * @type {!Object}\n */\n _this.tilesLoadingKeys_ = {};\n return _this;\n }\n /**\n * @inheritDoc\n */\n TileQueue.prototype.enqueue = function (element) {\n var added = _super.prototype.enqueue.call(this, element);\n if (added) {\n var tile = element[0];\n tile.addEventListener(EventType.CHANGE, this.boundHandleTileChange_);\n }\n return added;\n };\n /**\n * @return {number} Number of tiles loading.\n */\n TileQueue.prototype.getTilesLoading = function () {\n return this.tilesLoading_;\n };\n /**\n * @param {import(\"./events/Event.js\").default} event Event.\n * @protected\n */\n TileQueue.prototype.handleTileChange = function (event) {\n var tile = /** @type {import(\"./Tile.js\").default} */ (event.target);\n var state = tile.getState();\n if (tile.hifi && state === TileState.LOADED || state === TileState.ERROR || state === TileState.EMPTY) {\n tile.removeEventListener(EventType.CHANGE, this.boundHandleTileChange_);\n var tileKey = tile.getKey();\n if (tileKey in this.tilesLoadingKeys_) {\n delete this.tilesLoadingKeys_[tileKey];\n --this.tilesLoading_;\n }\n this.tileChangeCallback_();\n }\n };\n /**\n * @param {number} maxTotalLoading Maximum number tiles to load simultaneously.\n * @param {number} maxNewLoads Maximum number of new tiles to load.\n */\n TileQueue.prototype.loadMoreTiles = function (maxTotalLoading, maxNewLoads) {\n var newLoads = 0;\n var state, tile, tileKey;\n while (this.tilesLoading_ < maxTotalLoading && newLoads < maxNewLoads &&\n this.getCount() > 0) {\n tile = /** @type {import(\"./Tile.js\").default} */ (this.dequeue()[0]);\n tileKey = tile.getKey();\n state = tile.getState();\n if (state === TileState.IDLE && !(tileKey in this.tilesLoadingKeys_)) {\n this.tilesLoadingKeys_[tileKey] = true;\n ++this.tilesLoading_;\n ++newLoads;\n tile.load();\n }\n }\n };\n return TileQueue;\n}(PriorityQueue));\nexport default TileQueue;\n//# sourceMappingURL=TileQueue.js.map","/**\n * @module ol/tilegrid/common\n */\n/**\n * Default maximum zoom for default tile grids.\n * @type {number}\n */\nexport var DEFAULT_MAX_ZOOM = 42;\n/**\n * Default tile size.\n * @type {number}\n */\nexport var DEFAULT_TILE_SIZE = 256;\n//# sourceMappingURL=common.js.map","/**\n * @module ol/centerconstraint\n */\nimport { clamp } from './math.js';\n/**\n * @typedef {function((import(\"./coordinate.js\").Coordinate|undefined), number, import(\"./size.js\").Size, boolean=): (import(\"./coordinate.js\").Coordinate|undefined)} Type\n */\n/**\n * @param {import(\"./extent.js\").Extent} extent Extent.\n * @param {boolean} onlyCenter If true, the constraint will only apply to the view center.\n * @param {boolean} smooth If true, the view will be able to go slightly out of the given extent\n * (only during interaction and animation).\n * @return {Type} The constraint.\n */\nexport function createExtent(extent, onlyCenter, smooth) {\n return (\n /**\n * @param {import(\"./coordinate.js\").Coordinate|undefined} center Center.\n * @param {number} resolution Resolution.\n * @param {import(\"./size.js\").Size} size Viewport size; unused if `onlyCenter` was specified.\n * @param {boolean=} opt_isMoving True if an interaction or animation is in progress.\n * @return {import(\"./coordinate.js\").Coordinate|undefined} Center.\n */\n function (center, resolution, size, opt_isMoving) {\n if (center) {\n var viewWidth = onlyCenter ? 0 : size[0] * resolution;\n var viewHeight = onlyCenter ? 0 : size[1] * resolution;\n var minX = extent[0] + viewWidth / 2;\n var maxX = extent[2] - viewWidth / 2;\n var minY = extent[1] + viewHeight / 2;\n var maxY = extent[3] - viewHeight / 2;\n // note: when zooming out of bounds, min and max values for x and y may\n // end up inverted (min > max); this has to be accounted for\n if (minX > maxX) {\n minX = (maxX + minX) / 2;\n maxX = minX;\n }\n if (minY > maxY) {\n minY = (maxY + minY) / 2;\n maxY = minY;\n }\n var x = clamp(center[0], minX, maxX);\n var y = clamp(center[1], minY, maxY);\n var ratio = 30 * resolution;\n // during an interaction, allow some overscroll\n if (opt_isMoving && smooth) {\n x += -ratio * Math.log(1 + Math.max(0, minX - center[0]) / ratio) +\n ratio * Math.log(1 + Math.max(0, center[0] - maxX) / ratio);\n y += -ratio * Math.log(1 + Math.max(0, minY - center[1]) / ratio) +\n ratio * Math.log(1 + Math.max(0, center[1] - maxY) / ratio);\n }\n return [x, y];\n }\n else {\n return undefined;\n }\n });\n}\n/**\n * @param {import(\"./coordinate.js\").Coordinate=} center Center.\n * @return {import(\"./coordinate.js\").Coordinate|undefined} Center.\n */\nexport function none(center) {\n return center;\n}\n//# sourceMappingURL=centerconstraint.js.map","/**\n * @module ol/resolutionconstraint\n */\nimport { linearFindNearest } from './array.js';\nimport { getHeight, getWidth } from './extent.js';\nimport { clamp } from './math.js';\n/**\n * @typedef {function((number|undefined), number, import(\"./size.js\").Size, boolean=): (number|undefined)} Type\n */\n/**\n * Returns a modified resolution taking into account the viewport size and maximum\n * allowed extent.\n * @param {number} resolution Resolution\n * @param {import(\"./extent.js\").Extent=} maxExtent Maximum allowed extent.\n * @param {import(\"./size.js\").Size} viewportSize Viewport size.\n * @param {boolean} showFullExtent Whether to show the full extent.\n * @return {number} Capped resolution.\n */\nfunction getViewportClampedResolution(resolution, maxExtent, viewportSize, showFullExtent) {\n var xResolution = getWidth(maxExtent) / viewportSize[0];\n var yResolution = getHeight(maxExtent) / viewportSize[1];\n if (showFullExtent) {\n return Math.min(resolution, Math.max(xResolution, yResolution));\n }\n return Math.min(resolution, Math.min(xResolution, yResolution));\n}\n/**\n * Returns a modified resolution to be between maxResolution and minResolution while\n * still allowing the value to be slightly out of bounds.\n * Note: the computation is based on the logarithm function (ln):\n * - at 1, ln(x) is 0\n * - above 1, ln(x) keeps increasing but at a much slower pace than x\n * The final result is clamped to prevent getting too far away from bounds.\n * @param {number} resolution Resolution.\n * @param {number} maxResolution Max resolution.\n * @param {number} minResolution Min resolution.\n * @return {number} Smoothed resolution.\n */\nfunction getSmoothClampedResolution(resolution, maxResolution, minResolution) {\n var result = Math.min(resolution, maxResolution);\n var ratio = 50;\n result *= Math.log(1 + ratio * Math.max(0, resolution / maxResolution - 1)) / ratio + 1;\n if (minResolution) {\n result = Math.max(result, minResolution);\n result /= Math.log(1 + ratio * Math.max(0, minResolution / resolution - 1)) / ratio + 1;\n }\n return clamp(result, minResolution / 2, maxResolution * 2);\n}\n/**\n * @param {Array} resolutions Resolutions.\n * @param {boolean=} opt_smooth If true, the view will be able to slightly exceed resolution limits. Default: true.\n * @param {import(\"./extent.js\").Extent=} opt_maxExtent Maximum allowed extent.\n * @param {boolean=} opt_showFullExtent If true, allows us to show the full extent. Default: false.\n * @return {Type} Zoom function.\n */\nexport function createSnapToResolutions(resolutions, opt_smooth, opt_maxExtent, opt_showFullExtent) {\n return (\n /**\n * @param {number|undefined} resolution Resolution.\n * @param {number} direction Direction.\n * @param {import(\"./size.js\").Size} size Viewport size.\n * @param {boolean=} opt_isMoving True if an interaction or animation is in progress.\n * @return {number|undefined} Resolution.\n */\n function (resolution, direction, size, opt_isMoving) {\n if (resolution !== undefined) {\n var maxResolution = resolutions[0];\n var minResolution = resolutions[resolutions.length - 1];\n var cappedMaxRes = opt_maxExtent ?\n getViewportClampedResolution(maxResolution, opt_maxExtent, size, opt_showFullExtent) :\n maxResolution;\n // during interacting or animating, allow intermediary values\n if (opt_isMoving) {\n var smooth = opt_smooth !== undefined ? opt_smooth : true;\n if (!smooth) {\n return clamp(resolution, minResolution, cappedMaxRes);\n }\n return getSmoothClampedResolution(resolution, cappedMaxRes, minResolution);\n }\n var capped = Math.min(cappedMaxRes, resolution);\n var z = Math.floor(linearFindNearest(resolutions, capped, direction));\n if (resolutions[z] > cappedMaxRes && z < resolutions.length - 1) {\n return resolutions[z + 1];\n }\n return resolutions[z];\n }\n else {\n return undefined;\n }\n });\n}\n/**\n * @param {number} power Power.\n * @param {number} maxResolution Maximum resolution.\n * @param {number=} opt_minResolution Minimum resolution.\n * @param {boolean=} opt_smooth If true, the view will be able to slightly exceed resolution limits. Default: true.\n * @param {import(\"./extent.js\").Extent=} opt_maxExtent Maximum allowed extent.\n * @param {boolean=} opt_showFullExtent If true, allows us to show the full extent. Default: false.\n * @return {Type} Zoom function.\n */\nexport function createSnapToPower(power, maxResolution, opt_minResolution, opt_smooth, opt_maxExtent, opt_showFullExtent) {\n return (\n /**\n * @param {number|undefined} resolution Resolution.\n * @param {number} direction Direction.\n * @param {import(\"./size.js\").Size} size Viewport size.\n * @param {boolean=} opt_isMoving True if an interaction or animation is in progress.\n * @return {number|undefined} Resolution.\n */\n function (resolution, direction, size, opt_isMoving) {\n if (resolution !== undefined) {\n var cappedMaxRes = opt_maxExtent ?\n getViewportClampedResolution(maxResolution, opt_maxExtent, size, opt_showFullExtent) :\n maxResolution;\n var minResolution = opt_minResolution !== undefined ? opt_minResolution : 0;\n // during interacting or animating, allow intermediary values\n if (opt_isMoving) {\n var smooth = opt_smooth !== undefined ? opt_smooth : true;\n if (!smooth) {\n return clamp(resolution, minResolution, cappedMaxRes);\n }\n return getSmoothClampedResolution(resolution, cappedMaxRes, minResolution);\n }\n var tolerance = 1e-9;\n var minZoomLevel = Math.ceil(Math.log(maxResolution / cappedMaxRes) / Math.log(power) - tolerance);\n var offset = -direction * (0.5 - tolerance) + 0.5;\n var capped = Math.min(cappedMaxRes, resolution);\n var cappedZoomLevel = Math.floor(Math.log(maxResolution / capped) / Math.log(power) + offset);\n var zoomLevel = Math.max(minZoomLevel, cappedZoomLevel);\n var newResolution = maxResolution / Math.pow(power, zoomLevel);\n return clamp(newResolution, minResolution, cappedMaxRes);\n }\n else {\n return undefined;\n }\n });\n}\n/**\n * @param {number} maxResolution Max resolution.\n * @param {number} minResolution Min resolution.\n * @param {boolean=} opt_smooth If true, the view will be able to slightly exceed resolution limits. Default: true.\n * @param {import(\"./extent.js\").Extent=} opt_maxExtent Maximum allowed extent.\n * @param {boolean=} opt_showFullExtent If true, allows us to show the full extent. Default: false.\n * @return {Type} Zoom function.\n */\nexport function createMinMaxResolution(maxResolution, minResolution, opt_smooth, opt_maxExtent, opt_showFullExtent) {\n return (\n /**\n * @param {number|undefined} resolution Resolution.\n * @param {number} direction Direction.\n * @param {import(\"./size.js\").Size} size Viewport size.\n * @param {boolean=} opt_isMoving True if an interaction or animation is in progress.\n * @return {number|undefined} Resolution.\n */\n function (resolution, direction, size, opt_isMoving) {\n if (resolution !== undefined) {\n var cappedMaxRes = opt_maxExtent ?\n getViewportClampedResolution(maxResolution, opt_maxExtent, size, opt_showFullExtent) :\n maxResolution;\n var smooth = opt_smooth !== undefined ? opt_smooth : true;\n if (!smooth || !opt_isMoving) {\n return clamp(resolution, minResolution, cappedMaxRes);\n }\n return getSmoothClampedResolution(resolution, cappedMaxRes, minResolution);\n }\n else {\n return undefined;\n }\n });\n}\n//# sourceMappingURL=resolutionconstraint.js.map","/**\n * @module ol/rotationconstraint\n */\nimport { toRadians } from './math.js';\n/**\n * @typedef {function((number|undefined), boolean=): (number|undefined)} Type\n */\n/**\n * @param {number|undefined} rotation Rotation.\n * @return {number|undefined} Rotation.\n */\nexport function disable(rotation) {\n if (rotation !== undefined) {\n return 0;\n }\n else {\n return undefined;\n }\n}\n/**\n * @param {number|undefined} rotation Rotation.\n * @return {number|undefined} Rotation.\n */\nexport function none(rotation) {\n if (rotation !== undefined) {\n return rotation;\n }\n else {\n return undefined;\n }\n}\n/**\n * @param {number} n N.\n * @return {Type} Rotation constraint.\n */\nexport function createSnapToN(n) {\n var theta = 2 * Math.PI / n;\n return (\n /**\n * @param {number|undefined} rotation Rotation.\n * @param {boolean=} opt_isMoving True if an interaction or animation is in progress.\n * @return {number|undefined} Rotation.\n */\n function (rotation, opt_isMoving) {\n if (opt_isMoving) {\n return rotation;\n }\n if (rotation !== undefined) {\n rotation = Math.floor(rotation / theta + 0.5) * theta;\n return rotation;\n }\n else {\n return undefined;\n }\n });\n}\n/**\n * @param {number=} opt_tolerance Tolerance.\n * @return {Type} Rotation constraint.\n */\nexport function createSnapToZero(opt_tolerance) {\n var tolerance = opt_tolerance || toRadians(5);\n return (\n /**\n * @param {number|undefined} rotation Rotation.\n * @param {boolean} opt_isMoving True if an interaction or animation is in progress.\n * @return {number|undefined} Rotation.\n */\n function (rotation, opt_isMoving) {\n if (opt_isMoving) {\n return rotation;\n }\n if (rotation !== undefined) {\n if (Math.abs(rotation) <= tolerance) {\n return 0;\n }\n else {\n return rotation;\n }\n }\n else {\n return undefined;\n }\n });\n}\n//# sourceMappingURL=rotationconstraint.js.map","/**\n * @module ol/ViewHint\n */\n/**\n * @enum {number}\n */\nexport default {\n ANIMATING: 0,\n INTERACTING: 1\n};\n//# sourceMappingURL=ViewHint.js.map","/**\n * @module ol/ViewProperty\n */\n/**\n * @enum {string}\n */\nexport default {\n CENTER: 'center',\n RESOLUTION: 'resolution',\n ROTATION: 'rotation'\n};\n//# sourceMappingURL=ViewProperty.js.map","/**\n * @module ol/string\n */\n/**\n * @param {number} number Number to be formatted\n * @param {number} width The desired width\n * @param {number=} opt_precision Precision of the output string (i.e. number of decimal places)\n * @returns {string} Formatted string\n */\nexport function padNumber(number, width, opt_precision) {\n var numberString = opt_precision !== undefined ? number.toFixed(opt_precision) : '' + number;\n var decimal = numberString.indexOf('.');\n decimal = decimal === -1 ? numberString.length : decimal;\n return decimal > width ? numberString : new Array(1 + width - decimal).join('0') + numberString;\n}\n/**\n * Adapted from https://github.com/omichelsen/compare-versions/blob/master/index.js\n * @param {string|number} v1 First version\n * @param {string|number} v2 Second version\n * @returns {number} Value\n */\nexport function compareVersions(v1, v2) {\n var s1 = ('' + v1).split('.');\n var s2 = ('' + v2).split('.');\n for (var i = 0; i < Math.max(s1.length, s2.length); i++) {\n var n1 = parseInt(s1[i] || '0', 10);\n var n2 = parseInt(s2[i] || '0', 10);\n if (n1 > n2) {\n return 1;\n }\n if (n2 > n1) {\n return -1;\n }\n }\n return 0;\n}\n//# sourceMappingURL=string.js.map","/**\n * @module ol/coordinate\n */\nimport { modulo } from './math.js';\nimport { padNumber } from './string.js';\n/**\n * An array of numbers representing an xy coordinate. Example: `[16, 48]`.\n * @typedef {Array} Coordinate\n * @api\n */\n/**\n * A function that takes a {@link module:ol/coordinate~Coordinate} and\n * transforms it into a `{string}`.\n *\n * @typedef {function((Coordinate|undefined)): string} CoordinateFormat\n * @api\n */\n/**\n * Add `delta` to `coordinate`. `coordinate` is modified in place and returned\n * by the function.\n *\n * Example:\n *\n * import {add} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * add(coord, [-2, 4]);\n * // coord is now [5.85, 51.983333]\n *\n * @param {Coordinate} coordinate Coordinate.\n * @param {Coordinate} delta Delta.\n * @return {Coordinate} The input coordinate adjusted by\n * the given delta.\n * @api\n */\nexport function add(coordinate, delta) {\n coordinate[0] += +delta[0];\n coordinate[1] += +delta[1];\n return coordinate;\n}\n/**\n * Calculates the point closest to the passed coordinate on the passed circle.\n *\n * @param {Coordinate} coordinate The coordinate.\n * @param {import(\"./geom/Circle.js\").default} circle The circle.\n * @return {Coordinate} Closest point on the circumference.\n */\nexport function closestOnCircle(coordinate, circle) {\n var r = circle.getRadius();\n var center = circle.getCenter();\n var x0 = center[0];\n var y0 = center[1];\n var x1 = coordinate[0];\n var y1 = coordinate[1];\n var dx = x1 - x0;\n var dy = y1 - y0;\n if (dx === 0 && dy === 0) {\n dx = 1;\n }\n var d = Math.sqrt(dx * dx + dy * dy);\n var x = x0 + r * dx / d;\n var y = y0 + r * dy / d;\n return [x, y];\n}\n/**\n * Calculates the point closest to the passed coordinate on the passed segment.\n * This is the foot of the perpendicular of the coordinate to the segment when\n * the foot is on the segment, or the closest segment coordinate when the foot\n * is outside the segment.\n *\n * @param {Coordinate} coordinate The coordinate.\n * @param {Array} segment The two coordinates\n * of the segment.\n * @return {Coordinate} The foot of the perpendicular of\n * the coordinate to the segment.\n */\nexport function closestOnSegment(coordinate, segment) {\n var x0 = coordinate[0];\n var y0 = coordinate[1];\n var start = segment[0];\n var end = segment[1];\n var x1 = start[0];\n var y1 = start[1];\n var x2 = end[0];\n var y2 = end[1];\n var dx = x2 - x1;\n var dy = y2 - y1;\n var along = (dx === 0 && dy === 0) ? 0 :\n ((dx * (x0 - x1)) + (dy * (y0 - y1))) / ((dx * dx + dy * dy) || 0);\n var x, y;\n if (along <= 0) {\n x = x1;\n y = y1;\n }\n else if (along >= 1) {\n x = x2;\n y = y2;\n }\n else {\n x = x1 + along * dx;\n y = y1 + along * dy;\n }\n return [x, y];\n}\n/**\n * Returns a {@link module:ol/coordinate~CoordinateFormat} function that can be\n * used to format\n * a {Coordinate} to a string.\n *\n * Example without specifying the fractional digits:\n *\n * import {createStringXY} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var stringifyFunc = createStringXY();\n * var out = stringifyFunc(coord);\n * // out is now '8, 48'\n *\n * Example with explicitly specifying 2 fractional digits:\n *\n * import {createStringXY} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var stringifyFunc = createStringXY(2);\n * var out = stringifyFunc(coord);\n * // out is now '7.85, 47.98'\n *\n * @param {number=} opt_fractionDigits The number of digits to include\n * after the decimal point. Default is `0`.\n * @return {CoordinateFormat} Coordinate format.\n * @api\n */\nexport function createStringXY(opt_fractionDigits) {\n return (\n /**\n * @param {Coordinate} coordinate Coordinate.\n * @return {string} String XY.\n */\n function (coordinate) {\n return toStringXY(coordinate, opt_fractionDigits);\n });\n}\n/**\n * @param {string} hemispheres Hemispheres.\n * @param {number} degrees Degrees.\n * @param {number=} opt_fractionDigits The number of digits to include\n * after the decimal point. Default is `0`.\n * @return {string} String.\n */\nexport function degreesToStringHDMS(hemispheres, degrees, opt_fractionDigits) {\n var normalizedDegrees = modulo(degrees + 180, 360) - 180;\n var x = Math.abs(3600 * normalizedDegrees);\n var dflPrecision = opt_fractionDigits || 0;\n var precision = Math.pow(10, dflPrecision);\n var deg = Math.floor(x / 3600);\n var min = Math.floor((x - deg * 3600) / 60);\n var sec = x - (deg * 3600) - (min * 60);\n sec = Math.ceil(sec * precision) / precision;\n if (sec >= 60) {\n sec = 0;\n min += 1;\n }\n if (min >= 60) {\n min = 0;\n deg += 1;\n }\n return deg + '\\u00b0 ' + padNumber(min, 2) + '\\u2032 ' +\n padNumber(sec, 2, dflPrecision) + '\\u2033' +\n (normalizedDegrees == 0 ? '' : ' ' + hemispheres.charAt(normalizedDegrees < 0 ? 1 : 0));\n}\n/**\n * Transforms the given {@link module:ol/coordinate~Coordinate} to a string\n * using the given string template. The strings `{x}` and `{y}` in the template\n * will be replaced with the first and second coordinate values respectively.\n *\n * Example without specifying the fractional digits:\n *\n * import {format} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var template = 'Coordinate is ({x}|{y}).';\n * var out = format(coord, template);\n * // out is now 'Coordinate is (8|48).'\n *\n * Example explicitly specifying the fractional digits:\n *\n * import {format} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var template = 'Coordinate is ({x}|{y}).';\n * var out = format(coord, template, 2);\n * // out is now 'Coordinate is (7.85|47.98).'\n *\n * @param {Coordinate} coordinate Coordinate.\n * @param {string} template A template string with `{x}` and `{y}` placeholders\n * that will be replaced by first and second coordinate values.\n * @param {number=} opt_fractionDigits The number of digits to include\n * after the decimal point. Default is `0`.\n * @return {string} Formatted coordinate.\n * @api\n */\nexport function format(coordinate, template, opt_fractionDigits) {\n if (coordinate) {\n return template\n .replace('{x}', coordinate[0].toFixed(opt_fractionDigits))\n .replace('{y}', coordinate[1].toFixed(opt_fractionDigits));\n }\n else {\n return '';\n }\n}\n/**\n * @param {Coordinate} coordinate1 First coordinate.\n * @param {Coordinate} coordinate2 Second coordinate.\n * @return {boolean} The two coordinates are equal.\n */\nexport function equals(coordinate1, coordinate2) {\n var equals = true;\n for (var i = coordinate1.length - 1; i >= 0; --i) {\n if (coordinate1[i] != coordinate2[i]) {\n equals = false;\n break;\n }\n }\n return equals;\n}\n/**\n * Rotate `coordinate` by `angle`. `coordinate` is modified in place and\n * returned by the function.\n *\n * Example:\n *\n * import {rotate} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var rotateRadians = Math.PI / 2; // 90 degrees\n * rotate(coord, rotateRadians);\n * // coord is now [-47.983333, 7.85]\n *\n * @param {Coordinate} coordinate Coordinate.\n * @param {number} angle Angle in radian.\n * @return {Coordinate} Coordinate.\n * @api\n */\nexport function rotate(coordinate, angle) {\n var cosAngle = Math.cos(angle);\n var sinAngle = Math.sin(angle);\n var x = coordinate[0] * cosAngle - coordinate[1] * sinAngle;\n var y = coordinate[1] * cosAngle + coordinate[0] * sinAngle;\n coordinate[0] = x;\n coordinate[1] = y;\n return coordinate;\n}\n/**\n * Scale `coordinate` by `scale`. `coordinate` is modified in place and returned\n * by the function.\n *\n * Example:\n *\n * import {scale as scaleCoordinate} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var scale = 1.2;\n * scaleCoordinate(coord, scale);\n * // coord is now [9.42, 57.5799996]\n *\n * @param {Coordinate} coordinate Coordinate.\n * @param {number} scale Scale factor.\n * @return {Coordinate} Coordinate.\n */\nexport function scale(coordinate, scale) {\n coordinate[0] *= scale;\n coordinate[1] *= scale;\n return coordinate;\n}\n/**\n * @param {Coordinate} coord1 First coordinate.\n * @param {Coordinate} coord2 Second coordinate.\n * @return {number} Squared distance between coord1 and coord2.\n */\nexport function squaredDistance(coord1, coord2) {\n var dx = coord1[0] - coord2[0];\n var dy = coord1[1] - coord2[1];\n return dx * dx + dy * dy;\n}\n/**\n * @param {Coordinate} coord1 First coordinate.\n * @param {Coordinate} coord2 Second coordinate.\n * @return {number} Distance between coord1 and coord2.\n */\nexport function distance(coord1, coord2) {\n return Math.sqrt(squaredDistance(coord1, coord2));\n}\n/**\n * Calculate the squared distance from a coordinate to a line segment.\n *\n * @param {Coordinate} coordinate Coordinate of the point.\n * @param {Array} segment Line segment (2\n * coordinates).\n * @return {number} Squared distance from the point to the line segment.\n */\nexport function squaredDistanceToSegment(coordinate, segment) {\n return squaredDistance(coordinate, closestOnSegment(coordinate, segment));\n}\n/**\n * Format a geographic coordinate with the hemisphere, degrees, minutes, and\n * seconds.\n *\n * Example without specifying fractional digits:\n *\n * import {toStringHDMS} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var out = toStringHDMS(coord);\n * // out is now '47° 58′ 60″ N 7° 50′ 60″ E'\n *\n * Example explicitly specifying 1 fractional digit:\n *\n * import {toStringHDMS} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var out = toStringHDMS(coord, 1);\n * // out is now '47° 58′ 60.0″ N 7° 50′ 60.0″ E'\n *\n * @param {Coordinate} coordinate Coordinate.\n * @param {number=} opt_fractionDigits The number of digits to include\n * after the decimal point. Default is `0`.\n * @return {string} Hemisphere, degrees, minutes and seconds.\n * @api\n */\nexport function toStringHDMS(coordinate, opt_fractionDigits) {\n if (coordinate) {\n return degreesToStringHDMS('NS', coordinate[1], opt_fractionDigits) + ' ' +\n degreesToStringHDMS('EW', coordinate[0], opt_fractionDigits);\n }\n else {\n return '';\n }\n}\n/**\n * Format a coordinate as a comma delimited string.\n *\n * Example without specifying fractional digits:\n *\n * import {toStringXY} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var out = toStringXY(coord);\n * // out is now '8, 48'\n *\n * Example explicitly specifying 1 fractional digit:\n *\n * import {toStringXY} from 'ol/coordinate';\n *\n * var coord = [7.85, 47.983333];\n * var out = toStringXY(coord, 1);\n * // out is now '7.8, 48.0'\n *\n * @param {Coordinate} coordinate Coordinate.\n * @param {number=} opt_fractionDigits The number of digits to include\n * after the decimal point. Default is `0`.\n * @return {string} XY.\n * @api\n */\nexport function toStringXY(coordinate, opt_fractionDigits) {\n return format(coordinate, '{x}, {y}', opt_fractionDigits);\n}\n//# sourceMappingURL=coordinate.js.map","/**\n * @module ol/easing\n */\n/**\n * Start slow and speed up.\n * @param {number} t Input between 0 and 1.\n * @return {number} Output between 0 and 1.\n * @api\n */\nexport function easeIn(t) {\n return Math.pow(t, 3);\n}\n/**\n * Start fast and slow down.\n * @param {number} t Input between 0 and 1.\n * @return {number} Output between 0 and 1.\n * @api\n */\nexport function easeOut(t) {\n return 1 - easeIn(1 - t);\n}\n/**\n * Start slow, speed up, and then slow down again.\n * @param {number} t Input between 0 and 1.\n * @return {number} Output between 0 and 1.\n * @api\n */\nexport function inAndOut(t) {\n return 3 * t * t - 2 * t * t * t;\n}\n/**\n * Maintain a constant speed over time.\n * @param {number} t Input between 0 and 1.\n * @return {number} Output between 0 and 1.\n * @api\n */\nexport function linear(t) {\n return t;\n}\n/**\n * Start slow, speed up, and at the very end slow down again. This has the\n * same general behavior as {@link module:ol/easing~inAndOut}, but the final\n * slowdown is delayed.\n * @param {number} t Input between 0 and 1.\n * @return {number} Output between 0 and 1.\n * @api\n */\nexport function upAndDown(t) {\n if (t < 0.5) {\n return inAndOut(2 * t);\n }\n else {\n return 1 - inAndOut(2 * (t - 0.5));\n }\n}\n//# sourceMappingURL=easing.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/View\n */\nimport { DEFAULT_TILE_SIZE } from './tilegrid/common.js';\nimport { VOID } from './functions.js';\nimport { createExtent, none as centerNone } from './centerconstraint.js';\nimport BaseObject from './Object.js';\nimport { createSnapToResolutions, createSnapToPower } from './resolutionconstraint.js';\nimport { createSnapToZero, createSnapToN, none as rotationNone, disable } from './rotationconstraint.js';\nimport ViewHint from './ViewHint.js';\nimport ViewProperty from './ViewProperty.js';\nimport { linearFindNearest } from './array.js';\nimport { assert } from './asserts.js';\nimport { add as addCoordinate, rotate as rotateCoordinate, equals as coordinatesEqual } from './coordinate.js';\nimport { inAndOut } from './easing.js';\nimport { getForViewAndSize, getCenter, getHeight, getWidth, isEmpty } from './extent.js';\nimport GeometryType from './geom/GeometryType.js';\nimport { fromExtent as polygonFromExtent } from './geom/Polygon.js';\nimport { clamp, modulo } from './math.js';\nimport { assign } from './obj.js';\nimport { createProjection, METERS_PER_UNIT, toUserCoordinate, toUserExtent, fromUserCoordinate, fromUserExtent, getUserProjection } from './proj.js';\nimport Units from './proj/Units.js';\nimport { equals } from './coordinate.js';\nimport { easeOut } from './easing.js';\nimport { createMinMaxResolution } from './resolutionconstraint.js';\n/**\n * An animation configuration\n *\n * @typedef {Object} Animation\n * @property {import(\"./coordinate.js\").Coordinate} [sourceCenter]\n * @property {import(\"./coordinate.js\").Coordinate} [targetCenter]\n * @property {number} [sourceResolution]\n * @property {number} [targetResolution]\n * @property {number} [sourceRotation]\n * @property {number} [targetRotation]\n * @property {import(\"./coordinate.js\").Coordinate} [anchor]\n * @property {number} start\n * @property {number} duration\n * @property {boolean} complete\n * @property {function(number):number} easing\n * @property {function(boolean)} callback\n */\n/**\n * @typedef {Object} Constraints\n * @property {import(\"./centerconstraint.js\").Type} center\n * @property {import(\"./resolutionconstraint.js\").Type} resolution\n * @property {import(\"./rotationconstraint.js\").Type} rotation\n */\n/**\n * @typedef {Object} FitOptions\n * @property {import(\"./size.js\").Size} [size] The size in pixels of the box to fit\n * the extent into. Default is the current size of the first map in the DOM that\n * uses this view, or `[100, 100]` if no such map is found.\n * @property {!Array} [padding=[0, 0, 0, 0]] Padding (in pixels) to be\n * cleared inside the view. Values in the array are top, right, bottom and left\n * padding.\n * @property {boolean} [nearest=false] If the view `constrainResolution` option is `true`,\n * get the nearest extent instead of the closest that actually fits the view.\n * @property {number} [minResolution=0] Minimum resolution that we zoom to.\n * @property {number} [maxZoom] Maximum zoom level that we zoom to. If\n * `minResolution` is given, this property is ignored.\n * @property {number} [duration] The duration of the animation in milliseconds.\n * By default, there is no animation to the target extent.\n * @property {function(number):number} [easing] The easing function used during\n * the animation (defaults to {@link module:ol/easing~inAndOut}).\n * The function will be called for each frame with a number representing a\n * fraction of the animation's duration. The function should return a number\n * between 0 and 1 representing the progress toward the destination state.\n * @property {function(boolean)} [callback] Function called when the view is in\n * its final position. The callback will be called with `true` if the animation\n * series completed on its own or `false` if it was cancelled.\n */\n/**\n * @typedef {Object} ViewOptions\n * @property {import(\"./coordinate.js\").Coordinate} [center] The initial center for\n * the view. If a user projection is not set, the coordinate system for the center is\n * specified with the `projection` option. Layer sources will not be fetched if this\n * is not set, but the center can be set later with {@link #setCenter}.\n * @property {boolean|number} [constrainRotation=true] Rotation constraint.\n * `false` means no constraint. `true` means no constraint, but snap to zero\n * near zero. A number constrains the rotation to that number of values. For\n * example, `4` will constrain the rotation to 0, 90, 180, and 270 degrees.\n * @property {boolean} [enableRotation=true] Enable rotation.\n * If `false`, a rotation constraint that always sets the rotation to zero is\n * used. The `constrainRotation` option has no effect if `enableRotation` is\n * `false`.\n * @property {import(\"./extent.js\").Extent} [extent] The extent that constrains the\n * view, in other words, nothing outside of this extent can be visible on the map.\n * @property {boolean} [constrainOnlyCenter=false] If true, the extent\n * constraint will only apply to the view center and not the whole extent.\n * @property {boolean} [smoothExtentConstraint=true] If true, the extent\n * constraint will be applied smoothly, i.e. allow the view to go slightly outside\n * of the given `extent`.\n * @property {number} [maxResolution] The maximum resolution used to determine\n * the resolution constraint. It is used together with `minResolution` (or\n * `maxZoom`) and `zoomFactor`. If unspecified it is calculated in such a way\n * that the projection's validity extent fits in a 256x256 px tile. If the\n * projection is Spherical Mercator (the default) then `maxResolution` defaults\n * to `40075016.68557849 / 256 = 156543.03392804097`.\n * @property {number} [minResolution] The minimum resolution used to determine\n * the resolution constraint. It is used together with `maxResolution` (or\n * `minZoom`) and `zoomFactor`. If unspecified it is calculated assuming 29\n * zoom levels (with a factor of 2). If the projection is Spherical Mercator\n * (the default) then `minResolution` defaults to\n * `40075016.68557849 / 256 / Math.pow(2, 28) = 0.0005831682455839253`.\n * @property {number} [maxZoom=28] The maximum zoom level used to determine the\n * resolution constraint. It is used together with `minZoom` (or\n * `maxResolution`) and `zoomFactor`. Note that if `minResolution` is also\n * provided, it is given precedence over `maxZoom`.\n * @property {number} [minZoom=0] The minimum zoom level used to determine the\n * resolution constraint. It is used together with `maxZoom` (or\n * `minResolution`) and `zoomFactor`. Note that if `maxResolution` is also\n * provided, it is given precedence over `minZoom`.\n * @property {boolean} [multiWorld=false] If `false` the view is constrained so\n * only one world is visible, and you cannot pan off the edge. If `true` the map\n * may show multiple worlds at low zoom levels. Only used if the `projection` is\n * global. Note that if `extent` is also provided it is given precedence.\n * @property {boolean} [constrainResolution=false] If true, the view will always\n * animate to the closest zoom level after an interaction; false means\n * intermediary zoom levels are allowed.\n * @property {boolean} [smoothResolutionConstraint=true] If true, the resolution\n * min/max values will be applied smoothly, i. e. allow the view to exceed slightly\n * the given resolution or zoom bounds.\n * @property {boolean} [showFullExtent=false] Allow the view to be zoomed out to\n * show the full configured extent. By default, when a view is configured with an\n * extent, users will not be able to zoom out so the viewport exceeds the extent in\n * either dimension. This means the full extent may not be visible if the viewport\n * is taller or wider than the aspect ratio of the configured extent. If\n * showFullExtent is true, the user will be able to zoom out so that the viewport\n * exceeds the height or width of the configured extent, but not both, allowing the\n * full extent to be shown.\n * @property {import(\"./proj.js\").ProjectionLike} [projection='EPSG:3857'] The\n * projection. The default is Spherical Mercator.\n * @property {number} [resolution] The initial resolution for the view. The\n * units are `projection` units per pixel (e.g. meters per pixel). An\n * alternative to setting this is to set `zoom`. Layer sources will not be\n * fetched if neither this nor `zoom` are defined, but they can be set later\n * with {@link #setZoom} or {@link #setResolution}.\n * @property {Array} [resolutions] Resolutions to determine the\n * resolution constraint. If set the `maxResolution`, `minResolution`,\n * `minZoom`, `maxZoom`, and `zoomFactor` options are ignored.\n * @property {number} [rotation=0] The initial rotation for the view in radians\n * (positive rotation clockwise, 0 means North).\n * @property {number} [zoom] Only used if `resolution` is not defined. Zoom\n * level used to calculate the initial resolution for the view.\n * @property {number} [zoomFactor=2] The zoom factor used to compute the\n * corresponding resolution.\n */\n/**\n * @typedef {Object} AnimationOptions\n * @property {import(\"./coordinate.js\").Coordinate} [center] The center of the view at the end of\n * the animation.\n * @property {number} [zoom] The zoom level of the view at the end of the\n * animation. This takes precedence over `resolution`.\n * @property {number} [resolution] The resolution of the view at the end\n * of the animation. If `zoom` is also provided, this option will be ignored.\n * @property {number} [rotation] The rotation of the view at the end of\n * the animation.\n * @property {import(\"./coordinate.js\").Coordinate} [anchor] Optional anchor to remain fixed\n * during a rotation or resolution animation.\n * @property {number} [duration=1000] The duration of the animation in milliseconds.\n * @property {function(number):number} [easing] The easing function used\n * during the animation (defaults to {@link module:ol/easing~inAndOut}).\n * The function will be called for each frame with a number representing a\n * fraction of the animation's duration. The function should return a number\n * between 0 and 1 representing the progress toward the destination state.\n */\n/**\n * @typedef {Object} State\n * @property {import(\"./coordinate.js\").Coordinate} center\n * @property {import(\"./proj/Projection.js\").default} projection\n * @property {number} resolution\n * @property {number} rotation\n * @property {number} zoom\n */\n/**\n * Default min zoom level for the map view.\n * @type {number}\n */\nvar DEFAULT_MIN_ZOOM = 0;\n/**\n * @classdesc\n * A View object represents a simple 2D view of the map.\n *\n * This is the object to act upon to change the center, resolution,\n * and rotation of the map.\n *\n * A View has a `projection`. The projection determines the\n * coordinate system of the center, and its units determine the units of the\n * resolution (projection units per pixel). The default projection is\n * Spherical Mercator (EPSG:3857).\n *\n * ### The view states\n *\n * A View is determined by three states: `center`, `resolution`,\n * and `rotation`. Each state has a corresponding getter and setter, e.g.\n * `getCenter` and `setCenter` for the `center` state.\n *\n * The `zoom` state is actually not saved on the view: all computations\n * internally use the `resolution` state. Still, the `setZoom` and `getZoom`\n * methods are available, as well as `getResolutionForZoom` and\n * `getZoomForResolution` to switch from one system to the other.\n *\n * ### The constraints\n *\n * `setCenter`, `setResolution` and `setRotation` can be used to change the\n * states of the view, but any constraint defined in the constructor will\n * be applied along the way.\n *\n * A View object can have a *resolution constraint*, a *rotation constraint*\n * and a *center constraint*.\n *\n * The *resolution constraint* typically restricts min/max values and\n * snaps to specific resolutions. It is determined by the following\n * options: `resolutions`, `maxResolution`, `maxZoom` and `zoomFactor`.\n * If `resolutions` is set, the other three options are ignored. See\n * documentation for each option for more information. By default, the view\n * only has a min/max restriction and allow intermediary zoom levels when\n * pinch-zooming for example.\n *\n * The *rotation constraint* snaps to specific angles. It is determined\n * by the following options: `enableRotation` and `constrainRotation`.\n * By default rotation is allowed and its value is snapped to zero when approaching the\n * horizontal.\n *\n * The *center constraint* is determined by the `extent` option. By\n * default the view center is not constrained at all.\n *\n * ### Changing the view state\n *\n * It is important to note that `setZoom`, `setResolution`, `setCenter` and\n * `setRotation` are subject to the above mentioned constraints. As such, it\n * may sometimes not be possible to know in advance the resulting state of the\n * View. For example, calling `setResolution(10)` does not guarantee that\n * `getResolution()` will return `10`.\n *\n * A consequence of this is that, when applying a delta on the view state, one\n * should use `adjustCenter`, `adjustRotation`, `adjustZoom` and `adjustResolution`\n * rather than the corresponding setters. This will let view do its internal\n * computations. Besides, the `adjust*` methods also take an `opt_anchor`\n * argument which allows specifying an origin for the transformation.\n *\n * ### Interacting with the view\n *\n * View constraints are usually only applied when the view is *at rest*, meaning that\n * no interaction or animation is ongoing. As such, if the user puts the view in a\n * state that is not equivalent to a constrained one (e.g. rotating the view when\n * the snap angle is 0), an animation will be triggered at the interaction end to\n * put back the view to a stable state;\n *\n * @api\n */\nvar View = /** @class */ (function (_super) {\n __extends(View, _super);\n /**\n * @param {ViewOptions=} opt_options View options.\n */\n function View(opt_options) {\n var _this = _super.call(this) || this;\n var options = assign({}, opt_options);\n /**\n * @private\n * @type {Array}\n */\n _this.hints_ = [0, 0];\n /**\n * @private\n * @type {Array>}\n */\n _this.animations_ = [];\n /**\n * @private\n * @type {number|undefined}\n */\n _this.updateAnimationKey_;\n /**\n * @private\n * @const\n * @type {import(\"./proj/Projection.js\").default}\n */\n _this.projection_ = createProjection(options.projection, 'EPSG:3857');\n /**\n * @private\n * @type {import(\"./size.js\").Size}\n */\n _this.viewportSize_ = [100, 100];\n /**\n * @private\n * @type {import(\"./coordinate.js\").Coordinate|undefined}\n */\n _this.targetCenter_ = null;\n /**\n * @private\n * @type {number|undefined}\n */\n _this.targetResolution_;\n /**\n * @private\n * @type {number|undefined}\n */\n _this.targetRotation_;\n /**\n * @private\n * @type {import(\"./coordinate.js\").Coordinate|undefined}\n */\n _this.cancelAnchor_ = undefined;\n if (options.center) {\n options.center = fromUserCoordinate(options.center, _this.projection_);\n }\n if (options.extent) {\n options.extent = fromUserExtent(options.extent, _this.projection_);\n }\n _this.applyOptions_(options);\n return _this;\n }\n /**\n * Set up the view with the given options.\n * @param {ViewOptions} options View options.\n */\n View.prototype.applyOptions_ = function (options) {\n /**\n * @type {Object}\n */\n var properties = {};\n var resolutionConstraintInfo = createResolutionConstraint(options);\n /**\n * @private\n * @type {number}\n */\n this.maxResolution_ = resolutionConstraintInfo.maxResolution;\n /**\n * @private\n * @type {number}\n */\n this.minResolution_ = resolutionConstraintInfo.minResolution;\n /**\n * @private\n * @type {number}\n */\n this.zoomFactor_ = resolutionConstraintInfo.zoomFactor;\n /**\n * @private\n * @type {Array|undefined}\n */\n this.resolutions_ = options.resolutions;\n /**\n * @private\n * @type {number}\n */\n this.minZoom_ = resolutionConstraintInfo.minZoom;\n var centerConstraint = createCenterConstraint(options);\n var resolutionConstraint = resolutionConstraintInfo.constraint;\n var rotationConstraint = createRotationConstraint(options);\n /**\n * @private\n * @type {Constraints}\n */\n this.constraints_ = {\n center: centerConstraint,\n resolution: resolutionConstraint,\n rotation: rotationConstraint\n };\n this.setRotation(options.rotation !== undefined ? options.rotation : 0);\n this.setCenterInternal(options.center !== undefined ? options.center : null);\n if (options.resolution !== undefined) {\n this.setResolution(options.resolution);\n }\n else if (options.zoom !== undefined) {\n this.setZoom(options.zoom);\n }\n this.resolveConstraints(0);\n this.setProperties(properties);\n /**\n * @private\n * @type {ViewOptions}\n */\n this.options_ = options;\n };\n /**\n * Get an updated version of the view options used to construct the view. The\n * current resolution (or zoom), center, and rotation are applied to any stored\n * options. The provided options can be used to apply new min/max zoom or\n * resolution limits.\n * @param {ViewOptions} newOptions New options to be applied.\n * @return {ViewOptions} New options updated with the current view state.\n */\n View.prototype.getUpdatedOptions_ = function (newOptions) {\n var options = assign({}, this.options_);\n // preserve resolution (or zoom)\n if (options.resolution !== undefined) {\n options.resolution = this.getResolution();\n }\n else {\n options.zoom = this.getZoom();\n }\n // preserve center\n options.center = this.getCenterInternal();\n // preserve rotation\n options.rotation = this.getRotation();\n return assign({}, options, newOptions);\n };\n /**\n * Animate the view. The view's center, zoom (or resolution), and rotation\n * can be animated for smooth transitions between view states. For example,\n * to animate the view to a new zoom level:\n *\n * view.animate({zoom: view.getZoom() + 1});\n *\n * By default, the animation lasts one second and uses in-and-out easing. You\n * can customize this behavior by including `duration` (in milliseconds) and\n * `easing` options (see {@link module:ol/easing}).\n *\n * To chain together multiple animations, call the method with multiple\n * animation objects. For example, to first zoom and then pan:\n *\n * view.animate({zoom: 10}, {center: [0, 0]});\n *\n * If you provide a function as the last argument to the animate method, it\n * will get called at the end of an animation series. The callback will be\n * called with `true` if the animation series completed on its own or `false`\n * if it was cancelled.\n *\n * Animations are cancelled by user interactions (e.g. dragging the map) or by\n * calling `view.setCenter()`, `view.setResolution()`, or `view.setRotation()`\n * (or another method that calls one of these).\n *\n * @param {...(AnimationOptions|function(boolean): void)} var_args Animation\n * options. Multiple animations can be run in series by passing multiple\n * options objects. To run multiple animations in parallel, call the method\n * multiple times. An optional callback can be provided as a final\n * argument. The callback will be called with a boolean indicating whether\n * the animation completed without being cancelled.\n * @api\n */\n View.prototype.animate = function (var_args) {\n if (this.isDef() && !this.getAnimating()) {\n this.resolveConstraints(0);\n }\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; ++i) {\n var options = arguments[i];\n if (options.center) {\n options = assign({}, options);\n options.center = fromUserCoordinate(options.center, this.getProjection());\n }\n if (options.anchor) {\n options = assign({}, options);\n options.anchor = fromUserCoordinate(options.anchor, this.getProjection());\n }\n args[i] = options;\n }\n this.animateInternal.apply(this, args);\n };\n /**\n * @param {...(AnimationOptions|function(boolean): void)} var_args Animation options.\n */\n View.prototype.animateInternal = function (var_args) {\n var animationCount = arguments.length;\n var callback;\n if (animationCount > 1 && typeof arguments[animationCount - 1] === 'function') {\n callback = arguments[animationCount - 1];\n --animationCount;\n }\n if (!this.isDef()) {\n // if view properties are not yet set, shortcut to the final state\n var state = arguments[animationCount - 1];\n if (state.center) {\n this.setCenterInternal(state.center);\n }\n if (state.zoom !== undefined) {\n this.setZoom(state.zoom);\n }\n if (state.rotation !== undefined) {\n this.setRotation(state.rotation);\n }\n if (callback) {\n animationCallback(callback, true);\n }\n return;\n }\n var start = Date.now();\n var center = this.targetCenter_.slice();\n var resolution = this.targetResolution_;\n var rotation = this.targetRotation_;\n var series = [];\n for (var i = 0; i < animationCount; ++i) {\n var options = /** @type {AnimationOptions} */ (arguments[i]);\n var animation = {\n start: start,\n complete: false,\n anchor: options.anchor,\n duration: options.duration !== undefined ? options.duration : 1000,\n easing: options.easing || inAndOut,\n callback: callback\n };\n if (options.center) {\n animation.sourceCenter = center;\n animation.targetCenter = options.center.slice();\n center = animation.targetCenter;\n }\n if (options.zoom !== undefined) {\n animation.sourceResolution = resolution;\n animation.targetResolution = this.getResolutionForZoom(options.zoom);\n resolution = animation.targetResolution;\n }\n else if (options.resolution) {\n animation.sourceResolution = resolution;\n animation.targetResolution = options.resolution;\n resolution = animation.targetResolution;\n }\n if (options.rotation !== undefined) {\n animation.sourceRotation = rotation;\n var delta = modulo(options.rotation - rotation + Math.PI, 2 * Math.PI) - Math.PI;\n animation.targetRotation = rotation + delta;\n rotation = animation.targetRotation;\n }\n // check if animation is a no-op\n if (isNoopAnimation(animation)) {\n animation.complete = true;\n // we still push it onto the series for callback handling\n }\n else {\n start += animation.duration;\n }\n series.push(animation);\n }\n this.animations_.push(series);\n this.setHint(ViewHint.ANIMATING, 1);\n this.updateAnimations_();\n };\n /**\n * Determine if the view is being animated.\n * @return {boolean} The view is being animated.\n * @api\n */\n View.prototype.getAnimating = function () {\n return this.hints_[ViewHint.ANIMATING] > 0;\n };\n /**\n * Determine if the user is interacting with the view, such as panning or zooming.\n * @return {boolean} The view is being interacted with.\n * @api\n */\n View.prototype.getInteracting = function () {\n return this.hints_[ViewHint.INTERACTING] > 0;\n };\n /**\n * Cancel any ongoing animations.\n * @api\n */\n View.prototype.cancelAnimations = function () {\n this.setHint(ViewHint.ANIMATING, -this.hints_[ViewHint.ANIMATING]);\n var anchor;\n for (var i = 0, ii = this.animations_.length; i < ii; ++i) {\n var series = this.animations_[i];\n if (series[0].callback) {\n animationCallback(series[0].callback, false);\n }\n anchor = anchor ||\n series.filter(function (animation) {\n return !animation.complete;\n })[0].anchor;\n }\n this.animations_.length = 0;\n this.cancelAnchor_ = anchor;\n };\n /**\n * Update all animations.\n */\n View.prototype.updateAnimations_ = function () {\n if (this.updateAnimationKey_ !== undefined) {\n cancelAnimationFrame(this.updateAnimationKey_);\n this.updateAnimationKey_ = undefined;\n }\n if (!this.getAnimating()) {\n return;\n }\n var now = Date.now();\n var more = false;\n for (var i = this.animations_.length - 1; i >= 0; --i) {\n var series = this.animations_[i];\n var seriesComplete = true;\n for (var j = 0, jj = series.length; j < jj; ++j) {\n var animation = series[j];\n if (animation.complete) {\n continue;\n }\n var elapsed = now - animation.start;\n var fraction = animation.duration > 0 ? elapsed / animation.duration : 1;\n if (fraction >= 1) {\n animation.complete = true;\n fraction = 1;\n }\n else {\n seriesComplete = false;\n }\n var progress = animation.easing(fraction);\n if (animation.sourceCenter) {\n var x0 = animation.sourceCenter[0];\n var y0 = animation.sourceCenter[1];\n var x1 = animation.targetCenter[0];\n var y1 = animation.targetCenter[1];\n var x = x0 + progress * (x1 - x0);\n var y = y0 + progress * (y1 - y0);\n this.targetCenter_ = [x, y];\n }\n if (animation.sourceResolution && animation.targetResolution) {\n var resolution = progress === 1 ?\n animation.targetResolution :\n animation.sourceResolution + progress * (animation.targetResolution - animation.sourceResolution);\n if (animation.anchor) {\n var size = this.getViewportSize_(this.getRotation());\n var constrainedResolution = this.constraints_.resolution(resolution, 0, size, true);\n this.targetCenter_ = this.calculateCenterZoom(constrainedResolution, animation.anchor);\n }\n this.targetResolution_ = resolution;\n this.applyTargetState_(true);\n }\n if (animation.sourceRotation !== undefined && animation.targetRotation !== undefined) {\n var rotation = progress === 1 ?\n modulo(animation.targetRotation + Math.PI, 2 * Math.PI) - Math.PI :\n animation.sourceRotation + progress * (animation.targetRotation - animation.sourceRotation);\n if (animation.anchor) {\n var constrainedRotation = this.constraints_.rotation(rotation, true);\n this.targetCenter_ = this.calculateCenterRotate(constrainedRotation, animation.anchor);\n }\n this.targetRotation_ = rotation;\n }\n this.applyTargetState_(true);\n more = true;\n if (!animation.complete) {\n break;\n }\n }\n if (seriesComplete) {\n this.animations_[i] = null;\n this.setHint(ViewHint.ANIMATING, -1);\n var callback = series[0].callback;\n if (callback) {\n animationCallback(callback, true);\n }\n }\n }\n // prune completed series\n this.animations_ = this.animations_.filter(Boolean);\n if (more && this.updateAnimationKey_ === undefined) {\n this.updateAnimationKey_ = requestAnimationFrame(this.updateAnimations_.bind(this));\n }\n };\n /**\n * @param {number} rotation Target rotation.\n * @param {import(\"./coordinate.js\").Coordinate} anchor Rotation anchor.\n * @return {import(\"./coordinate.js\").Coordinate|undefined} Center for rotation and anchor.\n */\n View.prototype.calculateCenterRotate = function (rotation, anchor) {\n var center;\n var currentCenter = this.getCenterInternal();\n if (currentCenter !== undefined) {\n center = [currentCenter[0] - anchor[0], currentCenter[1] - anchor[1]];\n rotateCoordinate(center, rotation - this.getRotation());\n addCoordinate(center, anchor);\n }\n return center;\n };\n /**\n * @param {number} resolution Target resolution.\n * @param {import(\"./coordinate.js\").Coordinate} anchor Zoom anchor.\n * @return {import(\"./coordinate.js\").Coordinate|undefined} Center for resolution and anchor.\n */\n View.prototype.calculateCenterZoom = function (resolution, anchor) {\n var center;\n var currentCenter = this.getCenterInternal();\n var currentResolution = this.getResolution();\n if (currentCenter !== undefined && currentResolution !== undefined) {\n var x = anchor[0] - resolution * (anchor[0] - currentCenter[0]) / currentResolution;\n var y = anchor[1] - resolution * (anchor[1] - currentCenter[1]) / currentResolution;\n center = [x, y];\n }\n return center;\n };\n /**\n * Returns the current viewport size.\n * @private\n * @param {number=} opt_rotation Take into account the rotation of the viewport when giving the size\n * @return {import(\"./size.js\").Size} Viewport size or `[100, 100]` when no viewport is found.\n */\n View.prototype.getViewportSize_ = function (opt_rotation) {\n var size = this.viewportSize_;\n if (opt_rotation) {\n var w = size[0];\n var h = size[1];\n return [\n Math.abs(w * Math.cos(opt_rotation)) + Math.abs(h * Math.sin(opt_rotation)),\n Math.abs(w * Math.sin(opt_rotation)) + Math.abs(h * Math.cos(opt_rotation))\n ];\n }\n else {\n return size;\n }\n };\n /**\n * Stores the viewport size on the view. The viewport size is not read every time from the DOM\n * to avoid performance hit and layout reflow.\n * This should be done on map size change.\n * @param {import(\"./size.js\").Size=} opt_size Viewport size; if undefined, [100, 100] is assumed\n */\n View.prototype.setViewportSize = function (opt_size) {\n this.viewportSize_ = Array.isArray(opt_size) ? opt_size.slice() : [100, 100];\n };\n /**\n * Get the view center.\n * @return {import(\"./coordinate.js\").Coordinate|undefined} The center of the view.\n * @observable\n * @api\n */\n View.prototype.getCenter = function () {\n var center = this.getCenterInternal();\n if (!center) {\n return center;\n }\n return toUserCoordinate(center, this.getProjection());\n };\n /**\n * Get the view center without transforming to user projection.\n * @return {import(\"./coordinate.js\").Coordinate|undefined} The center of the view.\n */\n View.prototype.getCenterInternal = function () {\n return /** @type {import(\"./coordinate.js\").Coordinate|undefined} */ (this.get(ViewProperty.CENTER));\n };\n /**\n * @return {Constraints} Constraints.\n */\n View.prototype.getConstraints = function () {\n return this.constraints_;\n };\n /**\n * @param {Array=} opt_hints Destination array.\n * @return {Array} Hint.\n */\n View.prototype.getHints = function (opt_hints) {\n if (opt_hints !== undefined) {\n opt_hints[0] = this.hints_[0];\n opt_hints[1] = this.hints_[1];\n return opt_hints;\n }\n else {\n return this.hints_.slice();\n }\n };\n /**\n * Calculate the extent for the current view state and the passed size.\n * The size is the pixel dimensions of the box into which the calculated extent\n * should fit. In most cases you want to get the extent of the entire map,\n * that is `map.getSize()`.\n * @param {import(\"./size.js\").Size=} opt_size Box pixel size. If not provided, the size\n * of the map that uses this view will be used.\n * @return {import(\"./extent.js\").Extent} Extent.\n * @api\n */\n View.prototype.calculateExtent = function (opt_size) {\n var extent = this.calculateExtentInternal(opt_size);\n return toUserExtent(extent, this.getProjection());\n };\n /**\n * @param {import(\"./size.js\").Size=} opt_size Box pixel size. If not provided, the size of the\n * first map that uses this view will be used.\n * @return {import(\"./extent.js\").Extent} Extent.\n */\n View.prototype.calculateExtentInternal = function (opt_size) {\n var size = opt_size || this.getViewportSize_();\n var center = /** @type {!import(\"./coordinate.js\").Coordinate} */ (this.getCenterInternal());\n assert(center, 1); // The view center is not defined\n var resolution = /** @type {!number} */ (this.getResolution());\n assert(resolution !== undefined, 2); // The view resolution is not defined\n var rotation = /** @type {!number} */ (this.getRotation());\n assert(rotation !== undefined, 3); // The view rotation is not defined\n return getForViewAndSize(center, resolution, rotation, size);\n };\n /**\n * Get the maximum resolution of the view.\n * @return {number} The maximum resolution of the view.\n * @api\n */\n View.prototype.getMaxResolution = function () {\n return this.maxResolution_;\n };\n /**\n * Get the minimum resolution of the view.\n * @return {number} The minimum resolution of the view.\n * @api\n */\n View.prototype.getMinResolution = function () {\n return this.minResolution_;\n };\n /**\n * Get the maximum zoom level for the view.\n * @return {number} The maximum zoom level.\n * @api\n */\n View.prototype.getMaxZoom = function () {\n return /** @type {number} */ (this.getZoomForResolution(this.minResolution_));\n };\n /**\n * Set a new maximum zoom level for the view.\n * @param {number} zoom The maximum zoom level.\n * @api\n */\n View.prototype.setMaxZoom = function (zoom) {\n this.applyOptions_(this.getUpdatedOptions_({ maxZoom: zoom }));\n };\n /**\n * Get the minimum zoom level for the view.\n * @return {number} The minimum zoom level.\n * @api\n */\n View.prototype.getMinZoom = function () {\n return /** @type {number} */ (this.getZoomForResolution(this.maxResolution_));\n };\n /**\n * Set a new minimum zoom level for the view.\n * @param {number} zoom The minimum zoom level.\n * @api\n */\n View.prototype.setMinZoom = function (zoom) {\n this.applyOptions_(this.getUpdatedOptions_({ minZoom: zoom }));\n };\n /**\n * Set whether the view shoud allow intermediary zoom levels.\n * @param {boolean} enabled Whether the resolution is constrained.\n * @api\n */\n View.prototype.setConstrainResolution = function (enabled) {\n this.applyOptions_(this.getUpdatedOptions_({ constrainResolution: enabled }));\n };\n /**\n * Get the view projection.\n * @return {import(\"./proj/Projection.js\").default} The projection of the view.\n * @api\n */\n View.prototype.getProjection = function () {\n return this.projection_;\n };\n /**\n * Get the view resolution.\n * @return {number|undefined} The resolution of the view.\n * @observable\n * @api\n */\n View.prototype.getResolution = function () {\n return /** @type {number|undefined} */ (this.get(ViewProperty.RESOLUTION));\n };\n /**\n * Get the resolutions for the view. This returns the array of resolutions\n * passed to the constructor of the View, or undefined if none were given.\n * @return {Array|undefined} The resolutions of the view.\n * @api\n */\n View.prototype.getResolutions = function () {\n return this.resolutions_;\n };\n /**\n * Get the resolution for a provided extent (in map units) and size (in pixels).\n * @param {import(\"./extent.js\").Extent} extent Extent.\n * @param {import(\"./size.js\").Size=} opt_size Box pixel size.\n * @return {number} The resolution at which the provided extent will render at\n * the given size.\n * @api\n */\n View.prototype.getResolutionForExtent = function (extent, opt_size) {\n return this.getResolutionForExtentInternal(fromUserExtent(extent, this.getProjection()), opt_size);\n };\n /**\n * Get the resolution for a provided extent (in map units) and size (in pixels).\n * @param {import(\"./extent.js\").Extent} extent Extent.\n * @param {import(\"./size.js\").Size=} opt_size Box pixel size.\n * @return {number} The resolution at which the provided extent will render at\n * the given size.\n */\n View.prototype.getResolutionForExtentInternal = function (extent, opt_size) {\n var size = opt_size || this.getViewportSize_();\n var xResolution = getWidth(extent) / size[0];\n var yResolution = getHeight(extent) / size[1];\n return Math.max(xResolution, yResolution);\n };\n /**\n * Return a function that returns a value between 0 and 1 for a\n * resolution. Exponential scaling is assumed.\n * @param {number=} opt_power Power.\n * @return {function(number): number} Resolution for value function.\n */\n View.prototype.getResolutionForValueFunction = function (opt_power) {\n var power = opt_power || 2;\n var maxResolution = this.getConstrainedResolution(this.maxResolution_);\n var minResolution = this.minResolution_;\n var max = Math.log(maxResolution / minResolution) / Math.log(power);\n return (\n /**\n * @param {number} value Value.\n * @return {number} Resolution.\n */\n function (value) {\n var resolution = maxResolution / Math.pow(power, value * max);\n return resolution;\n });\n };\n /**\n * Get the view rotation.\n * @return {number} The rotation of the view in radians.\n * @observable\n * @api\n */\n View.prototype.getRotation = function () {\n return /** @type {number} */ (this.get(ViewProperty.ROTATION));\n };\n /**\n * Return a function that returns a resolution for a value between\n * 0 and 1. Exponential scaling is assumed.\n * @param {number=} opt_power Power.\n * @return {function(number): number} Value for resolution function.\n */\n View.prototype.getValueForResolutionFunction = function (opt_power) {\n var logPower = Math.log(opt_power || 2);\n var maxResolution = this.getConstrainedResolution(this.maxResolution_);\n var minResolution = this.minResolution_;\n var max = Math.log(maxResolution / minResolution) / logPower;\n return (\n /**\n * @param {number} resolution Resolution.\n * @return {number} Value.\n */\n function (resolution) {\n var value = (Math.log(maxResolution / resolution) / logPower) / max;\n return value;\n });\n };\n /**\n * @return {State} View state.\n */\n View.prototype.getState = function () {\n var center = /** @type {import(\"./coordinate.js\").Coordinate} */ (this.getCenterInternal());\n var projection = this.getProjection();\n var resolution = /** @type {number} */ (this.getResolution());\n var rotation = this.getRotation();\n return {\n center: center.slice(0),\n projection: projection !== undefined ? projection : null,\n resolution: resolution,\n rotation: rotation,\n zoom: this.getZoom()\n };\n };\n /**\n * Get the current zoom level. This method may return non-integer zoom levels\n * if the view does not constrain the resolution, or if an interaction or\n * animation is underway.\n * @return {number|undefined} Zoom.\n * @api\n */\n View.prototype.getZoom = function () {\n var zoom;\n var resolution = this.getResolution();\n if (resolution !== undefined) {\n zoom = this.getZoomForResolution(resolution);\n }\n return zoom;\n };\n /**\n * Get the zoom level for a resolution.\n * @param {number} resolution The resolution.\n * @return {number|undefined} The zoom level for the provided resolution.\n * @api\n */\n View.prototype.getZoomForResolution = function (resolution) {\n var offset = this.minZoom_ || 0;\n var max, zoomFactor;\n if (this.resolutions_) {\n var nearest = linearFindNearest(this.resolutions_, resolution, 1);\n offset = nearest;\n max = this.resolutions_[nearest];\n if (nearest == this.resolutions_.length - 1) {\n zoomFactor = 2;\n }\n else {\n zoomFactor = max / this.resolutions_[nearest + 1];\n }\n }\n else {\n max = this.maxResolution_;\n zoomFactor = this.zoomFactor_;\n }\n return offset + Math.log(max / resolution) / Math.log(zoomFactor);\n };\n /**\n * Get the resolution for a zoom level.\n * @param {number} zoom Zoom level.\n * @return {number} The view resolution for the provided zoom level.\n * @api\n */\n View.prototype.getResolutionForZoom = function (zoom) {\n if (this.resolutions_) {\n if (this.resolutions_.length <= 1) {\n return 0;\n }\n var baseLevel = clamp(Math.floor(zoom), 0, this.resolutions_.length - 2);\n var zoomFactor = this.resolutions_[baseLevel] / this.resolutions_[baseLevel + 1];\n return this.resolutions_[baseLevel] / Math.pow(zoomFactor, clamp(zoom - baseLevel, 0, 1));\n }\n else {\n return this.maxResolution_ / Math.pow(this.zoomFactor_, zoom - this.minZoom_);\n }\n };\n /**\n * Fit the given geometry or extent based on the given map size and border.\n * The size is pixel dimensions of the box to fit the extent into.\n * In most cases you will want to use the map size, that is `map.getSize()`.\n * Takes care of the map angle.\n * @param {import(\"./geom/SimpleGeometry.js\").default|import(\"./extent.js\").Extent} geometryOrExtent The geometry or\n * extent to fit the view to.\n * @param {FitOptions=} opt_options Options.\n * @api\n */\n View.prototype.fit = function (geometryOrExtent, opt_options) {\n var options = assign({ size: this.getViewportSize_() }, opt_options || {});\n /** @type {import(\"./geom/SimpleGeometry.js\").default} */\n var geometry;\n assert(Array.isArray(geometryOrExtent) || typeof /** @type {?} */ (geometryOrExtent).getSimplifiedGeometry === 'function', 24); // Invalid extent or geometry provided as `geometry`\n if (Array.isArray(geometryOrExtent)) {\n assert(!isEmpty(geometryOrExtent), 25); // Cannot fit empty extent provided as `geometry`\n var extent = fromUserExtent(geometryOrExtent, this.getProjection());\n geometry = polygonFromExtent(extent);\n }\n else if (geometryOrExtent.getType() === GeometryType.CIRCLE) {\n var extent = fromUserExtent(geometryOrExtent.getExtent(), this.getProjection());\n geometry = polygonFromExtent(extent);\n geometry.rotate(this.getRotation(), getCenter(extent));\n }\n else {\n var userProjection = getUserProjection();\n if (userProjection) {\n geometry = /** @type {import(\"./geom/SimpleGeometry.js\").default} */ (geometryOrExtent.clone().transform(userProjection, this.getProjection()));\n }\n else {\n geometry = geometryOrExtent;\n }\n }\n this.fitInternal(geometry, options);\n };\n /**\n * @param {import(\"./geom/SimpleGeometry.js\").default} geometry The geometry.\n * @param {FitOptions=} opt_options Options.\n */\n View.prototype.fitInternal = function (geometry, opt_options) {\n var options = opt_options || {};\n var size = options.size;\n if (!size) {\n size = this.getViewportSize_();\n }\n var padding = options.padding !== undefined ? options.padding : [0, 0, 0, 0];\n var nearest = options.nearest !== undefined ? options.nearest : false;\n var minResolution;\n if (options.minResolution !== undefined) {\n minResolution = options.minResolution;\n }\n else if (options.maxZoom !== undefined) {\n minResolution = this.getResolutionForZoom(options.maxZoom);\n }\n else {\n minResolution = 0;\n }\n var coords = geometry.getFlatCoordinates();\n // calculate rotated extent\n var rotation = this.getRotation();\n var cosAngle = Math.cos(-rotation);\n var sinAngle = Math.sin(-rotation);\n var minRotX = +Infinity;\n var minRotY = +Infinity;\n var maxRotX = -Infinity;\n var maxRotY = -Infinity;\n var stride = geometry.getStride();\n for (var i = 0, ii = coords.length; i < ii; i += stride) {\n var rotX = coords[i] * cosAngle - coords[i + 1] * sinAngle;\n var rotY = coords[i] * sinAngle + coords[i + 1] * cosAngle;\n minRotX = Math.min(minRotX, rotX);\n minRotY = Math.min(minRotY, rotY);\n maxRotX = Math.max(maxRotX, rotX);\n maxRotY = Math.max(maxRotY, rotY);\n }\n // calculate resolution\n var resolution = this.getResolutionForExtentInternal([minRotX, minRotY, maxRotX, maxRotY], [size[0] - padding[1] - padding[3], size[1] - padding[0] - padding[2]]);\n resolution = isNaN(resolution) ? minResolution :\n Math.max(resolution, minResolution);\n resolution = this.getConstrainedResolution(resolution, nearest ? 0 : 1);\n // calculate center\n sinAngle = -sinAngle; // go back to original rotation\n var centerRotX = (minRotX + maxRotX) / 2;\n var centerRotY = (minRotY + maxRotY) / 2;\n centerRotX += (padding[1] - padding[3]) / 2 * resolution;\n centerRotY += (padding[0] - padding[2]) / 2 * resolution;\n var centerX = centerRotX * cosAngle - centerRotY * sinAngle;\n var centerY = centerRotY * cosAngle + centerRotX * sinAngle;\n var center = [centerX, centerY];\n var callback = options.callback ? options.callback : VOID;\n if (options.duration !== undefined) {\n this.animateInternal({\n resolution: resolution,\n center: this.getConstrainedCenter(center, resolution),\n duration: options.duration,\n easing: options.easing\n }, callback);\n }\n else {\n this.targetResolution_ = resolution;\n this.targetCenter_ = center;\n this.applyTargetState_(false, true);\n animationCallback(callback, true);\n }\n };\n /**\n * Center on coordinate and view position.\n * @param {import(\"./coordinate.js\").Coordinate} coordinate Coordinate.\n * @param {import(\"./size.js\").Size} size Box pixel size.\n * @param {import(\"./pixel.js\").Pixel} position Position on the view to center on.\n * @api\n */\n View.prototype.centerOn = function (coordinate, size, position) {\n this.centerOnInternal(fromUserCoordinate(coordinate, this.getProjection()), size, position);\n };\n /**\n * @param {import(\"./coordinate.js\").Coordinate} coordinate Coordinate.\n * @param {import(\"./size.js\").Size} size Box pixel size.\n * @param {import(\"./pixel.js\").Pixel} position Position on the view to center on.\n */\n View.prototype.centerOnInternal = function (coordinate, size, position) {\n // calculate rotated position\n var rotation = this.getRotation();\n var cosAngle = Math.cos(-rotation);\n var sinAngle = Math.sin(-rotation);\n var rotX = coordinate[0] * cosAngle - coordinate[1] * sinAngle;\n var rotY = coordinate[1] * cosAngle + coordinate[0] * sinAngle;\n var resolution = this.getResolution();\n rotX += (size[0] / 2 - position[0]) * resolution;\n rotY += (position[1] - size[1] / 2) * resolution;\n // go back to original angle\n sinAngle = -sinAngle; // go back to original rotation\n var centerX = rotX * cosAngle - rotY * sinAngle;\n var centerY = rotY * cosAngle + rotX * sinAngle;\n this.setCenterInternal([centerX, centerY]);\n };\n /**\n * @return {boolean} Is defined.\n */\n View.prototype.isDef = function () {\n return !!this.getCenterInternal() && this.getResolution() !== undefined;\n };\n /**\n * Adds relative coordinates to the center of the view. Any extent constraint will apply.\n * @param {import(\"./coordinate.js\").Coordinate} deltaCoordinates Relative value to add.\n * @api\n */\n View.prototype.adjustCenter = function (deltaCoordinates) {\n var center = toUserCoordinate(this.targetCenter_, this.getProjection());\n this.setCenter([center[0] + deltaCoordinates[0], center[1] + deltaCoordinates[1]]);\n };\n /**\n * Adds relative coordinates to the center of the view. Any extent constraint will apply.\n * @param {import(\"./coordinate.js\").Coordinate} deltaCoordinates Relative value to add.\n */\n View.prototype.adjustCenterInternal = function (deltaCoordinates) {\n var center = this.targetCenter_;\n this.setCenterInternal([center[0] + deltaCoordinates[0], center[1] + deltaCoordinates[1]]);\n };\n /**\n * Multiply the view resolution by a ratio, optionally using an anchor. Any resolution\n * constraint will apply.\n * @param {number} ratio The ratio to apply on the view resolution.\n * @param {import(\"./coordinate.js\").Coordinate=} opt_anchor The origin of the transformation.\n * @api\n */\n View.prototype.adjustResolution = function (ratio, opt_anchor) {\n var anchor = opt_anchor && fromUserCoordinate(opt_anchor, this.getProjection());\n this.adjustResolutionInternal(ratio, anchor);\n };\n /**\n * Multiply the view resolution by a ratio, optionally using an anchor. Any resolution\n * constraint will apply.\n * @param {number} ratio The ratio to apply on the view resolution.\n * @param {import(\"./coordinate.js\").Coordinate=} opt_anchor The origin of the transformation.\n */\n View.prototype.adjustResolutionInternal = function (ratio, opt_anchor) {\n var isMoving = this.getAnimating() || this.getInteracting();\n var size = this.getViewportSize_(this.getRotation());\n var newResolution = this.constraints_.resolution(this.targetResolution_ * ratio, 0, size, isMoving);\n if (opt_anchor) {\n this.targetCenter_ = this.calculateCenterZoom(newResolution, opt_anchor);\n }\n this.targetResolution_ *= ratio;\n this.applyTargetState_();\n };\n /**\n * Adds a value to the view zoom level, optionally using an anchor. Any resolution\n * constraint will apply.\n * @param {number} delta Relative value to add to the zoom level.\n * @param {import(\"./coordinate.js\").Coordinate=} opt_anchor The origin of the transformation.\n * @api\n */\n View.prototype.adjustZoom = function (delta, opt_anchor) {\n this.adjustResolution(Math.pow(this.zoomFactor_, -delta), opt_anchor);\n };\n /**\n * Adds a value to the view rotation, optionally using an anchor. Any rotation\n * constraint will apply.\n * @param {number} delta Relative value to add to the zoom rotation, in radians.\n * @param {import(\"./coordinate.js\").Coordinate=} opt_anchor The rotation center.\n * @api\n */\n View.prototype.adjustRotation = function (delta, opt_anchor) {\n if (opt_anchor) {\n opt_anchor = fromUserCoordinate(opt_anchor, this.getProjection());\n }\n this.adjustRotationInternal(delta, opt_anchor);\n };\n /**\n * @param {number} delta Relative value to add to the zoom rotation, in radians.\n * @param {import(\"./coordinate.js\").Coordinate=} opt_anchor The rotation center.\n */\n View.prototype.adjustRotationInternal = function (delta, opt_anchor) {\n var isMoving = this.getAnimating() || this.getInteracting();\n var newRotation = this.constraints_.rotation(this.targetRotation_ + delta, isMoving);\n if (opt_anchor) {\n this.targetCenter_ = this.calculateCenterRotate(newRotation, opt_anchor);\n }\n this.targetRotation_ += delta;\n this.applyTargetState_();\n };\n /**\n * Set the center of the current view. Any extent constraint will apply.\n * @param {import(\"./coordinate.js\").Coordinate|undefined} center The center of the view.\n * @observable\n * @api\n */\n View.prototype.setCenter = function (center) {\n this.setCenterInternal(fromUserCoordinate(center, this.getProjection()));\n };\n /**\n * Set the center using the view projection (not the user projection).\n * @param {import(\"./coordinate.js\").Coordinate|undefined} center The center of the view.\n */\n View.prototype.setCenterInternal = function (center) {\n this.targetCenter_ = center;\n this.applyTargetState_();\n };\n /**\n * @param {ViewHint} hint Hint.\n * @param {number} delta Delta.\n * @return {number} New value.\n */\n View.prototype.setHint = function (hint, delta) {\n this.hints_[hint] += delta;\n this.changed();\n return this.hints_[hint];\n };\n /**\n * Set the resolution for this view. Any resolution constraint will apply.\n * @param {number|undefined} resolution The resolution of the view.\n * @observable\n * @api\n */\n View.prototype.setResolution = function (resolution) {\n this.targetResolution_ = resolution;\n this.applyTargetState_();\n };\n /**\n * Set the rotation for this view. Any rotation constraint will apply.\n * @param {number} rotation The rotation of the view in radians.\n * @observable\n * @api\n */\n View.prototype.setRotation = function (rotation) {\n this.targetRotation_ = rotation;\n this.applyTargetState_();\n };\n /**\n * Zoom to a specific zoom level. Any resolution constrain will apply.\n * @param {number} zoom Zoom level.\n * @api\n */\n View.prototype.setZoom = function (zoom) {\n this.setResolution(this.getResolutionForZoom(zoom));\n };\n /**\n * Recompute rotation/resolution/center based on target values.\n * Note: we have to compute rotation first, then resolution and center considering that\n * parameters can influence one another in case a view extent constraint is present.\n * @param {boolean=} opt_doNotCancelAnims Do not cancel animations.\n * @param {boolean=} opt_forceMoving Apply constraints as if the view is moving.\n * @private\n */\n View.prototype.applyTargetState_ = function (opt_doNotCancelAnims, opt_forceMoving) {\n var isMoving = this.getAnimating() || this.getInteracting() || opt_forceMoving;\n // compute rotation\n var newRotation = this.constraints_.rotation(this.targetRotation_, isMoving);\n var size = this.getViewportSize_(newRotation);\n var newResolution = this.constraints_.resolution(this.targetResolution_, 0, size, isMoving);\n var newCenter = this.constraints_.center(this.targetCenter_, newResolution, size, isMoving);\n if (this.get(ViewProperty.ROTATION) !== newRotation) {\n this.set(ViewProperty.ROTATION, newRotation);\n }\n if (this.get(ViewProperty.RESOLUTION) !== newResolution) {\n this.set(ViewProperty.RESOLUTION, newResolution);\n }\n if (!this.get(ViewProperty.CENTER) || !equals(this.get(ViewProperty.CENTER), newCenter)) {\n this.set(ViewProperty.CENTER, newCenter);\n }\n if (this.getAnimating() && !opt_doNotCancelAnims) {\n this.cancelAnimations();\n }\n this.cancelAnchor_ = undefined;\n };\n /**\n * If any constraints need to be applied, an animation will be triggered.\n * This is typically done on interaction end.\n * Note: calling this with a duration of 0 will apply the constrained values straight away,\n * without animation.\n * @param {number=} opt_duration The animation duration in ms.\n * @param {number=} opt_resolutionDirection Which direction to zoom.\n * @param {import(\"./coordinate.js\").Coordinate=} opt_anchor The origin of the transformation.\n */\n View.prototype.resolveConstraints = function (opt_duration, opt_resolutionDirection, opt_anchor) {\n var duration = opt_duration !== undefined ? opt_duration : 200;\n var direction = opt_resolutionDirection || 0;\n var newRotation = this.constraints_.rotation(this.targetRotation_);\n var size = this.getViewportSize_(newRotation);\n var newResolution = this.constraints_.resolution(this.targetResolution_, direction, size);\n var newCenter = this.constraints_.center(this.targetCenter_, newResolution, size);\n if (duration === 0 && !this.cancelAnchor_) {\n this.targetResolution_ = newResolution;\n this.targetRotation_ = newRotation;\n this.targetCenter_ = newCenter;\n this.applyTargetState_();\n return;\n }\n var anchor = opt_anchor || (duration === 0 ? this.cancelAnchor_ : undefined);\n this.cancelAnchor_ = undefined;\n if (this.getResolution() !== newResolution ||\n this.getRotation() !== newRotation ||\n !this.getCenterInternal() ||\n !equals(this.getCenterInternal(), newCenter)) {\n if (this.getAnimating()) {\n this.cancelAnimations();\n }\n this.animateInternal({\n rotation: newRotation,\n center: newCenter,\n resolution: newResolution,\n duration: duration,\n easing: easeOut,\n anchor: anchor\n });\n }\n };\n /**\n * Notify the View that an interaction has started.\n * The view state will be resolved to a stable one if needed\n * (depending on its constraints).\n * @api\n */\n View.prototype.beginInteraction = function () {\n this.resolveConstraints(0);\n this.setHint(ViewHint.INTERACTING, 1);\n };\n /**\n * Notify the View that an interaction has ended. The view state will be resolved\n * to a stable one if needed (depending on its constraints).\n * @param {number=} opt_duration Animation duration in ms.\n * @param {number=} opt_resolutionDirection Which direction to zoom.\n * @param {import(\"./coordinate.js\").Coordinate=} opt_anchor The origin of the transformation.\n * @api\n */\n View.prototype.endInteraction = function (opt_duration, opt_resolutionDirection, opt_anchor) {\n var anchor = opt_anchor && fromUserCoordinate(opt_anchor, this.getProjection());\n this.endInteractionInternal(opt_duration, opt_resolutionDirection, anchor);\n };\n /**\n * Notify the View that an interaction has ended. The view state will be resolved\n * to a stable one if needed (depending on its constraints).\n * @param {number=} opt_duration Animation duration in ms.\n * @param {number=} opt_resolutionDirection Which direction to zoom.\n * @param {import(\"./coordinate.js\").Coordinate=} opt_anchor The origin of the transformation.\n */\n View.prototype.endInteractionInternal = function (opt_duration, opt_resolutionDirection, opt_anchor) {\n this.setHint(ViewHint.INTERACTING, -1);\n this.resolveConstraints(opt_duration, opt_resolutionDirection, opt_anchor);\n };\n /**\n * Get a valid position for the view center according to the current constraints.\n * @param {import(\"./coordinate.js\").Coordinate|undefined} targetCenter Target center position.\n * @param {number=} opt_targetResolution Target resolution. If not supplied, the current one will be used.\n * This is useful to guess a valid center position at a different zoom level.\n * @return {import(\"./coordinate.js\").Coordinate|undefined} Valid center position.\n */\n View.prototype.getConstrainedCenter = function (targetCenter, opt_targetResolution) {\n var size = this.getViewportSize_(this.getRotation());\n return this.constraints_.center(targetCenter, opt_targetResolution || this.getResolution(), size);\n };\n /**\n * Get a valid zoom level according to the current view constraints.\n * @param {number|undefined} targetZoom Target zoom.\n * @param {number=} [opt_direction=0] Indicate which resolution should be used\n * by a renderer if the view resolution does not match any resolution of the tile source.\n * If 0, the nearest resolution will be used. If 1, the nearest lower resolution\n * will be used. If -1, the nearest higher resolution will be used.\n * @return {number|undefined} Valid zoom level.\n */\n View.prototype.getConstrainedZoom = function (targetZoom, opt_direction) {\n var targetRes = this.getResolutionForZoom(targetZoom);\n return this.getZoomForResolution(this.getConstrainedResolution(targetRes, opt_direction));\n };\n /**\n * Get a valid resolution according to the current view constraints.\n * @param {number|undefined} targetResolution Target resolution.\n * @param {number=} [opt_direction=0] Indicate which resolution should be used\n * by a renderer if the view resolution does not match any resolution of the tile source.\n * If 0, the nearest resolution will be used. If 1, the nearest lower resolution\n * will be used. If -1, the nearest higher resolution will be used.\n * @return {number|undefined} Valid resolution.\n */\n View.prototype.getConstrainedResolution = function (targetResolution, opt_direction) {\n var direction = opt_direction || 0;\n var size = this.getViewportSize_(this.getRotation());\n return this.constraints_.resolution(targetResolution, direction, size);\n };\n return View;\n}(BaseObject));\n/**\n * @param {Function} callback Callback.\n * @param {*} returnValue Return value.\n */\nfunction animationCallback(callback, returnValue) {\n setTimeout(function () {\n callback(returnValue);\n }, 0);\n}\n/**\n * @param {ViewOptions} options View options.\n * @return {import(\"./centerconstraint.js\").Type} The constraint.\n */\nexport function createCenterConstraint(options) {\n if (options.extent !== undefined) {\n var smooth = options.smoothExtentConstraint !== undefined ? options.smoothExtentConstraint : true;\n return createExtent(options.extent, options.constrainOnlyCenter, smooth);\n }\n var projection = createProjection(options.projection, 'EPSG:3857');\n if (options.multiWorld !== true && projection.isGlobal()) {\n var extent = projection.getExtent().slice();\n extent[0] = -Infinity;\n extent[2] = Infinity;\n return createExtent(extent, false, false);\n }\n return centerNone;\n}\n/**\n * @param {ViewOptions} options View options.\n * @return {{constraint: import(\"./resolutionconstraint.js\").Type, maxResolution: number,\n * minResolution: number, minZoom: number, zoomFactor: number}} The constraint.\n */\nexport function createResolutionConstraint(options) {\n var resolutionConstraint;\n var maxResolution;\n var minResolution;\n // TODO: move these to be ol constants\n // see https://github.com/openlayers/openlayers/issues/2076\n var defaultMaxZoom = 28;\n var defaultZoomFactor = 2;\n var minZoom = options.minZoom !== undefined ?\n options.minZoom : DEFAULT_MIN_ZOOM;\n var maxZoom = options.maxZoom !== undefined ?\n options.maxZoom : defaultMaxZoom;\n var zoomFactor = options.zoomFactor !== undefined ?\n options.zoomFactor : defaultZoomFactor;\n var multiWorld = options.multiWorld !== undefined ?\n options.multiWorld : false;\n var smooth = options.smoothResolutionConstraint !== undefined ? options.smoothResolutionConstraint : true;\n var showFullExtent = options.showFullExtent !== undefined ? options.showFullExtent : false;\n var projection = createProjection(options.projection, 'EPSG:3857');\n var projExtent = projection.getExtent();\n var constrainOnlyCenter = options.constrainOnlyCenter;\n var extent = options.extent;\n if (!multiWorld && !extent && projection.isGlobal()) {\n constrainOnlyCenter = false;\n extent = projExtent;\n }\n if (options.resolutions !== undefined) {\n var resolutions = options.resolutions;\n maxResolution = resolutions[minZoom];\n minResolution = resolutions[maxZoom] !== undefined ?\n resolutions[maxZoom] : resolutions[resolutions.length - 1];\n if (options.constrainResolution) {\n resolutionConstraint = createSnapToResolutions(resolutions, smooth, !constrainOnlyCenter && extent, showFullExtent);\n }\n else {\n resolutionConstraint = createMinMaxResolution(maxResolution, minResolution, smooth, !constrainOnlyCenter && extent, showFullExtent);\n }\n }\n else {\n // calculate the default min and max resolution\n var size = !projExtent ?\n // use an extent that can fit the whole world if need be\n 360 * METERS_PER_UNIT[Units.DEGREES] /\n projection.getMetersPerUnit() :\n Math.max(getWidth(projExtent), getHeight(projExtent));\n var defaultMaxResolution = size / DEFAULT_TILE_SIZE / Math.pow(defaultZoomFactor, DEFAULT_MIN_ZOOM);\n var defaultMinResolution = defaultMaxResolution / Math.pow(defaultZoomFactor, defaultMaxZoom - DEFAULT_MIN_ZOOM);\n // user provided maxResolution takes precedence\n maxResolution = options.maxResolution;\n if (maxResolution !== undefined) {\n minZoom = 0;\n }\n else {\n maxResolution = defaultMaxResolution / Math.pow(zoomFactor, minZoom);\n }\n // user provided minResolution takes precedence\n minResolution = options.minResolution;\n if (minResolution === undefined) {\n if (options.maxZoom !== undefined) {\n if (options.maxResolution !== undefined) {\n minResolution = maxResolution / Math.pow(zoomFactor, maxZoom);\n }\n else {\n minResolution = defaultMaxResolution / Math.pow(zoomFactor, maxZoom);\n }\n }\n else {\n minResolution = defaultMinResolution;\n }\n }\n // given discrete zoom levels, minResolution may be different than provided\n maxZoom = minZoom + Math.floor(Math.log(maxResolution / minResolution) / Math.log(zoomFactor));\n minResolution = maxResolution / Math.pow(zoomFactor, maxZoom - minZoom);\n if (options.constrainResolution) {\n resolutionConstraint = createSnapToPower(zoomFactor, maxResolution, minResolution, smooth, !constrainOnlyCenter && extent, showFullExtent);\n }\n else {\n resolutionConstraint = createMinMaxResolution(maxResolution, minResolution, smooth, !constrainOnlyCenter && extent, showFullExtent);\n }\n }\n return { constraint: resolutionConstraint, maxResolution: maxResolution,\n minResolution: minResolution, minZoom: minZoom, zoomFactor: zoomFactor };\n}\n/**\n * @param {ViewOptions} options View options.\n * @return {import(\"./rotationconstraint.js\").Type} Rotation constraint.\n */\nexport function createRotationConstraint(options) {\n var enableRotation = options.enableRotation !== undefined ?\n options.enableRotation : true;\n if (enableRotation) {\n var constrainRotation = options.constrainRotation;\n if (constrainRotation === undefined || constrainRotation === true) {\n return createSnapToZero();\n }\n else if (constrainRotation === false) {\n return rotationNone;\n }\n else if (typeof constrainRotation === 'number') {\n return createSnapToN(constrainRotation);\n }\n else {\n return rotationNone;\n }\n }\n else {\n return disable;\n }\n}\n/**\n * Determine if an animation involves no view change.\n * @param {Animation} animation The animation.\n * @return {boolean} The animation involves no view change.\n */\nexport function isNoopAnimation(animation) {\n if (animation.sourceCenter && animation.targetCenter) {\n if (!coordinatesEqual(animation.sourceCenter, animation.targetCenter)) {\n return false;\n }\n }\n if (animation.sourceResolution !== animation.targetResolution) {\n return false;\n }\n if (animation.sourceRotation !== animation.targetRotation) {\n return false;\n }\n return true;\n}\nexport default View;\n//# sourceMappingURL=View.js.map","/**\n * @module ol/dom\n */\n/**\n * Create an html canvas element and returns its 2d context.\n * @param {number=} opt_width Canvas width.\n * @param {number=} opt_height Canvas height.\n * @param {Array=} opt_canvasPool Canvas pool to take existing canvas from.\n * @return {CanvasRenderingContext2D} The context.\n */\nexport function createCanvasContext2D(opt_width, opt_height, opt_canvasPool) {\n var canvas = opt_canvasPool && opt_canvasPool.length ?\n opt_canvasPool.shift() : document.createElement('canvas');\n if (opt_width) {\n canvas.width = opt_width;\n }\n if (opt_height) {\n canvas.height = opt_height;\n }\n return canvas.getContext('2d');\n}\n/**\n * Get the current computed width for the given element including margin,\n * padding and border.\n * Equivalent to jQuery's `$(el).outerWidth(true)`.\n * @param {!HTMLElement} element Element.\n * @return {number} The width.\n */\nexport function outerWidth(element) {\n var width = element.offsetWidth;\n var style = getComputedStyle(element);\n width += parseInt(style.marginLeft, 10) + parseInt(style.marginRight, 10);\n return width;\n}\n/**\n * Get the current computed height for the given element including margin,\n * padding and border.\n * Equivalent to jQuery's `$(el).outerHeight(true)`.\n * @param {!HTMLElement} element Element.\n * @return {number} The height.\n */\nexport function outerHeight(element) {\n var height = element.offsetHeight;\n var style = getComputedStyle(element);\n height += parseInt(style.marginTop, 10) + parseInt(style.marginBottom, 10);\n return height;\n}\n/**\n * @param {Node} newNode Node to replace old node\n * @param {Node} oldNode The node to be replaced\n */\nexport function replaceNode(newNode, oldNode) {\n var parent = oldNode.parentNode;\n if (parent) {\n parent.replaceChild(newNode, oldNode);\n }\n}\n/**\n * @param {Node} node The node to remove.\n * @returns {Node} The node that was removed or null.\n */\nexport function removeNode(node) {\n return node && node.parentNode ? node.parentNode.removeChild(node) : null;\n}\n/**\n * @param {Node} node The node to remove the children from.\n */\nexport function removeChildren(node) {\n while (node.lastChild) {\n node.removeChild(node.lastChild);\n }\n}\n/**\n * Transform the children of a parent node so they match the\n * provided list of children. This function aims to efficiently\n * remove, add, and reorder child nodes while maintaining a simple\n * implementation (it is not guaranteed to minimize DOM operations).\n * @param {Node} node The parent node whose children need reworking.\n * @param {Array} children The desired children.\n */\nexport function replaceChildren(node, children) {\n var oldChildren = node.childNodes;\n for (var i = 0; true; ++i) {\n var oldChild = oldChildren[i];\n var newChild = children[i];\n // check if our work is done\n if (!oldChild && !newChild) {\n break;\n }\n // check if children match\n if (oldChild === newChild) {\n continue;\n }\n // check if a new child needs to be added\n if (!oldChild) {\n node.appendChild(newChild);\n continue;\n }\n // check if an old child needs to be removed\n if (!newChild) {\n node.removeChild(oldChild);\n --i;\n continue;\n }\n // reorder\n node.insertBefore(newChild, oldChild);\n }\n}\n//# sourceMappingURL=dom.js.map","/**\n * @module ol/layer/Property\n */\n/**\n * @enum {string}\n */\nexport default {\n OPACITY: 'opacity',\n VISIBLE: 'visible',\n EXTENT: 'extent',\n Z_INDEX: 'zIndex',\n MAX_RESOLUTION: 'maxResolution',\n MIN_RESOLUTION: 'minResolution',\n MAX_ZOOM: 'maxZoom',\n MIN_ZOOM: 'minZoom',\n SOURCE: 'source'\n};\n//# sourceMappingURL=Property.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/layer/Base\n */\nimport { abstract } from '../util.js';\nimport BaseObject from '../Object.js';\nimport LayerProperty from './Property.js';\nimport { clamp } from '../math.js';\nimport { assign } from '../obj.js';\nimport { assert } from '../asserts.js';\n/**\n * @typedef {Object} Options\n * @property {string} [className='ol-layer'] A CSS class name to set to the layer element.\n * @property {number} [opacity=1] Opacity (0, 1).\n * @property {boolean} [visible=true] Visibility.\n * @property {import(\"../extent.js\").Extent} [extent] The bounding extent for layer rendering. The layer will not be\n * rendered outside of this extent.\n * @property {number} [zIndex] The z-index for layer rendering. At rendering time, the layers\n * will be ordered, first by Z-index and then by position. When `undefined`, a `zIndex` of 0 is assumed\n * for layers that are added to the map's `layers` collection, or `Infinity` when the layer's `setMap()`\n * method was used.\n * @property {number} [minResolution] The minimum resolution (inclusive) at which this layer will be\n * visible.\n * @property {number} [maxResolution] The maximum resolution (exclusive) below which this layer will\n * be visible.\n * @property {number} [minZoom] The minimum view zoom level (exclusive) above which this layer will be\n * visible.\n * @property {number} [maxZoom] The maximum view zoom level (inclusive) at which this layer will\n * be visible.\n */\n/**\n * @classdesc\n * Abstract base class; normally only used for creating subclasses and not\n * instantiated in apps.\n * Note that with {@link module:ol/layer/Base} and all its subclasses, any property set in\n * the options is set as a {@link module:ol/Object} property on the layer object, so\n * is observable, and has get/set accessors.\n *\n * @api\n */\nvar BaseLayer = /** @class */ (function (_super) {\n __extends(BaseLayer, _super);\n /**\n * @param {Options} options Layer options.\n */\n function BaseLayer(options) {\n var _this = _super.call(this) || this;\n /**\n * @type {Object}\n */\n var properties = assign({}, options);\n properties[LayerProperty.OPACITY] =\n options.opacity !== undefined ? options.opacity : 1;\n assert(typeof properties[LayerProperty.OPACITY] === 'number', 64); // Layer opacity must be a number\n properties[LayerProperty.VISIBLE] =\n options.visible !== undefined ? options.visible : true;\n properties[LayerProperty.Z_INDEX] = options.zIndex;\n properties[LayerProperty.MAX_RESOLUTION] =\n options.maxResolution !== undefined ? options.maxResolution : Infinity;\n properties[LayerProperty.MIN_RESOLUTION] =\n options.minResolution !== undefined ? options.minResolution : 0;\n properties[LayerProperty.MIN_ZOOM] =\n options.minZoom !== undefined ? options.minZoom : -Infinity;\n properties[LayerProperty.MAX_ZOOM] =\n options.maxZoom !== undefined ? options.maxZoom : Infinity;\n /**\n * @type {string}\n * @private\n */\n _this.className_ = properties.className !== undefined ? options.className : 'ol-layer';\n delete properties.className;\n _this.setProperties(properties);\n /**\n * @type {import(\"./Layer.js\").State}\n * @private\n */\n _this.state_ = null;\n return _this;\n }\n /**\n * @return {string} CSS class name.\n */\n BaseLayer.prototype.getClassName = function () {\n return this.className_;\n };\n /**\n * This method is not meant to be called by layers or layer renderers because the state\n * is incorrect if the layer is included in a layer group.\n *\n * @param {boolean=} opt_managed Layer is managed.\n * @return {import(\"./Layer.js\").State} Layer state.\n */\n BaseLayer.prototype.getLayerState = function (opt_managed) {\n /** @type {import(\"./Layer.js\").State} */\n var state = this.state_ || /** @type {?} */ ({\n layer: this,\n managed: opt_managed === undefined ? true : opt_managed\n });\n var zIndex = this.getZIndex();\n state.opacity = clamp(Math.round(this.getOpacity() * 100) / 100, 0, 1);\n state.sourceState = this.getSourceState();\n state.visible = this.getVisible();\n state.extent = this.getExtent();\n state.zIndex = zIndex !== undefined ? zIndex : (state.managed === false ? Infinity : 0);\n state.maxResolution = this.getMaxResolution();\n state.minResolution = Math.max(this.getMinResolution(), 0);\n state.minZoom = this.getMinZoom();\n state.maxZoom = this.getMaxZoom();\n this.state_ = state;\n return state;\n };\n /**\n * @abstract\n * @param {Array=} opt_array Array of layers (to be\n * modified in place).\n * @return {Array} Array of layers.\n */\n BaseLayer.prototype.getLayersArray = function (opt_array) {\n return abstract();\n };\n /**\n * @abstract\n * @param {Array=} opt_states Optional list of layer\n * states (to be modified in place).\n * @return {Array} List of layer states.\n */\n BaseLayer.prototype.getLayerStatesArray = function (opt_states) {\n return abstract();\n };\n /**\n * Return the {@link module:ol/extent~Extent extent} of the layer or `undefined` if it\n * will be visible regardless of extent.\n * @return {import(\"../extent.js\").Extent|undefined} The layer extent.\n * @observable\n * @api\n */\n BaseLayer.prototype.getExtent = function () {\n return (\n /** @type {import(\"../extent.js\").Extent|undefined} */ (this.get(LayerProperty.EXTENT)));\n };\n /**\n * Return the maximum resolution of the layer.\n * @return {number} The maximum resolution of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.getMaxResolution = function () {\n return /** @type {number} */ (this.get(LayerProperty.MAX_RESOLUTION));\n };\n /**\n * Return the minimum resolution of the layer.\n * @return {number} The minimum resolution of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.getMinResolution = function () {\n return /** @type {number} */ (this.get(LayerProperty.MIN_RESOLUTION));\n };\n /**\n * Return the minimum zoom level of the layer.\n * @return {number} The minimum zoom level of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.getMinZoom = function () {\n return /** @type {number} */ (this.get(LayerProperty.MIN_ZOOM));\n };\n /**\n * Return the maximum zoom level of the layer.\n * @return {number} The maximum zoom level of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.getMaxZoom = function () {\n return /** @type {number} */ (this.get(LayerProperty.MAX_ZOOM));\n };\n /**\n * Return the opacity of the layer (between 0 and 1).\n * @return {number} The opacity of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.getOpacity = function () {\n return /** @type {number} */ (this.get(LayerProperty.OPACITY));\n };\n /**\n * @abstract\n * @return {import(\"../source/State.js\").default} Source state.\n */\n BaseLayer.prototype.getSourceState = function () {\n return abstract();\n };\n /**\n * Return the visibility of the layer (`true` or `false`).\n * @return {boolean} The visibility of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.getVisible = function () {\n return /** @type {boolean} */ (this.get(LayerProperty.VISIBLE));\n };\n /**\n * Return the Z-index of the layer, which is used to order layers before\n * rendering. The default Z-index is 0.\n * @return {number} The Z-index of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.getZIndex = function () {\n return /** @type {number} */ (this.get(LayerProperty.Z_INDEX));\n };\n /**\n * Set the extent at which the layer is visible. If `undefined`, the layer\n * will be visible at all extents.\n * @param {import(\"../extent.js\").Extent|undefined} extent The extent of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.setExtent = function (extent) {\n this.set(LayerProperty.EXTENT, extent);\n };\n /**\n * Set the maximum resolution at which the layer is visible.\n * @param {number} maxResolution The maximum resolution of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.setMaxResolution = function (maxResolution) {\n this.set(LayerProperty.MAX_RESOLUTION, maxResolution);\n };\n /**\n * Set the minimum resolution at which the layer is visible.\n * @param {number} minResolution The minimum resolution of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.setMinResolution = function (minResolution) {\n this.set(LayerProperty.MIN_RESOLUTION, minResolution);\n };\n /**\n * Set the maximum zoom (exclusive) at which the layer is visible.\n * Note that the zoom levels for layer visibility are based on the\n * view zoom level, which may be different from a tile source zoom level.\n * @param {number} maxZoom The maximum zoom of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.setMaxZoom = function (maxZoom) {\n this.set(LayerProperty.MAX_ZOOM, maxZoom);\n };\n /**\n * Set the minimum zoom (inclusive) at which the layer is visible.\n * Note that the zoom levels for layer visibility are based on the\n * view zoom level, which may be different from a tile source zoom level.\n * @param {number} minZoom The minimum zoom of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.setMinZoom = function (minZoom) {\n this.set(LayerProperty.MIN_ZOOM, minZoom);\n };\n /**\n * Set the opacity of the layer, allowed values range from 0 to 1.\n * @param {number} opacity The opacity of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.setOpacity = function (opacity) {\n assert(typeof opacity === 'number', 64); // Layer opacity must be a number\n this.set(LayerProperty.OPACITY, opacity);\n };\n /**\n * Set the visibility of the layer (`true` or `false`).\n * @param {boolean} visible The visibility of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.setVisible = function (visible) {\n this.set(LayerProperty.VISIBLE, visible);\n };\n /**\n * Set Z-index of the layer, which is used to order layers before rendering.\n * The default Z-index is 0.\n * @param {number} zindex The z-index of the layer.\n * @observable\n * @api\n */\n BaseLayer.prototype.setZIndex = function (zindex) {\n this.set(LayerProperty.Z_INDEX, zindex);\n };\n /**\n * @inheritDoc\n */\n BaseLayer.prototype.disposeInternal = function () {\n if (this.state_) {\n this.state_.layer = null;\n this.state_ = null;\n }\n _super.prototype.disposeInternal.call(this);\n };\n return BaseLayer;\n}(BaseObject));\nexport default BaseLayer;\n//# sourceMappingURL=Base.js.map","/**\n * @module ol/source/State\n */\n/**\n * @enum {string}\n * State of the source, one of 'undefined', 'loading', 'ready' or 'error'.\n */\nexport default {\n UNDEFINED: 'undefined',\n LOADING: 'loading',\n READY: 'ready',\n ERROR: 'error'\n};\n//# sourceMappingURL=State.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/layer/Group\n */\nimport { getUid } from '../util.js';\nimport Collection from '../Collection.js';\nimport CollectionEventType from '../CollectionEventType.js';\nimport { getChangeEventType } from '../Object.js';\nimport ObjectEventType from '../ObjectEventType.js';\nimport { assert } from '../asserts.js';\nimport { listen, unlistenByKey } from '../events.js';\nimport EventType from '../events/EventType.js';\nimport { getIntersection } from '../extent.js';\nimport BaseLayer from './Base.js';\nimport { assign, clear } from '../obj.js';\nimport SourceState from '../source/State.js';\n/**\n * @typedef {Object} Options\n * @property {number} [opacity=1] Opacity (0, 1).\n * @property {boolean} [visible=true] Visibility.\n * @property {import(\"../extent.js\").Extent} [extent] The bounding extent for layer rendering. The layer will not be\n * rendered outside of this extent.\n * @property {number} [zIndex] The z-index for layer rendering. At rendering time, the layers\n * will be ordered, first by Z-index and then by position. When `undefined`, a `zIndex` of 0 is assumed\n * for layers that are added to the map's `layers` collection, or `Infinity` when the layer's `setMap()`\n * method was used.\n * @property {number} [minResolution] The minimum resolution (inclusive) at which this layer will be\n * visible.\n * @property {number} [maxResolution] The maximum resolution (exclusive) below which this layer will\n * be visible.\n * @property {number} [minZoom] The minimum view zoom level (exclusive) above which this layer will be\n * visible.\n * @property {number} [maxZoom] The maximum view zoom level (inclusive) at which this layer will\n * be visible.\n * @property {Array|import(\"../Collection.js\").default} [layers] Child layers.\n */\n/**\n * @enum {string}\n * @private\n */\nvar Property = {\n LAYERS: 'layers'\n};\n/**\n * @classdesc\n * A {@link module:ol/Collection~Collection} of layers that are handled together.\n *\n * A generic `change` event is triggered when the group/Collection changes.\n *\n * @api\n */\nvar LayerGroup = /** @class */ (function (_super) {\n __extends(LayerGroup, _super);\n /**\n * @param {Options=} opt_options Layer options.\n */\n function LayerGroup(opt_options) {\n var _this = this;\n var options = opt_options || {};\n var baseOptions = /** @type {Options} */ (assign({}, options));\n delete baseOptions.layers;\n var layers = options.layers;\n _this = _super.call(this, baseOptions) || this;\n /**\n * @private\n * @type {Array}\n */\n _this.layersListenerKeys_ = [];\n /**\n * @private\n * @type {Object>}\n */\n _this.listenerKeys_ = {};\n _this.addEventListener(getChangeEventType(Property.LAYERS), _this.handleLayersChanged_);\n if (layers) {\n if (Array.isArray(layers)) {\n layers = new Collection(layers.slice(), { unique: true });\n }\n else {\n assert(typeof /** @type {?} */ (layers).getArray === 'function', 43); // Expected `layers` to be an array or a `Collection`\n }\n }\n else {\n layers = new Collection(undefined, { unique: true });\n }\n _this.setLayers(layers);\n return _this;\n }\n /**\n * @private\n */\n LayerGroup.prototype.handleLayerChange_ = function () {\n this.changed();\n };\n /**\n * @private\n */\n LayerGroup.prototype.handleLayersChanged_ = function () {\n this.layersListenerKeys_.forEach(unlistenByKey);\n this.layersListenerKeys_.length = 0;\n var layers = this.getLayers();\n this.layersListenerKeys_.push(listen(layers, CollectionEventType.ADD, this.handleLayersAdd_, this), listen(layers, CollectionEventType.REMOVE, this.handleLayersRemove_, this));\n for (var id in this.listenerKeys_) {\n this.listenerKeys_[id].forEach(unlistenByKey);\n }\n clear(this.listenerKeys_);\n var layersArray = layers.getArray();\n for (var i = 0, ii = layersArray.length; i < ii; i++) {\n var layer = layersArray[i];\n this.listenerKeys_[getUid(layer)] = [\n listen(layer, ObjectEventType.PROPERTYCHANGE, this.handleLayerChange_, this),\n listen(layer, EventType.CHANGE, this.handleLayerChange_, this)\n ];\n }\n this.changed();\n };\n /**\n * @param {import(\"../Collection.js\").CollectionEvent} collectionEvent CollectionEvent.\n * @private\n */\n LayerGroup.prototype.handleLayersAdd_ = function (collectionEvent) {\n var layer = /** @type {import(\"./Base.js\").default} */ (collectionEvent.element);\n this.listenerKeys_[getUid(layer)] = [\n listen(layer, ObjectEventType.PROPERTYCHANGE, this.handleLayerChange_, this),\n listen(layer, EventType.CHANGE, this.handleLayerChange_, this)\n ];\n this.changed();\n };\n /**\n * @param {import(\"../Collection.js\").CollectionEvent} collectionEvent CollectionEvent.\n * @private\n */\n LayerGroup.prototype.handleLayersRemove_ = function (collectionEvent) {\n var layer = /** @type {import(\"./Base.js\").default} */ (collectionEvent.element);\n var key = getUid(layer);\n this.listenerKeys_[key].forEach(unlistenByKey);\n delete this.listenerKeys_[key];\n this.changed();\n };\n /**\n * Returns the {@link module:ol/Collection collection} of {@link module:ol/layer/Layer~Layer layers}\n * in this group.\n * @return {!import(\"../Collection.js\").default} Collection of\n * {@link module:ol/layer/Base layers} that are part of this group.\n * @observable\n * @api\n */\n LayerGroup.prototype.getLayers = function () {\n return (\n /** @type {!import(\"../Collection.js\").default} */ (this.get(Property.LAYERS)));\n };\n /**\n * Set the {@link module:ol/Collection collection} of {@link module:ol/layer/Layer~Layer layers}\n * in this group.\n * @param {!import(\"../Collection.js\").default} layers Collection of\n * {@link module:ol/layer/Base layers} that are part of this group.\n * @observable\n * @api\n */\n LayerGroup.prototype.setLayers = function (layers) {\n this.set(Property.LAYERS, layers);\n };\n /**\n * @inheritDoc\n */\n LayerGroup.prototype.getLayersArray = function (opt_array) {\n var array = opt_array !== undefined ? opt_array : [];\n this.getLayers().forEach(function (layer) {\n layer.getLayersArray(array);\n });\n return array;\n };\n /**\n * @inheritDoc\n */\n LayerGroup.prototype.getLayerStatesArray = function (opt_states) {\n var states = opt_states !== undefined ? opt_states : [];\n var pos = states.length;\n this.getLayers().forEach(function (layer) {\n layer.getLayerStatesArray(states);\n });\n var ownLayerState = this.getLayerState();\n for (var i = pos, ii = states.length; i < ii; i++) {\n var layerState = states[i];\n layerState.opacity *= ownLayerState.opacity;\n layerState.visible = layerState.visible && ownLayerState.visible;\n layerState.maxResolution = Math.min(layerState.maxResolution, ownLayerState.maxResolution);\n layerState.minResolution = Math.max(layerState.minResolution, ownLayerState.minResolution);\n layerState.minZoom = Math.max(layerState.minZoom, ownLayerState.minZoom);\n layerState.maxZoom = Math.min(layerState.maxZoom, ownLayerState.maxZoom);\n if (ownLayerState.extent !== undefined) {\n if (layerState.extent !== undefined) {\n layerState.extent = getIntersection(layerState.extent, ownLayerState.extent);\n }\n else {\n layerState.extent = ownLayerState.extent;\n }\n }\n }\n return states;\n };\n /**\n * @inheritDoc\n */\n LayerGroup.prototype.getSourceState = function () {\n return SourceState.READY;\n };\n return LayerGroup;\n}(BaseLayer));\nexport default LayerGroup;\n//# sourceMappingURL=Group.js.map","/**\n * @module ol/size\n */\n/**\n * An array of numbers representing a size: `[width, height]`.\n * @typedef {Array} Size\n * @api\n */\n/**\n * Returns a buffered size.\n * @param {Size} size Size.\n * @param {number} num The amount by which to buffer.\n * @param {Size=} opt_size Optional reusable size array.\n * @return {Size} The buffered size.\n */\nexport function buffer(size, num, opt_size) {\n if (opt_size === undefined) {\n opt_size = [0, 0];\n }\n opt_size[0] = size[0] + 2 * num;\n opt_size[1] = size[1] + 2 * num;\n return opt_size;\n}\n/**\n * Determines if a size has a positive area.\n * @param {Size} size The size to test.\n * @return {boolean} The size has a positive area.\n */\nexport function hasArea(size) {\n return size[0] > 0 && size[1] > 0;\n}\n/**\n * Returns a size scaled by a ratio. The result will be an array of integers.\n * @param {Size} size Size.\n * @param {number} ratio Ratio.\n * @param {Size=} opt_size Optional reusable size array.\n * @return {Size} The scaled size.\n */\nexport function scale(size, ratio, opt_size) {\n if (opt_size === undefined) {\n opt_size = [0, 0];\n }\n opt_size[0] = (size[0] * ratio + 0.5) | 0;\n opt_size[1] = (size[1] * ratio + 0.5) | 0;\n return opt_size;\n}\n/**\n * Returns an `Size` array for the passed in number (meaning: square) or\n * `Size` array.\n * (meaning: non-square),\n * @param {number|Size} size Width and height.\n * @param {Size=} opt_size Optional reusable size array.\n * @return {Size} Size.\n * @api\n */\nexport function toSize(size, opt_size) {\n if (Array.isArray(size)) {\n return size;\n }\n else {\n if (opt_size === undefined) {\n opt_size = [size, size];\n }\n else {\n opt_size[0] = size;\n opt_size[1] = size;\n }\n return opt_size;\n }\n}\n//# sourceMappingURL=size.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/PluggableMap\n */\nimport Collection from './Collection.js';\nimport CollectionEventType from './CollectionEventType.js';\nimport MapBrowserEvent from './MapBrowserEvent.js';\nimport MapBrowserEventHandler from './MapBrowserEventHandler.js';\nimport MapBrowserEventType from './MapBrowserEventType.js';\nimport MapEvent from './MapEvent.js';\nimport MapEventType from './MapEventType.js';\nimport MapProperty from './MapProperty.js';\nimport RenderEventType from './render/EventType.js';\nimport BaseObject, { getChangeEventType } from './Object.js';\nimport ObjectEventType from './ObjectEventType.js';\nimport TileQueue from './TileQueue.js';\nimport View from './View.js';\nimport ViewHint from './ViewHint.js';\nimport { assert } from './asserts.js';\nimport { removeNode } from './dom.js';\nimport { listen, unlistenByKey } from './events.js';\nimport EventType from './events/EventType.js';\nimport { clone, createOrUpdateEmpty, equals, getForViewAndSize, isEmpty } from './extent.js';\nimport { TRUE } from './functions.js';\nimport { DEVICE_PIXEL_RATIO, IMAGE_DECODE, PASSIVE_EVENT_LISTENERS } from './has.js';\nimport LayerGroup from './layer/Group.js';\nimport { hasArea } from './size.js';\nimport { DROP } from './structs/PriorityQueue.js';\nimport { create as createTransform, apply as applyTransform } from './transform.js';\nimport { toUserCoordinate, fromUserCoordinate } from './proj.js';\n/**\n * State of the current frame. Only `pixelRatio`, `time` and `viewState` should\n * be used in applications.\n * @typedef {Object} FrameState\n * @property {number} pixelRatio The pixel ratio of the frame.\n * @property {number} time The time when rendering of the frame was requested.\n * @property {import(\"./View.js\").State} viewState The state of the current view.\n * @property {boolean} animate\n * @property {import(\"./transform.js\").Transform} coordinateToPixelTransform\n * @property {null|import(\"./extent.js\").Extent} extent\n * @property {Array} declutterItems\n * @property {number} index\n * @property {Array} layerStatesArray\n * @property {number} layerIndex\n * @property {import(\"./transform.js\").Transform} pixelToCoordinateTransform\n * @property {Array} postRenderFunctions\n * @property {import(\"./size.js\").Size} size\n * @property {TileQueue} tileQueue\n * @property {!Object>} usedTiles\n * @property {Array} viewHints\n * @property {!Object>} wantedTiles\n */\n/**\n * @typedef {Object} DeclutterItems\n * @property {Array<*>} items Declutter items of an executor.\n * @property {number} opacity Layer opacity.\n */\n/**\n * @typedef {function(PluggableMap, ?FrameState): any} PostRenderFunction\n */\n/**\n * @typedef {Object} AtPixelOptions\n * @property {undefined|function(import(\"./layer/Layer.js\").default): boolean} [layerFilter] Layer filter\n * function. The filter function will receive one argument, the\n * {@link module:ol/layer/Layer layer-candidate} and it should return a boolean value.\n * Only layers which are visible and for which this function returns `true`\n * will be tested for features. By default, all visible layers will be tested.\n * @property {number} [hitTolerance=0] Hit-detection tolerance in pixels. Pixels\n * inside the radius around the given position will be checked for features.\n * @property {boolean} [checkWrapped=true] Check-Wrapped Will check for for wrapped geometries inside the range of\n * +/- 1 world width. Works only if a projection is used that can be wrapped.\n */\n/**\n * @typedef {Object} MapOptionsInternal\n * @property {Collection} [controls]\n * @property {Collection} [interactions]\n * @property {HTMLElement|Document} keyboardEventTarget\n * @property {Collection} overlays\n * @property {Object} values\n */\n/**\n * Object literal with config options for the map.\n * @typedef {Object} MapOptions\n * @property {Collection|Array} [controls]\n * Controls initially added to the map. If not specified,\n * {@link module:ol/control~defaults} is used.\n * @property {number} [pixelRatio=window.devicePixelRatio] The ratio between\n * physical pixels and device-independent pixels (dips) on the device.\n * @property {Collection|Array} [interactions]\n * Interactions that are initially added to the map. If not specified,\n * {@link module:ol/interaction~defaults} is used.\n * @property {HTMLElement|Document|string} [keyboardEventTarget] The element to\n * listen to keyboard events on. This determines when the `KeyboardPan` and\n * `KeyboardZoom` interactions trigger. For example, if this option is set to\n * `document` the keyboard interactions will always trigger. If this option is\n * not specified, the element the library listens to keyboard events on is the\n * map target (i.e. the user-provided div for the map). If this is not\n * `document`, the target element needs to be focused for key events to be\n * emitted, requiring that the target element has a `tabindex` attribute.\n * @property {Array|Collection|LayerGroup} [layers]\n * Layers. If this is not defined, a map with no layers will be rendered. Note\n * that layers are rendered in the order supplied, so if you want, for example,\n * a vector layer to appear on top of a tile layer, it must come after the tile\n * layer.\n * @property {number} [maxTilesLoading=16] Maximum number tiles to load\n * simultaneously.\n * @property {number} [moveTolerance=1] The minimum distance in pixels the\n * cursor must move to be detected as a map move event instead of a click.\n * Increasing this value can make it easier to click on the map.\n * @property {Collection|Array} [overlays]\n * Overlays initially added to the map. By default, no overlays are added.\n * @property {HTMLElement|string} [target] The container for the map, either the\n * element itself or the `id` of the element. If not specified at construction\n * time, {@link module:ol/Map~Map#setTarget} must be called for the map to be\n * rendered.\n * @property {View} [view] The map's view. No layer sources will be\n * fetched unless this is specified at construction time or through\n * {@link module:ol/Map~Map#setView}.\n */\n/**\n * @fires import(\"./MapBrowserEvent.js\").MapBrowserEvent\n * @fires import(\"./MapEvent.js\").MapEvent\n * @fires import(\"./render/Event.js\").default#precompose\n * @fires import(\"./render/Event.js\").default#postcompose\n * @fires import(\"./render/Event.js\").default#rendercomplete\n * @api\n */\nvar PluggableMap = /** @class */ (function (_super) {\n __extends(PluggableMap, _super);\n /**\n * @param {MapOptions} options Map options.\n */\n function PluggableMap(options) {\n var _this = _super.call(this) || this;\n var optionsInternal = createOptionsInternal(options);\n /** @private */\n _this.boundHandleBrowserEvent_ = _this.handleBrowserEvent.bind(_this);\n /**\n * @type {number}\n * @private\n */\n _this.maxTilesLoading_ = options.maxTilesLoading !== undefined ? options.maxTilesLoading : 16;\n /**\n * @private\n * @type {number}\n */\n _this.pixelRatio_ = options.pixelRatio !== undefined ?\n options.pixelRatio : DEVICE_PIXEL_RATIO;\n /**\n * @private\n * @type {*}\n */\n _this.postRenderTimeoutHandle_;\n /**\n * @private\n * @type {number|undefined}\n */\n _this.animationDelayKey_;\n /**\n * @private\n */\n _this.animationDelay_ = function () {\n this.animationDelayKey_ = undefined;\n this.renderFrame_(Date.now());\n }.bind(_this);\n /**\n * @private\n * @type {import(\"./transform.js\").Transform}\n */\n _this.coordinateToPixelTransform_ = createTransform();\n /**\n * @private\n * @type {import(\"./transform.js\").Transform}\n */\n _this.pixelToCoordinateTransform_ = createTransform();\n /**\n * @private\n * @type {number}\n */\n _this.frameIndex_ = 0;\n /**\n * @private\n * @type {?FrameState}\n */\n _this.frameState_ = null;\n /**\n * The extent at the previous 'moveend' event.\n * @private\n * @type {import(\"./extent.js\").Extent}\n */\n _this.previousExtent_ = null;\n /**\n * @private\n * @type {?import(\"./events.js\").EventsKey}\n */\n _this.viewPropertyListenerKey_ = null;\n /**\n * @private\n * @type {?import(\"./events.js\").EventsKey}\n */\n _this.viewChangeListenerKey_ = null;\n /**\n * @private\n * @type {?Array}\n */\n _this.layerGroupPropertyListenerKeys_ = null;\n /**\n * @private\n * @type {!HTMLElement}\n */\n _this.viewport_ = document.createElement('div');\n _this.viewport_.className = 'ol-viewport' + ('ontouchstart' in window ? ' ol-touch' : '');\n _this.viewport_.style.position = 'relative';\n _this.viewport_.style.overflow = 'hidden';\n _this.viewport_.style.width = '100%';\n _this.viewport_.style.height = '100%';\n /**\n * @private\n * @type {!HTMLElement}\n */\n _this.overlayContainer_ = document.createElement('div');\n _this.overlayContainer_.style.position = 'absolute';\n _this.overlayContainer_.style.zIndex = '0';\n _this.overlayContainer_.style.width = '100%';\n _this.overlayContainer_.style.height = '100%';\n _this.overlayContainer_.className = 'ol-overlaycontainer';\n _this.viewport_.appendChild(_this.overlayContainer_);\n /**\n * @private\n * @type {!HTMLElement}\n */\n _this.overlayContainerStopEvent_ = document.createElement('div');\n _this.overlayContainerStopEvent_.style.position = 'absolute';\n _this.overlayContainerStopEvent_.style.zIndex = '0';\n _this.overlayContainerStopEvent_.style.width = '100%';\n _this.overlayContainerStopEvent_.style.height = '100%';\n _this.overlayContainerStopEvent_.className = 'ol-overlaycontainer-stopevent';\n _this.viewport_.appendChild(_this.overlayContainerStopEvent_);\n /**\n * @private\n * @type {MapBrowserEventHandler}\n */\n _this.mapBrowserEventHandler_ = new MapBrowserEventHandler(_this, options.moveTolerance);\n var handleMapBrowserEvent = _this.handleMapBrowserEvent.bind(_this);\n for (var key in MapBrowserEventType) {\n _this.mapBrowserEventHandler_.addEventListener(MapBrowserEventType[key], handleMapBrowserEvent);\n }\n /**\n * @private\n * @type {HTMLElement|Document}\n */\n _this.keyboardEventTarget_ = optionsInternal.keyboardEventTarget;\n /**\n * @private\n * @type {?Array}\n */\n _this.keyHandlerKeys_ = null;\n var handleBrowserEvent = _this.handleBrowserEvent.bind(_this);\n _this.viewport_.addEventListener(EventType.CONTEXTMENU, handleBrowserEvent, false);\n _this.viewport_.addEventListener(EventType.WHEEL, handleBrowserEvent, PASSIVE_EVENT_LISTENERS ? { passive: false } : false);\n /**\n * @type {Collection}\n * @protected\n */\n _this.controls = optionsInternal.controls || new Collection();\n /**\n * @type {Collection}\n * @protected\n */\n _this.interactions = optionsInternal.interactions || new Collection();\n /**\n * @type {Collection}\n * @private\n */\n _this.overlays_ = optionsInternal.overlays;\n /**\n * A lookup of overlays by id.\n * @private\n * @type {Object}\n */\n _this.overlayIdIndex_ = {};\n /**\n * @type {import(\"./renderer/Map.js\").default}\n * @private\n */\n _this.renderer_ = null;\n /**\n * @type {undefined|function(Event): void}\n * @private\n */\n _this.handleResize_;\n /**\n * @private\n * @type {!Array}\n */\n _this.postRenderFunctions_ = [];\n /**\n * @private\n * @type {TileQueue}\n */\n _this.tileQueue_ = new TileQueue(_this.getTilePriority.bind(_this), _this.handleTileChange_.bind(_this));\n _this.addEventListener(getChangeEventType(MapProperty.LAYERGROUP), _this.handleLayerGroupChanged_);\n _this.addEventListener(getChangeEventType(MapProperty.VIEW), _this.handleViewChanged_);\n _this.addEventListener(getChangeEventType(MapProperty.SIZE), _this.handleSizeChanged_);\n _this.addEventListener(getChangeEventType(MapProperty.TARGET), _this.handleTargetChanged_);\n // setProperties will trigger the rendering of the map if the map\n // is \"defined\" already.\n _this.setProperties(optionsInternal.values);\n _this.controls.forEach(\n /**\n * @param {import(\"./control/Control.js\").default} control Control.\n * @this {PluggableMap}\n */\n function (control) {\n control.setMap(this);\n }.bind(_this));\n _this.controls.addEventListener(CollectionEventType.ADD, \n /**\n * @param {import(\"./Collection.js\").CollectionEvent} event CollectionEvent.\n */\n function (event) {\n event.element.setMap(this);\n }.bind(_this));\n _this.controls.addEventListener(CollectionEventType.REMOVE, \n /**\n * @param {import(\"./Collection.js\").CollectionEvent} event CollectionEvent.\n */\n function (event) {\n event.element.setMap(null);\n }.bind(_this));\n _this.interactions.forEach(\n /**\n * @param {import(\"./interaction/Interaction.js\").default} interaction Interaction.\n * @this {PluggableMap}\n */\n function (interaction) {\n interaction.setMap(this);\n }.bind(_this));\n _this.interactions.addEventListener(CollectionEventType.ADD, \n /**\n * @param {import(\"./Collection.js\").CollectionEvent} event CollectionEvent.\n */\n function (event) {\n event.element.setMap(this);\n }.bind(_this));\n _this.interactions.addEventListener(CollectionEventType.REMOVE, \n /**\n * @param {import(\"./Collection.js\").CollectionEvent} event CollectionEvent.\n */\n function (event) {\n event.element.setMap(null);\n }.bind(_this));\n _this.overlays_.forEach(_this.addOverlayInternal_.bind(_this));\n _this.overlays_.addEventListener(CollectionEventType.ADD, \n /**\n * @param {import(\"./Collection.js\").CollectionEvent} event CollectionEvent.\n */\n function (event) {\n this.addOverlayInternal_(/** @type {import(\"./Overlay.js\").default} */ (event.element));\n }.bind(_this));\n _this.overlays_.addEventListener(CollectionEventType.REMOVE, \n /**\n * @param {import(\"./Collection.js\").CollectionEvent} event CollectionEvent.\n */\n function (event) {\n var overlay = /** @type {import(\"./Overlay.js\").default} */ (event.element);\n var id = overlay.getId();\n if (id !== undefined) {\n delete this.overlayIdIndex_[id.toString()];\n }\n event.element.setMap(null);\n }.bind(_this));\n return _this;\n }\n /**\n * @abstract\n * @return {import(\"./renderer/Map.js\").default} The map renderer\n */\n PluggableMap.prototype.createRenderer = function () {\n throw new Error('Use a map type that has a createRenderer method');\n };\n /**\n * Add the given control to the map.\n * @param {import(\"./control/Control.js\").default} control Control.\n * @api\n */\n PluggableMap.prototype.addControl = function (control) {\n this.getControls().push(control);\n };\n /**\n * Add the given interaction to the map. If you want to add an interaction\n * at another point of the collection use `getInteraction()` and the methods\n * available on {@link module:ol/Collection~Collection}. This can be used to\n * stop the event propagation from the handleEvent function. The interactions\n * get to handle the events in the reverse order of this collection.\n * @param {import(\"./interaction/Interaction.js\").default} interaction Interaction to add.\n * @api\n */\n PluggableMap.prototype.addInteraction = function (interaction) {\n this.getInteractions().push(interaction);\n };\n /**\n * Adds the given layer to the top of this map. If you want to add a layer\n * elsewhere in the stack, use `getLayers()` and the methods available on\n * {@link module:ol/Collection~Collection}.\n * @param {import(\"./layer/Base.js\").default} layer Layer.\n * @api\n */\n PluggableMap.prototype.addLayer = function (layer) {\n var layers = this.getLayerGroup().getLayers();\n layers.push(layer);\n };\n /**\n * Add the given overlay to the map.\n * @param {import(\"./Overlay.js\").default} overlay Overlay.\n * @api\n */\n PluggableMap.prototype.addOverlay = function (overlay) {\n this.getOverlays().push(overlay);\n };\n /**\n * This deals with map's overlay collection changes.\n * @param {import(\"./Overlay.js\").default} overlay Overlay.\n * @private\n */\n PluggableMap.prototype.addOverlayInternal_ = function (overlay) {\n var id = overlay.getId();\n if (id !== undefined) {\n this.overlayIdIndex_[id.toString()] = overlay;\n }\n overlay.setMap(this);\n };\n /**\n *\n * @inheritDoc\n */\n PluggableMap.prototype.disposeInternal = function () {\n this.mapBrowserEventHandler_.dispose();\n this.viewport_.removeEventListener(EventType.CONTEXTMENU, this.boundHandleBrowserEvent_);\n this.viewport_.removeEventListener(EventType.WHEEL, this.boundHandleBrowserEvent_);\n if (this.handleResize_ !== undefined) {\n removeEventListener(EventType.RESIZE, this.handleResize_, false);\n this.handleResize_ = undefined;\n }\n this.setTarget(null);\n _super.prototype.disposeInternal.call(this);\n };\n /**\n * Detect features that intersect a pixel on the viewport, and execute a\n * callback with each intersecting feature. Layers included in the detection can\n * be configured through the `layerFilter` option in `opt_options`.\n * @param {import(\"./pixel.js\").Pixel} pixel Pixel.\n * @param {function(this: S, import(\"./Feature.js\").FeatureLike,\n * import(\"./layer/Layer.js\").default): T} callback Feature callback. The callback will be\n * called with two arguments. The first argument is one\n * {@link module:ol/Feature feature} or\n * {@link module:ol/render/Feature render feature} at the pixel, the second is\n * the {@link module:ol/layer/Layer layer} of the feature and will be null for\n * unmanaged layers. To stop detection, callback functions can return a\n * truthy value.\n * @param {AtPixelOptions=} opt_options Optional options.\n * @return {T|undefined} Callback result, i.e. the return value of last\n * callback execution, or the first truthy callback return value.\n * @template S,T\n * @api\n */\n PluggableMap.prototype.forEachFeatureAtPixel = function (pixel, callback, opt_options) {\n if (!this.frameState_) {\n return;\n }\n var coordinate = this.getCoordinateFromPixelInternal(pixel);\n opt_options = opt_options !== undefined ? opt_options : {};\n var hitTolerance = opt_options.hitTolerance !== undefined ?\n opt_options.hitTolerance * this.frameState_.pixelRatio : 0;\n var layerFilter = opt_options.layerFilter !== undefined ?\n opt_options.layerFilter : TRUE;\n var checkWrapped = opt_options.checkWrapped !== false;\n return this.renderer_.forEachFeatureAtCoordinate(coordinate, this.frameState_, hitTolerance, checkWrapped, callback, null, layerFilter, null);\n };\n /**\n * Get all features that intersect a pixel on the viewport.\n * @param {import(\"./pixel.js\").Pixel} pixel Pixel.\n * @param {AtPixelOptions=} opt_options Optional options.\n * @return {Array} The detected features or\n * an empty array if none were found.\n * @api\n */\n PluggableMap.prototype.getFeaturesAtPixel = function (pixel, opt_options) {\n var features = [];\n this.forEachFeatureAtPixel(pixel, function (feature) {\n features.push(feature);\n }, opt_options);\n return features;\n };\n /**\n * Detect layers that have a color value at a pixel on the viewport, and\n * execute a callback with each matching layer. Layers included in the\n * detection can be configured through `opt_layerFilter`.\n *\n * Note: this may give false positives unless the map layers have had different `className`\n * properties assigned to them.\n *\n * @param {import(\"./pixel.js\").Pixel} pixel Pixel.\n * @param {function(this: S, import(\"./layer/Layer.js\").default, (Uint8ClampedArray|Uint8Array)): T} callback\n * Layer callback. This callback will receive two arguments: first is the\n * {@link module:ol/layer/Layer layer}, second argument is an array representing\n * [R, G, B, A] pixel values (0 - 255) and will be `null` for layer types\n * that do not currently support this argument. To stop detection, callback\n * functions can return a truthy value.\n * @param {AtPixelOptions=} opt_options Configuration options.\n * @return {T|undefined} Callback result, i.e. the return value of last\n * callback execution, or the first truthy callback return value.\n * @template S,T\n * @api\n */\n PluggableMap.prototype.forEachLayerAtPixel = function (pixel, callback, opt_options) {\n if (!this.frameState_) {\n return;\n }\n var options = opt_options || {};\n var hitTolerance = options.hitTolerance !== undefined ?\n options.hitTolerance * this.frameState_.pixelRatio : 0;\n var layerFilter = options.layerFilter || TRUE;\n return this.renderer_.forEachLayerAtPixel(pixel, this.frameState_, hitTolerance, callback, layerFilter);\n };\n /**\n * Detect if features intersect a pixel on the viewport. Layers included in the\n * detection can be configured through `opt_layerFilter`.\n * @param {import(\"./pixel.js\").Pixel} pixel Pixel.\n * @param {AtPixelOptions=} opt_options Optional options.\n * @return {boolean} Is there a feature at the given pixel?\n * @api\n */\n PluggableMap.prototype.hasFeatureAtPixel = function (pixel, opt_options) {\n if (!this.frameState_) {\n return false;\n }\n var coordinate = this.getCoordinateFromPixelInternal(pixel);\n opt_options = opt_options !== undefined ? opt_options : {};\n var layerFilter = opt_options.layerFilter !== undefined ? opt_options.layerFilter : TRUE;\n var hitTolerance = opt_options.hitTolerance !== undefined ?\n opt_options.hitTolerance * this.frameState_.pixelRatio : 0;\n var checkWrapped = opt_options.checkWrapped !== false;\n return this.renderer_.hasFeatureAtCoordinate(coordinate, this.frameState_, hitTolerance, checkWrapped, layerFilter, null);\n };\n /**\n * Returns the coordinate in user projection for a browser event.\n * @param {Event} event Event.\n * @return {import(\"./coordinate.js\").Coordinate} Coordinate.\n * @api\n */\n PluggableMap.prototype.getEventCoordinate = function (event) {\n return this.getCoordinateFromPixel(this.getEventPixel(event));\n };\n /**\n * Returns the coordinate in view projection for a browser event.\n * @param {Event} event Event.\n * @return {import(\"./coordinate.js\").Coordinate} Coordinate.\n */\n PluggableMap.prototype.getEventCoordinateInternal = function (event) {\n return this.getCoordinateFromPixelInternal(this.getEventPixel(event));\n };\n /**\n * Returns the map pixel position for a browser event relative to the viewport.\n * @param {Event|TouchEvent} event Event.\n * @return {import(\"./pixel.js\").Pixel} Pixel.\n * @api\n */\n PluggableMap.prototype.getEventPixel = function (event) {\n var viewportPosition = this.viewport_.getBoundingClientRect();\n var eventPosition = 'changedTouches' in event ?\n /** @type {TouchEvent} */ (event).changedTouches[0] :\n /** @type {MouseEvent} */ (event);\n return [\n eventPosition.clientX - viewportPosition.left,\n eventPosition.clientY - viewportPosition.top\n ];\n };\n /**\n * Get the target in which this map is rendered.\n * Note that this returns what is entered as an option or in setTarget:\n * if that was an element, it returns an element; if a string, it returns that.\n * @return {HTMLElement|string|undefined} The Element or id of the Element that the\n * map is rendered in.\n * @observable\n * @api\n */\n PluggableMap.prototype.getTarget = function () {\n return /** @type {HTMLElement|string|undefined} */ (this.get(MapProperty.TARGET));\n };\n /**\n * Get the DOM element into which this map is rendered. In contrast to\n * `getTarget` this method always return an `Element`, or `null` if the\n * map has no target.\n * @return {HTMLElement} The element that the map is rendered in.\n * @api\n */\n PluggableMap.prototype.getTargetElement = function () {\n var target = this.getTarget();\n if (target !== undefined) {\n return typeof target === 'string' ? document.getElementById(target) : target;\n }\n else {\n return null;\n }\n };\n /**\n * Get the coordinate for a given pixel. This returns a coordinate in the\n * user projection.\n * @param {import(\"./pixel.js\").Pixel} pixel Pixel position in the map viewport.\n * @return {import(\"./coordinate.js\").Coordinate} The coordinate for the pixel position.\n * @api\n */\n PluggableMap.prototype.getCoordinateFromPixel = function (pixel) {\n return toUserCoordinate(this.getCoordinateFromPixelInternal(pixel), this.getView().getProjection());\n };\n /**\n * Get the coordinate for a given pixel. This returns a coordinate in the\n * map view projection.\n * @param {import(\"./pixel.js\").Pixel} pixel Pixel position in the map viewport.\n * @return {import(\"./coordinate.js\").Coordinate} The coordinate for the pixel position.\n */\n PluggableMap.prototype.getCoordinateFromPixelInternal = function (pixel) {\n var frameState = this.frameState_;\n if (!frameState) {\n return null;\n }\n else {\n return applyTransform(frameState.pixelToCoordinateTransform, pixel.slice());\n }\n };\n /**\n * Get the map controls. Modifying this collection changes the controls\n * associated with the map.\n * @return {Collection} Controls.\n * @api\n */\n PluggableMap.prototype.getControls = function () {\n return this.controls;\n };\n /**\n * Get the map overlays. Modifying this collection changes the overlays\n * associated with the map.\n * @return {Collection} Overlays.\n * @api\n */\n PluggableMap.prototype.getOverlays = function () {\n return this.overlays_;\n };\n /**\n * Get an overlay by its identifier (the value returned by overlay.getId()).\n * Note that the index treats string and numeric identifiers as the same. So\n * `map.getOverlayById(2)` will return an overlay with id `'2'` or `2`.\n * @param {string|number} id Overlay identifier.\n * @return {import(\"./Overlay.js\").default} Overlay.\n * @api\n */\n PluggableMap.prototype.getOverlayById = function (id) {\n var overlay = this.overlayIdIndex_[id.toString()];\n return overlay !== undefined ? overlay : null;\n };\n /**\n * Get the map interactions. Modifying this collection changes the interactions\n * associated with the map.\n *\n * Interactions are used for e.g. pan, zoom and rotate.\n * @return {Collection} Interactions.\n * @api\n */\n PluggableMap.prototype.getInteractions = function () {\n return this.interactions;\n };\n /**\n * Get the layergroup associated with this map.\n * @return {LayerGroup} A layer group containing the layers in this map.\n * @observable\n * @api\n */\n PluggableMap.prototype.getLayerGroup = function () {\n return (\n /** @type {LayerGroup} */ (this.get(MapProperty.LAYERGROUP)));\n };\n /**\n * Get the collection of layers associated with this map.\n * @return {!Collection} Layers.\n * @api\n */\n PluggableMap.prototype.getLayers = function () {\n var layers = this.getLayerGroup().getLayers();\n return layers;\n };\n /**\n * @return {boolean} Layers have sources that are still loading.\n */\n PluggableMap.prototype.getLoading = function () {\n var layerStatesArray = this.getLayerGroup().getLayerStatesArray();\n for (var i = 0, ii = layerStatesArray.length; i < ii; ++i) {\n var layer = layerStatesArray[i].layer;\n var source = /** @type {import(\"./layer/Layer.js\").default} */ (layer).getSource();\n if (source && source.loading) {\n return true;\n }\n }\n return false;\n };\n /**\n * Get the pixel for a coordinate. This takes a coordinate in the user\n * projection and returns the corresponding pixel.\n * @param {import(\"./coordinate.js\").Coordinate} coordinate A map coordinate.\n * @return {import(\"./pixel.js\").Pixel} A pixel position in the map viewport.\n * @api\n */\n PluggableMap.prototype.getPixelFromCoordinate = function (coordinate) {\n var viewCoordinate = fromUserCoordinate(coordinate, this.getView().getProjection());\n return this.getPixelFromCoordinateInternal(viewCoordinate);\n };\n /**\n * Get the pixel for a coordinate. This takes a coordinate in the map view\n * projection and returns the corresponding pixel.\n * @param {import(\"./coordinate.js\").Coordinate} coordinate A map coordinate.\n * @return {import(\"./pixel.js\").Pixel} A pixel position in the map viewport.\n */\n PluggableMap.prototype.getPixelFromCoordinateInternal = function (coordinate) {\n var frameState = this.frameState_;\n if (!frameState) {\n return null;\n }\n else {\n return applyTransform(frameState.coordinateToPixelTransform, coordinate.slice(0, 2));\n }\n };\n /**\n * Get the map renderer.\n * @return {import(\"./renderer/Map.js\").default} Renderer\n */\n PluggableMap.prototype.getRenderer = function () {\n return this.renderer_;\n };\n /**\n * Get the size of this map.\n * @return {import(\"./size.js\").Size|undefined} The size in pixels of the map in the DOM.\n * @observable\n * @api\n */\n PluggableMap.prototype.getSize = function () {\n return (\n /** @type {import(\"./size.js\").Size|undefined} */ (this.get(MapProperty.SIZE)));\n };\n /**\n * Get the view associated with this map. A view manages properties such as\n * center and resolution.\n * @return {View} The view that controls this map.\n * @observable\n * @api\n */\n PluggableMap.prototype.getView = function () {\n return (\n /** @type {View} */ (this.get(MapProperty.VIEW)));\n };\n /**\n * Get the element that serves as the map viewport.\n * @return {HTMLElement} Viewport.\n * @api\n */\n PluggableMap.prototype.getViewport = function () {\n return this.viewport_;\n };\n /**\n * Get the element that serves as the container for overlays. Elements added to\n * this container will let mousedown and touchstart events through to the map,\n * so clicks and gestures on an overlay will trigger {@link module:ol/MapBrowserEvent~MapBrowserEvent}\n * events.\n * @return {!HTMLElement} The map's overlay container.\n */\n PluggableMap.prototype.getOverlayContainer = function () {\n return this.overlayContainer_;\n };\n /**\n * Get the element that serves as a container for overlays that don't allow\n * event propagation. Elements added to this container won't let mousedown and\n * touchstart events through to the map, so clicks and gestures on an overlay\n * don't trigger any {@link module:ol/MapBrowserEvent~MapBrowserEvent}.\n * @return {!HTMLElement} The map's overlay container that stops events.\n */\n PluggableMap.prototype.getOverlayContainerStopEvent = function () {\n return this.overlayContainerStopEvent_;\n };\n /**\n * @param {import(\"./Tile.js\").default} tile Tile.\n * @param {string} tileSourceKey Tile source key.\n * @param {import(\"./coordinate.js\").Coordinate} tileCenter Tile center.\n * @param {number} tileResolution Tile resolution.\n * @return {number} Tile priority.\n */\n PluggableMap.prototype.getTilePriority = function (tile, tileSourceKey, tileCenter, tileResolution) {\n // Filter out tiles at higher zoom levels than the current zoom level, or that\n // are outside the visible extent.\n var frameState = this.frameState_;\n if (!frameState || !(tileSourceKey in frameState.wantedTiles)) {\n return DROP;\n }\n if (!frameState.wantedTiles[tileSourceKey][tile.getKey()]) {\n return DROP;\n }\n // Prioritize the highest zoom level tiles closest to the focus.\n // Tiles at higher zoom levels are prioritized using Math.log(tileResolution).\n // Within a zoom level, tiles are prioritized by the distance in pixels between\n // the center of the tile and the center of the viewport. The factor of 65536\n // means that the prioritization should behave as desired for tiles up to\n // 65536 * Math.log(2) = 45426 pixels from the focus.\n var center = frameState.viewState.center;\n var deltaX = tileCenter[0] - center[0];\n var deltaY = tileCenter[1] - center[1];\n return 65536 * Math.log(tileResolution) +\n Math.sqrt(deltaX * deltaX + deltaY * deltaY) / tileResolution;\n };\n /**\n * @param {Event} browserEvent Browser event.\n * @param {string=} opt_type Type.\n */\n PluggableMap.prototype.handleBrowserEvent = function (browserEvent, opt_type) {\n var type = opt_type || browserEvent.type;\n var mapBrowserEvent = new MapBrowserEvent(type, this, browserEvent);\n this.handleMapBrowserEvent(mapBrowserEvent);\n };\n /**\n * @param {MapBrowserEvent} mapBrowserEvent The event to handle.\n */\n PluggableMap.prototype.handleMapBrowserEvent = function (mapBrowserEvent) {\n if (!this.frameState_) {\n // With no view defined, we cannot translate pixels into geographical\n // coordinates so interactions cannot be used.\n return;\n }\n var target = /** @type {Node} */ (mapBrowserEvent.originalEvent.target);\n if (!mapBrowserEvent.dragging) {\n if (this.overlayContainerStopEvent_.contains(target) || !document.body.contains(target)) {\n // Abort if the event target is a child of the container that doesn't allow\n // event propagation or is no longer in the page. It's possible for the target to no longer\n // be in the page if it has been removed in an event listener, this might happen in a Control\n // that recreates it's content based on user interaction either manually or via a render\n // in something like https://reactjs.org/\n return;\n }\n }\n mapBrowserEvent.frameState = this.frameState_;\n var interactionsArray = this.getInteractions().getArray();\n if (this.dispatchEvent(mapBrowserEvent) !== false) {\n for (var i = interactionsArray.length - 1; i >= 0; i--) {\n var interaction = interactionsArray[i];\n if (!interaction.getActive()) {\n continue;\n }\n var cont = interaction.handleEvent(mapBrowserEvent);\n if (!cont) {\n break;\n }\n }\n }\n };\n /**\n * @protected\n */\n PluggableMap.prototype.handlePostRender = function () {\n var frameState = this.frameState_;\n // Manage the tile queue\n // Image loads are expensive and a limited resource, so try to use them\n // efficiently:\n // * When the view is static we allow a large number of parallel tile loads\n // to complete the frame as quickly as possible.\n // * When animating or interacting, image loads can cause janks, so we reduce\n // the maximum number of loads per frame and limit the number of parallel\n // tile loads to remain reactive to view changes and to reduce the chance of\n // loading tiles that will quickly disappear from view.\n var tileQueue = this.tileQueue_;\n if (!tileQueue.isEmpty()) {\n var maxTotalLoading = this.maxTilesLoading_;\n var maxNewLoads = maxTotalLoading;\n if (frameState) {\n var hints = frameState.viewHints;\n if (hints[ViewHint.ANIMATING] || hints[ViewHint.INTERACTING]) {\n var lowOnFrameBudget = !IMAGE_DECODE && Date.now() - frameState.time > 8;\n maxTotalLoading = lowOnFrameBudget ? 0 : 8;\n maxNewLoads = lowOnFrameBudget ? 0 : 2;\n }\n }\n if (tileQueue.getTilesLoading() < maxTotalLoading) {\n tileQueue.reprioritize(); // FIXME only call if view has changed\n tileQueue.loadMoreTiles(maxTotalLoading, maxNewLoads);\n }\n }\n if (frameState && this.hasListener(RenderEventType.RENDERCOMPLETE) && !frameState.animate &&\n !this.tileQueue_.getTilesLoading() && !this.getLoading()) {\n this.renderer_.dispatchRenderEvent(RenderEventType.RENDERCOMPLETE, frameState);\n }\n var postRenderFunctions = this.postRenderFunctions_;\n for (var i = 0, ii = postRenderFunctions.length; i < ii; ++i) {\n postRenderFunctions[i](this, frameState);\n }\n postRenderFunctions.length = 0;\n };\n /**\n * @private\n */\n PluggableMap.prototype.handleSizeChanged_ = function () {\n if (this.getView()) {\n this.getView().resolveConstraints(0);\n }\n this.render();\n };\n /**\n * @private\n */\n PluggableMap.prototype.handleTargetChanged_ = function () {\n // target may be undefined, null, a string or an Element.\n // If it's a string we convert it to an Element before proceeding.\n // If it's not now an Element we remove the viewport from the DOM.\n // If it's an Element we append the viewport element to it.\n var targetElement;\n if (this.getTarget()) {\n targetElement = this.getTargetElement();\n }\n if (this.keyHandlerKeys_) {\n for (var i = 0, ii = this.keyHandlerKeys_.length; i < ii; ++i) {\n unlistenByKey(this.keyHandlerKeys_[i]);\n }\n this.keyHandlerKeys_ = null;\n }\n if (!targetElement) {\n if (this.renderer_) {\n clearTimeout(this.postRenderTimeoutHandle_);\n this.postRenderFunctions_.length = 0;\n this.renderer_.dispose();\n this.renderer_ = null;\n }\n if (this.animationDelayKey_) {\n cancelAnimationFrame(this.animationDelayKey_);\n this.animationDelayKey_ = undefined;\n }\n removeNode(this.viewport_);\n if (this.handleResize_ !== undefined) {\n removeEventListener(EventType.RESIZE, this.handleResize_, false);\n this.handleResize_ = undefined;\n }\n }\n else {\n targetElement.appendChild(this.viewport_);\n if (!this.renderer_) {\n this.renderer_ = this.createRenderer();\n }\n var keyboardEventTarget = !this.keyboardEventTarget_ ?\n targetElement : this.keyboardEventTarget_;\n this.keyHandlerKeys_ = [\n listen(keyboardEventTarget, EventType.KEYDOWN, this.handleBrowserEvent, this),\n listen(keyboardEventTarget, EventType.KEYPRESS, this.handleBrowserEvent, this)\n ];\n if (!this.handleResize_) {\n this.handleResize_ = this.updateSize.bind(this);\n window.addEventListener(EventType.RESIZE, this.handleResize_, false);\n }\n }\n this.updateSize();\n // updateSize calls setSize, so no need to call this.render\n // ourselves here.\n };\n /**\n * @private\n */\n PluggableMap.prototype.handleTileChange_ = function () {\n this.render();\n };\n /**\n * @private\n */\n PluggableMap.prototype.handleViewPropertyChanged_ = function () {\n this.render();\n };\n /**\n * @private\n */\n PluggableMap.prototype.handleViewChanged_ = function () {\n if (this.viewPropertyListenerKey_) {\n unlistenByKey(this.viewPropertyListenerKey_);\n this.viewPropertyListenerKey_ = null;\n }\n if (this.viewChangeListenerKey_) {\n unlistenByKey(this.viewChangeListenerKey_);\n this.viewChangeListenerKey_ = null;\n }\n var view = this.getView();\n if (view) {\n this.updateViewportSize_();\n this.viewPropertyListenerKey_ = listen(view, ObjectEventType.PROPERTYCHANGE, this.handleViewPropertyChanged_, this);\n this.viewChangeListenerKey_ = listen(view, EventType.CHANGE, this.handleViewPropertyChanged_, this);\n view.resolveConstraints(0);\n }\n this.render();\n };\n /**\n * @private\n */\n PluggableMap.prototype.handleLayerGroupChanged_ = function () {\n if (this.layerGroupPropertyListenerKeys_) {\n this.layerGroupPropertyListenerKeys_.forEach(unlistenByKey);\n this.layerGroupPropertyListenerKeys_ = null;\n }\n var layerGroup = this.getLayerGroup();\n if (layerGroup) {\n this.layerGroupPropertyListenerKeys_ = [\n listen(layerGroup, ObjectEventType.PROPERTYCHANGE, this.render, this),\n listen(layerGroup, EventType.CHANGE, this.render, this)\n ];\n }\n this.render();\n };\n /**\n * @return {boolean} Is rendered.\n */\n PluggableMap.prototype.isRendered = function () {\n return !!this.frameState_;\n };\n /**\n * Requests an immediate render in a synchronous manner.\n * @api\n */\n PluggableMap.prototype.renderSync = function () {\n if (this.animationDelayKey_) {\n cancelAnimationFrame(this.animationDelayKey_);\n }\n this.animationDelay_();\n };\n /**\n * Redraws all text after new fonts have loaded\n */\n PluggableMap.prototype.redrawText = function () {\n var layerStates = this.getLayerGroup().getLayerStatesArray();\n for (var i = 0, ii = layerStates.length; i < ii; ++i) {\n var layer = layerStates[i].layer;\n if (layer.hasRenderer()) {\n layer.getRenderer().handleFontsChanged();\n }\n }\n };\n /**\n * Request a map rendering (at the next animation frame).\n * @api\n */\n PluggableMap.prototype.render = function () {\n if (this.renderer_ && this.animationDelayKey_ === undefined) {\n this.animationDelayKey_ = requestAnimationFrame(this.animationDelay_);\n }\n };\n /**\n * Remove the given control from the map.\n * @param {import(\"./control/Control.js\").default} control Control.\n * @return {import(\"./control/Control.js\").default|undefined} The removed control (or undefined\n * if the control was not found).\n * @api\n */\n PluggableMap.prototype.removeControl = function (control) {\n return this.getControls().remove(control);\n };\n /**\n * Remove the given interaction from the map.\n * @param {import(\"./interaction/Interaction.js\").default} interaction Interaction to remove.\n * @return {import(\"./interaction/Interaction.js\").default|undefined} The removed interaction (or\n * undefined if the interaction was not found).\n * @api\n */\n PluggableMap.prototype.removeInteraction = function (interaction) {\n return this.getInteractions().remove(interaction);\n };\n /**\n * Removes the given layer from the map.\n * @param {import(\"./layer/Base.js\").default} layer Layer.\n * @return {import(\"./layer/Base.js\").default|undefined} The removed layer (or undefined if the\n * layer was not found).\n * @api\n */\n PluggableMap.prototype.removeLayer = function (layer) {\n var layers = this.getLayerGroup().getLayers();\n return layers.remove(layer);\n };\n /**\n * Remove the given overlay from the map.\n * @param {import(\"./Overlay.js\").default} overlay Overlay.\n * @return {import(\"./Overlay.js\").default|undefined} The removed overlay (or undefined\n * if the overlay was not found).\n * @api\n */\n PluggableMap.prototype.removeOverlay = function (overlay) {\n return this.getOverlays().remove(overlay);\n };\n /**\n * @param {number} time Time.\n * @private\n */\n PluggableMap.prototype.renderFrame_ = function (time) {\n var size = this.getSize();\n var view = this.getView();\n var previousFrameState = this.frameState_;\n /** @type {?FrameState} */\n var frameState = null;\n if (size !== undefined && hasArea(size) && view && view.isDef()) {\n var viewHints = view.getHints(this.frameState_ ? this.frameState_.viewHints : undefined);\n var viewState = view.getState();\n frameState = {\n animate: false,\n coordinateToPixelTransform: this.coordinateToPixelTransform_,\n declutterItems: previousFrameState ? previousFrameState.declutterItems : [],\n extent: getForViewAndSize(viewState.center, viewState.resolution, viewState.rotation, size),\n index: this.frameIndex_++,\n layerIndex: 0,\n layerStatesArray: this.getLayerGroup().getLayerStatesArray(),\n pixelRatio: this.pixelRatio_,\n pixelToCoordinateTransform: this.pixelToCoordinateTransform_,\n postRenderFunctions: [],\n size: size,\n tileQueue: this.tileQueue_,\n time: time,\n usedTiles: {},\n viewState: viewState,\n viewHints: viewHints,\n wantedTiles: {}\n };\n }\n this.frameState_ = frameState;\n this.renderer_.renderFrame(frameState);\n if (frameState) {\n if (frameState.animate) {\n this.render();\n }\n Array.prototype.push.apply(this.postRenderFunctions_, frameState.postRenderFunctions);\n if (previousFrameState) {\n var moveStart = !this.previousExtent_ ||\n (!isEmpty(this.previousExtent_) &&\n !equals(frameState.extent, this.previousExtent_));\n if (moveStart) {\n this.dispatchEvent(new MapEvent(MapEventType.MOVESTART, this, previousFrameState));\n this.previousExtent_ = createOrUpdateEmpty(this.previousExtent_);\n }\n }\n var idle = this.previousExtent_ &&\n !frameState.viewHints[ViewHint.ANIMATING] &&\n !frameState.viewHints[ViewHint.INTERACTING] &&\n !equals(frameState.extent, this.previousExtent_);\n if (idle) {\n this.dispatchEvent(new MapEvent(MapEventType.MOVEEND, this, frameState));\n clone(frameState.extent, this.previousExtent_);\n }\n }\n this.dispatchEvent(new MapEvent(MapEventType.POSTRENDER, this, frameState));\n this.postRenderTimeoutHandle_ = setTimeout(this.handlePostRender.bind(this), 0);\n };\n /**\n * Sets the layergroup of this map.\n * @param {LayerGroup} layerGroup A layer group containing the layers in this map.\n * @observable\n * @api\n */\n PluggableMap.prototype.setLayerGroup = function (layerGroup) {\n this.set(MapProperty.LAYERGROUP, layerGroup);\n };\n /**\n * Set the size of this map.\n * @param {import(\"./size.js\").Size|undefined} size The size in pixels of the map in the DOM.\n * @observable\n * @api\n */\n PluggableMap.prototype.setSize = function (size) {\n this.set(MapProperty.SIZE, size);\n };\n /**\n * Set the target element to render this map into.\n * @param {HTMLElement|string|undefined} target The Element or id of the Element\n * that the map is rendered in.\n * @observable\n * @api\n */\n PluggableMap.prototype.setTarget = function (target) {\n this.set(MapProperty.TARGET, target);\n };\n /**\n * Set the view for this map.\n * @param {View} view The view that controls this map.\n * @observable\n * @api\n */\n PluggableMap.prototype.setView = function (view) {\n this.set(MapProperty.VIEW, view);\n };\n /**\n * Force a recalculation of the map viewport size. This should be called when\n * third-party code changes the size of the map viewport.\n * @api\n */\n PluggableMap.prototype.updateSize = function () {\n var targetElement = this.getTargetElement();\n if (!targetElement) {\n this.setSize(undefined);\n }\n else {\n var computedStyle = getComputedStyle(targetElement);\n this.setSize([\n targetElement.offsetWidth -\n parseFloat(computedStyle['borderLeftWidth']) -\n parseFloat(computedStyle['paddingLeft']) -\n parseFloat(computedStyle['paddingRight']) -\n parseFloat(computedStyle['borderRightWidth']),\n targetElement.offsetHeight -\n parseFloat(computedStyle['borderTopWidth']) -\n parseFloat(computedStyle['paddingTop']) -\n parseFloat(computedStyle['paddingBottom']) -\n parseFloat(computedStyle['borderBottomWidth'])\n ]);\n }\n this.updateViewportSize_();\n };\n /**\n * Recomputes the viewport size and save it on the view object (if any)\n * @private\n */\n PluggableMap.prototype.updateViewportSize_ = function () {\n var view = this.getView();\n if (view) {\n var size = undefined;\n var computedStyle = getComputedStyle(this.viewport_);\n if (computedStyle.width && computedStyle.height) {\n size = [\n parseInt(computedStyle.width, 10),\n parseInt(computedStyle.height, 10)\n ];\n }\n view.setViewportSize(size);\n }\n };\n return PluggableMap;\n}(BaseObject));\n/**\n * @param {MapOptions} options Map options.\n * @return {MapOptionsInternal} Internal map options.\n */\nfunction createOptionsInternal(options) {\n /**\n * @type {HTMLElement|Document}\n */\n var keyboardEventTarget = null;\n if (options.keyboardEventTarget !== undefined) {\n keyboardEventTarget = typeof options.keyboardEventTarget === 'string' ?\n document.getElementById(options.keyboardEventTarget) :\n options.keyboardEventTarget;\n }\n /**\n * @type {Object}\n */\n var values = {};\n var layerGroup = options.layers && typeof /** @type {?} */ (options.layers).getLayers === 'function' ?\n /** @type {LayerGroup} */ (options.layers) : new LayerGroup({ layers: /** @type {Collection} */ (options.layers) });\n values[MapProperty.LAYERGROUP] = layerGroup;\n values[MapProperty.TARGET] = options.target;\n values[MapProperty.VIEW] = options.view !== undefined ?\n options.view : new View();\n var controls;\n if (options.controls !== undefined) {\n if (Array.isArray(options.controls)) {\n controls = new Collection(options.controls.slice());\n }\n else {\n assert(typeof /** @type {?} */ (options.controls).getArray === 'function', 47); // Expected `controls` to be an array or an `import(\"./Collection.js\").Collection`\n controls = /** @type {Collection} */ (options.controls);\n }\n }\n var interactions;\n if (options.interactions !== undefined) {\n if (Array.isArray(options.interactions)) {\n interactions = new Collection(options.interactions.slice());\n }\n else {\n assert(typeof /** @type {?} */ (options.interactions).getArray === 'function', 48); // Expected `interactions` to be an array or an `import(\"./Collection.js\").Collection`\n interactions = /** @type {Collection} */ (options.interactions);\n }\n }\n var overlays;\n if (options.overlays !== undefined) {\n if (Array.isArray(options.overlays)) {\n overlays = new Collection(options.overlays.slice());\n }\n else {\n assert(typeof /** @type {?} */ (options.overlays).getArray === 'function', 49); // Expected `overlays` to be an array or an `import(\"./Collection.js\").Collection`\n overlays = options.overlays;\n }\n }\n else {\n overlays = new Collection();\n }\n return {\n controls: controls,\n interactions: interactions,\n keyboardEventTarget: keyboardEventTarget,\n overlays: overlays,\n values: values\n };\n}\nexport default PluggableMap;\n//# sourceMappingURL=PluggableMap.js.map","/**\n * @module ol/css\n */\n/**\n * @typedef {Object} FontParameters\n * @property {Array} families\n * @property {string} style\n * @property {string} weight\n */\n/**\n * The CSS class for hidden feature.\n *\n * @const\n * @type {string}\n */\nexport var CLASS_HIDDEN = 'ol-hidden';\n/**\n * The CSS class that we'll give the DOM elements to have them selectable.\n *\n * @const\n * @type {string}\n */\nexport var CLASS_SELECTABLE = 'ol-selectable';\n/**\n * The CSS class that we'll give the DOM elements to have them unselectable.\n *\n * @const\n * @type {string}\n */\nexport var CLASS_UNSELECTABLE = 'ol-unselectable';\n/**\n * The CSS class for unsupported feature.\n *\n * @const\n * @type {string}\n */\nexport var CLASS_UNSUPPORTED = 'ol-unsupported';\n/**\n * The CSS class for controls.\n *\n * @const\n * @type {string}\n */\nexport var CLASS_CONTROL = 'ol-control';\n/**\n * The CSS class that we'll give the DOM elements that are collapsed, i.e.\n * to those elements which usually can be expanded.\n *\n * @const\n * @type {string}\n */\nexport var CLASS_COLLAPSED = 'ol-collapsed';\n/**\n * Get the list of font families from a font spec. Note that this doesn't work\n * for font families that have commas in them.\n * @param {string} The CSS font property.\n * @return {FontParameters} The font families (or null if the input spec is invalid).\n */\nexport var getFontParameters = (function () {\n /**\n * @type {CSSStyleDeclaration}\n */\n var style;\n /**\n * @type {Object}\n */\n var cache = {};\n return function (font) {\n if (!style) {\n style = document.createElement('div').style;\n }\n if (!(font in cache)) {\n style.font = font;\n var family = style.fontFamily;\n var fontWeight = style.fontWeight;\n var fontStyle = style.fontStyle;\n style.font = '';\n if (!family) {\n return null;\n }\n var families = family.split(/,\\s?/);\n cache[font] = {\n families: families,\n weight: fontWeight,\n style: fontStyle\n };\n }\n return cache[font];\n };\n})();\n//# sourceMappingURL=css.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/control/Control\n */\nimport { VOID } from '../functions.js';\nimport MapEventType from '../MapEventType.js';\nimport BaseObject from '../Object.js';\nimport { removeNode } from '../dom.js';\nimport { listen, unlistenByKey } from '../events.js';\n/**\n * @typedef {Object} Options\n * @property {HTMLElement} [element] The element is the control's\n * container element. This only needs to be specified if you're developing\n * a custom control.\n * @property {function(import(\"../MapEvent.js\").default)} [render] Function called when\n * the control should be re-rendered. This is called in a `requestAnimationFrame`\n * callback.\n * @property {HTMLElement|string} [target] Specify a target if you want\n * the control to be rendered outside of the map's viewport.\n */\n/**\n * @classdesc\n * A control is a visible widget with a DOM element in a fixed position on the\n * screen. They can involve user input (buttons), or be informational only;\n * the position is determined using CSS. By default these are placed in the\n * container with CSS class name `ol-overlaycontainer-stopevent`, but can use\n * any outside DOM element.\n *\n * This is the base class for controls. You can use it for simple custom\n * controls by creating the element with listeners, creating an instance:\n * ```js\n * var myControl = new Control({element: myElement});\n * ```\n * and then adding this to the map.\n *\n * The main advantage of having this as a control rather than a simple separate\n * DOM element is that preventing propagation is handled for you. Controls\n * will also be objects in a {@link module:ol/Collection~Collection}, so you can use their methods.\n *\n * You can also extend this base for your own control class. See\n * examples/custom-controls for an example of how to do this.\n *\n * @api\n */\nvar Control = /** @class */ (function (_super) {\n __extends(Control, _super);\n /**\n * @param {Options} options Control options.\n */\n function Control(options) {\n var _this = _super.call(this) || this;\n /**\n * @protected\n * @type {HTMLElement}\n */\n _this.element = options.element ? options.element : null;\n /**\n * @private\n * @type {HTMLElement}\n */\n _this.target_ = null;\n /**\n * @private\n * @type {import(\"../PluggableMap.js\").default}\n */\n _this.map_ = null;\n /**\n * @protected\n * @type {!Array}\n */\n _this.listenerKeys = [];\n /**\n * @private\n * @type {function(import(\"../MapEvent.js\").default): void}\n */\n _this.render_ = options.render ? options.render : VOID;\n if (options.target) {\n _this.setTarget(options.target);\n }\n return _this;\n }\n /**\n * @inheritDoc\n */\n Control.prototype.disposeInternal = function () {\n removeNode(this.element);\n _super.prototype.disposeInternal.call(this);\n };\n /**\n * Get the map associated with this control.\n * @return {import(\"../PluggableMap.js\").default} Map.\n * @api\n */\n Control.prototype.getMap = function () {\n return this.map_;\n };\n /**\n * Remove the control from its current map and attach it to the new map.\n * Subclasses may set up event handlers to get notified about changes to\n * the map here.\n * @param {import(\"../PluggableMap.js\").default} map Map.\n * @api\n */\n Control.prototype.setMap = function (map) {\n if (this.map_) {\n removeNode(this.element);\n }\n for (var i = 0, ii = this.listenerKeys.length; i < ii; ++i) {\n unlistenByKey(this.listenerKeys[i]);\n }\n this.listenerKeys.length = 0;\n this.map_ = map;\n if (this.map_) {\n var target = this.target_ ?\n this.target_ : map.getOverlayContainerStopEvent();\n target.appendChild(this.element);\n if (this.render !== VOID) {\n this.listenerKeys.push(listen(map, MapEventType.POSTRENDER, this.render, this));\n }\n map.render();\n }\n };\n /**\n * Update the projection. Rendering of the coordinates is done in\n * `handleMouseMove` and `handleMouseUp`.\n * @param {import(\"../MapEvent.js\").default} mapEvent Map event.\n * @api\n */\n Control.prototype.render = function (mapEvent) {\n this.render_.call(this, mapEvent);\n };\n /**\n * This function is used to set a target element for the control. It has no\n * effect if it is called after the control has been added to the map (i.e.\n * after `setMap` is called on the control). If no `target` is set in the\n * options passed to the control constructor and if `setTarget` is not called\n * then the control is added to the map's overlay container.\n * @param {HTMLElement|string} target Target.\n * @api\n */\n Control.prototype.setTarget = function (target) {\n this.target_ = typeof target === 'string' ?\n document.getElementById(target) :\n target;\n };\n return Control;\n}(BaseObject));\nexport default Control;\n//# sourceMappingURL=Control.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/layer/Layer\n */\nimport { listen, unlistenByKey } from '../events.js';\nimport EventType from '../events/EventType.js';\nimport { getChangeEventType } from '../Object.js';\nimport BaseLayer from './Base.js';\nimport LayerProperty from './Property.js';\nimport { assign } from '../obj.js';\nimport RenderEventType from '../render/EventType.js';\nimport SourceState from '../source/State.js';\nimport { assert } from '../asserts.js';\n/**\n * @typedef {function(import(\"../PluggableMap.js\").FrameState):HTMLElement} RenderFunction\n */\n/**\n * @typedef {Object} Options\n * @property {string} [className='ol-layer'] A CSS class name to set to the layer element.\n * @property {number} [opacity=1] Opacity (0, 1).\n * @property {boolean} [visible=true] Visibility.\n * @property {import(\"../extent.js\").Extent} [extent] The bounding extent for layer rendering. The layer will not be\n * rendered outside of this extent.\n * @property {number} [zIndex] The z-index for layer rendering. At rendering time, the layers\n * will be ordered, first by Z-index and then by position. When `undefined`, a `zIndex` of 0 is assumed\n * for layers that are added to the map's `layers` collection, or `Infinity` when the layer's `setMap()`\n * method was used.\n * @property {number} [minResolution] The minimum resolution (inclusive) at which this layer will be\n * visible.\n * @property {number} [maxResolution] The maximum resolution (exclusive) below which this layer will\n * be visible.\n * @property {import(\"../source/Source.js\").default} [source] Source for this layer. If not provided to the constructor,\n * the source can be set by calling {@link module:ol/layer/Layer#setSource layer.setSource(source)} after\n * construction.\n * @property {import(\"../PluggableMap.js\").default} [map] Map.\n * @property {RenderFunction} [render] Render function. Takes the frame state as input and is expected to return an\n * HTML element. Will overwrite the default rendering for the layer.\n */\n/**\n * @typedef {Object} State\n * @property {import(\"./Base.js\").default} layer\n * @property {number} opacity Opacity, the value is rounded to two digits to appear after the decimal point.\n * @property {SourceState} sourceState\n * @property {boolean} visible\n * @property {boolean} managed\n * @property {import(\"../extent.js\").Extent} [extent]\n * @property {number} zIndex\n * @property {number} maxResolution\n * @property {number} minResolution\n * @property {number} minZoom\n * @property {number} maxZoom\n */\n/**\n * @classdesc\n * Base class from which all layer types are derived. This should only be instantiated\n * in the case where a custom layer is be added to the map with a custom `render` function.\n * Such a function can be specified in the `options` object, and is expected to return an HTML element.\n *\n * A visual representation of raster or vector map data.\n * Layers group together those properties that pertain to how the data is to be\n * displayed, irrespective of the source of that data.\n *\n * Layers are usually added to a map with {@link module:ol/Map#addLayer}. Components\n * like {@link module:ol/interaction/Select~Select} use unmanaged layers\n * internally. These unmanaged layers are associated with the map using\n * {@link module:ol/layer/Layer~Layer#setMap} instead.\n *\n * A generic `change` event is fired when the state of the source changes.\n *\n * Please note that for performance reasons several layers might get rendered to\n * the same HTML element, which will cause {@link module:ol/Map~Map#forEachLayerAtPixel} to\n * give false positives. To avoid this, apply different `className` properties to the\n * layers at creation time.\n *\n * @fires import(\"../render/Event.js\").RenderEvent#prerender\n * @fires import(\"../render/Event.js\").RenderEvent#postrender\n *\n * @template {import(\"../source/Source.js\").default} SourceType\n * @api\n */\nvar Layer = /** @class */ (function (_super) {\n __extends(Layer, _super);\n /**\n * @param {Options} options Layer options.\n */\n function Layer(options) {\n var _this = this;\n var baseOptions = assign({}, options);\n delete baseOptions.source;\n _this = _super.call(this, baseOptions) || this;\n /**\n * @private\n * @type {?import(\"../events.js\").EventsKey}\n */\n _this.mapPrecomposeKey_ = null;\n /**\n * @private\n * @type {?import(\"../events.js\").EventsKey}\n */\n _this.mapRenderKey_ = null;\n /**\n * @private\n * @type {?import(\"../events.js\").EventsKey}\n */\n _this.sourceChangeKey_ = null;\n /**\n * @private\n * @type {import(\"../renderer/Layer.js\").default}\n */\n _this.renderer_ = null;\n // Overwrite default render method with a custom one\n if (options.render) {\n _this.render = options.render;\n }\n if (options.map) {\n _this.setMap(options.map);\n }\n _this.addEventListener(getChangeEventType(LayerProperty.SOURCE), _this.handleSourcePropertyChange_);\n var source = options.source ? /** @type {SourceType} */ (options.source) : null;\n _this.setSource(source);\n return _this;\n }\n /**\n * @inheritDoc\n */\n Layer.prototype.getLayersArray = function (opt_array) {\n var array = opt_array ? opt_array : [];\n array.push(this);\n return array;\n };\n /**\n * @inheritDoc\n */\n Layer.prototype.getLayerStatesArray = function (opt_states) {\n var states = opt_states ? opt_states : [];\n states.push(this.getLayerState());\n return states;\n };\n /**\n * Get the layer source.\n * @return {SourceType} The layer source (or `null` if not yet set).\n * @observable\n * @api\n */\n Layer.prototype.getSource = function () {\n return /** @type {SourceType} */ (this.get(LayerProperty.SOURCE)) || null;\n };\n /**\n * @inheritDoc\n */\n Layer.prototype.getSourceState = function () {\n var source = this.getSource();\n return !source ? SourceState.UNDEFINED : source.getState();\n };\n /**\n * @private\n */\n Layer.prototype.handleSourceChange_ = function () {\n this.changed();\n };\n /**\n * @private\n */\n Layer.prototype.handleSourcePropertyChange_ = function () {\n if (this.sourceChangeKey_) {\n unlistenByKey(this.sourceChangeKey_);\n this.sourceChangeKey_ = null;\n }\n var source = this.getSource();\n if (source) {\n this.sourceChangeKey_ = listen(source, EventType.CHANGE, this.handleSourceChange_, this);\n }\n this.changed();\n };\n /**\n * @param {import(\"../pixel\").Pixel} pixel Pixel.\n * @return {Promise>} Promise that resolves with\n * an array of features.\n */\n Layer.prototype.getFeatures = function (pixel) {\n return this.renderer_.getFeatures(pixel);\n };\n /**\n * In charge to manage the rendering of the layer. One layer type is\n * bounded with one layer renderer.\n * @param {?import(\"../PluggableMap.js\").FrameState} frameState Frame state.\n * @param {HTMLElement} target Target which the renderer may (but need not) use\n * for rendering its content.\n * @return {HTMLElement} The rendered element.\n */\n Layer.prototype.render = function (frameState, target) {\n var layerRenderer = this.getRenderer();\n if (layerRenderer.prepareFrame(frameState)) {\n return layerRenderer.renderFrame(frameState, target);\n }\n };\n /**\n * Sets the layer to be rendered on top of other layers on a map. The map will\n * not manage this layer in its layers collection, and the callback in\n * {@link module:ol/Map#forEachLayerAtPixel} will receive `null` as layer. This\n * is useful for temporary layers. To remove an unmanaged layer from the map,\n * use `#setMap(null)`.\n *\n * To add the layer to a map and have it managed by the map, use\n * {@link module:ol/Map#addLayer} instead.\n * @param {import(\"../PluggableMap.js\").default} map Map.\n * @api\n */\n Layer.prototype.setMap = function (map) {\n if (this.mapPrecomposeKey_) {\n unlistenByKey(this.mapPrecomposeKey_);\n this.mapPrecomposeKey_ = null;\n }\n if (!map) {\n this.changed();\n }\n if (this.mapRenderKey_) {\n unlistenByKey(this.mapRenderKey_);\n this.mapRenderKey_ = null;\n }\n if (map) {\n this.mapPrecomposeKey_ = listen(map, RenderEventType.PRECOMPOSE, function (evt) {\n var renderEvent = /** @type {import(\"../render/Event.js\").default} */ (evt);\n var layerStatesArray = renderEvent.frameState.layerStatesArray;\n var layerState = this.getLayerState(false);\n // A layer can only be added to the map once. Use either `layer.setMap()` or `map.addLayer()`, not both.\n assert(!layerStatesArray.some(function (arrayLayerState) {\n return arrayLayerState.layer === layerState.layer;\n }), 67);\n layerStatesArray.push(layerState);\n }, this);\n this.mapRenderKey_ = listen(this, EventType.CHANGE, map.render, map);\n this.changed();\n }\n };\n /**\n * Set the layer source.\n * @param {SourceType} source The layer source.\n * @observable\n * @api\n */\n Layer.prototype.setSource = function (source) {\n this.set(LayerProperty.SOURCE, source);\n };\n /**\n * Get the renderer for this layer.\n * @return {import(\"../renderer/Layer.js\").default} The layer renderer.\n */\n Layer.prototype.getRenderer = function () {\n if (!this.renderer_) {\n this.renderer_ = this.createRenderer();\n }\n return this.renderer_;\n };\n /**\n * @return {boolean} The layer has a renderer.\n */\n Layer.prototype.hasRenderer = function () {\n return !!this.renderer_;\n };\n /**\n * Create a renderer for this layer.\n * @return {import(\"../renderer/Layer.js\").default} A layer renderer.\n * @protected\n */\n Layer.prototype.createRenderer = function () {\n return null;\n };\n /**\n * @inheritDoc\n */\n Layer.prototype.disposeInternal = function () {\n this.setSource(null);\n _super.prototype.disposeInternal.call(this);\n };\n return Layer;\n}(BaseLayer));\n/**\n * Return `true` if the layer is visible and if the provided view state\n * has resolution and zoom levels that are in range of the layer's min/max.\n * @param {State} layerState Layer state.\n * @param {import(\"../View.js\").State} viewState View state.\n * @return {boolean} The layer is visible at the given view state.\n */\nexport function inView(layerState, viewState) {\n if (!layerState.visible) {\n return false;\n }\n var resolution = viewState.resolution;\n if (resolution < layerState.minResolution || resolution >= layerState.maxResolution) {\n return false;\n }\n var zoom = viewState.zoom;\n return zoom > layerState.minZoom && zoom <= layerState.maxZoom;\n}\nexport default Layer;\n//# sourceMappingURL=Layer.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/control/Attribution\n */\nimport { equals } from '../array.js';\nimport Control from './Control.js';\nimport { CLASS_CONTROL, CLASS_UNSELECTABLE, CLASS_COLLAPSED } from '../css.js';\nimport { removeChildren, replaceNode } from '../dom.js';\nimport EventType from '../events/EventType.js';\nimport { inView } from '../layer/Layer.js';\n/**\n * @typedef {Object} Options\n * @property {string} [className='ol-attribution'] CSS class name.\n * @property {HTMLElement|string} [target] Specify a target if you\n * want the control to be rendered outside of the map's\n * viewport.\n * @property {boolean} [collapsible] Specify if attributions can\n * be collapsed. If not specified, sources control this behavior with their\n * `attributionsCollapsible` setting.\n * @property {boolean} [collapsed=true] Specify if attributions should\n * be collapsed at startup.\n * @property {string} [tipLabel='Attributions'] Text label to use for the button tip.\n * @property {string} [label='i'] Text label to use for the\n * collapsed attributions button.\n * Instead of text, also an element (e.g. a `span` element) can be used.\n * @property {string|HTMLElement} [collapseLabel='»'] Text label to use\n * for the expanded attributions button.\n * Instead of text, also an element (e.g. a `span` element) can be used.\n * @property {function(import(\"../MapEvent.js\").default)} [render] Function called when\n * the control should be re-rendered. This is called in a `requestAnimationFrame`\n * callback.\n */\n/**\n * @classdesc\n * Control to show all the attributions associated with the layer sources\n * in the map. This control is one of the default controls included in maps.\n * By default it will show in the bottom right portion of the map, but this can\n * be changed by using a css selector for `.ol-attribution`.\n *\n * @api\n */\nvar Attribution = /** @class */ (function (_super) {\n __extends(Attribution, _super);\n /**\n * @param {Options=} opt_options Attribution options.\n */\n function Attribution(opt_options) {\n var _this = this;\n var options = opt_options ? opt_options : {};\n _this = _super.call(this, {\n element: document.createElement('div'),\n render: options.render || render,\n target: options.target\n }) || this;\n /**\n * @private\n * @type {HTMLElement}\n */\n _this.ulElement_ = document.createElement('ul');\n /**\n * @private\n * @type {boolean}\n */\n _this.collapsed_ = options.collapsed !== undefined ? options.collapsed : true;\n /**\n * @private\n * @type {boolean}\n */\n _this.overrideCollapsible_ = options.collapsible !== undefined;\n /**\n * @private\n * @type {boolean}\n */\n _this.collapsible_ = options.collapsible !== undefined ?\n options.collapsible : true;\n if (!_this.collapsible_) {\n _this.collapsed_ = false;\n }\n var className = options.className !== undefined ? options.className : 'ol-attribution';\n var tipLabel = options.tipLabel !== undefined ? options.tipLabel : 'Attributions';\n var collapseLabel = options.collapseLabel !== undefined ? options.collapseLabel : '\\u00BB';\n if (typeof collapseLabel === 'string') {\n /**\n * @private\n * @type {HTMLElement}\n */\n _this.collapseLabel_ = document.createElement('span');\n _this.collapseLabel_.textContent = collapseLabel;\n }\n else {\n _this.collapseLabel_ = collapseLabel;\n }\n var label = options.label !== undefined ? options.label : 'i';\n if (typeof label === 'string') {\n /**\n * @private\n * @type {HTMLElement}\n */\n _this.label_ = document.createElement('span');\n _this.label_.textContent = label;\n }\n else {\n _this.label_ = label;\n }\n var activeLabel = (_this.collapsible_ && !_this.collapsed_) ?\n _this.collapseLabel_ : _this.label_;\n var button = document.createElement('button');\n button.setAttribute('type', 'button');\n button.title = tipLabel;\n button.appendChild(activeLabel);\n button.addEventListener(EventType.CLICK, _this.handleClick_.bind(_this), false);\n var cssClasses = className + ' ' + CLASS_UNSELECTABLE + ' ' + CLASS_CONTROL +\n (_this.collapsed_ && _this.collapsible_ ? ' ' + CLASS_COLLAPSED : '') +\n (_this.collapsible_ ? '' : ' ol-uncollapsible');\n var element = _this.element;\n element.className = cssClasses;\n element.appendChild(_this.ulElement_);\n element.appendChild(button);\n /**\n * A list of currently rendered resolutions.\n * @type {Array}\n * @private\n */\n _this.renderedAttributions_ = [];\n /**\n * @private\n * @type {boolean}\n */\n _this.renderedVisible_ = true;\n return _this;\n }\n /**\n * Collect a list of visible attributions and set the collapsible state.\n * @param {import(\"../PluggableMap.js\").FrameState} frameState Frame state.\n * @return {Array} Attributions.\n * @private\n */\n Attribution.prototype.collectSourceAttributions_ = function (frameState) {\n /**\n * Used to determine if an attribution already exists.\n * @type {!Object}\n */\n var lookup = {};\n /**\n * A list of visible attributions.\n * @type {Array}\n */\n var visibleAttributions = [];\n var layerStatesArray = frameState.layerStatesArray;\n for (var i = 0, ii = layerStatesArray.length; i < ii; ++i) {\n var layerState = layerStatesArray[i];\n if (!inView(layerState, frameState.viewState)) {\n continue;\n }\n var source = /** @type {import(\"../layer/Layer.js\").default} */ (layerState.layer).getSource();\n if (!source) {\n continue;\n }\n var attributionGetter = source.getAttributions();\n if (!attributionGetter) {\n continue;\n }\n var attributions = attributionGetter(frameState);\n if (!attributions) {\n continue;\n }\n if (!this.overrideCollapsible_ && source.getAttributionsCollapsible() === false) {\n this.setCollapsible(false);\n }\n if (Array.isArray(attributions)) {\n for (var j = 0, jj = attributions.length; j < jj; ++j) {\n if (!(attributions[j] in lookup)) {\n visibleAttributions.push(attributions[j]);\n lookup[attributions[j]] = true;\n }\n }\n }\n else {\n if (!(attributions in lookup)) {\n visibleAttributions.push(attributions);\n lookup[attributions] = true;\n }\n }\n }\n return visibleAttributions;\n };\n /**\n * @private\n * @param {?import(\"../PluggableMap.js\").FrameState} frameState Frame state.\n */\n Attribution.prototype.updateElement_ = function (frameState) {\n if (!frameState) {\n if (this.renderedVisible_) {\n this.element.style.display = 'none';\n this.renderedVisible_ = false;\n }\n return;\n }\n var attributions = this.collectSourceAttributions_(frameState);\n var visible = attributions.length > 0;\n if (this.renderedVisible_ != visible) {\n this.element.style.display = visible ? '' : 'none';\n this.renderedVisible_ = visible;\n }\n if (equals(attributions, this.renderedAttributions_)) {\n return;\n }\n removeChildren(this.ulElement_);\n // append the attributions\n for (var i = 0, ii = attributions.length; i < ii; ++i) {\n var element = document.createElement('li');\n element.innerHTML = attributions[i];\n this.ulElement_.appendChild(element);\n }\n this.renderedAttributions_ = attributions;\n };\n /**\n * @param {MouseEvent} event The event to handle\n * @private\n */\n Attribution.prototype.handleClick_ = function (event) {\n event.preventDefault();\n this.handleToggle_();\n };\n /**\n * @private\n */\n Attribution.prototype.handleToggle_ = function () {\n this.element.classList.toggle(CLASS_COLLAPSED);\n if (this.collapsed_) {\n replaceNode(this.collapseLabel_, this.label_);\n }\n else {\n replaceNode(this.label_, this.collapseLabel_);\n }\n this.collapsed_ = !this.collapsed_;\n };\n /**\n * Return `true` if the attribution is collapsible, `false` otherwise.\n * @return {boolean} True if the widget is collapsible.\n * @api\n */\n Attribution.prototype.getCollapsible = function () {\n return this.collapsible_;\n };\n /**\n * Set whether the attribution should be collapsible.\n * @param {boolean} collapsible True if the widget is collapsible.\n * @api\n */\n Attribution.prototype.setCollapsible = function (collapsible) {\n if (this.collapsible_ === collapsible) {\n return;\n }\n this.collapsible_ = collapsible;\n this.element.classList.toggle('ol-uncollapsible');\n if (!collapsible && this.collapsed_) {\n this.handleToggle_();\n }\n };\n /**\n * Collapse or expand the attribution according to the passed parameter. Will\n * not do anything if the attribution isn't collapsible or if the current\n * collapsed state is already the one requested.\n * @param {boolean} collapsed True if the widget is collapsed.\n * @api\n */\n Attribution.prototype.setCollapsed = function (collapsed) {\n if (!this.collapsible_ || this.collapsed_ === collapsed) {\n return;\n }\n this.handleToggle_();\n };\n /**\n * Return `true` when the attribution is currently collapsed or `false`\n * otherwise.\n * @return {boolean} True if the widget is collapsed.\n * @api\n */\n Attribution.prototype.getCollapsed = function () {\n return this.collapsed_;\n };\n return Attribution;\n}(Control));\n/**\n * Update the attribution element.\n * @param {import(\"../MapEvent.js\").default} mapEvent Map event.\n * @this {Attribution}\n */\nexport function render(mapEvent) {\n this.updateElement_(mapEvent.frameState);\n}\nexport default Attribution;\n//# sourceMappingURL=Attribution.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/control/Rotate\n */\nimport Control from './Control.js';\nimport { CLASS_CONTROL, CLASS_HIDDEN, CLASS_UNSELECTABLE } from '../css.js';\nimport { easeOut } from '../easing.js';\nimport EventType from '../events/EventType.js';\n/**\n * @typedef {Object} Options\n * @property {string} [className='ol-rotate'] CSS class name.\n * @property {string|HTMLElement} [label='⇧'] Text label to use for the rotate button.\n * Instead of text, also an element (e.g. a `span` element) can be used.\n * @property {string} [tipLabel='Reset rotation'] Text label to use for the rotate tip.\n * @property {number} [duration=250] Animation duration in milliseconds.\n * @property {boolean} [autoHide=true] Hide the control when rotation is 0.\n * @property {function(import(\"../MapEvent.js\").default)} [render] Function called when the control should\n * be re-rendered. This is called in a `requestAnimationFrame` callback.\n * @property {function()} [resetNorth] Function called when the control is clicked.\n * This will override the default `resetNorth`.\n * @property {HTMLElement|string} [target] Specify a target if you want the control to be\n * rendered outside of the map's viewport.\n */\n/**\n * @classdesc\n * A button control to reset rotation to 0.\n * To style this control use css selector `.ol-rotate`. A `.ol-hidden` css\n * selector is added to the button when the rotation is 0.\n *\n * @api\n */\nvar Rotate = /** @class */ (function (_super) {\n __extends(Rotate, _super);\n /**\n * @param {Options=} opt_options Rotate options.\n */\n function Rotate(opt_options) {\n var _this = this;\n var options = opt_options ? opt_options : {};\n _this = _super.call(this, {\n element: document.createElement('div'),\n render: options.render || render,\n target: options.target\n }) || this;\n var className = options.className !== undefined ? options.className : 'ol-rotate';\n var label = options.label !== undefined ? options.label : '\\u21E7';\n /**\n * @type {HTMLElement}\n * @private\n */\n _this.label_ = null;\n if (typeof label === 'string') {\n _this.label_ = document.createElement('span');\n _this.label_.className = 'ol-compass';\n _this.label_.textContent = label;\n }\n else {\n _this.label_ = label;\n _this.label_.classList.add('ol-compass');\n }\n var tipLabel = options.tipLabel ? options.tipLabel : 'Reset rotation';\n var button = document.createElement('button');\n button.className = className + '-reset';\n button.setAttribute('type', 'button');\n button.title = tipLabel;\n button.appendChild(_this.label_);\n button.addEventListener(EventType.CLICK, _this.handleClick_.bind(_this), false);\n var cssClasses = className + ' ' + CLASS_UNSELECTABLE + ' ' + CLASS_CONTROL;\n var element = _this.element;\n element.className = cssClasses;\n element.appendChild(button);\n _this.callResetNorth_ = options.resetNorth ? options.resetNorth : undefined;\n /**\n * @type {number}\n * @private\n */\n _this.duration_ = options.duration !== undefined ? options.duration : 250;\n /**\n * @type {boolean}\n * @private\n */\n _this.autoHide_ = options.autoHide !== undefined ? options.autoHide : true;\n /**\n * @private\n * @type {number|undefined}\n */\n _this.rotation_ = undefined;\n if (_this.autoHide_) {\n _this.element.classList.add(CLASS_HIDDEN);\n }\n return _this;\n }\n /**\n * @param {MouseEvent} event The event to handle\n * @private\n */\n Rotate.prototype.handleClick_ = function (event) {\n event.preventDefault();\n if (this.callResetNorth_ !== undefined) {\n this.callResetNorth_();\n }\n else {\n this.resetNorth_();\n }\n };\n /**\n * @private\n */\n Rotate.prototype.resetNorth_ = function () {\n var map = this.getMap();\n var view = map.getView();\n if (!view) {\n // the map does not have a view, so we can't act\n // upon it\n return;\n }\n var rotation = view.getRotation();\n if (rotation !== undefined) {\n if (this.duration_ > 0 && rotation % (2 * Math.PI) !== 0) {\n view.animate({\n rotation: 0,\n duration: this.duration_,\n easing: easeOut\n });\n }\n else {\n view.setRotation(0);\n }\n }\n };\n return Rotate;\n}(Control));\n/**\n * Update the rotate control element.\n * @param {import(\"../MapEvent.js\").default} mapEvent Map event.\n * @this {Rotate}\n */\nexport function render(mapEvent) {\n var frameState = mapEvent.frameState;\n if (!frameState) {\n return;\n }\n var rotation = frameState.viewState.rotation;\n if (rotation != this.rotation_) {\n var transform = 'rotate(' + rotation + 'rad)';\n if (this.autoHide_) {\n var contains = this.element.classList.contains(CLASS_HIDDEN);\n if (!contains && rotation === 0) {\n this.element.classList.add(CLASS_HIDDEN);\n }\n else if (contains && rotation !== 0) {\n this.element.classList.remove(CLASS_HIDDEN);\n }\n }\n this.label_.style.transform = transform;\n }\n this.rotation_ = rotation;\n}\nexport default Rotate;\n//# sourceMappingURL=Rotate.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/control/Zoom\n */\nimport EventType from '../events/EventType.js';\nimport Control from './Control.js';\nimport { CLASS_CONTROL, CLASS_UNSELECTABLE } from '../css.js';\nimport { easeOut } from '../easing.js';\n/**\n * @typedef {Object} Options\n * @property {number} [duration=250] Animation duration in milliseconds.\n * @property {string} [className='ol-zoom'] CSS class name.\n * @property {string|HTMLElement} [zoomInLabel='+'] Text label to use for the zoom-in\n * button. Instead of text, also an element (e.g. a `span` element) can be used.\n * @property {string|HTMLElement} [zoomOutLabel='-'] Text label to use for the zoom-out button.\n * Instead of text, also an element (e.g. a `span` element) can be used.\n * @property {string} [zoomInTipLabel='Zoom in'] Text label to use for the button tip.\n * @property {string} [zoomOutTipLabel='Zoom out'] Text label to use for the button tip.\n * @property {number} [delta=1] The zoom delta applied on each click.\n * @property {HTMLElement|string} [target] Specify a target if you want the control to be\n * rendered outside of the map's viewport.\n */\n/**\n * @classdesc\n * A control with 2 buttons, one for zoom in and one for zoom out.\n * This control is one of the default controls of a map. To style this control\n * use css selectors `.ol-zoom-in` and `.ol-zoom-out`.\n *\n * @api\n */\nvar Zoom = /** @class */ (function (_super) {\n __extends(Zoom, _super);\n /**\n * @param {Options=} opt_options Zoom options.\n */\n function Zoom(opt_options) {\n var _this = this;\n var options = opt_options ? opt_options : {};\n _this = _super.call(this, {\n element: document.createElement('div'),\n target: options.target\n }) || this;\n var className = options.className !== undefined ? options.className : 'ol-zoom';\n var delta = options.delta !== undefined ? options.delta : 1;\n var zoomInLabel = options.zoomInLabel !== undefined ? options.zoomInLabel : '+';\n var zoomOutLabel = options.zoomOutLabel !== undefined ? options.zoomOutLabel : '\\u2212';\n var zoomInTipLabel = options.zoomInTipLabel !== undefined ?\n options.zoomInTipLabel : 'Zoom in';\n var zoomOutTipLabel = options.zoomOutTipLabel !== undefined ?\n options.zoomOutTipLabel : 'Zoom out';\n var inElement = document.createElement('button');\n inElement.className = className + '-in';\n inElement.setAttribute('type', 'button');\n inElement.title = zoomInTipLabel;\n inElement.appendChild(typeof zoomInLabel === 'string' ? document.createTextNode(zoomInLabel) : zoomInLabel);\n inElement.addEventListener(EventType.CLICK, _this.handleClick_.bind(_this, delta), false);\n var outElement = document.createElement('button');\n outElement.className = className + '-out';\n outElement.setAttribute('type', 'button');\n outElement.title = zoomOutTipLabel;\n outElement.appendChild(typeof zoomOutLabel === 'string' ? document.createTextNode(zoomOutLabel) : zoomOutLabel);\n outElement.addEventListener(EventType.CLICK, _this.handleClick_.bind(_this, -delta), false);\n var cssClasses = className + ' ' + CLASS_UNSELECTABLE + ' ' + CLASS_CONTROL;\n var element = _this.element;\n element.className = cssClasses;\n element.appendChild(inElement);\n element.appendChild(outElement);\n /**\n * @type {number}\n * @private\n */\n _this.duration_ = options.duration !== undefined ? options.duration : 250;\n return _this;\n }\n /**\n * @param {number} delta Zoom delta.\n * @param {MouseEvent} event The event to handle\n * @private\n */\n Zoom.prototype.handleClick_ = function (delta, event) {\n event.preventDefault();\n this.zoomByDelta_(delta);\n };\n /**\n * @param {number} delta Zoom delta.\n * @private\n */\n Zoom.prototype.zoomByDelta_ = function (delta) {\n var map = this.getMap();\n var view = map.getView();\n if (!view) {\n // the map does not have a view, so we can't act\n // upon it\n return;\n }\n var currentZoom = view.getZoom();\n if (currentZoom !== undefined) {\n var newZoom = view.getConstrainedZoom(currentZoom + delta);\n if (this.duration_ > 0) {\n if (view.getAnimating()) {\n view.cancelAnimations();\n }\n view.animate({\n zoom: newZoom,\n duration: this.duration_,\n easing: easeOut\n });\n }\n else {\n view.setZoom(newZoom);\n }\n }\n };\n return Zoom;\n}(Control));\nexport default Zoom;\n//# sourceMappingURL=Zoom.js.map","/**\n * @module ol/control\n */\nimport Collection from './Collection.js';\nimport Attribution from './control/Attribution.js';\nimport Rotate from './control/Rotate.js';\nimport Zoom from './control/Zoom.js';\nexport { default as Attribution } from './control/Attribution.js';\nexport { default as Control } from './control/Control.js';\nexport { default as FullScreen } from './control/FullScreen.js';\nexport { default as MousePosition } from './control/MousePosition.js';\nexport { default as OverviewMap } from './control/OverviewMap.js';\nexport { default as Rotate } from './control/Rotate.js';\nexport { default as ScaleLine } from './control/ScaleLine.js';\nexport { default as Zoom } from './control/Zoom.js';\nexport { default as ZoomSlider } from './control/ZoomSlider.js';\nexport { default as ZoomToExtent } from './control/ZoomToExtent.js';\n/**\n * @typedef {Object} DefaultsOptions\n * @property {boolean} [attribution=true] Include\n * {@link module:ol/control/Attribution~Attribution}.\n * @property {import(\"./control/Attribution.js\").Options} [attributionOptions]\n * Options for {@link module:ol/control/Attribution~Attribution}.\n * @property {boolean} [rotate=true] Include\n * {@link module:ol/control/Rotate~Rotate}.\n * @property {import(\"./control/Rotate.js\").Options} [rotateOptions] Options\n * for {@link module:ol/control/Rotate~Rotate}.\n * @property {boolean} [zoom] Include {@link module:ol/control/Zoom~Zoom}.\n * @property {import(\"./control/Zoom.js\").Options} [zoomOptions] Options for\n * {@link module:ol/control/Zoom~Zoom}.\n * @api\n */\n/**\n * Set of controls included in maps by default. Unless configured otherwise,\n * this returns a collection containing an instance of each of the following\n * controls:\n * * {@link module:ol/control/Zoom~Zoom}\n * * {@link module:ol/control/Rotate~Rotate}\n * * {@link module:ol/control/Attribution~Attribution}\n *\n * @param {DefaultsOptions=} opt_options\n * Defaults options.\n * @return {Collection}\n * Controls.\n * @api\n */\nexport function defaults(opt_options) {\n var options = opt_options ? opt_options : {};\n var controls = new Collection();\n var zoomControl = options.zoom !== undefined ? options.zoom : true;\n if (zoomControl) {\n controls.push(new Zoom(options.zoomOptions));\n }\n var rotateControl = options.rotate !== undefined ? options.rotate : true;\n if (rotateControl) {\n controls.push(new Rotate(options.rotateOptions));\n }\n var attributionControl = options.attribution !== undefined ?\n options.attribution : true;\n if (attributionControl) {\n controls.push(new Attribution(options.attributionOptions));\n }\n return controls;\n}\n//# sourceMappingURL=control.js.map","/**\n * @module ol/interaction/Property\n */\n/**\n * @enum {string}\n */\nexport default {\n ACTIVE: 'active'\n};\n//# sourceMappingURL=Property.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/interaction/Interaction\n */\nimport BaseObject from '../Object.js';\nimport { easeOut, linear } from '../easing.js';\nimport InteractionProperty from './Property.js';\n/**\n * Object literal with config options for interactions.\n * @typedef {Object} InteractionOptions\n * @property {function(import(\"../MapBrowserEvent.js\").default):boolean} handleEvent\n * Method called by the map to notify the interaction that a browser event was\n * dispatched to the map. If the function returns a falsy value, propagation of\n * the event to other interactions in the map's interactions chain will be\n * prevented (this includes functions with no explicit return). The interactions\n * are traversed in reverse order of the interactions collection of the map.\n */\n/**\n * @classdesc\n * Abstract base class; normally only used for creating subclasses and not\n * instantiated in apps.\n * User actions that change the state of the map. Some are similar to controls,\n * but are not associated with a DOM element.\n * For example, {@link module:ol/interaction/KeyboardZoom~KeyboardZoom} is\n * functionally the same as {@link module:ol/control/Zoom~Zoom}, but triggered\n * by a keyboard event not a button element event.\n * Although interactions do not have a DOM element, some of them do render\n * vectors and so are visible on the screen.\n * @api\n */\nvar Interaction = /** @class */ (function (_super) {\n __extends(Interaction, _super);\n /**\n * @param {InteractionOptions} options Options.\n */\n function Interaction(options) {\n var _this = _super.call(this) || this;\n if (options.handleEvent) {\n _this.handleEvent = options.handleEvent;\n }\n /**\n * @private\n * @type {import(\"../PluggableMap.js\").default}\n */\n _this.map_ = null;\n _this.setActive(true);\n return _this;\n }\n /**\n * Return whether the interaction is currently active.\n * @return {boolean} `true` if the interaction is active, `false` otherwise.\n * @observable\n * @api\n */\n Interaction.prototype.getActive = function () {\n return /** @type {boolean} */ (this.get(InteractionProperty.ACTIVE));\n };\n /**\n * Get the map associated with this interaction.\n * @return {import(\"../PluggableMap.js\").default} Map.\n * @api\n */\n Interaction.prototype.getMap = function () {\n return this.map_;\n };\n /**\n * Handles the {@link module:ol/MapBrowserEvent map browser event}.\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} `false` to stop event propagation.\n * @api\n */\n Interaction.prototype.handleEvent = function (mapBrowserEvent) {\n return true;\n };\n /**\n * Activate or deactivate the interaction.\n * @param {boolean} active Active.\n * @observable\n * @api\n */\n Interaction.prototype.setActive = function (active) {\n this.set(InteractionProperty.ACTIVE, active);\n };\n /**\n * Remove the interaction from its current map and attach it to the new map.\n * Subclasses may set up event handlers to get notified about changes to\n * the map here.\n * @param {import(\"../PluggableMap.js\").default} map Map.\n */\n Interaction.prototype.setMap = function (map) {\n this.map_ = map;\n };\n return Interaction;\n}(BaseObject));\n/**\n * @param {import(\"../View.js\").default} view View.\n * @param {import(\"../coordinate.js\").Coordinate} delta Delta.\n * @param {number=} opt_duration Duration.\n */\nexport function pan(view, delta, opt_duration) {\n var currentCenter = view.getCenterInternal();\n if (currentCenter) {\n var center = [currentCenter[0] + delta[0], currentCenter[1] + delta[1]];\n view.animateInternal({\n duration: opt_duration !== undefined ? opt_duration : 250,\n easing: linear,\n center: view.getConstrainedCenter(center)\n });\n }\n}\n/**\n * @param {import(\"../View.js\").default} view View.\n * @param {number} delta Delta from previous zoom level.\n * @param {import(\"../coordinate.js\").Coordinate=} opt_anchor Anchor coordinate in the user projection.\n * @param {number=} opt_duration Duration.\n */\nexport function zoomByDelta(view, delta, opt_anchor, opt_duration) {\n var currentZoom = view.getZoom();\n if (currentZoom === undefined) {\n return;\n }\n var newZoom = view.getConstrainedZoom(currentZoom + delta);\n var newResolution = view.getResolutionForZoom(newZoom);\n if (view.getAnimating()) {\n view.cancelAnimations();\n }\n view.animate({\n resolution: newResolution,\n anchor: opt_anchor,\n duration: opt_duration !== undefined ? opt_duration : 250,\n easing: easeOut\n });\n}\nexport default Interaction;\n//# sourceMappingURL=Interaction.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n/**\n * @module ol/interaction/DoubleClickZoom\n */\nimport MapBrowserEventType from '../MapBrowserEventType.js';\nimport Interaction, { zoomByDelta } from './Interaction.js';\n/**\n * @typedef {Object} Options\n * @property {number} [duration=250] Animation duration in milliseconds.\n * @property {number} [delta=1] The zoom delta applied on each double click.\n */\n/**\n * @classdesc\n * Allows the user to zoom by double-clicking on the map.\n * @api\n */\nvar DoubleClickZoom = /** @class */ (function (_super) {\n __extends(DoubleClickZoom, _super);\n /**\n * @param {Options=} opt_options Options.\n */\n function DoubleClickZoom(opt_options) {\n var _this = _super.call(this, {\n handleEvent: handleEvent\n }) || this;\n var options = opt_options ? opt_options : {};\n /**\n * @private\n * @type {number}\n */\n _this.delta_ = options.delta ? options.delta : 1;\n /**\n * @private\n * @type {number}\n */\n _this.duration_ = options.duration !== undefined ? options.duration : 250;\n return _this;\n }\n return DoubleClickZoom;\n}(Interaction));\n/**\n * Handles the {@link module:ol/MapBrowserEvent map browser event} (if it was a\n * doubleclick) and eventually zooms the map.\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} `false` to stop event propagation.\n * @this {DoubleClickZoom}\n */\nfunction handleEvent(mapBrowserEvent) {\n var stopEvent = false;\n if (mapBrowserEvent.type == MapBrowserEventType.DBLCLICK) {\n var browserEvent = /** @type {MouseEvent} */ (mapBrowserEvent.originalEvent);\n var map = mapBrowserEvent.map;\n var anchor = mapBrowserEvent.coordinate;\n var delta = browserEvent.shiftKey ? -this.delta_ : this.delta_;\n var view = map.getView();\n zoomByDelta(view, delta, anchor, this.duration_);\n mapBrowserEvent.preventDefault();\n stopEvent = true;\n }\n return !stopEvent;\n}\nexport default DoubleClickZoom;\n//# sourceMappingURL=DoubleClickZoom.js.map","/**\n * @module ol/events/condition\n */\nimport MapBrowserEventType from '../MapBrowserEventType.js';\nimport { assert } from '../asserts.js';\nimport { TRUE, FALSE } from '../functions.js';\nimport { WEBKIT, MAC } from '../has.js';\n/**\n * A function that takes an {@link module:ol/MapBrowserEvent} and returns a\n * `{boolean}`. If the condition is met, true should be returned.\n *\n * @typedef {function(this: ?, import(\"../MapBrowserEvent.js\").default): boolean} Condition\n */\n/**\n * Return `true` if only the alt-key is pressed, `false` otherwise (e.g. when\n * additionally the shift-key is pressed).\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True if only the alt key is pressed.\n * @api\n */\nexport var altKeyOnly = function (mapBrowserEvent) {\n var originalEvent = /** @type {KeyboardEvent|MouseEvent|TouchEvent} */ (mapBrowserEvent.originalEvent);\n return (originalEvent.altKey &&\n !(originalEvent.metaKey || originalEvent.ctrlKey) &&\n !originalEvent.shiftKey);\n};\n/**\n * Return `true` if only the alt-key and shift-key is pressed, `false` otherwise\n * (e.g. when additionally the platform-modifier-key is pressed).\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True if only the alt and shift keys are pressed.\n * @api\n */\nexport var altShiftKeysOnly = function (mapBrowserEvent) {\n var originalEvent = /** @type {KeyboardEvent|MouseEvent|TouchEvent} */ (mapBrowserEvent.originalEvent);\n return (originalEvent.altKey &&\n !(originalEvent.metaKey || originalEvent.ctrlKey) &&\n originalEvent.shiftKey);\n};\n/**\n * Return `true` if the map has the focus. This condition requires a map target\n * element with a `tabindex` attribute, e.g. `
`.\n *\n * @param {import(\"../MapBrowserEvent.js\").default} event Map browser event.\n * @return {boolean} The map has the focus.\n * @api\n */\nexport var focus = function (event) {\n return event.target.getTargetElement() === document.activeElement;\n};\n/**\n * Return always true.\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True.\n * @api\n */\nexport var always = TRUE;\n/**\n * Return `true` if the event is a `click` event, `false` otherwise.\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True if the event is a map `click` event.\n * @api\n */\nexport var click = function (mapBrowserEvent) {\n return mapBrowserEvent.type == MapBrowserEventType.CLICK;\n};\n/**\n * Return `true` if the event has an \"action\"-producing mouse button.\n *\n * By definition, this includes left-click on windows/linux, and left-click\n * without the ctrl key on Macs.\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} The result.\n */\nexport var mouseActionButton = function (mapBrowserEvent) {\n var originalEvent = /** @type {MouseEvent} */ (mapBrowserEvent.originalEvent);\n return originalEvent.button == 0 &&\n !(WEBKIT && MAC && originalEvent.ctrlKey);\n};\n/**\n * Return always false.\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} False.\n * @api\n */\nexport var never = FALSE;\n/**\n * Return `true` if the browser event is a `pointermove` event, `false`\n * otherwise.\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True if the browser event is a `pointermove` event.\n * @api\n */\nexport var pointerMove = function (mapBrowserEvent) {\n return mapBrowserEvent.type == 'pointermove';\n};\n/**\n * Return `true` if the event is a map `singleclick` event, `false` otherwise.\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True if the event is a map `singleclick` event.\n * @api\n */\nexport var singleClick = function (mapBrowserEvent) {\n return mapBrowserEvent.type == MapBrowserEventType.SINGLECLICK;\n};\n/**\n * Return `true` if the event is a map `dblclick` event, `false` otherwise.\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True if the event is a map `dblclick` event.\n * @api\n */\nexport var doubleClick = function (mapBrowserEvent) {\n return mapBrowserEvent.type == MapBrowserEventType.DBLCLICK;\n};\n/**\n * Return `true` if no modifier key (alt-, shift- or platform-modifier-key) is\n * pressed.\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True only if there no modifier keys are pressed.\n * @api\n */\nexport var noModifierKeys = function (mapBrowserEvent) {\n var originalEvent = /** @type {KeyboardEvent|MouseEvent|TouchEvent} */ (mapBrowserEvent.originalEvent);\n return (!originalEvent.altKey &&\n !(originalEvent.metaKey || originalEvent.ctrlKey) &&\n !originalEvent.shiftKey);\n};\n/**\n * Return `true` if only the platform-modifier-key (the meta-key on Mac,\n * ctrl-key otherwise) is pressed, `false` otherwise (e.g. when additionally\n * the shift-key is pressed).\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True if only the platform modifier key is pressed.\n * @api\n */\nexport var platformModifierKeyOnly = function (mapBrowserEvent) {\n var originalEvent = /** @type {KeyboardEvent|MouseEvent|TouchEvent} */ (mapBrowserEvent.originalEvent);\n return !originalEvent.altKey &&\n (MAC ? originalEvent.metaKey : originalEvent.ctrlKey) &&\n !originalEvent.shiftKey;\n};\n/**\n * Return `true` if only the shift-key is pressed, `false` otherwise (e.g. when\n * additionally the alt-key is pressed).\n *\n * @param {import(\"../MapBrowserEvent.js\").default} mapBrowserEvent Map browser event.\n * @return {boolean} True if only the shift key is pressed.\n * @api\n */\nexport var shiftKeyOnly = function (mapBrowserEvent) {\n var originalEvent = /** @type {KeyboardEvent|MouseEvent|TouchEvent} */ (mapBrowserEvent.originalEvent);\n return (!originalEvent.altKey &&\n !(originalEvent.metaKey || originalEvent.ctrlKey) &&\n originalEvent.shiftKey);\n};\n/**\n * Return `true` if the target element is not editable, i.e. not a ``-,\n * `

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 Us_rf<`hN8uMrLIs2ndM(0UlSfz5oCK literal 0 HcmV?d00001 diff --git a/dist/ol/ol.css b/dist/ol/ol.css new file mode 100644 index 0000000..9b05f17 --- /dev/null +++ b/dist/ol/ol.css @@ -0,0 +1,2 @@ +.ol-box{box-sizing:border-box;border-radius:2px;border:2px solid #00f}.ol-mouse-position{top:8px;right:8px;position:absolute}.ol-scale-line{background:rgba(0,60,136,.3);border-radius:4px;bottom:8px;left:8px;padding:2px;position:absolute}.ol-scale-line-inner{border:1px solid #eee;border-top:none;color:#eee;font-size:10px;text-align:center;margin:1px;will-change:contents,width;transition:all .25s}.ol-scale-bar{position:absolute;bottom:8px;left:8px}.ol-scale-step-marker{width:1px;height:15px;background-color:#000;float:right;z-Index:10}.ol-scale-step-text{position:absolute;bottom:-5px;font-size:12px;z-Index:11;color:#000;text-shadow:-2px 0 #fff,0 2px #fff,2px 0 #fff,0 -2px #fff}.ol-scale-text{position:absolute;font-size:14px;text-align:center;bottom:25px;color:#000;text-shadow:-2px 0 #fff,0 2px #fff,2px 0 #fff,0 -2px #fff}.ol-scale-singlebar{position:relative;height:10px;z-Index:9;border:1px solid #000}.ol-unsupported{display:none}.ol-unselectable,.ol-viewport{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ol-overlaycontainer,.ol-overlaycontainer-stopevent{pointer-events:none}.ol-overlaycontainer-stopevent>*,.ol-overlaycontainer>*{pointer-events:auto}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.ol-grabbing{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.ol-grab{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.ol-control{position:absolute;background-color:rgba(255,255,255,.4);border-radius:4px;padding:2px}.ol-control:hover{background-color:rgba(255,255,255,.6)}.ol-zoom{top:.5em;left:.5em}.ol-rotate{top:.5em;right:.5em;transition:opacity .25s linear,visibility 0s linear}.ol-rotate.ol-hidden{opacity:0;visibility:hidden;transition:opacity .25s linear,visibility 0s linear .25s}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{right:.5em;top:.5em}.ol-control button{display:block;margin:1px;padding:0;color:#fff;font-size:1.14em;font-weight:700;text-decoration:none;text-align:center;height:1.375em;width:1.375em;line-height:.4em;background-color:rgba(0,60,136,.5);border:none;border-radius:2px}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-control button span{pointer-events:none}.ol-zoom-extent button{line-height:1.4em}.ol-compass{display:block;font-weight:400;font-size:1.2em;will-change:transform}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:focus,.ol-control button:hover{text-decoration:none;background-color:rgba(0,60,136,.7)}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{text-align:right;bottom:.5em;right:.5em;max-width:calc(100% - 1.3em)}.ol-attribution ul{margin:0;padding:0 .5em;color:#000;text-shadow:0 0 2px #fff}.ol-attribution li{display:inline;list-style:none}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button,.ol-attribution ul{display:inline-block}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution:not(.ol-collapsed){background:rgba(255,255,255,.8)}.ol-attribution.ol-uncollapsible{bottom:0;right:0;border-radius:4px 0 0}.ol-attribution.ol-uncollapsible img{margin-top:-.2em;max-height:1.6em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{top:4.5em;left:.5em;height:200px}.ol-zoomslider button{position:relative;height:10px}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{left:.5em;bottom:.5em}.ol-overviewmap.ol-uncollapsible{bottom:0;left:0;border-radius:0 4px 0 0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:inline-block}.ol-overviewmap .ol-overviewmap-map{border:1px solid #7b98bc;height:150px;margin:2px;width:150px}.ol-overviewmap:not(.ol-collapsed) button{bottom:1px;left:2px;position:absolute}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:rgba(255,255,255,.8)}.ol-overviewmap-box{border:2px dotted rgba(0,60,136,.7)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move} +/*# sourceMappingURL=ol.css.map */ \ No newline at end of file diff --git a/dist/ol/ol.css.map b/dist/ol/ol.css.map new file mode 100644 index 0000000..8c7d2c1 --- /dev/null +++ b/dist/ol/ol.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["src/ol/ol.css"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/ol/ol.js b/dist/ol/ol.js new file mode 100644 index 0000000..e71c433 --- /dev/null +++ b/dist/ol/ol.js @@ -0,0 +1,2 @@ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ol=e():t.ol=e()}(window,function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)r.d(n,i,function(e){return t[e]}.bind(null,i));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=7)}([function(t,e,r){t.exports=function(){"use strict";function t(t,n,i,o,a){!function t(r,n,i,o,a){for(;o>i;){if(o-i>600){var s=o-i+1,u=n-i+1,l=Math.log(s),h=.5*Math.exp(2*l/3),c=.5*Math.sqrt(l*h*(s-h)/s)*(u-s/2<0?-1:1),p=Math.max(i,Math.floor(n-u*h/s+c)),f=Math.min(o,Math.floor(n+(s-u)*h/s+c));t(r,n,p,f,a)}var d=r[n],_=i,g=o;for(e(r,i,n),a(r[o],d)>0&&e(r,i,o);_0;)g--}0===a(r[i],d)?e(r,i,g):e(r,++g,o),g<=n&&(i=g+1),n<=g&&(o=g-1)}}(t,n,i||0,o||t.length-1,a||r)}function e(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function r(t,e){return te?1:0}var n=function(t){void 0===t&&(t=9),this._maxEntries=Math.max(4,t),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),this.clear()};function i(t,e,r){if(!r)return e.indexOf(t);for(var n=0;n=t.minX&&e.maxY>=t.minY}function d(t){return{children:t,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function _(e,r,n,i,o){for(var a=[r,n];a.length;)if(!((n=a.pop())-(r=a.pop())<=i)){var s=r+Math.ceil((n-r)/i/2)*i;t(e,s,r,n,o),a.push(r,s,s,n)}}return n.prototype.all=function(){return this._all(this.data,[])},n.prototype.search=function(t){var e=this.data,r=[];if(!f(t,e))return r;for(var n=this.toBBox,i=[];e;){for(var o=0;o=0&&i[e].children.length>this._maxEntries;)this._split(i,e),e--;this._adjustParentBBoxes(n,i,e)},n.prototype._split=function(t,e){var r=t[e],n=r.children.length,i=this._minEntries;this._chooseSplitAxis(r,i,n);var a=this._chooseSplitIndex(r,i,n),s=d(r.children.splice(a,r.children.length-a));s.height=r.height,s.leaf=r.leaf,o(r,this.toBBox),o(s,this.toBBox),e?t[e-1].children.push(s):this._splitRoot(r,s)},n.prototype._splitRoot=function(t,e){this.data=d([t,e]),this.data.height=t.height+1,this.data.leaf=!1,o(this.data,this.toBBox)},n.prototype._chooseSplitIndex=function(t,e,r){for(var n,i,o,s,u,l,c,p=1/0,f=1/0,d=e;d<=r-e;d++){var _=a(t,0,d,this.toBBox),g=a(t,d,r,this.toBBox),y=(i=_,o=g,s=void 0,u=void 0,l=void 0,c=void 0,s=Math.max(i.minX,o.minX),u=Math.max(i.minY,o.minY),l=Math.min(i.maxX,o.maxX),c=Math.min(i.maxY,o.maxY),Math.max(0,l-s)*Math.max(0,c-u)),v=h(_)+h(g);y=e;f--){var d=t.children[f];s(u,t.leaf?i(d):d),l+=c(u)}return l},n.prototype._adjustParentBBoxes=function(t,e,r){for(var n=r;n>=0;n--)s(e[n],t)},n.prototype._condense=function(t){for(var e=t.length-1,r=void 0;e>=0;e--)0===t[e].children.length?e>0?(r=t[e-1].children).splice(r.indexOf(t[e]),1):this.clear():o(t[e],this.toBBox)},n}()},function(t,e){var r=null,n=null;function i(t,e,r){t.addEventListener(e,function(t){var i=new MouseEvent(r,t);i.pointerId=1,i.isPrimary=!0,i.pointerType="mouse",i.width=1,i.height=1,i.tiltX=0,i.tiltY=0,"buttons"in t&&0!==t.buttons?i.pressure=.5:i.pressure=0;var o=t.target;null!==n&&(o=n,"mouseup"===e&&(n=null)),o.dispatchEvent(i),i.defaultPrevented&&t.preventDefault()})}function o(t,e,n){t.addEventListener(e,function(t){for(var i=t.changedTouches,o=i.length,a=0;a>>0):4294967296*(e>>>0)+(t>>>0)}function u(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=t;i--)r.buf[i+n]=r.buf[i]}function l(t,e){for(var r=0;r>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function E(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}i.prototype={destroy:function(){this.buf=null},readFields:function(t,e,r){for(r=r||this.length;this.pos>3,o=this.pos;this.type=7&n,t(i,e,this),this.pos===o&&this.skip(n)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=v(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=E(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=v(this.buf,this.pos)+4294967296*v(this.buf,this.pos+4);return this.pos+=8,t},readSFixed64:function(){var t=v(this.buf,this.pos)+4294967296*E(this.buf,this.pos+4);return this.pos+=8,t},readFloat:function(){var t=n.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=n.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return e=127&(r=n[this.pos++]),r<128?e:(e|=(127&(r=n[this.pos++]))<<7,r<128?e:(e|=(127&(r=n[this.pos++]))<<14,r<128?e:(e|=(127&(r=n[this.pos++]))<<21,r<128?e:function(t,e,r){var n,i,o=r.buf;if(i=o[r.pos++],n=(112&i)>>4,i<128)return s(t,n,e);if(i=o[r.pos++],n|=(127&i)<<3,i<128)return s(t,n,e);if(i=o[r.pos++],n|=(127&i)<<10,i<128)return s(t,n,e);if(i=o[r.pos++],n|=(127&i)<<17,i<128)return s(t,n,e);if(i=o[r.pos++],n|=(127&i)<<24,i<128)return s(t,n,e);if(i=o[r.pos++],n|=(1&i)<<31,i<128)return s(t,n,e);throw new Error("Expected varint not more than 10 bytes")}(e|=(15&(r=n[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&o?function(t,e,r){return o.decode(t.subarray(e,r))}(this.buf,e,t):function(t,e,r){var n="",i=e;for(;i239?4:u>223?3:u>191?2:1;if(i+h>r)break;1===h?u<128&&(l=u):2===h?128==(192&(o=t[i+1]))&&(l=(31&u)<<6|63&o)<=127&&(l=null):3===h?(o=t[i+1],a=t[i+2],128==(192&o)&&128==(192&a)&&((l=(15&u)<<12|(63&o)<<6|63&a)<=2047||l>=55296&&l<=57343)&&(l=null)):4===h&&(o=t[i+1],a=t[i+2],s=t[i+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&((l=(15&u)<<18|(63&o)<<12|(63&a)<<6|63&s)<=65535||l>=1114112)&&(l=null)),null===l?(l=65533,h=1):l>65535&&(l-=65536,n+=String.fromCharCode(l>>>10&1023|55296),l=56320|1023&l),n+=String.fromCharCode(l),i+=h}return n}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==i.Bytes)return t.push(this.readVarint(e));var r=a(this);for(t=t||[];this.pos127;);else if(e===i.Bytes)this.pos=this.readVarint()+this.pos;else if(e===i.Fixed32)this.pos+=4;else{if(e!==i.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e268435455||t<0?function(t,e){var r,n;t>=0?(r=t%4294967296|0,n=t/4294967296|0):(n=~(-t/4294967296),4294967295^(r=~(-t%4294967296))?r=r+1|0:(r=0,n=n+1|0));if(t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),function(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos]=127&t}(r,0,e),function(t,e){var r=(7&t)<<4;if(e.buf[e.pos++]|=r|((t>>>=3)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;e.buf[e.pos++]=127&t}(n,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,r){for(var n,i,o=0;o55295&&n<57344){if(!i){n>56319||o+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):i=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null}else i&&(t[r++]=239,t[r++]=191,t[r++]=189,i=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128)}return r}(this.buf,t,this.pos);var r=this.pos-e;r>=128&&u(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),n.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),n.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r=128&&u(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(t,e,r){this.writeTag(t,i.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,l,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,h,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,f,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,c,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,p,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,d,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,_,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,g,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,y,e)},writeBytesField:function(t,e){this.writeTag(t,i.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,i.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,i.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,i.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,i.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,i.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,i.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,i.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,i.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,i.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}}},function(t,e,r){var n=r(5);e.Processor=n},function(t,e){e.read=function(t,e,r,n,i){var o,a,s=8*i-n-1,u=(1<>1,h=-7,c=r?i-1:0,p=r?-1:1,f=t[e+c];for(c+=p,o=f&(1<<-h)-1,f>>=-h,h+=s;h>0;o=256*o+t[e+c],c+=p,h-=8);for(a=o&(1<<-h)-1,o>>=-h,h+=n;h>0;a=256*a+t[e+c],c+=p,h-=8);if(0===o)o=1-l;else{if(o===u)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,n),o-=l}return(f?-1:1)*a*Math.pow(2,o-n)},e.write=function(t,e,r,n,i,o){var a,s,u,l=8*o-i-1,h=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:o-1,d=n?1:-1,_=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=h):(a=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-a))<1&&(a--,u*=2),(e+=a+c>=1?p/u:p*Math.pow(2,1-c))*u>=2&&(a++,u/=2),a+c>=h?(s=0,a=h):a+c>=1?(s=(e*u-1)*Math.pow(2,i),a+=c):(s=e*Math.pow(2,c-1)*Math.pow(2,i),a=0));i>=8;t[r+f]=255&s,f+=d,s/=256,i-=8);for(a=a<0;t[r+f]=255&a,f+=d,a/=256,l-=8);t[r+f-d]|=128*_}},function(t,e,r){var n=r(6).newImageData;function i(t){var e=!0;try{new ImageData(10,10)}catch(t){e=!1}function r(t,r,n){return e?new ImageData(t,r,n):{data:t,width:r,height:n}}return function(e){var n,i,o=e.buffers,a=e.meta,s=e.imageOps,u=e.width,l=e.height,h=o.length,c=o[0].byteLength;if(s){var p=new Array(h);for(i=0;ithis._maxQueueLength;)this._queue.shift().callback(null,null)},a.prototype._dispatch=function(){if(0===this._running&&this._queue.length>0){var t=this._job=this._queue.shift(),e=t.inputs[0].width,r=t.inputs[0].height,n=t.inputs.map(function(t){return t.data.buffer}),i=this._workers.length;if(this._running=i,1===i)this._workers[0].postMessage({buffers:n,meta:t.meta,imageOps:this._imageOps,width:e,height:r},n);else for(var o=t.inputs[0].data.length,a=4*Math.ceil(o/4/i),s=0;se?1:t=0}function S(t,e,r){var n=t.length;if(t[0]<=e)return 0;if(e<=t[n-1])return n-1;var i=void 0;if(r>0){for(i=1;i>>0,i=0;i0},e.prototype.removeEventListener=function(t,e){var r=this.listeners_[t];if(r){var n=r.indexOf(e);-1!==n&&(t in this.pendingRemovals_?(r[n]=b,++this.pendingRemovals_[t]):(r.splice(n,1),0===r.length&&delete this.listeners_[t]))}},e}(m),N={CHANGE:"change",ERROR:"error",BLUR:"blur",CLEAR:"clear",CONTEXTMENU:"contextmenu",CLICK:"click",DBLCLICK:"dblclick",DRAGENTER:"dragenter",DRAGOVER:"dragover",DROP:"drop",FOCUS:"focus",KEYDOWN:"keydown",KEYPRESS:"keypress",LOAD:"load",RESIZE:"resize",TOUCHMOVE:"touchmove",WHEEL:"wheel"},G=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();var D=function(t){function e(){var e=t.call(this)||this;return e.revision_=0,e}return G(e,t),e.prototype.changed=function(){++this.revision_,this.dispatchEvent(N.CHANGE)},e.prototype.getRevision=function(){return this.revision_},e.prototype.on=function(t,e){if(Array.isArray(t)){for(var r=t.length,n=new Array(r),i=0;i0;)this.pop()},e.prototype.extend=function(t){for(var e=0,r=t.length;ei&&(u|=Q.RIGHT),so&&(u|=Q.ABOVE),u===Q.UNKNOWN&&(u=Q.INTERSECTING),u}function st(){return[1/0,1/0,-1/0,-1/0]}function ut(t,e,r,n,i){return i?(i[0]=t,i[1]=e,i[2]=r,i[3]=n,i):[t,e,r,n]}function lt(t){return ut(1/0,1/0,-1/0,-1/0,t)}function ht(t,e){var r=t[0],n=t[1];return ut(r,n,r,n,e)}function ct(t,e,r,n,i){return gt(lt(i),t,e,r,n)}function pt(t,e){return t[0]==e[0]&&t[2]==e[2]&&t[1]==e[1]&&t[3]==e[3]}function ft(t,e){return e[0]t[2]&&(t[2]=e[2]),e[1]t[3]&&(t[3]=e[3]),t}function dt(t,e){e[0]t[2]&&(t[2]=e[0]),e[1]t[3]&&(t[3]=e[1])}function _t(t,e){for(var r=0,n=e.length;re[0]?n[0]=t[0]:n[0]=e[0],t[1]>e[1]?n[1]=t[1]:n[1]=e[1],t[2]=e[0]&&t[1]<=e[3]&&t[3]>=e[1]}function Lt(t){return t[2]1?(r=i,n=o):u>0&&(r+=a*u,n+=s*u)}return Bt(t,e,r,n)}function Bt(t,e,r,n){var i=r-t,o=n-e;return i*i+o*o}function zt(t){return 180*t/Math.PI}function Xt(t){return t*Math.PI/180}function Vt(t,e){var r=t%e;return r*e<0?r+e:r}function Wt(t,e,r){return t+r*(e-t)}var Zt=6371008.8;function Kt(t,e,r){var n=r||Zt,i=Xt(t[1]),o=Xt(e[1]),a=(o-i)/2,s=Xt(e[0]-t[0])/2,u=Math.sin(a)*Math.sin(a)+Math.sin(s)*Math.sin(s)*Math.cos(i)*Math.cos(o);return 2*n*Math.atan2(Math.sqrt(u),Math.sqrt(1-u))}function Ht(t,e){for(var r=0,n=0,i=t.length;n1?r:2,o=e;void 0===o&&(o=i>2?t.slice():new Array(n));for(var a=ie,s=0;sa?u=a:u<-a&&(u=-a),o[s+1]=u}return o}function he(t,e,r){var n=t.length,i=r>1?r:2,o=e;void 0===o&&(o=i>2?t.slice():new Array(n));for(var a=0;a=2;--l)a[s+l]=e[s+l]}return a}}function Pe(t,e,r,n){var i=xe(t),o=xe(e);ye(i,o,Ce(r)),ye(o,i,Ce(n))}function Ie(t,e){if(t===e)return!0;var r=t.getUnits()===e.getUnits();return t.getCode()===e.getCode()?r:be(t,e)===Ee&&r}function be(t,e){var r=ve(t.getCode(),e.getCode());return r||(r=Te),r}function Le(t,e){return be(xe(t),xe(e))}function Me(t,e,r){return Le(e,r)(t,void 0,t.length)}function Fe(t,e,r){return Ft(t,Le(e,r))}var Ae,Ne,Ge,De=null;function je(){return De}function ke(t,e){return De?Me(t,e,De):t}function Ue(t,e){return De?Me(t,De,e):t}function Ye(t,e){return De?Fe(t,e,De):t}function Be(t,e){return De?Fe(t,De,e):t}Re(ue),Re(_e),Ae=ue,Ne=le,Ge=he,_e.forEach(function(t){Ae.forEach(function(e){ye(t,e,Ne),ye(e,t,Ge)})});var ze=new Array(6);function Xe(t){return We(t,1,0,0,1,0,0)}function Ve(t,e){var r=t[0],n=t[1],i=t[2],o=t[3],a=t[4],s=t[5],u=e[0],l=e[1],h=e[2],c=e[3],p=e[4],f=e[5];return t[0]=r*u+i*l,t[1]=n*u+o*l,t[2]=r*h+i*c,t[3]=n*h+o*c,t[4]=r*p+i*f+a,t[5]=n*p+o*f+s,t}function We(t,e,r,n,i,o,a){return t[0]=e,t[1]=r,t[2]=n,t[3]=i,t[4]=o,t[5]=a,t}function Ze(t,e){var r=e[0],n=e[1];return e[0]=t[0]*r+t[2]*n+t[4],e[1]=t[1]*r+t[3]*n+t[5],e}function Ke(t,e,r){return Ve(t,We(ze,e,0,0,r,0,0))}function He(t,e,r,n,i,o,a,s){var u=Math.sin(o),l=Math.cos(o);return t[0]=n*l,t[1]=i*u,t[2]=-n*u,t[3]=i*l,t[4]=a*n*l-s*n*u+e,t[5]=a*i*u+s*i*l+r,t}function qe(t,e){var r,n=(r=e)[0]*r[3]-r[1]*r[2];K(0!==n,32);var i=e[0],o=e[1],a=e[2],s=e[3],u=e[4],l=e[5];return t[0]=s/n,t[1]=-o/n,t[2]=-a/n,t[3]=i/n,t[4]=(a*l-s*u)/n,t[5]=-(i*l-o*u)/n,t}function Je(t){return"matrix("+t.join(", ")+")"}var Qe=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),$e=[1,0,0,1,0,0],tr=function(t){function e(){var e,r,n,i,o,a=t.call(this)||this;return a.extent_=[1/0,1/0,-1/0,-1/0],a.extentRevision_=-1,a.simplifiedGeometryMaxMinSquaredTolerance=0,a.simplifiedGeometryRevision=0,a.simplifyTransformedInternal=(e=function(t,e,r){if(!r)return this.getSimplifiedGeometry(e);var n=this.clone();return n.applyTransform(r),n.getSimplifiedGeometry(e)},o=!1,function(){var t=Array.prototype.slice.call(arguments);return o&&this===i&&O(t,n)||(o=!0,i=this,n=t,r=e.apply(this,arguments)),r}),a}return Qe(e,t),e.prototype.simplifyTransformed=function(t,e){return this.simplifyTransformedInternal(this.getRevision(),t,e)},e.prototype.clone=function(){return n()},e.prototype.closestPointXY=function(t,e,r,i){return n()},e.prototype.containsXY=function(t,e){var r=this.getClosestPoint([t,e]);return r[0]===t&&r[1]===e},e.prototype.getClosestPoint=function(t,e){var r=e||[NaN,NaN];return this.closestPointXY(t[0],t[1],r,1/0),r},e.prototype.intersectsCoordinate=function(t){return this.containsXY(t[0],t[1])},e.prototype.computeExtent=function(t){return n()},e.prototype.getExtent=function(t){return this.extentRevision_!=this.getRevision()&&(this.extent_=this.computeExtent(this.extent_),this.extentRevision_=this.getRevision()),function(t,e){return e?(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e):t}(this.extent_,t)},e.prototype.rotate=function(t,e){n()},e.prototype.scale=function(t,e,r){n()},e.prototype.simplify=function(t){return this.getSimplifiedGeometry(t*t)},e.prototype.getSimplifiedGeometry=function(t){return n()},e.prototype.getType=function(){return n()},e.prototype.applyTransform=function(t){n()},e.prototype.intersectsExtent=function(t){return n()},e.prototype.translate=function(t,e){n()},e.prototype.transform=function(t,e){var r=xe(t),n=r.getUnits()==te.TILE_PIXELS?function(t,n,i){var o=r.getExtent(),a=r.getWorldExtent(),s=Rt(a)/Rt(o);return He($e,a[0],a[3],s,-s,0,0,0),Gt(t,0,t.length,i,$e,n),Le(r,e)(t,n,i)}:Le(r,e);return this.applyTransform(n),this},e}(z),er=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function rr(t){var e;return t==At.XY?e=2:t==At.XYZ||t==At.XYM?e=3:t==At.XYZM&&(e=4),e}var nr=function(t){function e(){var e=t.call(this)||this;return e.layout=At.XY,e.stride=2,e.flatCoordinates=null,e}return er(e,t),e.prototype.computeExtent=function(t){return ct(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t)},e.prototype.getCoordinates=function(){return n()},e.prototype.getFirstCoordinate=function(){return this.flatCoordinates.slice(0,this.stride)},e.prototype.getFlatCoordinates=function(){return this.flatCoordinates},e.prototype.getLastCoordinate=function(){return this.flatCoordinates.slice(this.flatCoordinates.length-this.stride)},e.prototype.getLayout=function(){return this.layout},e.prototype.getSimplifiedGeometry=function(t){if(this.simplifiedGeometryRevision!==this.getRevision()&&(this.simplifiedGeometryMaxMinSquaredTolerance=0,this.simplifiedGeometryRevision=this.getRevision()),t<0||0!==this.simplifiedGeometryMaxMinSquaredTolerance&&t<=this.simplifiedGeometryMaxMinSquaredTolerance)return this;var e=this.getSimplifiedGeometryInternal(t);return e.getFlatCoordinates().length1)s=r;else{if(p>0){for(var f=0;fi&&(i=l),o=s,a=u}return i}function ur(t,e,r,n,i){for(var o=0,a=r.length;o0;){for(var c=l.pop(),p=l.pop(),f=0,d=t[p],_=t[p+1],g=t[c],y=t[c+1],v=p+n;vf&&(h=v,f=m)}f>i&&(u[(h-e)/n]=1,p+n0&&_>f)&&(d<0&&g0&&g>d)?(s=c,u=p):(o[a++]=s,o[a++]=u,l=s,h=u,s=c,u=p)}}return o[a++]=s,o[a++]=u,a}function Tr(t,e,r,n,i,o,a,s){for(var u=0,l=r.length;uo&&(l-s)*(o-u)-(i-s)*(h-u)>0&&a++:h<=o&&(l-s)*(o-u)-(i-s)*(h-u)<0&&a--,s=l,u=h}return 0!==a}function Pr(t,e,r,n,i,o){if(0===r.length)return!1;if(!Cr(t,e,r[0],n,i,o))return!1;for(var a=1,s=r.length;aT&&Pr(t,e,r,n,l=(h+c)/2,d)&&(m=l,T=S),h=c}return isNaN(m)&&(m=i[o]),a?(a.push(m,d,T),a):[m,d,T]}function br(t,e,r,n,i){for(var o=[],a=0,s=r.length;a=i[0]&&o[2]<=i[2]||(o[1]>=i[1]&&o[3]<=i[3]||Lr(t,e,r,n,function(t,e){return function(t,e,r){var n=!1,i=at(t,e),o=at(t,r);if(i===Q.INTERSECTING||o===Q.INTERSECTING)n=!0;else{var a=t[0],s=t[1],u=t[2],l=t[3],h=e[0],c=e[1],p=r[0],f=r[1],d=(f-c)/(p-h),_=void 0,g=void 0;o&Q.ABOVE&&!(i&Q.ABOVE)&&(n=(_=p-(f-l)/d)>=a&&_<=u),n||!(o&Q.RIGHT)||i&Q.RIGHT||(n=(g=f-(p-u)*d)>=s&&g<=l),n||!(o&Q.BELOW)||i&Q.BELOW||(n=(_=p-(f-s)/d)>=a&&_<=u),n||!(o&Q.LEFT)||i&Q.LEFT||(n=(g=f-(p-a)*d)>=s&&g<=l)}return n}(i,t,e)}))))}function Fr(t,e,r,n,i){if(!function(t,e,r,n,i){return!!Mr(t,e,r,n,i)||(!!Cr(t,e,r,n,i[0],i[1])||(!!Cr(t,e,r,n,i[0],i[3])||(!!Cr(t,e,r,n,i[2],i[1])||!!Cr(t,e,r,n,i[2],i[3]))))}(t,e,r[0],n,i))return!1;if(1===r.length)return!0;for(var o=1,a=r.length;o0}function Gr(t,e,r,n,i){for(var o=void 0!==i&&i,a=0,s=r.length;a0&&this.points_[r+2]>t;)r-=3;var n=this.points_[e+2]-this.points_[r+2];if(n<1e3/60)return!1;var i=this.points_[e]-this.points_[r],o=this.points_[e+1]-this.points_[r+1];return this.angle_=Math.atan2(o,i),this.initialVelocity_=Math.sqrt(i*i+o*o)/n,this.initialVelocity_>this.minVelocity_},t.prototype.getDistance=function(){return(this.minVelocity_-this.initialVelocity_)/this.decay_},t.prototype.getAngle=function(){return this.angle_},t}(),Jr=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Qr=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.map=r,i.frameState=void 0!==n?n:null,i}return Jr(e,t),e}(M),$r=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),tn=function(t){function e(e,r,n,i,o){var a=t.call(this,e,r,o)||this;return a.originalEvent=n,a.pixel_=null,a.coordinate_=null,a.dragging=void 0!==i&&i,a}return $r(e,t),Object.defineProperty(e.prototype,"pixel",{get:function(){return this.pixel_||(this.pixel_=this.map.getEventPixel(this.originalEvent)),this.pixel_},set:function(t){this.pixel_=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"coordinate",{get:function(){return this.coordinate_||(this.coordinate_=this.map.getCoordinateFromPixel(this.pixel)),this.coordinate_},set:function(t){this.coordinate_=t},enumerable:!0,configurable:!0}),e.prototype.preventDefault=function(){t.prototype.preventDefault.call(this),this.originalEvent.preventDefault()},e.prototype.stopPropagation=function(){t.prototype.stopPropagation.call(this),this.originalEvent.stopPropagation()},e}(Qr),en=(r(1),"undefined"!=typeof navigator?navigator.userAgent.toLowerCase():""),rn=-1!==en.indexOf("firefox"),nn=(-1!==en.indexOf("safari")&&en.indexOf("chrom"),-1!==en.indexOf("webkit")&&-1==en.indexOf("edge")),on=-1!==en.indexOf("macintosh"),an=window.devicePixelRatio||1,sn="undefined"!=typeof Image&&Image.prototype.decode,un=function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("_",null,e),window.removeEventListener("_",null,e)}catch(t){}return t}(),ln={SINGLECLICK:"singleclick",CLICK:N.CLICK,DBLCLICK:N.DBLCLICK,POINTERDRAG:"pointerdrag",POINTERMOVE:"pointermove",POINTERDOWN:"pointerdown",POINTERUP:"pointerup",POINTEROVER:"pointerover",POINTEROUT:"pointerout",POINTERENTER:"pointerenter",POINTERLEAVE:"pointerleave",POINTERCANCEL:"pointercancel"},hn=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),cn=function(t){function e(e,r,n,i,o){var a=t.call(this,e,r,n,i,o)||this;return a.pointerEvent=n,a}return hn(e,t),e}(tn),pn={POINTERMOVE:"pointermove",POINTERDOWN:"pointerdown",POINTERUP:"pointerup",POINTEROVER:"pointerover",POINTEROUT:"pointerout",POINTERENTER:"pointerenter",POINTERLEAVE:"pointerleave",POINTERCANCEL:"pointercancel"},fn=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),dn=function(t){function e(e,r){var n=t.call(this,e)||this;n.map_=e,n.clickTimeoutId_,n.dragging_=!1,n.dragListenerKeys_=[],n.moveTolerance_=r?r*an:an,n.down_=null;var i=n.map_.getViewport();return n.activePointers_=0,n.trackedTouches_={},n.element_=i,n.pointerdownListenerKey_=g(i,pn.POINTERDOWN,n.handlePointerDown_,n),n.originalPointerMoveEvent_,n.relayedListenerKey_=g(i,pn.POINTERMOVE,n.relayEvent_,n),n.boundHandleTouchMove_=n.handleTouchMove_.bind(n),n.element_.addEventListener(N.TOUCHMOVE,n.boundHandleTouchMove_,!!un&&{passive:!1}),n}return fn(e,t),e.prototype.emulateClick_=function(t){var e=new cn(ln.CLICK,this.map_,t);this.dispatchEvent(e),void 0!==this.clickTimeoutId_?(clearTimeout(this.clickTimeoutId_),this.clickTimeoutId_=void 0,e=new cn(ln.DBLCLICK,this.map_,t),this.dispatchEvent(e)):this.clickTimeoutId_=setTimeout(function(){this.clickTimeoutId_=void 0;var e=new cn(ln.SINGLECLICK,this.map_,t);this.dispatchEvent(e)}.bind(this),250)},e.prototype.updateActivePointers_=function(t){var e=t;e.type==ln.POINTERUP||e.type==ln.POINTERCANCEL?delete this.trackedTouches_[e.pointerId]:e.type==ln.POINTERDOWN&&(this.trackedTouches_[e.pointerId]=!0),this.activePointers_=Object.keys(this.trackedTouches_).length},e.prototype.handlePointerUp_=function(t){this.updateActivePointers_(t);var e=new cn(ln.POINTERUP,this.map_,t);this.dispatchEvent(e),e.propagationStopped||this.dragging_||!this.isMouseActionButton_(t)||this.emulateClick_(this.down_),0===this.activePointers_&&(this.dragListenerKeys_.forEach(v),this.dragListenerKeys_.length=0,this.dragging_=!1,this.down_=null)},e.prototype.isMouseActionButton_=function(t){return 0===t.button},e.prototype.handlePointerDown_=function(t){this.updateActivePointers_(t);var e=new cn(ln.POINTERDOWN,this.map_,t);this.dispatchEvent(e),this.down_=t,0===this.dragListenerKeys_.length&&this.dragListenerKeys_.push(g(document,ln.POINTERMOVE,this.handlePointerMove_,this),g(document,ln.POINTERUP,this.handlePointerUp_,this),g(this.element_,ln.POINTERCANCEL,this.handlePointerUp_,this))},e.prototype.handlePointerMove_=function(t){if(this.isMoving_(t)){this.dragging_=!0;var e=new cn(ln.POINTERDRAG,this.map_,t,this.dragging_);this.dispatchEvent(e)}},e.prototype.relayEvent_=function(t){this.originalPointerMoveEvent_=t;var e=!(!this.down_||!this.isMoving_(t));this.dispatchEvent(new cn(t.type,this.map_,t,e))},e.prototype.handleTouchMove_=function(t){this.originalPointerMoveEvent_.defaultPrevented&&t.preventDefault()},e.prototype.isMoving_=function(t){return this.dragging_||Math.abs(t.clientX-this.down_.clientX)>this.moveTolerance_||Math.abs(t.clientY-this.down_.clientY)>this.moveTolerance_},e.prototype.disposeInternal=function(){this.relayedListenerKey_&&(v(this.relayedListenerKey_),this.relayedListenerKey_=null),this.element_.removeEventListener(N.TOUCHMOVE,this.boundHandleTouchMove_),this.pointerdownListenerKey_&&(v(this.pointerdownListenerKey_),this.pointerdownListenerKey_=null),this.dragListenerKeys_.forEach(v),this.dragListenerKeys_.length=0,this.element_=null,t.prototype.disposeInternal.call(this)},e}(A),_n="postrender",gn="movestart",yn="moveend",vn={LAYERGROUP:"layergroup",SIZE:"size",TARGET:"target",VIEW:"view"},mn="prerender",En="postrender",Tn="precompose",Sn="postcompose",xn="rendercomplete",wn={IDLE:0,LOADING:1,LOADED:2,ERROR:3,EMPTY:4},Rn=function(){function t(t,e){this.priorityFunction_=t,this.keyFunction_=e,this.elements_=[],this.priorities_=[],this.queuedElements_={}}return t.prototype.clear=function(){this.elements_.length=0,this.priorities_.length=0,f(this.queuedElements_)},t.prototype.dequeue=function(){var t=this.elements_,e=this.priorities_,r=t[0];1==t.length?(t.length=0,e.length=0):(t[0]=t.pop(),e[0]=e.pop(),this.siftUp_(0));var n=this.keyFunction_(r);return delete this.queuedElements_[n],r},t.prototype.enqueue=function(t){K(!(this.keyFunction_(t)in this.queuedElements_),31);var e=this.priorityFunction_(t);return e!=1/0&&(this.elements_.push(t),this.priorities_.push(e),this.queuedElements_[this.keyFunction_(t)]=!0,this.siftDown_(0,this.elements_.length-1),!0)},t.prototype.getCount=function(){return this.elements_.length},t.prototype.getLeftChildIndex_=function(t){return 2*t+1},t.prototype.getRightChildIndex_=function(t){return 2*t+2},t.prototype.getParentIndex_=function(t){return t-1>>1},t.prototype.heapify_=function(){var t;for(t=(this.elements_.length>>1)-1;t>=0;t--)this.siftUp_(t)},t.prototype.isEmpty=function(){return 0===this.elements_.length},t.prototype.isKeyQueued=function(t){return t in this.queuedElements_},t.prototype.isQueued=function(t){return this.isKeyQueued(this.keyFunction_(t))},t.prototype.siftUp_=function(t){for(var e=this.elements_,r=this.priorities_,n=e.length,i=e[t],o=r[t],a=t;t>1;){var s=this.getLeftChildIndex_(t),u=this.getRightChildIndex_(t),l=ut;){var a=this.getParentIndex_(e);if(!(n[a]>o))break;r[e]=r[a],n[e]=n[a],e=a}r[e]=i,n[e]=o},t.prototype.reprioritize=function(){var t,e,r,n=this.priorityFunction_,i=this.elements_,o=this.priorities_,a=0,s=i.length;for(e=0;e0;)n=(r=this.dequeue()[0]).getKey(),r.getState()!==wn.IDLE||n in this.tilesLoadingKeys_||(this.tilesLoadingKeys_[n]=!0,++this.tilesLoading_,++i,r.load())},e}(Rn),Pn=42,In=256;function bn(t,e,r){return function(n,i,o,a){if(n){var s=e?0:o[0]*i,u=e?0:o[1]*i,l=t[0]+s/2,h=t[2]-s/2,c=t[1]+u/2,p=t[3]-u/2;l>h&&(h=l=(h+l)/2),c>p&&(p=c=(p+c)/2);var f=kt(n[0],l,h),d=kt(n[1],c,p),_=30*i;return a&&r&&(f+=-_*Math.log(1+Math.max(0,l-n[0])/_)+_*Math.log(1+Math.max(0,n[0]-h)/_),d+=-_*Math.log(1+Math.max(0,c-n[1])/_)+_*Math.log(1+Math.max(0,n[1]-p)/_)),[f,d]}}}function Ln(t){return t}function Mn(t,e,r,n){var i=It(e)/r[0],o=Rt(e)/r[1];return n?Math.min(t,Math.max(i,o)):Math.min(t,Math.min(i,o))}function Fn(t,e,r){var n=Math.min(t,e);return n*=Math.log(1+50*Math.max(0,t/e-1))/50+1,r&&(n=Math.max(n,r),n/=Math.log(1+50*Math.max(0,r/t-1))/50+1),kt(n,r/2,2*e)}function An(t,e,r,n,i){return function(o,a,s,u){if(void 0!==o){var l=n?Mn(t,n,s,i):t;return(void 0===r||r)&&u?Fn(o,l,e):kt(o,e,l)}}}function Nn(t){return void 0!==t?0:void 0}function Gn(t){return void 0!==t?t:void 0}var Dn=0,jn=1,kn="center",Un="resolution",Yn="rotation";function Bn(t,e,r){var n=void 0!==r?t.toFixed(r):""+t,i=n.indexOf(".");return(i=-1===i?n.length:i)>e?n:new Array(1+e-i).join("0")+n}function zn(t,e){for(var r=(""+t).split("."),n=(""+e).split("."),i=0;ia)return 1;if(a>o)return-1}return 0}function Xn(t,e){return t[0]+=+e[0],t[1]+=+e[1],t}function Vn(t,e){var r,n,i=t[0],o=t[1],a=e[0],s=e[1],u=a[0],l=a[1],h=s[0],c=s[1],p=h-u,f=c-l,d=0===p&&0===f?0:(p*(i-u)+f*(o-l))/(p*p+f*f||0);return d<=0?(r=u,n=l):d>=1?(r=h,n=c):(r=u+d*p,n=l+d*f),[r,n]}function Wn(t,e,r){var n=Vt(e+180,360)-180,i=Math.abs(3600*n),o=r||0,a=Math.pow(10,o),s=Math.floor(i/3600),u=Math.floor((i-3600*s)/60),l=i-3600*s-60*u;return(l=Math.ceil(l*a)/a)>=60&&(l=0,u+=1),u>=60&&(u=0,s+=1),s+"° "+Bn(u,2)+"′ "+Bn(l,2,o)+"″"+(0==n?"":" "+t.charAt(n<0?1:0))}function Zn(t,e,r){return t?e.replace("{x}",t[0].toFixed(r)).replace("{y}",t[1].toFixed(r)):""}function Kn(t,e){for(var r=!0,n=t.length-1;n>=0;--n)if(t[n]!=e[n]){r=!1;break}return r}function Hn(t,e){var r=Math.cos(e),n=Math.sin(e),i=t[0]*r-t[1]*n,o=t[1]*r+t[0]*n;return t[0]=i,t[1]=o,t}function qn(t,e){return t[0]*=e,t[1]*=e,t}function Jn(t,e){var r=t[0]-e[0],n=t[1]-e[1];return r*r+n*n}function Qn(t,e){return Math.sqrt(Jn(t,e))}function $n(t,e){return Jn(t,Vn(t,e))}function ti(t,e){return Zn(t,"{x}, {y}",e)}function ei(t){return Math.pow(t,3)}function ri(t){return 1-ei(1-t)}function ni(t){return 3*t*t-2*t*t*t}function ii(t){return t}var oi=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),ai=0;function si(t,e){setTimeout(function(){t(e)},0)}function ui(t){return!(t.sourceCenter&&t.targetCenter&&!Kn(t.sourceCenter,t.targetCenter))&&(t.sourceResolution===t.targetResolution&&t.sourceRotation===t.targetRotation)}var li=function(t){function e(e){var r=t.call(this)||this,n=p({},e);return r.hints_=[0,0],r.animations_=[],r.updateAnimationKey_,r.projection_=Oe(n.projection,"EPSG:3857"),r.viewportSize_=[100,100],r.targetCenter_=null,r.targetResolution_,r.targetRotation_,r.cancelAnchor_=void 0,n.center&&(n.center=Ue(n.center,r.projection_)),n.extent&&(n.extent=Be(n.extent,r.projection_)),r.applyOptions_(n),r}return oi(e,t),e.prototype.applyOptions_=function(t){var e=function(t){var e,r,n,i=void 0!==t.minZoom?t.minZoom:ai,o=void 0!==t.maxZoom?t.maxZoom:28,a=void 0!==t.zoomFactor?t.zoomFactor:2,s=void 0!==t.multiWorld&&t.multiWorld,u=void 0===t.smoothResolutionConstraint||t.smoothResolutionConstraint,l=void 0!==t.showFullExtent&&t.showFullExtent,h=Oe(t.projection,"EPSG:3857"),c=h.getExtent(),p=t.constrainOnlyCenter,f=t.extent;s||f||!h.isGlobal()||(p=!1,f=c);if(void 0!==t.resolutions){var d=t.resolutions;r=d[i],n=void 0!==d[o]?d[o]:d[d.length-1],e=t.constrainResolution?function(t,e,r,n){return function(i,o,a,s){if(void 0!==i){var u=t[0],l=t[t.length-1],h=r?Mn(u,r,a,n):u;if(s)return void 0===e||e?Fn(i,h,l):kt(i,l,h);var c=Math.min(h,i),p=Math.floor(S(t,c,o));return t[p]>h&&p1&&"function"==typeof arguments[r-1]&&(e=arguments[r-1],--r),!this.isDef()){var n=arguments[r-1];return n.center&&this.setCenterInternal(n.center),void 0!==n.zoom&&this.setZoom(n.zoom),void 0!==n.rotation&&this.setRotation(n.rotation),void(e&&si(e,!0))}for(var i=Date.now(),o=this.targetCenter_.slice(),a=this.targetResolution_,s=this.targetRotation_,u=[],l=0;l0},e.prototype.getInteracting=function(){return this.hints_[jn]>0},e.prototype.cancelAnimations=function(){var t;this.setHint(Dn,-this.hints_[Dn]);for(var e=0,r=this.animations_.length;e=0;--r){for(var n=this.animations_[r],i=!0,o=0,a=n.length;o0?u/s.duration:1;l>=1?(s.complete=!0,l=1):i=!1;var h=s.easing(l);if(s.sourceCenter){var c=s.sourceCenter[0],p=s.sourceCenter[1],f=c+h*(s.targetCenter[0]-c),d=p+h*(s.targetCenter[1]-p);this.targetCenter_=[f,d]}if(s.sourceResolution&&s.targetResolution){var _=1===h?s.targetResolution:s.sourceResolution+h*(s.targetResolution-s.sourceResolution);if(s.anchor){var g=this.getViewportSize_(this.getRotation()),y=this.constraints_.resolution(_,0,g,!0);this.targetCenter_=this.calculateCenterZoom(y,s.anchor)}this.targetResolution_=_,this.applyTargetState_(!0)}if(void 0!==s.sourceRotation&&void 0!==s.targetRotation){var v=1===h?Vt(s.targetRotation+Math.PI,2*Math.PI)-Math.PI:s.sourceRotation+h*(s.targetRotation-s.sourceRotation);if(s.anchor){var m=this.constraints_.rotation(v,!0);this.targetCenter_=this.calculateCenterRotate(m,s.anchor)}this.targetRotation_=v}if(this.applyTargetState_(!0),e=!0,!s.complete)break}}if(i){this.animations_[r]=null,this.setHint(Dn,-1);var E=n[0].callback;E&&si(E,!0)}}this.animations_=this.animations_.filter(Boolean),e&&void 0===this.updateAnimationKey_&&(this.updateAnimationKey_=requestAnimationFrame(this.updateAnimations_.bind(this)))}},e.prototype.calculateCenterRotate=function(t,e){var r,n=this.getCenterInternal();return void 0!==n&&(Hn(r=[n[0]-e[0],n[1]-e[1]],t-this.getRotation()),Xn(r,e)),r},e.prototype.calculateCenterZoom=function(t,e){var r,n=this.getCenterInternal(),i=this.getResolution();void 0!==n&&void 0!==i&&(r=[e[0]-t*(e[0]-n[0])/i,e[1]-t*(e[1]-n[1])/i]);return r},e.prototype.getViewportSize_=function(t){var e=this.viewportSize_;if(t){var r=e[0],n=e[1];return[Math.abs(r*Math.cos(t))+Math.abs(n*Math.sin(t)),Math.abs(r*Math.sin(t))+Math.abs(n*Math.cos(t))]}return e},e.prototype.setViewportSize=function(t){this.viewportSize_=Array.isArray(t)?t.slice():[100,100]},e.prototype.getCenter=function(){var t=this.getCenterInternal();return t?ke(t,this.getProjection()):t},e.prototype.getCenterInternal=function(){return this.get(kn)},e.prototype.getConstraints=function(){return this.constraints_},e.prototype.getHints=function(t){return void 0!==t?(t[0]=this.hints_[0],t[1]=this.hints_[1],t):this.hints_.slice()},e.prototype.calculateExtent=function(t){return Ye(this.calculateExtentInternal(t),this.getProjection())},e.prototype.calculateExtentInternal=function(t){var e=t||this.getViewportSize_(),r=this.getCenterInternal();K(r,1);var n=this.getResolution();K(void 0!==n,2);var i=this.getRotation();return K(void 0!==i,3),wt(r,n,i,e)},e.prototype.getMaxResolution=function(){return this.maxResolution_},e.prototype.getMinResolution=function(){return this.minResolution_},e.prototype.getMaxZoom=function(){return this.getZoomForResolution(this.minResolution_)},e.prototype.setMaxZoom=function(t){this.applyOptions_(this.getUpdatedOptions_({maxZoom:t}))},e.prototype.getMinZoom=function(){return this.getZoomForResolution(this.maxResolution_)},e.prototype.setMinZoom=function(t){this.applyOptions_(this.getUpdatedOptions_({minZoom:t}))},e.prototype.setConstrainResolution=function(t){this.applyOptions_(this.getUpdatedOptions_({constrainResolution:t}))},e.prototype.getProjection=function(){return this.projection_},e.prototype.getResolution=function(){return this.get(Un)},e.prototype.getResolutions=function(){return this.resolutions_},e.prototype.getResolutionForExtent=function(t,e){return this.getResolutionForExtentInternal(Be(t,this.getProjection()),e)},e.prototype.getResolutionForExtentInternal=function(t,e){var r=e||this.getViewportSize_(),n=It(t)/r[0],i=Rt(t)/r[1];return Math.max(n,i)},e.prototype.getResolutionForValueFunction=function(t){var e=t||2,r=this.getConstrainedResolution(this.maxResolution_),n=this.minResolution_,i=Math.log(r/n)/Math.log(e);return function(t){return r/Math.pow(e,t*i)}},e.prototype.getRotation=function(){return this.get(Yn)},e.prototype.getValueForResolutionFunction=function(t){var e=Math.log(t||2),r=this.getConstrainedResolution(this.maxResolution_),n=this.minResolution_,i=Math.log(r/n)/e;return function(t){return Math.log(r/t)/e/i}},e.prototype.getState=function(){var t=this.getCenterInternal(),e=this.getProjection(),r=this.getResolution(),n=this.getRotation();return{center:t.slice(0),projection:void 0!==e?e:null,resolution:r,rotation:n,zoom:this.getZoom()}},e.prototype.getZoom=function(){var t,e=this.getResolution();return void 0!==e&&(t=this.getZoomForResolution(e)),t},e.prototype.getZoomForResolution=function(t){var e,r,n=this.minZoom_||0;if(this.resolutions_){var i=S(this.resolutions_,t,1);n=i,e=this.resolutions_[i],r=i==this.resolutions_.length-1?2:e/this.resolutions_[i+1]}else e=this.maxResolution_,r=this.zoomFactor_;return n+Math.log(e/t)/Math.log(r)},e.prototype.getResolutionForZoom=function(t){if(this.resolutions_){if(this.resolutions_.length<=1)return 0;var e=kt(Math.floor(t),0,this.resolutions_.length-2),r=this.resolutions_[e]/this.resolutions_[e+1];return this.resolutions_[e]/Math.pow(r,kt(t-e,0,1))}return this.maxResolution_/Math.pow(this.zoomFactor_,t-this.minZoom_)},e.prototype.fit=function(t,e){var r,n=p({size:this.getViewportSize_()},e||{});if(K(Array.isArray(t)||"function"==typeof t.getSimplifiedGeometry,24),Array.isArray(t))K(!Lt(t),25),r=zr(i=Be(t,this.getProjection()));else if(t.getType()===Nt.CIRCLE){var i;(r=zr(i=Be(t.getExtent(),this.getProjection()))).rotate(this.getRotation(),St(i))}else{var o=je();r=o?t.clone().transform(o,this.getProjection()):t}this.fitInternal(r,n)},e.prototype.fitInternal=function(t,e){var r=e||{},n=r.size;n||(n=this.getViewportSize_());var i,o=void 0!==r.padding?r.padding:[0,0,0,0],a=void 0!==r.nearest&&r.nearest;i=void 0!==r.minResolution?r.minResolution:void 0!==r.maxZoom?this.getResolutionForZoom(r.maxZoom):0;for(var s=t.getFlatCoordinates(),u=this.getRotation(),l=Math.cos(-u),h=Math.sin(-u),c=1/0,p=1/0,f=-1/0,d=-1/0,_=t.getStride(),g=0,y=s.length;g=0;n--){var i=r[n];if(i.getActive())if(!i.handleEvent(t))break}}}},e.prototype.handlePostRender=function(){var t=this.frameState_,e=this.tileQueue_;if(!e.isEmpty()){var r=this.maxTilesLoading_,n=r;if(t){var i=t.viewHints;if(i[Dn]||i[jn]){var o=!sn&&Date.now()-t.time>8;r=o?0:8,n=o?0:2}}e.getTilesLoading()0&&t[1]>0}(e)&&r&&r.isDef()){var o=r.getHints(this.frameState_?this.frameState_.viewHints:void 0),a=r.getState();i={animate:!1,coordinateToPixelTransform:this.coordinateToPixelTransform_,declutterItems:n?n.declutterItems:[],extent:wt(a.center,a.resolution,a.rotation,e),index:this.frameIndex_++,layerIndex:0,layerStatesArray:this.getLayerGroup().getLayerStatesArray(),pixelRatio:this.pixelRatio_,pixelToCoordinateTransform:this.pixelToCoordinateTransform_,postRenderFunctions:[],size:e,tileQueue:this.tileQueue_,time:t,usedTiles:{},viewState:a,viewHints:o,wantedTiles:{}}}if(this.frameState_=i,this.renderer_.renderFrame(i),i){if(i.animate&&this.render(),Array.prototype.push.apply(this.postRenderFunctions_,i.postRenderFunctions),n)(!this.previousExtent_||!Lt(this.previousExtent_)&&!pt(i.extent,this.previousExtent_))&&(this.dispatchEvent(new Qr(gn,this,n)),this.previousExtent_=lt(this.previousExtent_));this.previousExtent_&&!i.viewHints[Dn]&&!i.viewHints[jn]&&!pt(i.extent,this.previousExtent_)&&(this.dispatchEvent(new Qr(yn,this,i)),et(i.extent,this.previousExtent_))}this.dispatchEvent(new Qr(_n,this,i)),this.postRenderTimeoutHandle_=setTimeout(this.handlePostRender.bind(this),0)},e.prototype.setLayerGroup=function(t){this.set(vn.LAYERGROUP,t)},e.prototype.setSize=function(t){this.set(vn.SIZE,t)},e.prototype.setTarget=function(t){this.set(vn.TARGET,t)},e.prototype.setView=function(t){this.set(vn.VIEW,t)},e.prototype.updateSize=function(){var t=this.getTargetElement();if(t){var e=getComputedStyle(t);this.setSize([t.offsetWidth-parseFloat(e.borderLeftWidth)-parseFloat(e.paddingLeft)-parseFloat(e.paddingRight)-parseFloat(e.borderRightWidth),t.offsetHeight-parseFloat(e.borderTopWidth)-parseFloat(e.paddingTop)-parseFloat(e.paddingBottom)-parseFloat(e.borderBottomWidth)])}else this.setSize(void 0);this.updateViewportSize_()},e.prototype.updateViewportSize_=function(){var t=this.getView();if(t){var e=void 0,r=getComputedStyle(this.viewport_);r.width&&r.height&&(e=[parseInt(r.width,10),parseInt(r.height,10)]),t.setViewportSize(e)}},e}(z),bi=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Li=function(t){function e(e){var r=t.call(this)||this;return r.element=e.element?e.element:null,r.target_=null,r.map_=null,r.listenerKeys=[],r.render_=e.render?e.render:b,e.target&&r.setTarget(e.target),r}return bi(e,t),e.prototype.disposeInternal=function(){di(this.element),t.prototype.disposeInternal.call(this)},e.prototype.getMap=function(){return this.map_},e.prototype.setMap=function(t){this.map_&&di(this.element);for(var e=0,r=this.listenerKeys.length;e=t.maxResolution)return!1;var n=e.zoom;return n>t.minZoom&&n<=t.maxZoom}var Yi=function(t){function e(e){var r=this,n=p({},e);delete n.source,(r=t.call(this,n)||this).mapPrecomposeKey_=null,r.mapRenderKey_=null,r.sourceChangeKey_=null,r.renderer_=null,e.render&&(r.render=e.render),e.map&&r.setMap(e.map),r.addEventListener(B(gi.SOURCE),r.handleSourcePropertyChange_);var i=e.source?e.source:null;return r.setSource(i),r}return ki(e,t),e.prototype.getLayersArray=function(t){var e=t||[];return e.push(this),e},e.prototype.getLayerStatesArray=function(t){var e=t||[];return e.push(this.getLayerState()),e},e.prototype.getSource=function(){return this.get(gi.SOURCE)||null},e.prototype.getSourceState=function(){var t=this.getSource();return t?t.getState():mi.UNDEFINED},e.prototype.handleSourceChange_=function(){this.changed()},e.prototype.handleSourcePropertyChange_=function(){this.sourceChangeKey_&&(v(this.sourceChangeKey_),this.sourceChangeKey_=null);var t=this.getSource();t&&(this.sourceChangeKey_=g(t,N.CHANGE,this.handleSourceChange_,this)),this.changed()},e.prototype.getFeatures=function(t){return this.renderer_.getFeatures(t)},e.prototype.render=function(t,e){var r=this.getRenderer();if(r.prepareFrame(t))return r.renderFrame(t,e)},e.prototype.setMap=function(t){this.mapPrecomposeKey_&&(v(this.mapPrecomposeKey_),this.mapPrecomposeKey_=null),t||this.changed(),this.mapRenderKey_&&(v(this.mapRenderKey_),this.mapRenderKey_=null),t&&(this.mapPrecomposeKey_=g(t,Tn,function(t){var e=t.frameState.layerStatesArray,r=this.getLayerState(!1);K(!e.some(function(t){return t.layer===r.layer}),67),e.push(r)},this),this.mapRenderKey_=g(this,N.CHANGE,t.render,t),this.changed())},e.prototype.setSource=function(t){this.set(gi.SOURCE,t)},e.prototype.getRenderer=function(){return this.renderer_||(this.renderer_=this.createRenderer()),this.renderer_},e.prototype.hasRenderer=function(){return!!this.renderer_},e.prototype.createRenderer=function(){return null},e.prototype.disposeInternal=function(){this.setSource(null),t.prototype.disposeInternal.call(this)},e}(vi),Bi=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function zi(t){this.updateElement_(t.frameState)}var Xi=function(t){function e(e){var r=this,n=e||{};(r=t.call(this,{element:document.createElement("div"),render:n.render||zi,target:n.target})||this).ulElement_=document.createElement("ul"),r.collapsed_=void 0===n.collapsed||n.collapsed,r.overrideCollapsible_=void 0!==n.collapsible,r.collapsible_=void 0===n.collapsible||n.collapsible,r.collapsible_||(r.collapsed_=!1);var i=void 0!==n.className?n.className:"ol-attribution",o=void 0!==n.tipLabel?n.tipLabel:"Attributions",a=void 0!==n.collapseLabel?n.collapseLabel:"»";"string"==typeof a?(r.collapseLabel_=document.createElement("span"),r.collapseLabel_.textContent=a):r.collapseLabel_=a;var s=void 0!==n.label?n.label:"i";"string"==typeof s?(r.label_=document.createElement("span"),r.label_.textContent=s):r.label_=s;var u=r.collapsible_&&!r.collapsed_?r.collapseLabel_:r.label_,l=document.createElement("button");l.setAttribute("type","button"),l.title=o,l.appendChild(u),l.addEventListener(N.CLICK,r.handleClick_.bind(r),!1);var h=i+" "+Ai+" "+Gi+(r.collapsed_&&r.collapsible_?" "+Di:"")+(r.collapsible_?"":" ol-uncollapsible"),c=r.element;return c.className=h,c.appendChild(r.ulElement_),c.appendChild(l),r.renderedAttributions_=[],r.renderedVisible_=!0,r}return Bi(e,t),e.prototype.collectSourceAttributions_=function(t){for(var e={},r=[],n=t.layerStatesArray,i=0,o=n.length;i0;if(this.renderedVisible_!=r&&(this.element.style.display=r?"":"none",this.renderedVisible_=r),!O(e,this.renderedAttributions_)){_i(this.ulElement_);for(var n=0,i=e.length;n0&&e%(2*Math.PI)!=0?t.animate({rotation:0,duration:this.duration_,easing:ri}):t.setRotation(0))}},e}(Li),Ki=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Hi=function(t){function e(e){var r=this,n=e||{};r=t.call(this,{element:document.createElement("div"),target:n.target})||this;var i=void 0!==n.className?n.className:"ol-zoom",o=void 0!==n.delta?n.delta:1,a=void 0!==n.zoomInLabel?n.zoomInLabel:"+",s=void 0!==n.zoomOutLabel?n.zoomOutLabel:"−",u=void 0!==n.zoomInTipLabel?n.zoomInTipLabel:"Zoom in",l=void 0!==n.zoomOutTipLabel?n.zoomOutTipLabel:"Zoom out",h=document.createElement("button");h.className=i+"-in",h.setAttribute("type","button"),h.title=u,h.appendChild("string"==typeof a?document.createTextNode(a):a),h.addEventListener(N.CLICK,r.handleClick_.bind(r,o),!1);var c=document.createElement("button");c.className=i+"-out",c.setAttribute("type","button"),c.title=l,c.appendChild("string"==typeof s?document.createTextNode(s):s),c.addEventListener(N.CLICK,r.handleClick_.bind(r,-o),!1);var p=i+" "+Ai+" "+Gi,f=r.element;return f.className=p,f.appendChild(h),f.appendChild(c),r.duration_=void 0!==n.duration?n.duration:250,r}return Ki(e,t),e.prototype.handleClick_=function(t,e){e.preventDefault(),this.zoomByDelta_(t)},e.prototype.zoomByDelta_=function(t){var e=this.getMap().getView();if(e){var r=e.getZoom();if(void 0!==r){var n=e.getConstrainedZoom(r+t);this.duration_>0?(e.getAnimating()&&e.cancelAnimations(),e.animate({zoom:n,duration:this.duration_,easing:ri})):e.setZoom(n)}}},e}(Li);function qi(t){var e=t||{},r=new Z;return(void 0===e.zoom||e.zoom)&&r.push(new Hi(e.zoomOptions)),(void 0===e.rotate||e.rotate)&&r.push(new Zi(e.rotateOptions)),(void 0===e.attribution||e.attribution)&&r.push(new Xi(e.attributionOptions)),r}var Ji={ACTIVE:"active"},Qi=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function $i(t,e,r,n){var i=t.getZoom();if(void 0!==i){var o=t.getConstrainedZoom(i+e),a=t.getResolutionForZoom(o);t.getAnimating()&&t.cancelAnimations(),t.animate({resolution:a,anchor:r,duration:void 0!==n?n:250,easing:ri})}}var to=function(t){function e(e){var r=t.call(this)||this;return e.handleEvent&&(r.handleEvent=e.handleEvent),r.map_=null,r.setActive(!0),r}return Qi(e,t),e.prototype.getActive=function(){return this.get(Ji.ACTIVE)},e.prototype.getMap=function(){return this.map_},e.prototype.handleEvent=function(t){return!0},e.prototype.setActive=function(t){this.set(Ji.ACTIVE,t)},e.prototype.setMap=function(t){this.map_=t},e}(z),eo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function ro(t){var e=!1;if(t.type==ln.DBLCLICK){var r=t.originalEvent,n=t.map,i=t.coordinate,o=r.shiftKey?-this.delta_:this.delta_;$i(n.getView(),o,i,this.duration_),t.preventDefault(),e=!0}return!e}var no=function(t){function e(e){var r=t.call(this,{handleEvent:ro})||this,n=e||{};return r.delta_=n.delta?n.delta:1,r.duration_=void 0!==n.duration?n.duration:250,r}return eo(e,t),e}(to),io=function(t){var e=t.originalEvent;return e.altKey&&!(e.metaKey||e.ctrlKey)&&!e.shiftKey},oo=function(t){var e=t.originalEvent;return e.altKey&&!(e.metaKey||e.ctrlKey)&&e.shiftKey},ao=function(t){return t.target.getTargetElement()===document.activeElement},so=P,uo=function(t){var e=t.originalEvent;return 0==e.button&&!(nn&&on&&e.ctrlKey)},lo=I,ho=function(t){return t.type==ln.SINGLECLICK},co=function(t){var e=t.originalEvent;return!e.altKey&&!(e.metaKey||e.ctrlKey)&&!e.shiftKey},po=function(t){var e=t.originalEvent;return!e.altKey&&!(e.metaKey||e.ctrlKey)&&e.shiftKey},fo=function(t){var e=t.originalEvent.target.tagName;return"INPUT"!==e&&"SELECT"!==e&&"TEXTAREA"!==e},_o=function(t){var e=t.pointerEvent;return K(void 0!==e,56),"mouse"==e.pointerType},go=function(t){var e=t.pointerEvent;return K(void 0!==e,56),e.isPrimary&&0===e.button},yo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function vo(t){for(var e=t.length,r=0,n=0,i=0;i0}}else if(t.type==ln.POINTERDOWN){var n=this.handleDownEvent(t);this.handlingDownUpSequence=n,e=this.stopDown(n)}else t.type==ln.POINTERMOVE&&this.handleMoveEvent(t);return!e},e.prototype.handleMoveEvent=function(t){},e.prototype.handleUpEvent=function(t){return!1},e.prototype.stopDown=function(t){return t},e.prototype.updateTrackedPointers_=function(t){if(function(t){var e=t.type;return e===ln.POINTERDOWN||e===ln.POINTERDRAG||e===ln.POINTERUP}(t)){var e=t.pointerEvent,r=e.pointerId.toString();t.type==ln.POINTERUP?delete this.trackedPointers_[r]:t.type==ln.POINTERDOWN?this.trackedPointers_[r]=e:r in this.trackedPointers_&&(this.trackedPointers_[r]=e),this.targetPointers=d(this.trackedPointers_)}},e}(to),Eo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function To(t){return co(t)&&go(t)}var So=function(t){function e(e){var r=t.call(this,{stopDown:I})||this,n=e||{};return r.kinetic_=n.kinetic,r.lastCentroid=null,r.lastPointersCount_,r.panning_=!1,r.condition_=n.condition?n.condition:To,r.noKinetic_=!1,r}return Eo(e,t),e.prototype.conditionInternal_=function(t){var e=!0;return t.map.getTargetElement().hasAttribute("tabindex")&&(e=ao(t)),e&&this.condition_(t)},e.prototype.handleDragEvent=function(t){this.panning_||(this.panning_=!0,this.getMap().getView().beginInteraction());var e=this.targetPointers,r=vo(e);if(e.length==this.lastPointersCount_){if(this.kinetic_&&this.kinetic_.update(r[0],r[1]),this.lastCentroid){var n=[this.lastCentroid[0]-r[0],r[1]-this.lastCentroid[1]],i=t.map.getView();qn(n,i.getResolution()),Hn(n,i.getRotation()),i.adjustCenterInternal(n)}}else this.kinetic_&&this.kinetic_.begin();this.lastCentroid=r,this.lastPointersCount_=e.length,t.originalEvent.preventDefault()},e.prototype.handleUpEvent=function(t){var e=t.map,r=e.getView();if(0===this.targetPointers.length){if(!this.noKinetic_&&this.kinetic_&&this.kinetic_.end()){var n=this.kinetic_.getDistance(),i=this.kinetic_.getAngle(),o=r.getCenterInternal(),a=e.getPixelFromCoordinateInternal(o),s=e.getCoordinateFromPixelInternal([a[0]-n*Math.cos(i),a[1]-n*Math.sin(i)]);r.animateInternal({center:r.getConstrainedCenter(s),duration:500,easing:ri})}return this.panning_&&(this.panning_=!1,r.endInteraction()),!1}return this.kinetic_&&this.kinetic_.begin(),this.lastCentroid=null,!0},e.prototype.handleDownEvent=function(t){if(this.targetPointers.length>0&&this.conditionInternal_(t)){var e=t.map.getView();return this.lastCentroid=null,e.getAnimating()&&e.cancelAnimations(),this.kinetic_&&this.kinetic_.begin(),this.noKinetic_=this.targetPointers.length>1,!0}return!1},e}(mo),xo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),wo=function(t){function e(e){var r=this,n=e||{};return(r=t.call(this,{stopDown:I})||this).condition_=n.condition?n.condition:oo,r.lastAngle_=void 0,r.duration_=void 0!==n.duration?n.duration:250,r}return xo(e,t),e.prototype.handleDragEvent=function(t){if(_o(t)){var e=t.map,r=e.getView();if(r.getConstraints().rotation!==Nn){var n=e.getSize(),i=t.pixel,o=Math.atan2(n[1]/2-i[1],i[0]-n[0]/2);if(void 0!==this.lastAngle_){var a=o-this.lastAngle_;r.adjustRotationInternal(-a)}this.lastAngle_=o}}},e.prototype.handleUpEvent=function(t){return!_o(t)||(t.map.getView().endInteraction(this.duration_),!1)},e.prototype.handleDownEvent=function(t){return!!_o(t)&&(!(!uo(t)||!this.condition_(t))&&(t.map.getView().beginInteraction(),this.lastAngle_=void 0,!0))},e}(mo),Ro=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Oo=function(t){function e(e){var r=t.call(this)||this;return r.geometry_=null,r.element_=document.createElement("div"),r.element_.style.position="absolute",r.element_.className="ol-box "+e,r.map_=null,r.startPixel_=null,r.endPixel_=null,r}return Ro(e,t),e.prototype.disposeInternal=function(){this.setMap(null)},e.prototype.render_=function(){var t=this.startPixel_,e=this.endPixel_,r=this.element_.style;r.left=Math.min(t[0],e[0])+"px",r.top=Math.min(t[1],e[1])+"px",r.width=Math.abs(e[0]-t[0])+"px",r.height=Math.abs(e[1]-t[1])+"px"},e.prototype.setMap=function(t){if(this.map_){this.map_.getOverlayContainer().removeChild(this.element_);var e=this.element_.style;e.left="inherit",e.top="inherit",e.width="inherit",e.height="inherit"}this.map_=t,this.map_&&this.map_.getOverlayContainer().appendChild(this.element_)},e.prototype.setPixels=function(t,e){this.startPixel_=t,this.endPixel_=e,this.createOrUpdateGeometry(),this.render_()},e.prototype.createOrUpdateGeometry=function(){var t=this.startPixel_,e=this.endPixel_,r=[t,[t[0],e[1]],e,[e[0],t[1]]].map(this.map_.getCoordinateFromPixelInternal,this.map_);r[4]=r[0].slice(),this.geometry_?this.geometry_.setCoordinates([r]):this.geometry_=new Yr([r])},e.prototype.getGeometry=function(){return this.geometry_},e}(m),Co=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Po="boxstart",Io="boxdrag",bo="boxend",Lo=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.coordinate=r,i.mapBrowserEvent=n,i}return Co(e,t),e}(M),Mo=function(t){function e(e){var r=t.call(this)||this,n=e||{};return r.box_=new Oo(n.className||"ol-dragbox"),r.minArea_=void 0!==n.minArea?n.minArea:64,r.onBoxEnd_=n.onBoxEnd?n.onBoxEnd:b,r.startPixel_=null,r.condition_=n.condition?n.condition:uo,r.boxEndCondition_=n.boxEndCondition?n.boxEndCondition:r.defaultBoxEndCondition,r}return Co(e,t),e.prototype.defaultBoxEndCondition=function(t,e,r){var n=r[0]-e[0],i=r[1]-e[1];return n*n+i*i>=this.minArea_},e.prototype.getGeometry=function(){return this.box_.getGeometry()},e.prototype.handleDragEvent=function(t){this.box_.setPixels(this.startPixel_,t.pixel),this.dispatchEvent(new Lo(Io,t.coordinate,t))},e.prototype.handleUpEvent=function(t){return this.box_.setMap(null),this.boxEndCondition_(t,this.startPixel_,t.pixel)&&(this.onBoxEnd_(t),this.dispatchEvent(new Lo(bo,t.coordinate,t))),!1},e.prototype.handleDownEvent=function(t){return!!this.condition_(t)&&(this.startPixel_=t.pixel,this.box_.setMap(t.map),this.box_.setPixels(this.startPixel_,this.startPixel_),this.dispatchEvent(new Lo(Po,t.coordinate,t)),!0)},e}(mo),Fo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function Ao(){var t,e,r=this.getMap(),n=r.getView(),i=r.getSize(),o=this.getGeometry().getExtent();if(this.out_){var a=n.calculateExtentInternal(i),s=(t=[r.getPixelFromCoordinateInternal(Et(o)),r.getPixelFromCoordinateInternal(Pt(o))],_t(lt(e),t));Mt(a,1/n.getResolutionForExtentInternal(s,i)),o=a}var u=n.getConstrainedResolution(n.getResolutionForExtentInternal(o,i)),l=n.getConstrainedCenter(St(o),u);n.animateInternal({resolution:u,center:l,duration:this.duration_,easing:ri})}var No=function(t){function e(e){var r=this,n=e||{},i=n.condition?n.condition:po;return(r=t.call(this,{condition:i,className:n.className||"ol-dragzoom",minArea:n.minArea,onBoxEnd:Ao})||this).duration_=void 0!==n.duration?n.duration:200,r.out_=void 0!==n.out&&n.out,r}return Fo(e,t),e}(Mo),Go={LEFT:37,UP:38,RIGHT:39,DOWN:40},Do=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function jo(t){var e=!1;if(t.type==N.KEYDOWN){var r=t.originalEvent.keyCode;if(this.condition_(t)&&(r==Go.DOWN||r==Go.LEFT||r==Go.RIGHT||r==Go.UP)){var n=t.map.getView(),i=n.getResolution()*this.pixelDelta_,o=0,a=0;r==Go.DOWN?a=-i:r==Go.LEFT?o=-i:r==Go.RIGHT?o=i:a=i;var s=[o,a];Hn(s,n.getRotation()),function(t,e,r){var n=t.getCenterInternal();if(n){var i=[n[0]+e[0],n[1]+e[1]];t.animateInternal({duration:void 0!==r?r:250,easing:ii,center:t.getConstrainedCenter(i)})}}(n,s,this.duration_),t.preventDefault(),e=!0}}return!e}var ko=function(t){function e(e){var r=t.call(this,{handleEvent:jo})||this,n=e||{};return r.defaultCondition_=function(t){return co(t)&&fo(t)},r.condition_=void 0!==n.condition?n.condition:r.defaultCondition_,r.duration_=void 0!==n.duration?n.duration:100,r.pixelDelta_=void 0!==n.pixelDelta?n.pixelDelta:128,r}return Do(e,t),e}(to),Uo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function Yo(t){var e=!1;if(t.type==N.KEYDOWN||t.type==N.KEYPRESS){var r=t.originalEvent.charCode;if(this.condition_(t)&&(r=="+".charCodeAt(0)||r=="-".charCodeAt(0))){var n=t.map,i=r=="+".charCodeAt(0)?this.delta_:-this.delta_;$i(n.getView(),i,void 0,this.duration_),t.preventDefault(),e=!0}}return!e}var Bo=function(t){function e(e){var r=t.call(this,{handleEvent:Yo})||this,n=e||{};return r.condition_=n.condition?n.condition:fo,r.delta_=n.delta?n.delta:1,r.duration_=void 0!==n.duration?n.duration:100,r}return Uo(e,t),e}(to),zo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Xo=function(t){function e(e){var r=this,n=e||{};return(r=t.call(this,n)||this).totalDelta_=0,r.lastDelta_=0,r.maxDelta_=void 0!==n.maxDelta?n.maxDelta:1,r.duration_=void 0!==n.duration?n.duration:250,r.timeout_=void 0!==n.timeout?n.timeout:80,r.useAnchor_=void 0===n.useAnchor||n.useAnchor,r.condition_=n.condition?n.condition:so,r.lastAnchor_=null,r.startTime_=void 0,r.eventGap_=400,r.timeoutId_,r.deltaPerZoom_=300,r}return zo(e,t),e.prototype.conditionInternal_=function(t){var e=!0;return t.map.getTargetElement().hasAttribute("tabindex")&&(e=ao(t)),e&&this.condition_(t)},e.prototype.endInteraction_=function(){this.timeoutId_=void 0,this.getMap().getView().endInteraction(void 0,this.lastDelta_?this.lastDelta_>0?1:-1:0,this.lastAnchor_)},e.prototype.handleEvent=function(t){if(!this.conditionInternal_(t))return!0;if(t.type!==N.WHEEL)return!0;t.preventDefault();var e,r=t.map,n=t.originalEvent;if(this.useAnchor_&&(this.lastAnchor_=t.coordinate),t.type==N.WHEEL&&(e=n.deltaY,rn&&n.deltaMode===WheelEvent.DOM_DELTA_PIXEL&&(e/=an),n.deltaMode===WheelEvent.DOM_DELTA_LINE&&(e*=40)),0===e)return!1;this.lastDelta_=e;var i=Date.now();void 0===this.startTime_&&(this.startTime_=i);var o=r.getView();return this.timeoutId_?clearTimeout(this.timeoutId_):o.beginInteraction(),this.timeoutId_=setTimeout(this.endInteraction_.bind(this),this.eventGap_),o.adjustZoom(-e/this.deltaPerZoom_,this.lastAnchor_),this.startTime_=i,!1},e.prototype.setMouseAnchor=function(t){this.useAnchor_=t,t||(this.lastAnchor_=null)},e}(to),Vo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Wo=function(t){function e(e){var r=this,n=e||{},i=n;return i.stopDown||(i.stopDown=I),(r=t.call(this,i)||this).anchor_=null,r.lastAngle_=void 0,r.rotating_=!1,r.rotationDelta_=0,r.threshold_=void 0!==n.threshold?n.threshold:.3,r.duration_=void 0!==n.duration?n.duration:250,r}return Vo(e,t),e.prototype.handleDragEvent=function(t){var e=0,r=this.targetPointers[0],n=this.targetPointers[1],i=Math.atan2(n.clientY-r.clientY,n.clientX-r.clientX);if(void 0!==this.lastAngle_){var o=i-this.lastAngle_;this.rotationDelta_+=o,!this.rotating_&&Math.abs(this.rotationDelta_)>this.threshold_&&(this.rotating_=!0),e=o}this.lastAngle_=i;var a=t.map,s=a.getView();if(s.getConstraints().rotation!==Nn){var u=a.getViewport().getBoundingClientRect(),l=vo(this.targetPointers);l[0]-=u.left,l[1]-=u.top,this.anchor_=a.getCoordinateFromPixelInternal(l),this.rotating_&&(a.render(),s.adjustRotationInternal(e,this.anchor_))}},e.prototype.handleUpEvent=function(t){return!(this.targetPointers.length<2)||(t.map.getView().endInteraction(this.duration_),!1)},e.prototype.handleDownEvent=function(t){if(this.targetPointers.length>=2){var e=t.map;return this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.handlingDownUpSequence||e.getView().beginInteraction(),!0}return!1},e}(mo),Zo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Ko=function(t){function e(e){var r=this,n=e||{},i=n;return i.stopDown||(i.stopDown=I),(r=t.call(this,i)||this).anchor_=null,r.duration_=void 0!==n.duration?n.duration:400,r.lastDistance_=void 0,r.lastScaleDelta_=1,r}return Zo(e,t),e.prototype.handleDragEvent=function(t){var e=1,r=this.targetPointers[0],n=this.targetPointers[1],i=r.clientX-n.clientX,o=r.clientY-n.clientY,a=Math.sqrt(i*i+o*o);void 0!==this.lastDistance_&&(e=this.lastDistance_/a),this.lastDistance_=a;var s=t.map,u=s.getView();1!=e&&(this.lastScaleDelta_=e);var l=s.getViewport().getBoundingClientRect(),h=vo(this.targetPointers);h[0]-=l.left,h[1]-=l.top,this.anchor_=s.getCoordinateFromPixelInternal(h),s.render(),u.adjustResolutionInternal(e,this.anchor_)},e.prototype.handleUpEvent=function(t){if(this.targetPointers.length<2){var e=t.map.getView(),r=this.lastScaleDelta_>1?1:-1;return e.endInteraction(this.duration_,r),!1}return!0},e.prototype.handleDownEvent=function(t){if(this.targetPointers.length>=2){var e=t.map;return this.anchor_=null,this.lastDistance_=void 0,this.lastScaleDelta_=1,this.handlingDownUpSequence||e.getView().beginInteraction(),!0}return!1},e}(mo);function Ho(t){var e=t||{},r=new Z,n=new qr(-.005,.05,100);return(void 0===e.altShiftDragRotate||e.altShiftDragRotate)&&r.push(new wo),(void 0===e.doubleClickZoom||e.doubleClickZoom)&&r.push(new no({delta:e.zoomDelta,duration:e.zoomDuration})),(void 0===e.dragPan||e.dragPan)&&r.push(new So({condition:e.onFocusOnly?ao:void 0,kinetic:n})),(void 0===e.pinchRotate||e.pinchRotate)&&r.push(new Wo),(void 0===e.pinchZoom||e.pinchZoom)&&r.push(new Ko({duration:e.zoomDuration})),(void 0===e.keyboard||e.keyboard)&&(r.push(new ko),r.push(new Bo({delta:e.zoomDelta,duration:e.zoomDuration}))),(void 0===e.mouseWheelZoom||e.mouseWheelZoom)&&r.push(new Xo({condition:e.onFocusOnly?ao:void 0,duration:e.zoomDuration})),(void 0===e.shiftDragZoom||e.shiftDragZoom)&&r.push(new No({duration:e.zoomDuration})),r}var qo=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Jo=function(t){function e(e,r,n,i){var o=t.call(this,e)||this;return o.inversePixelTransform=r,o.frameState=n,o.context=i,o}return qo(e,t),e}(M),Qo=/^#([a-f0-9]{3}|[a-f0-9]{4}(?:[a-f0-9]{2}){0,2})$/i,$o=/^([a-z]*)$|^hsla?\(.*\)$/i;function ta(t){return"string"==typeof t?t:oa(t)}function ea(t){var e=document.createElement("div");if(e.style.color=t,""!==e.style.color){document.body.appendChild(e);var r=getComputedStyle(e).color;return document.body.removeChild(e),r}return""}var ra=function(){var t={},e=0;return function(r){var n;if(t.hasOwnProperty(r))n=t[r];else{if(e>=1024){var i=0;for(var o in t)0==(3&i++)&&(delete t[o],--e)}n=function(t){var e,r,n,i,o;$o.exec(t)&&(t=ea(t));if(Qo.exec(t)){var a=t.length-1,s=void 0;s=a<=4?1:2;var u=4===a||8===a;e=parseInt(t.substr(1+0*s,s),16),r=parseInt(t.substr(1+1*s,s),16),n=parseInt(t.substr(1+2*s,s),16),i=u?parseInt(t.substr(1+3*s,s),16):255,1==s&&(e=(e<<4)+e,r=(r<<4)+r,n=(n<<4)+n,u&&(i=(i<<4)+i)),o=[e,r,n,i/255]}else 0==t.indexOf("rgba(")?ia(o=t.slice(5,-1).split(",").map(Number)):0==t.indexOf("rgb(")?((o=t.slice(4,-1).split(",").map(Number)).push(1),ia(o)):K(!1,14);return o}(r),t[r]=n,++e}return n}}();function na(t){return Array.isArray(t)?t:ra(t)}function ia(t){return t[0]=kt(t[0]+.5|0,0,255),t[1]=kt(t[1]+.5|0,0,255),t[2]=kt(t[2]+.5|0,0,255),t[3]=kt(t[3],0,1),t}function oa(t){var e=t[0];e!=(0|e)&&(e=e+.5|0);var r=t[1];r!=(0|r)&&(r=r+.5|0);var n=t[2];return n!=(0|n)&&(n=n+.5|0),"rgba("+e+","+r+","+n+","+(void 0===t[3]?1:t[3])+")"}var aa=function(){function t(){this.cache_={},this.cacheSize_=0,this.maxCacheSize_=32}return t.prototype.clear=function(){this.cache_={},this.cacheSize_=0},t.prototype.canExpireCache=function(){return this.cacheSize_>this.maxCacheSize_},t.prototype.expire=function(){if(this.canExpireCache()){var t=0;for(var e in this.cache_){var r=this.cache_[e];0!=(3&t++)||r.hasListener()||(delete this.cache_[e],--this.cacheSize_)}}},t.prototype.get=function(t,e,r){var n=sa(t,e,r);return n in this.cache_?this.cache_[n]:null},t.prototype.set=function(t,e,r,n){var i=sa(t,e,r);this.cache_[i]=n,++this.cacheSize_},t.prototype.setSize=function(t){this.maxCacheSize_=t,this.expire()},t}();function sa(t,e,r){return e+":"+t+":"+(r?ta(r):"null")}var ua=new aa;function la(t){return Array.isArray(t)?oa(t):t}var ha=function(){function t(){}return t.prototype.drawCustom=function(t,e,r){},t.prototype.drawGeometry=function(t){},t.prototype.setStyle=function(t){},t.prototype.drawCircle=function(t,e){},t.prototype.drawFeature=function(t,e){},t.prototype.drawGeometryCollection=function(t,e){},t.prototype.drawLineString=function(t,e){},t.prototype.drawMultiLineString=function(t,e){},t.prototype.drawMultiPoint=function(t,e){},t.prototype.drawMultiPolygon=function(t,e){},t.prototype.drawPoint=function(t,e){},t.prototype.drawPolygon=function(t,e){},t.prototype.drawText=function(t,e){},t.prototype.setFillStrokeStyle=function(t,e){},t.prototype.setImageStyle=function(t,e){},t.prototype.setTextStyle=function(t,e){},t}(),ca=[],pa=[0,0,0,0],fa=new z,da=new A;da.setSize=function(){console.warn("labelCache is deprecated.")};var _a,ga,ya,va=null,ma={},Ea=function(){var t,e,r=100,n="32px ",i=["monospace","serif"],o=i.length,a="wmytzilWMYTZIL@#/&?$%10";function s(t,r,s){for(var u=!0,l=0;l=0;--n)for(var i=r[n],o=i.items,a=0,s=o.length;ad[2])p=[g+_*Math.ceil((d[0]-g)/_),t[1]];n&&f.push([-_,0],[_,0])}var y,v=e.layerStatesArray,m=v.length;this.declutterTree_&&(y=this.declutterTree_.all().map(function(t){return t.value}));for(var E=[],T=0;T=0;--S){var x=v[S],w=x.layer;if(w.hasRenderer()&&Ui(x,l)&&a.call(s,w)){var R=w.getRenderer(),O=w.getSource();if(R&&O){var C=O.getWrapX()?p:t,P=h.bind(null,x.managed);E[0]=C[0]+f[T][0],E[1]=C[1]+f[T][1],u=R.forEachFeatureAtCoordinate(E,e,r,P,y)}if(u)return u}}},e.prototype.forEachLayerAtPixel=function(t,e,r,i,o){return n()},e.prototype.hasFeatureAtCoordinate=function(t,e,r,n,i,o){return void 0!==this.forEachFeatureAtCoordinate(t,e,r,n,P,this,i,o)},e.prototype.getMap=function(){return this.map_},e.prototype.renderFrame=function(t){this.declutterTree_=Ga(t,this.declutterTree_)},e.prototype.scheduleExpireIconCache=function(t){ua.canExpireCache()&&t.postRenderFunctions.push(ja)},e}(m),Ua=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Ya=function(t){function e(e){var r=t.call(this,e)||this;r.fontChangeListenerKey_=g(fa,c.PROPERTYCHANGE,e.redrawText.bind(e)),r.element_=document.createElement("div");var n=r.element_.style;n.position="absolute",n.width="100%",n.height="100%",n.zIndex="0",r.element_.className=Ai+" ol-layers";var i=e.getViewport();return i.insertBefore(r.element_,i.firstChild||null),r.children_=[],r.renderedVisible_=!0,r}return Ua(e,t),e.prototype.dispatchRenderEvent=function(t,e){var r=this.getMap();if(r.hasListener(t)){var n=new Jo(t,void 0,e);r.dispatchEvent(n)}},e.prototype.disposeInternal=function(){v(this.fontChangeListenerKey_),this.element_.parentNode.removeChild(this.element_),t.prototype.disposeInternal.call(this)},e.prototype.renderFrame=function(e){if(e){this.calculateMatrices2D(e),this.dispatchRenderEvent(Tn,e);var r=e.layerStatesArray.sort(function(t,e){return t.zIndex-e.zIndex}),n=e.viewState;this.children_.length=0;for(var i=null,o=0,a=r.length;o=0;--s){var u=a[s],l=u.layer;if(l.hasRenderer()&&Ui(u,o)&&i(l)){var h=l.getRenderer().getDataAtPixel(t,e,r);if(h){var c=n(l,h);if(c)return c}}}},e}(ka),Ba=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),za=function(t){function e(e){return(e=p({},e)).controls||(e.controls=qi()),e.interactions||(e.interactions=Ho()),t.call(this,e)||this}return Ba(e,t),e.prototype.createRenderer=function(){return new Ya(this)},e}(Ii),Xa={BOTTOM_LEFT:"bottom-left",BOTTOM_CENTER:"bottom-center",BOTTOM_RIGHT:"bottom-right",CENTER_LEFT:"center-left",CENTER_CENTER:"center-center",CENTER_RIGHT:"center-right",TOP_LEFT:"top-left",TOP_CENTER:"top-center",TOP_RIGHT:"top-right"},Va=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Wa={ELEMENT:"element",MAP:"map",OFFSET:"offset",POSITION:"position",POSITIONING:"positioning"},Za=function(t){function e(e){var r=t.call(this)||this;return r.options=e,r.id=e.id,r.insertFirst=void 0===e.insertFirst||e.insertFirst,r.stopEvent=void 0===e.stopEvent||e.stopEvent,r.element=document.createElement("div"),r.element.className=void 0!==e.className?e.className:"ol-overlay-container "+Fi,r.element.style.position="absolute",r.autoPan=void 0!==e.autoPan&&e.autoPan,r.autoPanAnimation=e.autoPanAnimation||{},r.autoPanMargin=void 0!==e.autoPanMargin?e.autoPanMargin:20,r.rendered={bottom_:"",left_:"",right_:"",top_:"",visible:!0},r.mapPostrenderListenerKey=null,r.addEventListener(B(Wa.ELEMENT),r.handleElementChanged),r.addEventListener(B(Wa.MAP),r.handleMapChanged),r.addEventListener(B(Wa.OFFSET),r.handleOffsetChanged),r.addEventListener(B(Wa.POSITION),r.handlePositionChanged),r.addEventListener(B(Wa.POSITIONING),r.handlePositioningChanged),void 0!==e.element&&r.setElement(e.element),r.setOffset(void 0!==e.offset?e.offset:[0,0]),r.setPositioning(void 0!==e.positioning?e.positioning:Xa.TOP_LEFT),void 0!==e.position&&r.setPosition(e.position),r}return Va(e,t),e.prototype.getElement=function(){return this.get(Wa.ELEMENT)},e.prototype.getId=function(){return this.id},e.prototype.getMap=function(){return this.get(Wa.MAP)},e.prototype.getOffset=function(){return this.get(Wa.OFFSET)},e.prototype.getPosition=function(){return this.get(Wa.POSITION)},e.prototype.getPositioning=function(){return this.get(Wa.POSITIONING)},e.prototype.handleElementChanged=function(){_i(this.element);var t=this.getElement();t&&this.element.appendChild(t)},e.prototype.handleMapChanged=function(){this.mapPostrenderListenerKey&&(di(this.element),v(this.mapPostrenderListenerKey),this.mapPostrenderListenerKey=null);var t=this.getMap();if(t){this.mapPostrenderListenerKey=g(t,_n,this.render,this),this.updatePixelPosition();var e=this.stopEvent?t.getOverlayContainerStopEvent():t.getOverlayContainer();this.insertFirst?e.insertBefore(this.element,e.childNodes[0]||null):e.appendChild(this.element)}},e.prototype.render=function(){this.updatePixelPosition()},e.prototype.handleOffsetChanged=function(){this.updatePixelPosition()},e.prototype.handlePositionChanged=function(){this.updatePixelPosition(),this.get(Wa.POSITION)&&this.autoPan&&this.panIntoView()},e.prototype.handlePositioningChanged=function(){this.updatePixelPosition()},e.prototype.setElement=function(t){this.set(Wa.ELEMENT,t)},e.prototype.setMap=function(t){this.set(Wa.MAP,t)},e.prototype.setOffset=function(t){this.set(Wa.OFFSET,t)},e.prototype.setPosition=function(t){this.set(Wa.POSITION,t)},e.prototype.panIntoView=function(){var t=this.getMap();if(t&&t.getTargetElement()){var e=this.getRect(t.getTargetElement(),t.getSize()),r=this.getElement(),n=this.getRect(r,[ci(r),pi(r)]),i=this.autoPanMargin;if(!it(e,n)){var o=n[0]-e[0],a=e[2]-n[2],s=n[1]-e[1],u=e[3]-n[3],l=[0,0];if(o<0?l[0]=o-i:a<0&&(l[0]=Math.abs(a)+i),s<0?l[1]=s-i:u<0&&(l[1]=Math.abs(u)+i),0!==l[0]||0!==l[1]){var h=t.getView().getCenterInternal(),c=t.getPixelFromCoordinateInternal(h),p=[c[0]+l[0],c[1]+l[1]];t.getView().animateInternal({center:t.getCoordinateFromPixelInternal(p),duration:this.autoPanAnimation.duration,easing:this.autoPanAnimation.easing})}}}},e.prototype.getRect=function(t,e){var r=t.getBoundingClientRect(),n=r.left+window.pageXOffset,i=r.top+window.pageYOffset;return[n,i,n+e[0],i+e[1]]},e.prototype.setPositioning=function(t){this.set(Wa.POSITIONING,t)},e.prototype.setVisible=function(t){this.rendered.visible!==t&&(this.element.style.display=t?"":"none",this.rendered.visible=t)},e.prototype.updatePixelPosition=function(){var t=this.getMap(),e=this.getPosition();if(t&&t.isRendered()&&e){var r=t.getPixelFromCoordinate(e),n=t.getSize();this.updateRenderedPosition(r,n)}else this.setVisible(!1)},e.prototype.updateRenderedPosition=function(t,e){var r=this.element.style,n=this.getOffset(),i=this.getPositioning();this.setVisible(!0);var o=n[0],a=n[1];if(i==Xa.BOTTOM_RIGHT||i==Xa.CENTER_RIGHT||i==Xa.TOP_RIGHT){""!==this.rendered.left_&&(this.rendered.left_="",r.left="");var s=Math.round(e[0]-t[0]-o)+"px";this.rendered.right_!=s&&(this.rendered.right_=s,r.right=s)}else{""!==this.rendered.right_&&(this.rendered.right_="",r.right=""),i!=Xa.BOTTOM_CENTER&&i!=Xa.CENTER_CENTER&&i!=Xa.TOP_CENTER||(o-=this.element.offsetWidth/2);var u=Math.round(t[0]+o)+"px";this.rendered.left_!=u&&(this.rendered.left_=u,r.left=u)}if(i==Xa.BOTTOM_LEFT||i==Xa.BOTTOM_CENTER||i==Xa.BOTTOM_RIGHT){""!==this.rendered.top_&&(this.rendered.top_="",r.top="");var l=Math.round(e[1]-t[1]-a)+"px";this.rendered.bottom_!=l&&(this.rendered.bottom_=l,r.bottom=l)}else{""!==this.rendered.bottom_&&(this.rendered.bottom_="",r.bottom=""),i!=Xa.CENTER_LEFT&&i!=Xa.CENTER_CENTER&&i!=Xa.CENTER_RIGHT||(a-=this.element.offsetHeight/2);var h=Math.round(t[1]+a)+"px";this.rendered.top_!=h&&(this.rendered.top_="top",r.top=h)}},e.prototype.getOptions=function(){return this.options},e}(z),Ka={ARRAY_BUFFER:"arraybuffer",JSON:"json",TEXT:"text",XML:"xml"},Ha=!1;function qa(t,e,r,n){return function(i,o,a){var s=new XMLHttpRequest;s.open("GET","function"==typeof t?t(i,o,a):t,!0),e.getType()==Ka.ARRAY_BUFFER&&(s.responseType="arraybuffer"),s.withCredentials=Ha,s.onload=function(t){if(!s.status||s.status>=200&&s.status<300){var o=e.getType(),u=void 0;o==Ka.JSON||o==Ka.TEXT?u=s.responseText:o==Ka.XML?(u=s.responseXML)||(u=(new DOMParser).parseFromString(s.responseText,"application/xml")):o==Ka.ARRAY_BUFFER&&(u=s.response),u?r.call(this,e.readFeatures(u,{extent:i,featureProjection:a}),e.readProjection(u)):n.call(this)}else n.call(this)}.bind(this),s.onerror=function(){n.call(this)}.bind(this),s.send()}}function Ja(t,e){return qa(t,e,function(t,e){"function"==typeof this.addFeatures&&this.addFeatures(t)},b)}function Qa(t,e){return[[-1/0,-1/0,1/0,1/0]]}var $a=function(){function t(t,e,r,n){this.minX=t,this.maxX=e,this.minY=r,this.maxY=n}return t.prototype.contains=function(t){return this.containsXY(t[1],t[2])},t.prototype.containsTileRange=function(t){return this.minX<=t.minX&&t.maxX<=this.maxX&&this.minY<=t.minY&&t.maxY<=this.maxY},t.prototype.containsXY=function(t,e){return this.minX<=t&&t<=this.maxX&&this.minY<=e&&e<=this.maxY},t.prototype.equals=function(t){return this.minX==t.minX&&this.minY==t.minY&&this.maxX==t.maxX&&this.maxY==t.maxY},t.prototype.extend=function(t){t.minXthis.maxX&&(this.maxX=t.maxX),t.minYthis.maxY&&(this.maxY=t.maxY)},t.prototype.getHeight=function(){return this.maxY-this.minY+1},t.prototype.getSize=function(){return[this.getWidth(),this.getHeight()]},t.prototype.getWidth=function(){return this.maxX-this.minX+1},t.prototype.intersects=function(t){return this.minX<=t.maxX&&this.maxX>=t.minX&&this.minY<=t.maxY&&this.maxY>=t.minY},t}();function ts(t,e,r,n,i){return void 0!==i?(i.minX=t,i.maxX=e,i.minY=r,i.maxY=n,i):new $a(t,e,r,n)}var es=$a;function rs(t,e,r,n){return void 0!==n?(n[0]=t,n[1]=e,n[2]=r,n):[t,e,r]}function ns(t,e,r){return t+"/"+e+"/"+r}function is(t){return ns(t[0],t[1],t[2])}function os(t){return t.split("/").map(Number)}function as(t){return(t[1]<0||r&&0===o)})),17),!t.origins)for(var o=0,a=this.resolutions_.length-1;o=this.minZoom;){if(e(s,2===this.zoomFactor_?ts(i=Math.floor(i/2),i,o=Math.floor(o/2),o,r):this.getTileRangeForExtentAndZ(a,s,r)))return!0;--s}return!1},t.prototype.getExtent=function(){return this.extent_},t.prototype.getMaxZoom=function(){return this.maxZoom},t.prototype.getMinZoom=function(){return this.minZoom},t.prototype.getOrigin=function(t){return this.origin_?this.origin_:this.origins_[t]},t.prototype.getResolution=function(t){return this.resolutions_[t]},t.prototype.getResolutions=function(){return this.resolutions_},t.prototype.getTileCoordChildTileRange=function(t,e,r){if(t[0]=0;o--)this.postProcessPasses_[o].init(t);e.bindTexture(e.TEXTURE_2D,null),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.enable(e.BLEND),e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA),e.useProgram(this.currentProgram_),this.applyFrameState(t),this.applyUniforms(t)},e.prototype.prepareDrawToRenderTarget=function(t,e,r){var n=this.getGL(),i=e.getSize();n.bindFramebuffer(n.FRAMEBUFFER,e.getFramebuffer()),n.viewport(0,0,i[0],i[1]),n.bindTexture(n.TEXTURE_2D,e.getTexture()),n.clearColor(0,0,0,0),n.clear(n.COLOR_BUFFER_BIT),n.enable(n.BLEND),n.blendFunc(n.ONE,r?n.ZERO:n.ONE_MINUS_SRC_ALPHA),n.useProgram(this.currentProgram_),this.applyFrameState(t),this.applyUniforms(t)},e.prototype.drawElements=function(t,e){var r=this.getGL(),n=r.UNSIGNED_INT,i=e-t,o=4*t;r.drawElements(r.TRIANGLES,i,n,o)},e.prototype.finalizeDraw=function(t){for(var e=0;ethis.size_[0]||e>=this.size_[1])return nu[0]=0,nu[1]=0,nu[2]=0,nu[3]=0,nu;this.readAll();var r=Math.floor(t)+(this.size_[1]-Math.floor(e)-1)*this.size_[0];return nu[0]=this.data_[4*r],nu[1]=this.data_[4*r+1],nu[2]=this.data_[4*r+2],nu[3]=this.data_[4*r+3],nu},t.prototype.getTexture=function(){return this.texture_},t.prototype.getFramebuffer=function(){return this.framebuffer_},t.prototype.updateSize_=function(){var t=this.size_,e=this.helper_.getGL();this.texture_=this.helper_.createTexture(t,null,this.texture_),e.bindFramebuffer(e.FRAMEBUFFER,this.framebuffer_),e.viewport(0,0,t[0],t[1]),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this.texture_,0),this.data_=new Uint8Array(t[0]*t[1]*4)},t}(),ou=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),au=function(t){function e(e){var r=t.call(this,{extent:e.extent,origin:e.origin,origins:e.origins,resolutions:e.resolutions,tileSize:e.tileSize,tileSizes:e.tileSizes,sizes:e.sizes})||this;return r.matrixIds_=e.matrixIds,r}return ou(e,t),e.prototype.getMatrixId=function(t){return this.matrixIds_[t]},e.prototype.getMatrixIds=function(){return this.matrixIds_},e}(us),su=au;function uu(t,e,r){var n=[],i=[],o=[],a=[],s=[],u=void 0!==r?r:[],l=t.SupportedCRS,h=xe(l.replace(/urn:ogc:def:crs:(\w+):(.*:)?(\w+)$/,"$1:$3"))||xe(l),c=h.getMetersPerUnit(),p="ne"==h.getAxisOrientation().substr(0,2);return t.TileMatrix.sort(function(t,e){return e.ScaleDenominator-t.ScaleDenominator}),t.TileMatrix.forEach(function(e){if(!(u.length>0)||R(u,function(r){return e.Identifier==r.TileMatrix||-1===e.Identifier.indexOf(":")&&t.Identifier+":"+e.Identifier===r.TileMatrix})){i.push(e.Identifier);var r=28e-5*e.ScaleDenominator/c,l=e.TileWidth,h=e.TileHeight;p?o.push([e.TopLeftCorner[1],e.TopLeftCorner[0]]):o.push(e.TopLeftCorner),n.push(r),a.push(l==h?l:[l,h]),s.push([e.MatrixWidth,e.MatrixHeight])}}),new au({extent:e,origins:o,resolutions:n,matrixIds:i,tileSizes:a,sizes:s})}var lu=function(){function t(t){this.opacity_=t.opacity,this.rotateWithView_=t.rotateWithView,this.rotation_=t.rotation,this.scale_=t.scale,this.displacement_=t.displacement}return t.prototype.clone=function(){return new t({opacity:this.getOpacity(),scale:this.getScale(),rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),displacement:this.getDisplacement().slice()})},t.prototype.getOpacity=function(){return this.opacity_},t.prototype.getRotateWithView=function(){return this.rotateWithView_},t.prototype.getRotation=function(){return this.rotation_},t.prototype.getScale=function(){return this.scale_},t.prototype.getDisplacement=function(){return this.displacement_},t.prototype.getAnchor=function(){return n()},t.prototype.getImage=function(t){return n()},t.prototype.getHitDetectionImage=function(t){return n()},t.prototype.getImageState=function(){return n()},t.prototype.getImageSize=function(){return n()},t.prototype.getHitDetectionImageSize=function(){return n()},t.prototype.getOrigin=function(){return n()},t.prototype.getSize=function(){return n()},t.prototype.setOpacity=function(t){this.opacity_=t},t.prototype.setRotateWithView=function(t){this.rotateWithView_=t},t.prototype.setRotation=function(t){this.rotation_=t},t.prototype.setScale=function(t){this.scale_=t},t.prototype.listenImageChange=function(t){n()},t.prototype.load=function(){n()},t.prototype.unlistenImageChange=function(t){n()},t}(),hu=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),cu=function(t){function e(e){var r=this,n=void 0!==e.rotateWithView&&e.rotateWithView;return(r=t.call(this,{opacity:1,rotateWithView:n,rotation:void 0!==e.rotation?e.rotation:0,scale:1,displacement:void 0!==e.displacement?e.displacement:[0,0]})||this).canvas_=null,r.hitDetectionCanvas_=null,r.fill_=void 0!==e.fill?e.fill:null,r.origin_=[0,0],r.points_=e.points,r.radius_=void 0!==e.radius?e.radius:e.radius1,r.radius2_=e.radius2,r.angle_=void 0!==e.angle?e.angle:0,r.stroke_=void 0!==e.stroke?e.stroke:null,r.anchor_=null,r.size_=null,r.imageSize_=null,r.hitDetectionImageSize_=null,r.render(),r}return hu(e,t),e.prototype.clone=function(){var t=new e({fill:this.getFill()?this.getFill().clone():void 0,points:this.getPoints(),radius:this.getRadius(),radius2:this.getRadius2(),angle:this.getAngle(),stroke:this.getStroke()?this.getStroke().clone():void 0,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),displacement:this.getDisplacement().slice()});return t.setOpacity(this.getOpacity()),t.setScale(this.getScale()),t},e.prototype.getAnchor=function(){return this.anchor_},e.prototype.getAngle=function(){return this.angle_},e.prototype.getFill=function(){return this.fill_},e.prototype.getHitDetectionImage=function(t){return this.hitDetectionCanvas_},e.prototype.getImage=function(t){return this.canvas_},e.prototype.getImageSize=function(){return this.imageSize_},e.prototype.getHitDetectionImageSize=function(){return this.hitDetectionImageSize_},e.prototype.getImageState=function(){return Pa.LOADED},e.prototype.getOrigin=function(){return this.origin_},e.prototype.getPoints=function(){return this.points_},e.prototype.getRadius=function(){return this.radius_},e.prototype.getRadius2=function(){return this.radius2_},e.prototype.getSize=function(){return this.size_},e.prototype.getStroke=function(){return this.stroke_},e.prototype.listenImageChange=function(t){},e.prototype.load=function(){},e.prototype.unlistenImageChange=function(t){},e.prototype.render=function(){var t,e="round",r="round",n=0,i=null,o=0,a=0;this.stroke_&&(null===(t=this.stroke_.getColor())&&(t="#000"),t=la(t),void 0===(a=this.stroke_.getWidth())&&(a=1),i=this.stroke_.getLineDash(),o=this.stroke_.getLineDashOffset(),void 0===(r=this.stroke_.getLineJoin())&&(r="round"),void 0===(e=this.stroke_.getLineCap())&&(e="round"),void 0===(n=this.stroke_.getMiterLimit())&&(n=10));var s=2*(this.radius_+a)+1,u={strokeStyle:t,strokeWidth:a,size:s,lineCap:e,lineDash:i,lineDashOffset:o,lineJoin:r,miterLimit:n},l=hi(s,s);this.canvas_=l.canvas;var h=s=this.canvas_.width,c=this.getDisplacement();this.draw_(u,l,0,0),this.createHitDetectionCanvas_(u),this.anchor_=[s/2-c[0],s/2+c[1]],this.size_=[s,s],this.imageSize_=[h,h]},e.prototype.draw_=function(t,e,r,n){var i,o,a;e.setTransform(1,0,0,1,0,0),e.translate(r,n),e.beginPath();var s=this.points_;if(s===1/0)e.arc(t.size/2,t.size/2,this.radius_,0,2*Math.PI,!0);else{var u=void 0!==this.radius2_?this.radius2_:this.radius_;for(u!==this.radius_&&(s*=2),i=0;i<=s;i++)o=2*i*Math.PI/s-Math.PI/2+this.angle_,a=i%2==0?this.radius_:u,e.lineTo(t.size/2+a*Math.cos(o),t.size/2+a*Math.sin(o))}if(this.fill_){var l=this.fill_.getColor();null===l&&(l="#000"),e.fillStyle=la(l),e.fill()}this.stroke_&&(e.strokeStyle=t.strokeStyle,e.lineWidth=t.strokeWidth,e.setLineDash&&t.lineDash&&(e.setLineDash(t.lineDash),e.lineDashOffset=t.lineDashOffset),e.lineCap=t.lineCap,e.lineJoin=t.lineJoin,e.miterLimit=t.miterLimit,e.stroke()),e.closePath()},e.prototype.createHitDetectionCanvas_=function(t){if(this.hitDetectionImageSize_=[t.size,t.size],this.hitDetectionCanvas_=this.canvas_,this.fill_){var e=this.fill_.getColor(),r=0;if("string"==typeof e&&(e=na(e)),null===e?r=1:Array.isArray(e)&&(r=4===e.length?e[3]:1),0===r){var n=hi(t.size,t.size);this.hitDetectionCanvas_=n.canvas,this.drawHitDetectionCanvas_(t,n,0,0)}}},e.prototype.drawHitDetectionCanvas_=function(t,e,r,n){e.setTransform(1,0,0,1,0,0),e.translate(r,n),e.beginPath();var i=this.points_;if(i===1/0)e.arc(t.size/2,t.size/2,this.radius_,0,2*Math.PI,!0);else{var o=void 0!==this.radius2_?this.radius2_:this.radius_;o!==this.radius_&&(i*=2);var a=void 0,s=void 0,u=void 0;for(a=0;a<=i;a++)u=2*a*Math.PI/i-Math.PI/2+this.angle_,s=a%2==0?this.radius_:o,e.lineTo(t.size/2+s*Math.cos(u),t.size/2+s*Math.sin(u))}e.fillStyle="#000",e.fill(),this.stroke_&&(e.strokeStyle=t.strokeStyle,e.lineWidth=t.strokeWidth,t.lineDash&&(e.setLineDash(t.lineDash),e.lineDashOffset=t.lineDashOffset),e.stroke()),e.closePath()},e}(lu),pu=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),fu=function(t){function e(e){var r=e||{};return t.call(this,{points:1/0,fill:r.fill,radius:r.radius,stroke:r.stroke,displacement:void 0!==r.displacement?r.displacement:[0,0]})||this}return pu(e,t),e.prototype.clone=function(){var t=new e({fill:this.getFill()?this.getFill().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,radius:this.getRadius(),displacement:this.getDisplacement().slice()});return t.setOpacity(this.getOpacity()),t.setScale(this.getScale()),t},e.prototype.setRadius=function(t){this.radius_=t,this.render()},e}(cu),du=function(){function t(t){var e=t||{};this.color_=void 0!==e.color?e.color:null}return t.prototype.clone=function(){var e=this.getColor();return new t({color:Array.isArray(e)?e.slice():e||void 0})},t.prototype.getColor=function(){return this.color_},t.prototype.setColor=function(t){this.color_=t},t}(),_u={FRACTION:"fraction",PIXELS:"pixels"},gu=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),yu=function(t){function e(e,r,n,i){var o=t.call(this)||this;return o.extent=e,o.pixelRatio_=n,o.resolution=r,o.state=i,o}return gu(e,t),e.prototype.changed=function(){this.dispatchEvent(N.CHANGE)},e.prototype.getExtent=function(){return this.extent},e.prototype.getImage=function(){return n()},e.prototype.getPixelRatio=function(){return this.pixelRatio_},e.prototype.getResolution=function(){return this.resolution},e.prototype.getState=function(){return this.state},e.prototype.load=function(){n()},e}(A),vu=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function mu(t,e,r){var n=t;if(n.src&&sn){var i=n.decode(),o=!0;return i.then(function(){o&&e()}).catch(function(t){o&&("EncodingError"===t.name&&"Invalid image type."===t.message?e():r())}),function(){o=!1}}var a=[y(n,N.LOAD,e),y(n,N.ERROR,r)];return function(){a.forEach(v)}}var Eu=function(t){function e(e,r,n,i,o,a){var s=t.call(this,e,r,n,Pa.IDLE)||this;return s.src_=i,s.image_=new Image,null!==o&&(s.image_.crossOrigin=o),s.unlisten_=null,s.state=Pa.IDLE,s.imageLoadFunction_=a,s}return vu(e,t),e.prototype.getImage=function(){return this.image_},e.prototype.handleImageError_=function(){this.state=Pa.ERROR,this.unlistenImage_(),this.changed()},e.prototype.handleImageLoad_=function(){void 0===this.resolution&&(this.resolution=Rt(this.extent)/this.image_.height),this.state=Pa.LOADED,this.unlistenImage_(),this.changed()},e.prototype.load=function(){this.state!=Pa.IDLE&&this.state!=Pa.ERROR||(this.state=Pa.LOADING,this.changed(),this.imageLoadFunction_(this,this.src_),this.unlisten_=mu(this.image_,this.handleImageLoad_.bind(this),this.handleImageError_.bind(this)))},e.prototype.setImage=function(t){this.image_=t},e.prototype.unlistenImage_=function(){this.unlisten_&&(this.unlisten_(),this.unlisten_=null)},e}(yu),Tu=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Su=function(t){function e(e,r,n,i,o,a){var s=t.call(this)||this;return s.hitDetectionImage_=null,s.image_=e||new Image,null!==i&&(s.image_.crossOrigin=i),s.canvas_=a?document.createElement("canvas"):null,s.color_=a,s.unlisten_=null,s.imageState_=o,s.size_=n,s.src_=r,s.tainted_,s}return Tu(e,t),e.prototype.isTainted_=function(){if(void 0===this.tainted_&&this.imageState_===Pa.LOADED){this.tainted_=!1;var t=hi(1,1);try{t.drawImage(this.image_,0,0),t.getImageData(0,0,1,1)}catch(t){this.tainted_=!0}}return!0===this.tainted_},e.prototype.dispatchChangeEvent_=function(){this.dispatchEvent(N.CHANGE)},e.prototype.handleImageError_=function(){this.imageState_=Pa.ERROR,this.unlistenImage_(),this.dispatchChangeEvent_()},e.prototype.handleImageLoad_=function(){this.imageState_=Pa.LOADED,this.size_&&(this.image_.width=this.size_[0],this.image_.height=this.size_[1]),this.size_=[this.image_.width,this.image_.height],this.unlistenImage_(),this.replaceColor_(),this.dispatchChangeEvent_()},e.prototype.getImage=function(t){return this.canvas_?this.canvas_:this.image_},e.prototype.getImageState=function(){return this.imageState_},e.prototype.getHitDetectionImage=function(t){if(!this.hitDetectionImage_)if(this.isTainted_()){var e=this.size_[0],r=this.size_[1],n=hi(e,r);n.fillRect(0,0,e,r),this.hitDetectionImage_=n.canvas}else this.hitDetectionImage_=this.image_;return this.hitDetectionImage_},e.prototype.getSize=function(){return this.size_},e.prototype.getSrc=function(){return this.src_},e.prototype.load=function(){if(this.imageState_==Pa.IDLE){this.imageState_=Pa.LOADING;try{this.image_.src=this.src_}catch(t){this.handleImageError_()}this.unlisten_=mu(this.image_,this.handleImageLoad_.bind(this),this.handleImageError_.bind(this))}},e.prototype.replaceColor_=function(){if(this.color_&&!this.isTainted_()){this.canvas_.width=this.image_.width,this.canvas_.height=this.image_.height;var t=this.canvas_.getContext("2d");t.drawImage(this.image_,0,0);for(var e=t.getImageData(0,0,this.image_.width,this.image_.height),r=e.data,n=this.color_[0]/255,i=this.color_[1]/255,o=this.color_[2]/255,a=0,s=r.length;a0,6);var p=void 0!==n.src?Pa.IDLE:Pa.LOADED;return r.color_=void 0!==n.color?na(n.color):null,r.iconImage_=function(t,e,r,n,i,o){var a=ua.get(e,n,o);return a||(a=new Su(t,e,r,n,i,o),ua.set(e,n,o,a)),a}(l,c,h,r.crossOrigin_,p,r.color_),r.offset_=void 0!==n.offset?n.offset:[0,0],r.offsetOrigin_=void 0!==n.offsetOrigin?n.offsetOrigin:xu.TOP_LEFT,r.origin_=null,r.size_=void 0!==n.size?n.size:null,r}return wu(e,t),e.prototype.clone=function(){return new e({anchor:this.anchor_.slice(),anchorOrigin:this.anchorOrigin_,anchorXUnits:this.anchorXUnits_,anchorYUnits:this.anchorYUnits_,crossOrigin:this.crossOrigin_,color:this.color_&&this.color_.slice?this.color_.slice():this.color_||void 0,src:this.getSrc(),offset:this.offset_.slice(),offsetOrigin:this.offsetOrigin_,size:null!==this.size_?this.size_.slice():void 0,opacity:this.getOpacity(),scale:this.getScale(),rotation:this.getRotation(),rotateWithView:this.getRotateWithView()})},e.prototype.getAnchor=function(){if(this.normalizedAnchor_)return this.normalizedAnchor_;var t=this.anchor_,e=this.getSize();if(this.anchorXUnits_==_u.FRACTION||this.anchorYUnits_==_u.FRACTION){if(!e)return null;t=this.anchor_.slice(),this.anchorXUnits_==_u.FRACTION&&(t[0]*=e[0]),this.anchorYUnits_==_u.FRACTION&&(t[1]*=e[1])}if(this.anchorOrigin_!=xu.TOP_LEFT){if(!e)return null;t===this.anchor_&&(t=this.anchor_.slice()),this.anchorOrigin_!=xu.TOP_RIGHT&&this.anchorOrigin_!=xu.BOTTOM_RIGHT||(t[0]=-t[0]+e[0]),this.anchorOrigin_!=xu.BOTTOM_LEFT&&this.anchorOrigin_!=xu.BOTTOM_RIGHT||(t[1]=-t[1]+e[1])}return this.normalizedAnchor_=t,this.normalizedAnchor_},e.prototype.setAnchor=function(t){this.anchor_=t,this.normalizedAnchor_=null},e.prototype.getColor=function(){return this.color_},e.prototype.getImage=function(t){return this.iconImage_.getImage(t)},e.prototype.getImageSize=function(){return this.iconImage_.getSize()},e.prototype.getHitDetectionImageSize=function(){return this.getImageSize()},e.prototype.getImageState=function(){return this.iconImage_.getImageState()},e.prototype.getHitDetectionImage=function(t){return this.iconImage_.getHitDetectionImage(t)},e.prototype.getOrigin=function(){if(this.origin_)return this.origin_;var t=this.offset_,e=this.getDisplacement();if(this.offsetOrigin_!=xu.TOP_LEFT){var r=this.getSize(),n=this.iconImage_.getSize();if(!r||!n)return null;t=t.slice(),this.offsetOrigin_!=xu.TOP_RIGHT&&this.offsetOrigin_!=xu.BOTTOM_RIGHT||(t[0]=n[0]-r[0]-t[0]),this.offsetOrigin_!=xu.BOTTOM_LEFT&&this.offsetOrigin_!=xu.BOTTOM_RIGHT||(t[1]=n[1]-r[1]-t[1])}return t[0]+=e[0],t[1]+=e[1],this.origin_=t,this.origin_},e.prototype.getSrc=function(){return this.iconImage_.getSrc()},e.prototype.getSize=function(){return this.size_?this.size_:this.iconImage_.getSize()},e.prototype.listenImageChange=function(t){this.iconImage_.addEventListener(N.CHANGE,t)},e.prototype.load=function(){this.iconImage_.load()},e.prototype.unlistenImageChange=function(t){this.iconImage_.removeEventListener(N.CHANGE,t)},e}(lu),Ou=function(){function t(t){var e=t||{};this.color_=void 0!==e.color?e.color:null,this.lineCap_=e.lineCap,this.lineDash_=void 0!==e.lineDash?e.lineDash:null,this.lineDashOffset_=e.lineDashOffset,this.lineJoin_=e.lineJoin,this.miterLimit_=e.miterLimit,this.width_=e.width}return t.prototype.clone=function(){var e=this.getColor();return new t({color:Array.isArray(e)?e.slice():e||void 0,lineCap:this.getLineCap(),lineDash:this.getLineDash()?this.getLineDash().slice():void 0,lineDashOffset:this.getLineDashOffset(),lineJoin:this.getLineJoin(),miterLimit:this.getMiterLimit(),width:this.getWidth()})},t.prototype.getColor=function(){return this.color_},t.prototype.getLineCap=function(){return this.lineCap_},t.prototype.getLineDash=function(){return this.lineDash_},t.prototype.getLineDashOffset=function(){return this.lineDashOffset_},t.prototype.getLineJoin=function(){return this.lineJoin_},t.prototype.getMiterLimit=function(){return this.miterLimit_},t.prototype.getWidth=function(){return this.width_},t.prototype.setColor=function(t){this.color_=t},t.prototype.setLineCap=function(t){this.lineCap_=t},t.prototype.setLineDash=function(t){this.lineDash_=t},t.prototype.setLineDashOffset=function(t){this.lineDashOffset_=t},t.prototype.setLineJoin=function(t){this.lineJoin_=t},t.prototype.setMiterLimit=function(t){this.miterLimit_=t},t.prototype.setWidth=function(t){this.width_=t},t}(),Cu=function(){function t(t){var e=t||{};this.geometry_=null,this.geometryFunction_=Lu,void 0!==e.geometry&&this.setGeometry(e.geometry),this.fill_=void 0!==e.fill?e.fill:null,this.image_=void 0!==e.image?e.image:null,this.renderer_=void 0!==e.renderer?e.renderer:null,this.stroke_=void 0!==e.stroke?e.stroke:null,this.text_=void 0!==e.text?e.text:null,this.zIndex_=e.zIndex}return t.prototype.clone=function(){var e=this.getGeometry();return e&&"object"==typeof e&&(e=e.clone()),new t({geometry:e,fill:this.getFill()?this.getFill().clone():void 0,image:this.getImage()?this.getImage().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,text:this.getText()?this.getText().clone():void 0,zIndex:this.getZIndex()})},t.prototype.getRenderer=function(){return this.renderer_},t.prototype.setRenderer=function(t){this.renderer_=t},t.prototype.getGeometry=function(){return this.geometry_},t.prototype.getGeometryFunction=function(){return this.geometryFunction_},t.prototype.getFill=function(){return this.fill_},t.prototype.setFill=function(t){this.fill_=t},t.prototype.getImage=function(){return this.image_},t.prototype.setImage=function(t){this.image_=t},t.prototype.getStroke=function(){return this.stroke_},t.prototype.setStroke=function(t){this.stroke_=t},t.prototype.getText=function(){return this.text_},t.prototype.setText=function(t){this.text_=t},t.prototype.getZIndex=function(){return this.zIndex_},t.prototype.setGeometry=function(t){"function"==typeof t?this.geometryFunction_=t:"string"==typeof t?this.geometryFunction_=function(e){return e.get(t)}:t?void 0!==t&&(this.geometryFunction_=function(){return t}):this.geometryFunction_=Lu,this.geometry_=t},t.prototype.setZIndex=function(t){this.zIndex_=t},t}();var Pu=null;function Iu(t,e){if(!Pu){var r=new du({color:"rgba(255,255,255,0.4)"}),n=new Ou({color:"#3399CC",width:1.25});Pu=[new Cu({image:new fu({fill:r,stroke:n,radius:5}),fill:r,stroke:n})]}return Pu}function bu(){var t={},e=[255,255,255,1],r=[0,153,255,1];return t[Nt.POLYGON]=[new Cu({fill:new du({color:[255,255,255,.5]})})],t[Nt.MULTI_POLYGON]=t[Nt.POLYGON],t[Nt.LINE_STRING]=[new Cu({stroke:new Ou({color:e,width:5})}),new Cu({stroke:new Ou({color:r,width:3})})],t[Nt.MULTI_LINE_STRING]=t[Nt.LINE_STRING],t[Nt.CIRCLE]=t[Nt.POLYGON].concat(t[Nt.LINE_STRING]),t[Nt.POINT]=[new Cu({image:new fu({radius:6,fill:new du({color:r}),stroke:new Ou({color:e,width:1.5})}),zIndex:1/0})],t[Nt.MULTI_POINT]=t[Nt.POINT],t[Nt.GEOMETRY_COLLECTION]=t[Nt.POLYGON].concat(t[Nt.LINE_STRING],t[Nt.POINT]),t}function Lu(t){return t.getGeometry()}var Mu=Cu,Fu={POINT:"point",LINE:"line"},Au="#333",Nu=function(){function t(t){var e=t||{};this.font_=e.font,this.rotation_=e.rotation,this.rotateWithView_=e.rotateWithView,this.scale_=e.scale,this.text_=e.text,this.textAlign_=e.textAlign,this.textBaseline_=e.textBaseline,this.fill_=void 0!==e.fill?e.fill:new du({color:Au}),this.maxAngle_=void 0!==e.maxAngle?e.maxAngle:Math.PI/4,this.placement_=void 0!==e.placement?e.placement:Fu.POINT,this.overflow_=!!e.overflow,this.stroke_=void 0!==e.stroke?e.stroke:null,this.offsetX_=void 0!==e.offsetX?e.offsetX:0,this.offsetY_=void 0!==e.offsetY?e.offsetY:0,this.backgroundFill_=e.backgroundFill?e.backgroundFill:null,this.backgroundStroke_=e.backgroundStroke?e.backgroundStroke:null,this.padding_=void 0===e.padding?null:e.padding}return t.prototype.clone=function(){return new t({font:this.getFont(),placement:this.getPlacement(),maxAngle:this.getMaxAngle(),overflow:this.getOverflow(),rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),scale:this.getScale(),text:this.getText(),textAlign:this.getTextAlign(),textBaseline:this.getTextBaseline(),fill:this.getFill()?this.getFill().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,offsetX:this.getOffsetX(),offsetY:this.getOffsetY(),backgroundFill:this.getBackgroundFill()?this.getBackgroundFill().clone():void 0,backgroundStroke:this.getBackgroundStroke()?this.getBackgroundStroke().clone():void 0,padding:this.getPadding()})},t.prototype.getOverflow=function(){return this.overflow_},t.prototype.getFont=function(){return this.font_},t.prototype.getMaxAngle=function(){return this.maxAngle_},t.prototype.getPlacement=function(){return this.placement_},t.prototype.getOffsetX=function(){return this.offsetX_},t.prototype.getOffsetY=function(){return this.offsetY_},t.prototype.getFill=function(){return this.fill_},t.prototype.getRotateWithView=function(){return this.rotateWithView_},t.prototype.getRotation=function(){return this.rotation_},t.prototype.getScale=function(){return this.scale_},t.prototype.getStroke=function(){return this.stroke_},t.prototype.getText=function(){return this.text_},t.prototype.getTextAlign=function(){return this.textAlign_},t.prototype.getTextBaseline=function(){return this.textBaseline_},t.prototype.getBackgroundFill=function(){return this.backgroundFill_},t.prototype.getBackgroundStroke=function(){return this.backgroundStroke_},t.prototype.getPadding=function(){return this.padding_},t.prototype.setOverflow=function(t){this.overflow_=t},t.prototype.setFont=function(t){this.font_=t},t.prototype.setMaxAngle=function(t){this.maxAngle_=t},t.prototype.setOffsetX=function(t){this.offsetX_=t},t.prototype.setOffsetY=function(t){this.offsetY_=t},t.prototype.setPlacement=function(t){this.placement_=t},t.prototype.setRotateWithView=function(t){this.rotateWithView_=t},t.prototype.setFill=function(t){this.fill_=t},t.prototype.setRotation=function(t){this.rotation_=t},t.prototype.setScale=function(t){this.scale_=t},t.prototype.setStroke=function(t){this.stroke_=t},t.prototype.setText=function(t){this.text_=t},t.prototype.setTextAlign=function(t){this.textAlign_=t},t.prototype.setTextBaseline=function(t){this.textBaseline_=t},t.prototype.setBackgroundFill=function(t){this.backgroundFill_=t},t.prototype.setBackgroundStroke=function(t){this.backgroundStroke_=t},t.prototype.setPadding=function(t){this.padding_=t},t}();function Gu(t,e){var r=/\{z\}/g,n=/\{x\}/g,i=/\{y\}/g,o=/\{-y\}/g;return function(a,s,u){return a?t.replace(r,a[0].toString()).replace(n,a[1].toString()).replace(i,a[2].toString()).replace(o,function(){var t=a[0],r=e.getFullTileRange(t);return K(r,55),(r.getHeight()-a[2]-1).toString()}):void 0}}function Du(t,e){for(var r=t.length,n=new Array(r),i=0;it)throw new Error("Tile load sequence violation");this.state=t,this.changed()},e.prototype.load=function(){n()},e.prototype.getAlpha=function(t,e){if(!this.transition_)return 1;var r=this.transitionStarts_[t];if(r){if(-1===r)return 1}else r=e,this.transitionStarts_[t]=r;var n=e-r+1e3/60;return n>=this.transition_?1:ei(n/this.transition_)},e.prototype.inTransition=function(t){return!!this.transition_&&-1!==this.transitionStarts_[t]},e.prototype.endTransition=function(t){this.transition_&&(this.transitionStarts_[t]=-1)},e}(A),Vu=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();var Wu=function(t){function e(e,r,n,i,o,a){var s=t.call(this,e,r,a)||this;return s.crossOrigin_=i,s.src_=n,s.image_=new Image,null!==i&&(s.image_.crossOrigin=i),s.unlisten_=null,s.tileLoadFunction_=o,s}return Vu(e,t),e.prototype.getImage=function(){return this.image_},e.prototype.getKey=function(){return this.src_},e.prototype.handleImageError_=function(){var t;this.state=wn.ERROR,this.unlistenImage_(),this.image_=((t=hi(1,1)).fillStyle="rgba(0,0,0,0)",t.fillRect(0,0,1,1),t.canvas),this.changed()},e.prototype.handleImageLoad_=function(){var t=this.image_;t.naturalWidth&&t.naturalHeight?this.state=wn.LOADED:this.state=wn.EMPTY,this.unlistenImage_(),this.changed()},e.prototype.load=function(){this.state==wn.ERROR&&(this.state=wn.IDLE,this.image_=new Image,null!==this.crossOrigin_&&(this.image_.crossOrigin=this.crossOrigin_)),this.state==wn.IDLE&&(this.state=wn.LOADING,this.changed(),this.tileLoadFunction_(this,this.src_),this.unlisten_=mu(this.image_,this.handleImageLoad_.bind(this),this.handleImageError_.bind(this)))},e.prototype.unlistenImage_=function(){this.unlisten_&&(this.unlisten_(),this.unlisten_=null)},e}(Xu),Zu=function(){function t(t){this.highWaterMark=void 0!==t?t:2048,this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null}return t.prototype.canExpireCache=function(){return this.getCount()>this.highWaterMark},t.prototype.clear=function(){this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null},t.prototype.containsKey=function(t){return this.entries_.hasOwnProperty(t)},t.prototype.forEach=function(t){for(var e=this.oldest_;e;)t(e.value_,e.key_,this),e=e.newer},t.prototype.get=function(t,e){var r=this.entries_[t];return K(void 0!==r,15),r===this.newest_?r.value_:(r===this.oldest_?(this.oldest_=this.oldest_.newer,this.oldest_.older=null):(r.newer.older=r.older,r.older.newer=r.newer),r.newer=null,r.older=this.newest_,this.newest_.newer=r,this.newest_=r,r.value_)},t.prototype.remove=function(t){var e=this.entries_[t];return K(void 0!==e,15),e===this.newest_?(this.newest_=e.older,this.newest_&&(this.newest_.newer=null)):e===this.oldest_?(this.oldest_=e.newer,this.oldest_&&(this.oldest_.older=null)):(e.newer.older=e.older,e.older.newer=e.newer),delete this.entries_[t],--this.count_,e.value_},t.prototype.getCount=function(){return this.count_},t.prototype.getKeys=function(){var t,e=new Array(this.count_),r=0;for(t=this.newest_;t;t=t.older)e[r++]=t.key_;return e},t.prototype.getValues=function(){var t,e=new Array(this.count_),r=0;for(t=this.newest_;t;t=t.older)e[r++]=t.value_;return e},t.prototype.peekLast=function(){return this.oldest_.value_},t.prototype.peekLastKey=function(){return this.oldest_.key_},t.prototype.peekFirstKey=function(){return this.newest_.key_},t.prototype.pop=function(){var t=this.oldest_;return delete this.entries_[t.key_],t.newer&&(t.newer.older=null),this.oldest_=t.newer,this.oldest_||(this.newest_=null),--this.count_,t.value_},t.prototype.replace=function(t,e){this.get(t),this.entries_[t].value_=e},t.prototype.set=function(t,e){K(!(t in this.entries_),16);var r={key_:t,newer:null,older:this.newest_,value_:e};this.newest_?this.newest_.newer=r:this.oldest_=r,this.newest_=r,this.entries_[t]=r,++this.count_},t.prototype.setSize=function(t){this.highWaterMark=t},t}(),Ku=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Hu=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Ku(e,t),e.prototype.expireCache=function(t){for(;this.canExpireCache();){if(this.peekLast().getKey()in t)break;this.pop().release()}},e.prototype.pruneExceptNewestZ=function(){if(0!==this.getCount()){var t=os(this.peekFirstKey())[0];this.forEach(function(e){e.tileCoord[0]!==t&&(this.remove(is(e.tileCoord)),e.release())}.bind(this))}},e}(Zu);function qu(t,e,r,n){var i=Me(r,e,t),o=we(e,n,r),a=e.getMetersPerUnit();void 0!==a&&(o*=a);var s=t.getMetersPerUnit();void 0!==s&&(o/=s);var u=t.getExtent();if(!u||nt(u,i)){var l=we(t,o,i)/o;isFinite(l)&&l>0&&(o/=l)}return o}function Ju(t,e,r,n){var i=r-t,o=n-e,a=Math.sqrt(i*i+o*o);return[Math.round(r+i/a),Math.round(n+o/a)]}function Qu(t,e,r,n,i,o,a,s,u,l,h){var c=hi(Math.round(r*t),Math.round(r*e));if(0===u.length)return c.canvas;c.scale(r,r);var p=[1/0,1/0,-1/0,-1/0];u.forEach(function(t,e,r){ft(p,t.extent)});var f=It(p),d=Rt(p),_=hi(Math.round(r*f/n),Math.round(r*d/n)),g=r/n;u.forEach(function(t,e,r){var n=t.extent[0]-p[0],i=-(t.extent[3]-p[3]),o=It(t.extent),a=Rt(t.extent);_.drawImage(t.image,l,l,t.image.width-2*l,t.image.height-2*l,n*g,i*g,o*g,a*g)});var y=Ct(a);return s.getTriangles().forEach(function(t,e,i){var a=t.source,s=t.target,u=a[0][0],l=a[0][1],h=a[1][0],f=a[1][1],d=a[2][0],g=a[2][1],v=(s[0][0]-y[0])/o,m=-(s[0][1]-y[1])/o,E=(s[1][0]-y[0])/o,T=-(s[1][1]-y[1])/o,S=(s[2][0]-y[0])/o,x=-(s[2][1]-y[1])/o,w=u,R=l;u=0,l=0;var O=function(t){for(var e=t.length,r=0;ri&&(i=a,n=o)}if(0===i)return null;var s=t[n];t[n]=t[r],t[r]=s;for(var u=r+1;u=0;p--){c[p]=t[p][e]/t[p][p];for(var f=p-1;f>=0;f--)t[f][e]-=t[f][p]*c[p]}return c}([[h-=w,f-=R,0,0,E-v],[d-=w,g-=R,0,0,S-v],[0,0,h,f,T-m],[0,0,d,g,x-m]]);if(O){c.save(),c.beginPath();var C=(v+E+S)/3,P=(m+T+x)/3,I=Ju(C,P,v,m),b=Ju(C,P,E,T),L=Ju(C,P,S,x);c.moveTo(b[0],b[1]),c.lineTo(I[0],I[1]),c.lineTo(L[0],L[1]),c.clip(),c.transform(O[0],O[2],O[1],O[3],v,m),c.translate(p[0]-w,p[3]-R),c.scale(n/r,-n/r),c.drawImage(_.canvas,0,0),c.restore()}}),h&&(c.save(),c.strokeStyle="black",c.lineWidth=1,s.getTriangles().forEach(function(t,e,r){var n=t.target,i=(n[0][0]-y[0])/o,a=-(n[0][1]-y[1])/o,s=(n[1][0]-y[0])/o,u=-(n[1][1]-y[1])/o,l=(n[2][0]-y[0])/o,h=-(n[2][1]-y[1])/o;c.beginPath(),c.moveTo(s,u),c.lineTo(i,a),c.lineTo(l,h),c.closePath(),c.stroke()}),c.restore()),c.canvas}var $u=10,tl=function(){function t(t,e,r,n,i){this.sourceProj_=t,this.targetProj_=e;var o={},a=Le(this.targetProj_,this.sourceProj_);this.transformInv_=function(t){var e=t[0]+"/"+t[1];return o[e]||(o[e]=a(t)),o[e]},this.maxSourceExtent_=n,this.errorThresholdSquared_=i*i,this.triangles_=[],this.wrapsXInSource_=!1,this.canWrapXInSource_=this.sourceProj_.canWrapX()&&!!n&&!!this.sourceProj_.getExtent()&&It(n)==It(this.sourceProj_.getExtent()),this.sourceWorldWidth_=this.sourceProj_.getExtent()?It(this.sourceProj_.getExtent()):null,this.targetWorldWidth_=this.targetProj_.getExtent()?It(this.targetProj_.getExtent()):null;var s=Ct(r),u=Pt(r),l=Tt(r),h=Et(r),c=this.transformInv_(s),p=this.transformInv_(u),f=this.transformInv_(l),d=this.transformInv_(h);if(this.addQuad_(s,u,l,h,c,p,f,d,$u),this.wrapsXInSource_){var _=1/0;this.triangles_.forEach(function(t,e,r){_=Math.min(_,t.source[0][0],t.source[1][0],t.source[2][0])}),this.triangles_.forEach(function(t){if(Math.max(t.source[0][0],t.source[1][0],t.source[2][0])-_>this.sourceWorldWidth_/2){var e=[[t.source[0][0],t.source[0][1]],[t.source[1][0],t.source[1][1]],[t.source[2][0],t.source[2][1]]];e[0][0]-_>this.sourceWorldWidth_/2&&(e[0][0]-=this.sourceWorldWidth_),e[1][0]-_>this.sourceWorldWidth_/2&&(e[1][0]-=this.sourceWorldWidth_),e[2][0]-_>this.sourceWorldWidth_/2&&(e[2][0]-=this.sourceWorldWidth_);var r=Math.min(e[0][0],e[1][0],e[2][0]);Math.max(e[0][0],e[1][0],e[2][0])-r.5&&h<1,f=!1;if(u>0){if(this.targetProj_.isGlobal()&&this.targetWorldWidth_)f=It($([t,e,r,n]))/this.targetWorldWidth_>.25||f;!p&&this.sourceProj_.isGlobal()&&h&&(f=h>.25||f)}if(f||!this.maxSourceExtent_||bt(l,this.maxSourceExtent_)){if(!(f||isFinite(i[0])&&isFinite(i[1])&&isFinite(o[0])&&isFinite(o[1])&&isFinite(a[0])&&isFinite(a[1])&&isFinite(s[0])&&isFinite(s[1]))){if(!(u>0))return;f=!0}if(u>0){if(!f){var d=[(t[0]+r[0])/2,(t[1]+r[1])/2],_=this.transformInv_(d),g=void 0;if(p)g=(Vt(i[0],c)+Vt(a[0],c))/2-Vt(_[0],c);else g=(i[0]+a[0])/2-_[0];var y=(i[1]+a[1])/2-_[1];f=g*g+y*y>this.errorThresholdSquared_}if(f){if(Math.abs(t[0]-r[0])<=Math.abs(t[1]-r[1])){var v=[(e[0]+r[0])/2,(e[1]+r[1])/2],m=this.transformInv_(v),E=[(n[0]+t[0])/2,(n[1]+t[1])/2],T=this.transformInv_(E);this.addQuad_(t,e,v,E,i,o,m,T,u-1),this.addQuad_(E,v,r,n,T,m,a,s,u-1)}else{var S=[(t[0]+e[0])/2,(t[1]+e[1])/2],x=this.transformInv_(S),w=[(r[0]+n[0])/2,(r[1]+n[1])/2],R=this.transformInv_(w);this.addQuad_(t,S,w,n,i,x,R,s,u-1),this.addQuad_(S,e,r,w,x,o,a,R,u-1)}return}}if(p){if(!this.canWrapXInSource_)return;this.wrapsXInSource_=!0}this.addTriangle_(t,r,n,i,a,s),this.addTriangle_(t,e,r,i,o,a)}},t.prototype.calculateSourceExtent=function(){var t=[1/0,1/0,-1/0,-1/0];return this.triangles_.forEach(function(e,r,n){var i=e.source;dt(t,i[0]),dt(t,i[1]),dt(t,i[2])}),t},t.prototype.getTriangles=function(){return this.triangles_},t}(),el=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),rl=function(t){function e(e,r,n,i,o,a,s,u,l,h,c){var p=t.call(this,o,wn.IDLE)||this;p.renderEdges_=void 0!==c&&c,p.pixelRatio_=s,p.gutter_=u,p.canvas_=null,p.sourceTileGrid_=r,p.targetTileGrid_=i,p.wrappedTileCoord_=a||o,p.sourceTiles_=[],p.sourcesListenerKeys_=null,p.sourceZ_=0;var f=i.getTileCoordExtent(p.wrappedTileCoord_),d=p.targetTileGrid_.getExtent(),_=p.sourceTileGrid_.getExtent(),g=d?Ot(f,d):f;if(0===mt(g))return p.state=wn.EMPTY,p;var y=e.getExtent();y&&(_=_?Ot(_,y):y);var v=i.getResolution(p.wrappedTileCoord_[0]),m=qu(e,n,St(g),v);if(!isFinite(m)||m<=0)return p.state=wn.EMPTY,p;var E=void 0!==h?h:Bu;if(p.triangulation_=new tl(e,n,g,_,m*E),0===p.triangulation_.getTriangles().length)return p.state=wn.EMPTY,p;p.sourceZ_=r.getZForResolution(m);var T=p.triangulation_.calculateSourceExtent();if(_&&(e.canWrapX()?(T[1]=kt(T[1],_[1],_[3]),T[3]=kt(T[3],_[1],_[3])):T=Ot(T,_)),mt(T)){for(var S=r.getTileRangeForExtentAndZ(T,p.sourceZ_),x=S.minX;x<=S.maxX;x++)for(var w=S.minY;w<=S.maxY;w++){var R=l(p.sourceZ_,x,w,s);R&&p.sourceTiles_.push(R)}0===p.sourceTiles_.length&&(p.state=wn.EMPTY)}else p.state=wn.EMPTY;return p}return el(e,t),e.prototype.getImage=function(){return this.canvas_},e.prototype.reproject_=function(){var t=[];if(this.sourceTiles_.forEach(function(e,r,n){e&&e.getState()==wn.LOADED&&t.push({extent:this.sourceTileGrid_.getTileCoordExtent(e.tileCoord),image:e.getImage()})}.bind(this)),this.sourceTiles_.length=0,0===t.length)this.state=wn.ERROR;else{var e=this.wrappedTileCoord_[0],r=this.targetTileGrid_.getTileSize(e),n="number"==typeof r?r:r[0],i="number"==typeof r?r:r[1],o=this.targetTileGrid_.getResolution(e),a=this.sourceTileGrid_.getResolution(this.sourceZ_),s=this.targetTileGrid_.getTileCoordExtent(this.wrappedTileCoord_);this.canvas_=Qu(n,i,this.pixelRatio_,a,this.sourceTileGrid_.getExtent(),o,s,this.triangulation_,t,this.gutter_,this.renderEdges_),this.state=wn.LOADED}this.changed()},e.prototype.load=function(){if(this.state==wn.IDLE){this.state=wn.LOADING,this.changed();var t=0;this.sourcesListenerKeys_=[],this.sourceTiles_.forEach(function(e,r,n){var i=e.getState();if(i==wn.IDLE||i==wn.LOADING){t++;var o=g(e,N.CHANGE,function(r){var n=e.getState();n!=wn.LOADED&&n!=wn.ERROR&&n!=wn.EMPTY||(v(o),0===--t&&(this.unlistenSources_(),this.reproject_()))},this);this.sourcesListenerKeys_.push(o)}}.bind(this)),this.sourceTiles_.forEach(function(t,e,r){t.getState()==wn.IDLE&&t.load()}),0===t&&setTimeout(this.reproject_.bind(this),0)}},e.prototype.unlistenSources_=function(){this.sourcesListenerKeys_.forEach(v),this.sourcesListenerKeys_=null},e}(Xu),nl=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function il(t){return t?Array.isArray(t)?function(e){return t}:"function"==typeof t?t:function(e){return[t]}:null}var ol=function(t){function e(e){var r=t.call(this)||this;return r.projection_=xe(e.projection),r.attributions_=il(e.attributions),r.attributionsCollapsible_=void 0===e.attributionsCollapsible||e.attributionsCollapsible,r.loading=!1,r.state_=void 0!==e.state?e.state:mi.READY,r.wrapX_=void 0!==e.wrapX&&e.wrapX,r}return nl(e,t),e.prototype.getAttributions=function(){return this.attributions_},e.prototype.getAttributionsCollapsible=function(){return this.attributionsCollapsible_},e.prototype.getProjection=function(){return this.projection_},e.prototype.getResolutions=function(){return n()},e.prototype.getState=function(){return this.state_},e.prototype.getWrapX=function(){return this.wrapX_},e.prototype.refresh=function(){this.changed()},e.prototype.setAttributions=function(t){this.attributions_=il(t),this.changed()},e.prototype.setState=function(t){this.state_=t,this.changed()},e}(z),al=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),sl=function(t){function e(e){var r=t.call(this,{attributions:e.attributions,attributionsCollapsible:e.attributionsCollapsible,projection:e.projection,state:e.state,wrapX:e.wrapX})||this;r.opaque_=void 0!==e.opaque&&e.opaque,r.tilePixelRatio_=void 0!==e.tilePixelRatio?e.tilePixelRatio:1,r.tileGrid=void 0!==e.tileGrid?e.tileGrid:null;var n=e.cacheSize;if(void 0===n){var i=[256,256],o=e.tileGrid;o&&Ri(o.getTileSize(o.getMinZoom()),i);var a="undefined"!=typeof screen,s=a?screen.availWidth||screen.width:1920,u=a?screen.availHeight||screen.height:1080;n=4*Math.ceil(s/i[0])*Math.ceil(u/i[1])}return r.tileCache=new Hu(n),r.tmpSize=[0,0],r.key_=e.key||"",r.tileOptions={transition:e.transition},r.zDirection=e.zDirection?e.zDirection:0,r}return al(e,t),e.prototype.canExpireCache=function(){return this.tileCache.canExpireCache()},e.prototype.expireCache=function(t,e){var r=this.getTileCacheForProjection(t);r&&r.expireCache(e)},e.prototype.forEachLoadedTile=function(t,e,r,n){var i=this.getTileCacheForProjection(t);if(!i)return!1;for(var o,a,s,u=!0,l=r.minX;l<=r.maxX;++l)for(var h=r.minY;h<=r.maxY;++h)a=ns(e,l,h),s=!1,i.containsKey(a)&&(s=(o=i.get(a)).getState()===wn.LOADED)&&(s=!1!==n(o)),s||(u=!1);return u},e.prototype.getGutterForProjection=function(t){return 0},e.prototype.getKey=function(){return this.key_},e.prototype.setKey=function(t){this.key_!==t&&(this.key_=t,this.changed())},e.prototype.getOpaque=function(t){return this.opaque_},e.prototype.getResolutions=function(){return this.tileGrid.getResolutions()},e.prototype.getTile=function(t,e,r,i,o){return n()},e.prototype.getTileGrid=function(){return this.tileGrid},e.prototype.getTileGridForProjection=function(t){return this.tileGrid?this.tileGrid:ls(t)},e.prototype.getTileCacheForProjection=function(t){var e=this.getProjection();return e&&!Ie(e,t)?null:this.tileCache},e.prototype.getTilePixelRatio=function(t){return this.tilePixelRatio_},e.prototype.getTilePixelSize=function(t,e,r){var n=this.getTileGridForProjection(r),i=this.getTilePixelRatio(e),o=Ri(n.getTileSize(t),this.tmpSize);return 1==i?o:wi(o,i,this.tmpSize)},e.prototype.getTileCoordForTileUrlFunction=function(t,e){var r=void 0!==e?e:this.getProjection(),n=this.getTileGridForProjection(r);return this.getWrapX()&&r.isGlobal()&&(t=function(t,e,r){var n=e[0],i=t.getTileCoordCenter(e),o=fs(r);if(nt(o,i))return e;var a=It(o),s=Math.ceil((o[0]-i[0])/a);return i[0]+=a*s,t.getTileCoordForCoordAndZ(i,n)}(n,t,r)),function(t,e){var r=t[0],n=t[1],i=t[2];if(e.getMinZoom()>r||r>e.getMaxZoom())return!1;var o,a=e.getExtent();return!(o=a?e.getTileRangeForExtentAndZ(a,r):e.getFullTileRange(r))||o.containsXY(n,i)}(t,n)?t:null},e.prototype.clear=function(){this.tileCache.clear()},e.prototype.refresh=function(){this.clear(),t.prototype.refresh.call(this)},e.prototype.useTile=function(t,e,r,n){},e}(ol),ul=function(t){function e(e,r){var n=t.call(this,e)||this;return n.tile=r,n}return al(e,t),e}(M),ll=sl,hl="tileloadstart",cl="tileloadend",pl="tileloaderror",fl=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),dl=function(t){function e(e){var r=t.call(this,{attributions:e.attributions,cacheSize:e.cacheSize,opaque:e.opaque,projection:e.projection,state:e.state,tileGrid:e.tileGrid,tilePixelRatio:e.tilePixelRatio,wrapX:e.wrapX,transition:e.transition,key:e.key,attributionsCollapsible:e.attributionsCollapsible,zDirection:e.zDirection})||this;return r.generateTileUrlFunction_=!e.tileUrlFunction,r.tileLoadFunction=e.tileLoadFunction,r.tileUrlFunction=e.tileUrlFunction?e.tileUrlFunction.bind(r):ku,r.urls=null,e.urls?r.setUrls(e.urls):e.url&&r.setUrl(e.url),r.tileLoadingKeys_={},r}return fl(e,t),e.prototype.getTileLoadFunction=function(){return this.tileLoadFunction},e.prototype.getTileUrlFunction=function(){return this.tileUrlFunction},e.prototype.getUrls=function(){return this.urls},e.prototype.handleTileChange=function(t){var e,r=t.target,n=o(r),i=r.getState();i==wn.LOADING?(this.tileLoadingKeys_[n]=!0,e=hl):n in this.tileLoadingKeys_&&(delete this.tileLoadingKeys_[n],e=i==wn.ERROR?pl:i==wn.LOADED?cl:void 0),null!=e&&this.dispatchEvent(new ul(e,r))},e.prototype.setTileLoadFunction=function(t){this.tileCache.clear(),this.tileLoadFunction=t,this.changed()},e.prototype.setTileUrlFunction=function(t,e){this.tileUrlFunction=t,this.tileCache.pruneExceptNewestZ(),void 0!==e?this.setKey(e):this.changed()},e.prototype.setUrl=function(t){var e=Uu(t);this.urls=e,this.setUrls(e)},e.prototype.setUrls=function(t){this.urls=t;var e=t.join("\n");this.generateTileUrlFunction_?this.setTileUrlFunction(Du(t,this.tileGrid),e):this.setKey(e)},e.prototype.useTile=function(t,e,r){var n=ns(t,e,r);this.tileCache.containsKey(n)&&this.tileCache.get(n)},e}(ll),_l=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function gl(t,e){t.getImage().src=e}var yl=function(t){function e(e){var r=t.call(this,{attributions:e.attributions,cacheSize:e.cacheSize,opaque:e.opaque,projection:e.projection,state:e.state,tileGrid:e.tileGrid,tileLoadFunction:e.tileLoadFunction?e.tileLoadFunction:gl,tilePixelRatio:e.tilePixelRatio,tileUrlFunction:e.tileUrlFunction,url:e.url,urls:e.urls,wrapX:e.wrapX,transition:e.transition,key:e.key,attributionsCollapsible:e.attributionsCollapsible,zDirection:e.zDirection})||this;return r.crossOrigin=void 0!==e.crossOrigin?e.crossOrigin:null,r.tileClass=void 0!==e.tileClass?e.tileClass:Wu,r.tileCacheForProjection={},r.tileGridForProjection={},r.reprojectionErrorThreshold_=e.reprojectionErrorThreshold,r.renderReprojectionEdges_=!1,r}return _l(e,t),e.prototype.canExpireCache=function(){if(this.tileCache.canExpireCache())return!0;for(var t in this.tileCacheForProjection)if(this.tileCacheForProjection[t].canExpireCache())return!0;return!1},e.prototype.expireCache=function(t,e){var r=this.getTileCacheForProjection(t);for(var n in this.tileCache.expireCache(this.tileCache==r?e:{}),this.tileCacheForProjection){var i=this.tileCacheForProjection[n];i.expireCache(i==r?e:{})}},e.prototype.getGutterForProjection=function(t){return this.getProjection()&&t&&!Ie(this.getProjection(),t)?0:this.getGutter()},e.prototype.getGutter=function(){return 0},e.prototype.getOpaque=function(e){return!(this.getProjection()&&e&&!Ie(this.getProjection(),e))&&t.prototype.getOpaque.call(this,e)},e.prototype.getTileGridForProjection=function(t){var e=this.getProjection();if(!this.tileGrid||e&&!Ie(e,t)){var r=o(t);return r in this.tileGridForProjection||(this.tileGridForProjection[r]=ls(t)),this.tileGridForProjection[r]}return this.tileGrid},e.prototype.getTileCacheForProjection=function(t){var e=this.getProjection();if(!e||Ie(e,t))return this.tileCache;var r=o(t);return r in this.tileCacheForProjection||(this.tileCacheForProjection[r]=new Hu(this.tileCache.highWaterMark)),this.tileCacheForProjection[r]},e.prototype.createTile_=function(t,e,r,n,i,o){var a=[t,e,r],s=this.getTileCoordForTileUrlFunction(a,i),u=s?this.tileUrlFunction(s,n,i):void 0,l=new this.tileClass(a,void 0!==u?wn.IDLE:wn.EMPTY,void 0!==u?u:"",this.crossOrigin,this.tileLoadFunction,this.tileOptions);return l.key=o,l.addEventListener(N.CHANGE,this.handleTileChange.bind(this)),l},e.prototype.getTile=function(t,e,r,n,i){var o=this.getProjection();if(o&&i&&!Ie(o,i)){var a=this.getTileCacheForProjection(i),s=[t,e,r],u=void 0,l=is(s);a.containsKey(l)&&(u=a.get(l));var h=this.getKey();if(u&&u.key==h)return u;var c=this.getTileGridForProjection(o),p=this.getTileGridForProjection(i),f=this.getTileCoordForTileUrlFunction(s,i),d=new rl(o,c,i,p,s,f,this.getTilePixelRatio(n),this.getGutter(),function(t,e,r,n){return this.getTileInternal(t,e,r,n,o)}.bind(this),this.reprojectionErrorThreshold_,this.renderReprojectionEdges_);return d.key=h,u?(d.interimTile=u,d.refreshInterimChain(),a.replace(l,d)):a.set(l,d),d}return this.getTileInternal(t,e,r,n,o||i)},e.prototype.getTileInternal=function(t,e,r,n,i){var o=null,a=ns(t,e,r),s=this.getKey();if(this.tileCache.containsKey(a)){if((o=this.tileCache.get(a)).key!=s){var u=o;o=this.createTile_(t,e,r,n,i,s),u.getState()==wn.IDLE?o.interimTile=u.interimTile:o.interimTile=u,o.refreshInterimChain(),this.tileCache.replace(a,o)}}else o=this.createTile_(t,e,r,n,i,s),this.tileCache.set(a,o);return o},e.prototype.setRenderReprojectionEdges=function(t){if(this.renderReprojectionEdges_!=t){for(var e in this.renderReprojectionEdges_=t,this.tileCacheForProjection)this.tileCacheForProjection[e].clear();this.changed()}},e.prototype.setTileGridForProjection=function(t,e){var r=xe(t);if(r){var n=o(r);n in this.tileGridForProjection||(this.tileGridForProjection[n]=e)}},e}(dl),vl=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();var ml=function(t){function e(e){var r=this,n=void 0!==e.hidpi&&e.hidpi;return(r=t.call(this,{cacheSize:e.cacheSize,crossOrigin:"anonymous",opaque:!0,projection:xe("EPSG:3857"),reprojectionErrorThreshold:e.reprojectionErrorThreshold,state:mi.LOADING,tileLoadFunction:e.tileLoadFunction,tilePixelRatio:n?2:1,wrapX:void 0===e.wrapX||e.wrapX,transition:e.transition})||this).hidpi_=n,r.culture_=void 0!==e.culture?e.culture:"en-us",r.maxZoom_=void 0!==e.maxZoom?e.maxZoom:-1,r.apiKey_=e.key,r.imagerySet_=e.imagerySet,Yu("https://dev.virtualearth.net/REST/v1/Imagery/Metadata/"+r.imagerySet_+"?uriScheme=https&include=ImageryProviders&key="+r.apiKey_+"&c="+r.culture_,r.handleImageryMetadataResponse.bind(r),void 0,"jsonp"),r}return vl(e,t),e.prototype.getApiKey=function(){return this.apiKey_},e.prototype.getImagerySet=function(){return this.imagerySet_},e.prototype.handleImageryMetadataResponse=function(t){if(200==t.statusCode&&"OK"==t.statusDescription&&"ValidCredentials"==t.authenticationResultCode&&1==t.resourceSets.length&&1==t.resourceSets[0].resources.length){var e=t.resourceSets[0].resources[0],r=-1==this.maxZoom_?e.zoomMax:this.maxZoom_,n=fs(this.getProjection()),i=this.hidpi_?2:1,o=e.imageWidth==e.imageHeight?e.imageWidth/i:[e.imageWidth/i,e.imageHeight/i],a=hs({extent:n,minZoom:e.zoomMin,maxZoom:r,tileSize:o});this.tileGrid=a;var s=this.culture_,u=this.hidpi_;if(this.tileUrlFunction=ju(e.imageUrlSubdomains.map(function(t){var r=[0,0,0],n=e.imageUrl.replace("{subdomain}",t).replace("{culture}",s);return function(t,e,i){if(t){rs(t[0],t[1],t[2],r);var o=n;return u&&(o+="&dpi=d1&device=mobile"),o.replace("{quadkey}",function(t){var e,r,n=t[0],i=new Array(n),o=1<>=1;return i.join("")}(r))}}})),e.imageryProviders){var l=be(xe("EPSG:4326"),this.getProjection());this.setAttributions(function(t){var r=[],n=t.viewState,i=this.getTileGrid(),o=i.getZForResolution(n.resolution,this.zDirection),a=i.getTileCoordForCoordAndZ(n.center,o)[0];return e.imageryProviders.map(function(e){for(var n=!1,i=e.coverageAreas,o=0,s=i.length;o=u.zoomMin&&a<=u.zoomMax){var h=u.bbox;if(bt(Ft([h[1],h[0],h[3],h[2]],l),t.extent)){n=!0;break}}}n&&r.push(e.attribution)}),r.push('Terms of Use'),r}.bind(this))}this.setState(mi.READY)}else this.setState(mi.ERROR)},e}(yl),El=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Tl=function(t){function e(e){var r=e||{},n=void 0!==r.projection?r.projection:"EPSG:3857",i=void 0!==r.tileGrid?r.tileGrid:hs({extent:fs(n),maxZoom:r.maxZoom,minZoom:r.minZoom,tileSize:r.tileSize});return t.call(this,{attributions:r.attributions,cacheSize:r.cacheSize,crossOrigin:r.crossOrigin,opaque:r.opaque,projection:n,reprojectionErrorThreshold:r.reprojectionErrorThreshold,tileGrid:i,tileLoadFunction:r.tileLoadFunction,tilePixelRatio:r.tilePixelRatio,tileUrlFunction:r.tileUrlFunction,url:r.url,urls:r.urls,wrapX:void 0===r.wrapX||r.wrapX,transition:r.transition,attributionsCollapsible:r.attributionsCollapsible,zDirection:r.zDirection})||this}return El(e,t),e}(yl),Sl=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),xl=function(t){function e(e){var r=t.call(this,{attributions:e.attributions,cacheSize:e.cacheSize,crossOrigin:e.crossOrigin,maxZoom:void 0!==e.maxZoom?e.maxZoom:18,minZoom:e.minZoom,projection:e.projection,wrapX:e.wrapX})||this;return r.account_=e.account,r.mapId_=e.map||"",r.config_=e.config||{},r.templateCache_={},r.initializeMap_(),r}return Sl(e,t),e.prototype.getConfig=function(){return this.config_},e.prototype.updateConfig=function(t){p(this.config_,t),this.initializeMap_()},e.prototype.setConfig=function(t){this.config_=t||{},this.initializeMap_()},e.prototype.initializeMap_=function(){var t=JSON.stringify(this.config_);if(this.templateCache_[t])this.applyTemplate_(this.templateCache_[t]);else{var e="https://"+this.account_+".carto.com/api/v1/map";this.mapId_&&(e+="/named/"+this.mapId_);var r=new XMLHttpRequest;r.addEventListener("load",this.handleInitResponse_.bind(this,t)),r.addEventListener("error",this.handleInitError_.bind(this)),r.open("POST",e),r.setRequestHeader("Content-type","application/json"),r.send(JSON.stringify(this.config_))}},e.prototype.handleInitResponse_=function(t,e){var r=e.target;if(!r.status||r.status>=200&&r.status<300){var n=void 0;try{n=JSON.parse(r.responseText)}catch(t){return void this.setState(mi.ERROR)}this.applyTemplate_(n),this.templateCache_[t]=n,this.setState(mi.READY)}else this.setState(mi.ERROR)},e.prototype.handleInitError_=function(t){this.setState(mi.ERROR)},e.prototype.applyTemplate_=function(t){var e="https://"+t.cdn_url.https+"/"+this.account_+"/api/v1/map/"+t.layergroupid+"/{z}/{x}/{y}.png";this.setUrl(e)},e}(Tl),wl={ADDFEATURE:"addfeature",CHANGEFEATURE:"changefeature",CLEAR:"clear",REMOVEFEATURE:"removefeature"},Rl=r(0),Ol=r.n(Rl),Cl=function(){function t(t){this.rbush_=new Ol.a(t),this.items_={}}return t.prototype.insert=function(t,e){var r={minX:t[0],minY:t[1],maxX:t[2],maxY:t[3],value:e};this.rbush_.insert(r),this.items_[o(e)]=r},t.prototype.load=function(t,e){for(var r=new Array(e.length),n=0,i=e.length;n=0;--r){var n=this.geometryFunction(t[r]);n?Xn(e,n.getCoordinates()):t.splice(r,1)}qn(e,1/t.length);var i=new q(new Rr(e));return i.set("features",t),i},e}(bl),Fl=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Al={DEFAULT:"default",TRUNCATED:"truncated"},Nl=function(t){function e(e,r,n,i,o,a,s){var u=t.call(this,r,n,i,o,a,s)||this;return u.zoomifyImage_=null,u.tileSize_=e,u}return Fl(e,t),e.prototype.getImage=function(){if(this.zoomifyImage_)return this.zoomifyImage_;var e=t.prototype.getImage.call(this);if(this.state==wn.LOADED){var r=this.tileSize_;if(e.width==r[0]&&e.height==r[1])return this.zoomifyImage_=e,e;var n=hi(r[0],r[1]);return n.drawImage(e,0,0),this.zoomifyImage_=n.canvas,n.canvas}return e},e}(Wu),Gl=function(t){function e(e){var r=this,n=e||{},i=n.size,o=void 0!==n.tierSizeCalculation?n.tierSizeCalculation:Al.DEFAULT,a=n.tilePixelRatio||1,s=i[0],u=i[1],l=[],h=n.tileSize||In,c=h*a;switch(o){case Al.DEFAULT:for(;s>c||u>c;)l.push([Math.ceil(s/c),Math.ceil(u/c)]),c+=c;break;case Al.TRUNCATED:for(var p=s,f=u;p>c||f>c;)l.push([Math.ceil(p/c),Math.ceil(f/c)]),p>>=1,f>>=1;break;default:K(!1,53)}l.push([1,1]),l.reverse();for(var d=[a],_=[0],g=1,y=l.length;g1,n=r&&t.imageInfo.profile[1].supports?t.imageInfo.profile[1].supports:[],i=r&&t.imageInfo.profile[1].formats?t.imageInfo.profile[1].formats:[],o=r&&t.imageInfo.profile[1].qualities?t.imageInfo.profile[1].qualities:[];return{url:t.imageInfo["@id"].replace(/\/?(info.json)?$/g,""),sizes:void 0===t.imageInfo.sizes?void 0:t.imageInfo.sizes.map(function(t){return[t.width,t.height]}),tileSize:void 0===t.imageInfo.tiles?void 0:[t.imageInfo.tiles.map(function(t){return t.width})[0],t.imageInfo.tiles.map(function(t){return void 0===t.height?t.width:t.height})[0]],resolutions:void 0===t.imageInfo.tiles?void 0:t.imageInfo.tiles.map(function(t){return t.scaleFactors})[0],supports:e.supports.concat(n),formats:e.formats.concat(i),qualities:e.qualities.concat(o)}},Bl[Dl.VERSION3]=function(t){var e=t.getComplianceLevelSupportedFeatures(),r=void 0===t.imageInfo.extraFormats?e.formats:e.formats.concat(t.imageInfo.extraFormats),n=void 0!==t.imageInfo.preferredFormats&&Array.isArray(t.imageInfo.preferredFormats)&&t.imageInfo.preferredFormats.length>0?t.imageInfo.preferredFormats.filter(function(t){return["jpg","png","gif"].includes(t)}).reduce(function(t,e){return void 0===t&&r.includes(e)?e:t},void 0):void 0;return{url:t.imageInfo.id,sizes:void 0===t.imageInfo.sizes?void 0:t.imageInfo.sizes.map(function(t){return[t.width,t.height]}),tileSize:void 0===t.imageInfo.tiles?void 0:[t.imageInfo.tiles.map(function(t){return t.width})[0],t.imageInfo.tiles.map(function(t){return t.height})[0]],resolutions:void 0===t.imageInfo.tiles?void 0:t.imageInfo.tiles.map(function(t){return t.scaleFactors})[0],supports:void 0===t.imageInfo.extraFeatures?e.supports:e.supports.concat(t.imageInfo.extraFeatures),formats:r,qualities:void 0===t.imageInfo.extraQualities?e.qualities:e.qualities.concat(t.imageInfo.extraQualities),preferredFormat:n}};var zl=function(){function t(t){this.setImageInfo(t)}return t.prototype.setImageInfo=function(t){this.imageInfo="string"==typeof t?JSON.parse(t):t},t.prototype.getImageApiVersion=function(){if(void 0!==this.imageInfo){var t=this.imageInfo["@context"]||"ol-no-context";"string"==typeof t&&(t=[t]);for(var e=0;e0&&"string"==typeof this.imageInfo.profile[0]&&Ul.test(this.imageInfo.profile[0]))return this.imageInfo.profile[0]}},t.prototype.getComplianceLevelFromProfile=function(t){var e=this.getComplianceLevelEntryFromProfile(t);if(void 0!==e){var r=e.match(/level[0-2](\.json)?$/g);return Array.isArray(r)?r[0].replace(".json",""):void 0}},t.prototype.getComplianceLevelSupportedFeatures=function(){if(void 0!==this.imageInfo){var t=this.getImageApiVersion(),e=this.getComplianceLevelFromProfile(t);return void 0===e?jl.none.none:jl[t][e]}},t.prototype.getTileSourceOptions=function(t){var e=t||{},r=this.getImageApiVersion();if(void 0!==r){var n=void 0===r?void 0:Bl[r](this);if(void 0!==n)return{url:n.url,version:r,size:[this.imageInfo.width,this.imageInfo.height],sizes:n.sizes,format:void 0!==e.format&&n.formats.includes(e.format)?e.format:void 0!==n.preferredFormat?n.preferredFormat:"jpg",supports:n.supports,quality:e.quality&&n.qualities.includes(e.quality)?e.quality:n.qualities.includes("native")?"native":"default",resolutions:Array.isArray(n.resolutions)?n.resolutions.sort(function(t,e){return e-t}):void 0,tileSize:n.tileSize}}},t}(),Xl=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function Vl(t){return t.toLocaleString("en",{maximumFractionDigits:10})}var Wl=function(t){function e(e){var r=this,n=e||{},i=n.url||"";i+=i.lastIndexOf("/")===i.length-1||""===i?"":"/";var o=n.version||Dl.VERSION2,a=n.sizes||[],s=n.size;K(null!=s&&Array.isArray(s)&&2==s.length&&!isNaN(s[0])&&s[0]>0&&!isNaN(s[1])&&s[1]>0,60);var u,l,h,c=s[0],p=s[1],f=n.tileSize,d=n.tilePixelRatio||1,_=n.format||"jpg",g=n.quality||(n.version==Dl.VERSION1?"native":"default"),y=n.resolutions||[],v=n.supports||[],m=n.extent||[0,-p,c,0],E=null!=a&&Array.isArray(a)&&a.length>0,T=void 0!==f&&("number"==typeof f&&Number.isInteger(f)&&f>0||Array.isArray(f)&&f.length>0),S=null!=v&&Array.isArray(v)&&(v.includes("regionByPx")||v.includes("regionByPct"))&&(v.includes("sizeByWh")||v.includes("sizeByH")||v.includes("sizeByW")||v.includes("sizeByPct"));if(y.sort(function(t,e){return e-t}),T||S)if(null!=f&&("number"==typeof f&&Number.isInteger(f)&&f>0?(u=f,l=f):Array.isArray(f)&&f.length>0&&((1==f.length||null==f[1]&&Number.isInteger(f[0]))&&(u=f[0],l=f[0]),2==f.length&&(Number.isInteger(f[0])&&Number.isInteger(f[1])?(u=f[0],l=f[1]):null==f[0]&&Number.isInteger(f[1])&&(u=f[1],l=f[1])))),void 0!==u&&void 0!==l||(u=In,l=In),0==y.length)for(var x=h=Math.max(Math.ceil(Math.log(c/u)/Math.LN2),Math.ceil(Math.log(p/l)/Math.LN2));x>=0;x--)y.push(Math.pow(2,x));else{var w=Math.max.apply(Math,y);h=Math.round(Math.log(w)/Math.LN2)}else if(u=c,l=p,y=[],E){a.sort(function(t,e){return t[0]-e[0]}),h=-1;var R=[];for(x=0;x0&&y[y.length-1]==O?R.push(x):(y.push(O),h++)}if(R.length>0)for(x=0;xh)){var d=t[1],m=t[2],x=y[f];if(!(void 0===d||void 0===m||void 0===x||d<0||Math.ceil(c/x/u)<=d||m<0||Math.ceil(p/x/l)<=m)){if(S||T){var w=d*u*x,R=m*l*x,O=u*x,C=l*x,P=u,I=l;if(w+O>c&&(O=c-w),R+C>p&&(C=p-R),w+u*x>c&&(P=Math.floor((c-w+x-1)/x)),R+l*x>p&&(I=Math.floor((p-R+x-1)/x)),0==w&&O==c&&0==R&&C==p)n="full";else if(!S||v.includes("regionByPx"))n=w+","+R+","+O+","+C;else if(v.includes("regionByPct")){n="pct:"+Vl(w/c*100)+","+Vl(R/p*100)+","+Vl(O/c*100)+","+Vl(C/p*100)}o!=Dl.VERSION3||S&&!v.includes("sizeByWh")?!S||v.includes("sizeByW")?s=P+",":v.includes("sizeByH")?s=","+I:v.includes("sizeByWh")?s=P+","+I:v.includes("sizeByPct")&&(s="pct:"+Vl(100/x)):s=P+","+I}else if(n="full",E){var b=a[f][0],L=a[f][1];s=o==Dl.VERSION3?b==c&&L==p?"max":b+","+L:b==c?"full":b+","}else s=o==Dl.VERSION3?"max":"full";return i+n+"/"+s+"/0/"+g+"."+_}}},transition:n.transition})||this).zDirection=n.zDirection,r}return Xl(e,t),e}(yl),Zl=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Kl=function(t){function e(e,r,n,i,o,a){var s=this,u=e.getExtent(),l=r.getExtent(),h=l?Ot(n,l):n,c=qu(e,r,St(h),i),p=new tl(e,r,h,u,c*Bu),f=a(p.calculateSourceExtent(),c,o),d=f?Pa.IDLE:Pa.EMPTY,_=f?f.getPixelRatio():1;return(s=t.call(this,n,i,_,d)||this).targetProj_=r,s.maxSourceExtent_=u,s.triangulation_=p,s.targetResolution_=i,s.targetExtent_=n,s.sourceImage_=f,s.sourcePixelRatio_=_,s.canvas_=null,s.sourceListenerKey_=null,s}return Zl(e,t),e.prototype.disposeInternal=function(){this.state==Pa.LOADING&&this.unlistenSource_(),t.prototype.disposeInternal.call(this)},e.prototype.getImage=function(){return this.canvas_},e.prototype.getProjection=function(){return this.targetProj_},e.prototype.reproject_=function(){var t=this.sourceImage_.getState();if(t==Pa.LOADED){var e=It(this.targetExtent_)/this.targetResolution_,r=Rt(this.targetExtent_)/this.targetResolution_;this.canvas_=Qu(e,r,this.sourcePixelRatio_,this.sourceImage_.getResolution(),this.maxSourceExtent_,this.targetResolution_,this.targetExtent_,this.triangulation_,[{extent:this.sourceImage_.getExtent(),image:this.sourceImage_.getImage()}],0)}this.state=t,this.changed()},e.prototype.load=function(){if(this.state==Pa.IDLE){this.state=Pa.LOADING,this.changed();var t=this.sourceImage_.getState();t==Pa.LOADED||t==Pa.ERROR?this.reproject_():(this.sourceListenerKey_=g(this.sourceImage_,N.CHANGE,function(t){var e=this.sourceImage_.getState();e!=Pa.LOADED&&e!=Pa.ERROR||(this.unlistenSource_(),this.reproject_())},this),this.sourceImage_.load())}},e.prototype.unlistenSource_=function(){v(this.sourceListenerKey_),this.sourceListenerKey_=null},e}(yu),Hl=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),ql="imageloadstart",Jl="imageloadend",Ql="imageloaderror",$l=function(t){function e(e,r){var n=t.call(this,e)||this;return n.image=r,n}return Hl(e,t),e}(M);function th(t,e){t.getImage().src=e}var eh=function(t){function e(e){var r=t.call(this,{attributions:e.attributions,projection:e.projection,state:e.state})||this;return r.resolutions_=void 0!==e.resolutions?e.resolutions:null,r.reprojectedImage_=null,r.reprojectedRevision_=0,r}return Hl(e,t),e.prototype.getResolutions=function(){return this.resolutions_},e.prototype.findNearestResolution=function(t){if(this.resolutions_){var e=S(this.resolutions_,t,0);t=this.resolutions_[e]}return t},e.prototype.getImage=function(t,e,r,n){var i=this.getProjection();if(i&&n&&!Ie(i,n)){if(this.reprojectedImage_){if(this.reprojectedRevision_==this.getRevision()&&Ie(this.reprojectedImage_.getProjection(),n)&&this.reprojectedImage_.getResolution()==e&&pt(this.reprojectedImage_.getExtent(),t))return this.reprojectedImage_;this.reprojectedImage_.dispose(),this.reprojectedImage_=null}return this.reprojectedImage_=new Kl(i,n,t,e,r,function(t,e,r){return this.getImageInternal(t,e,r,i)}.bind(this)),this.reprojectedRevision_=this.getRevision(),this.reprojectedImage_}return i&&(n=i),this.getImageInternal(t,e,r,n)},e.prototype.getImageInternal=function(t,e,r,i){return n()},e.prototype.handleImageChange=function(t){var e=t.target;switch(e.getState()){case Pa.LOADING:this.loading=!0,this.dispatchEvent(new $l(ql,e));break;case Pa.LOADED:this.loading=!1,this.dispatchEvent(new $l(Jl,e));break;case Pa.ERROR:this.loading=!1,this.dispatchEvent(new $l(Ql,e))}},e}(ol);function rh(t,e){var r=[];Object.keys(e).forEach(function(t){null!==e[t]&&void 0!==e[t]&&r.push(t+"="+encodeURIComponent(e[t]))});var n=r.join("&");return(t=-1===(t=t.replace(/[?&]$/,"")).indexOf("?")?t+"?":t+"&")+n}var nh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),ih=function(t){function e(e){var r=this,n=e||{};return(r=t.call(this,{attributions:n.attributions,projection:n.projection,resolutions:n.resolutions})||this).crossOrigin_=void 0!==n.crossOrigin?n.crossOrigin:null,r.hidpi_=void 0===n.hidpi||n.hidpi,r.url_=n.url,r.imageLoadFunction_=void 0!==n.imageLoadFunction?n.imageLoadFunction:th,r.params_=n.params||{},r.image_=null,r.imageSize_=[0,0],r.renderedRevision_=0,r.ratio_=void 0!==n.ratio?n.ratio:1.5,r}return nh(e,t),e.prototype.getParams=function(){return this.params_},e.prototype.getImageInternal=function(t,e,r,n){if(void 0===this.url_)return null;e=this.findNearestResolution(e),r=this.hidpi_?r:1;var i=this.image_;if(i&&this.renderedRevision_==this.getRevision()&&i.getResolution()==e&&i.getPixelRatio()==r&&it(i.getExtent(),t))return i;var o={F:"image",FORMAT:"PNG32",TRANSPARENT:!0};p(o,this.params_);var a=((t=t.slice())[0]+t[2])/2,s=(t[1]+t[3])/2;if(1!=this.ratio_){var u=this.ratio_*It(t)/2,l=this.ratio_*Rt(t)/2;t[0]=a-u,t[1]=s-l,t[2]=a+u,t[3]=s+l}var h=e/r,c=Math.ceil(It(t)/h),f=Math.ceil(Rt(t)/h);t[0]=a-h*c/2,t[2]=a+h*c/2,t[1]=s-h*f/2,t[3]=s+h*f/2,this.imageSize_[0]=c,this.imageSize_[1]=f;var d=this.getRequestUrl_(t,this.imageSize_,r,n,o);return this.image_=new Eu(t,e,r,d,this.crossOrigin_,this.imageLoadFunction_),this.renderedRevision_=this.getRevision(),this.image_.addEventListener(N.CHANGE,this.handleImageChange.bind(this)),this.image_},e.prototype.getImageLoadFunction=function(){return this.imageLoadFunction_},e.prototype.getRequestUrl_=function(t,e,r,n,i){var o=n.getCode().split(":").pop();i.SIZE=e[0]+","+e[1],i.BBOX=t.join(","),i.BBOXSR=o,i.IMAGESR=o,i.DPI=Math.round(90*r);var a=this.url_,s=a.replace(/MapServer\/?$/,"MapServer/export").replace(/ImageServer\/?$/,"ImageServer/exportImage");return s==a&&K(!1,50),rh(s,i)},e.prototype.getUrl=function(){return this.url_},e.prototype.setImageLoadFunction=function(t){this.image_=null,this.imageLoadFunction_=t,this.changed()},e.prototype.setUrl=function(t){t!=this.url_&&(this.url_=t,this.image_=null,this.changed())},e.prototype.updateParams=function(t){p(this.params_,t),this.image_=null,this.changed()},e}(eh),oh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),ah=function(t){function e(e,r,n,i,o){var a=this,s=void 0!==o?Pa.IDLE:Pa.LOADED;return(a=t.call(this,e,r,n,s)||this).loader_=void 0!==o?o:null,a.canvas_=i,a.error_=null,a}return oh(e,t),e.prototype.getError=function(){return this.error_},e.prototype.handleLoad_=function(t){t?(this.error_=t,this.state=Pa.ERROR):this.state=Pa.LOADED,this.changed()},e.prototype.load=function(){this.state==Pa.IDLE&&(this.state=Pa.LOADING,this.changed(),this.loader_(this.handleLoad_.bind(this)))},e.prototype.getImage=function(){return this.canvas_},e}(yu),sh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),uh=function(t){function e(e){var r=this,n=e||{};return(r=t.call(this,{attributions:n.attributions,projection:n.projection,resolutions:n.resolutions,state:n.state})||this).canvasFunction_=n.canvasFunction,r.canvas_=null,r.renderedRevision_=0,r.ratio_=void 0!==n.ratio?n.ratio:1.5,r}return sh(e,t),e.prototype.getImageInternal=function(t,e,r,n){e=this.findNearestResolution(e);var i=this.canvas_;if(i&&this.renderedRevision_==this.getRevision()&&i.getResolution()==e&&i.getPixelRatio()==r&&it(i.getExtent(),t))return i;Mt(t=t.slice(),this.ratio_);var o=[It(t)/e*r,Rt(t)/e*r],a=this.canvasFunction_.call(this,t,e,r,o,n);return a&&(i=new ah(t,e,r,a)),this.canvas_=i,this.renderedRevision_=this.getRevision(),i},e}(eh),lh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();var hh=function(t){function e(e){var r=t.call(this,{projection:e.projection,resolutions:e.resolutions})||this;return r.crossOrigin_=void 0!==e.crossOrigin?e.crossOrigin:null,r.displayDpi_=void 0!==e.displayDpi?e.displayDpi:96,r.params_=e.params||{},r.url_=e.url,r.imageLoadFunction_=void 0!==e.imageLoadFunction?e.imageLoadFunction:th,r.hidpi_=void 0===e.hidpi||e.hidpi,r.metersPerUnit_=void 0!==e.metersPerUnit?e.metersPerUnit:1,r.ratio_=void 0!==e.ratio?e.ratio:1,r.useOverlay_=void 0!==e.useOverlay&&e.useOverlay,r.image_=null,r.renderedRevision_=0,r}return lh(e,t),e.prototype.getParams=function(){return this.params_},e.prototype.getImageInternal=function(t,e,r,n){e=this.findNearestResolution(e),r=this.hidpi_?r:1;var i=this.image_;if(i&&this.renderedRevision_==this.getRevision()&&i.getResolution()==e&&i.getPixelRatio()==r&&it(i.getExtent(),t))return i;1!=this.ratio_&&Mt(t=t.slice(),this.ratio_);var o=[It(t)/e*r,Rt(t)/e*r];if(void 0!==this.url_){var a=this.getUrl(this.url_,this.params_,t,o,n);(i=new Eu(t,e,r,a,this.crossOrigin_,this.imageLoadFunction_)).addEventListener(N.CHANGE,this.handleImageChange.bind(this))}else i=null;return this.image_=i,this.renderedRevision_=this.getRevision(),i},e.prototype.getImageLoadFunction=function(){return this.imageLoadFunction_},e.prototype.updateParams=function(t){p(this.params_,t),this.changed()},e.prototype.getUrl=function(t,e,r,n,i){var o=function(t,e,r,n){var i=It(t),o=Rt(t),a=e[0],s=e[1],u=.0254/n;return s*i>a*o?i*r/(a*u):o*r/(s*u)}(r,n,this.metersPerUnit_,this.displayDpi_),a=St(r),s={OPERATION:this.useOverlay_?"GETDYNAMICMAPOVERLAYIMAGE":"GETMAPIMAGE",VERSION:"2.0.0",LOCALE:"en",CLIENTAGENT:"ol/source/ImageMapGuide source",CLIP:"1",SETDISPLAYDPI:this.displayDpi_,SETDISPLAYWIDTH:Math.round(n[0]),SETDISPLAYHEIGHT:Math.round(n[1]),SETVIEWSCALE:o,SETVIEWCENTERX:a[0],SETVIEWCENTERY:a[1]};return p(s,e),rh(t,s)},e.prototype.setImageLoadFunction=function(t){this.image_=null,this.imageLoadFunction_=t,this.changed()},e}(eh),ch=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),ph=function(t){function e(e){var r=this,n=void 0!==e.crossOrigin?e.crossOrigin:null,i=void 0!==e.imageLoadFunction?e.imageLoadFunction:th;return(r=t.call(this,{attributions:e.attributions,projection:xe(e.projection)})||this).url_=e.url,r.imageExtent_=e.imageExtent,r.image_=new Eu(r.imageExtent_,void 0,1,r.url_,n,i),r.imageSize_=e.imageSize?e.imageSize:null,r.image_.addEventListener(N.CHANGE,r.handleImageChange.bind(r)),r}return ch(e,t),e.prototype.getImageExtent=function(){return this.imageExtent_},e.prototype.getImageInternal=function(t,e,r,n){return bt(t,this.image_.getExtent())?this.image_:null},e.prototype.getUrl=function(){return this.url_},e.prototype.handleImageChange=function(e){if(this.image_.getState()==Pa.LOADED){var r=this.image_.getExtent(),n=this.image_.getImage(),i=void 0,o=void 0;this.imageSize_?(i=this.imageSize_[0],o=this.imageSize_[1]):(i=n.width,o=n.height);var a=Rt(r)/o,s=Math.ceil(It(r)/a);if(s!=i){var u=hi(s,o),l=u.canvas;u.drawImage(n,0,0,i,o,0,0,l.width,l.height),this.image_.setImage(l)}}t.prototype.handleImageChange.call(this,e)},e}(eh),fh="1.3.0",dh="carmentaserver",_h="geoserver",gh="mapserver",yh="qgis",vh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),mh=[101,101],Eh=function(t){function e(e){var r=this,n=e||{};return(r=t.call(this,{attributions:n.attributions,projection:n.projection,resolutions:n.resolutions})||this).crossOrigin_=void 0!==n.crossOrigin?n.crossOrigin:null,r.url_=n.url,r.imageLoadFunction_=void 0!==n.imageLoadFunction?n.imageLoadFunction:th,r.params_=n.params||{},r.v13_=!0,r.updateV13_(),r.serverType_=n.serverType,r.hidpi_=void 0===n.hidpi||n.hidpi,r.image_=null,r.imageSize_=[0,0],r.renderedRevision_=0,r.ratio_=void 0!==n.ratio?n.ratio:1.5,r}return vh(e,t),e.prototype.getFeatureInfoUrl=function(t,e,r,n){if(void 0!==this.url_){var i=xe(r),o=this.getProjection();o&&o!==i&&(e=qu(o,i,t,e),t=Me(t,i,o));var a=wt(t,e,0,mh),s={SERVICE:"WMS",VERSION:fh,REQUEST:"GetFeatureInfo",FORMAT:"image/png",TRANSPARENT:!0,QUERY_LAYERS:this.params_.LAYERS};p(s,this.params_,n);var u=Math.floor((t[0]-a[0])/e),l=Math.floor((a[3]-t[1])/e);return s[this.v13_?"I":"X"]=u,s[this.v13_?"J":"Y"]=l,this.getRequestUrl_(a,mh,1,o||i,s)}},e.prototype.getLegendUrl=function(t,e){if(void 0!==this.url_){var r={SERVICE:"WMS",VERSION:fh,REQUEST:"GetLegendGraphic",FORMAT:"image/png"};if(void 0===e||void 0===e.LAYER){var n=this.params_.LAYERS;if(!(!Array.isArray(n)||1===n.length))return;r.LAYER=n}if(void 0!==t){var i=this.getProjection()?this.getProjection().getMetersPerUnit():1;r.SCALE=t*i*39.37*(25.4/.28)}return p(r,e),rh(this.url_,r)}},e.prototype.getParams=function(){return this.params_},e.prototype.getImageInternal=function(t,e,r,n){if(void 0===this.url_)return null;e=this.findNearestResolution(e),1==r||this.hidpi_&&void 0!==this.serverType_||(r=1);var i=e/r,o=St(t),a=wt(o,i,0,[Math.ceil(It(t)/i),Math.ceil(Rt(t)/i)]),s=wt(o,i,0,[Math.ceil(this.ratio_*It(t)/i),Math.ceil(this.ratio_*Rt(t)/i)]),u=this.image_;if(u&&this.renderedRevision_==this.getRevision()&&u.getResolution()==e&&u.getPixelRatio()==r&&it(u.getExtent(),a))return u;var l={SERVICE:"WMS",VERSION:fh,REQUEST:"GetMap",FORMAT:"image/png",TRANSPARENT:!0};p(l,this.params_),this.imageSize_[0]=Math.round(It(s)/i),this.imageSize_[1]=Math.round(Rt(s)/i);var h=this.getRequestUrl_(s,this.imageSize_,r,n,l);return this.image_=new Eu(s,e,r,h,this.crossOrigin_,this.imageLoadFunction_),this.renderedRevision_=this.getRevision(),this.image_.addEventListener(N.CHANGE,this.handleImageChange.bind(this)),this.image_},e.prototype.getImageLoadFunction=function(){return this.imageLoadFunction_},e.prototype.getRequestUrl_=function(t,e,r,n,i){if(K(void 0!==this.url_,9),i[this.v13_?"CRS":"SRS"]=n.getCode(),"STYLES"in this.params_||(i.STYLES=""),1!=r)switch(this.serverType_){case _h:var o=90*r+.5|0;"FORMAT_OPTIONS"in i?i.FORMAT_OPTIONS+=";dpi:"+o:i.FORMAT_OPTIONS="dpi:"+o;break;case gh:i.MAP_RESOLUTION=90*r;break;case dh:case yh:i.DPI=90*r;break;default:K(!1,8)}i.WIDTH=e[0],i.HEIGHT=e[1];var a,s=n.getAxisOrientation();return a=this.v13_&&"ne"==s.substr(0,2)?[t[1],t[0],t[3],t[2]]:t,i.BBOX=a.join(","),rh(this.url_,i)},e.prototype.getUrl=function(){return this.url_},e.prototype.setImageLoadFunction=function(t){this.image_=null,this.imageLoadFunction_=t,this.changed()},e.prototype.setUrl=function(t){t!=this.url_&&(this.url_=t,this.image_=null,this.changed())},e.prototype.updateParams=function(t){p(this.params_,t),this.updateV13_(),this.image_=null,this.changed()},e.prototype.updateV13_=function(){var t=this.params_.VERSION||fh;this.v13_=zn(t,"1.3")>=0},e}(eh),Th=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Sh='© OpenStreetMap contributors.',xh=function(t){function e(e){var r,n=e||{};r=void 0!==n.attributions?n.attributions:[Sh];var i=void 0!==n.crossOrigin?n.crossOrigin:"anonymous",o=void 0!==n.url?n.url:"https://{a-c}.tile.openstreetmap.org/{z}/{x}/{y}.png";return t.call(this,{attributions:r,cacheSize:n.cacheSize,crossOrigin:i,opaque:void 0===n.opaque||n.opaque,maxZoom:void 0!==n.maxZoom?n.maxZoom:19,reprojectionErrorThreshold:n.reprojectionErrorThreshold,tileLoadFunction:n.tileLoadFunction,url:o,wrapX:n.wrapX,attributionsCollapsible:!1})||this}return Th(e,t),e}(Tl),wh=r(3),Rh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Oh=function(t){function e(e){var r=e||{};return t.call(this,r)||this}return Rh(e,t),e}(Yi),Ch=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Ph=function(t){function e(e){var r=t.call(this)||this;return r.boundHandleImageChange_=r.handleImageChange_.bind(r),r.layer_=e,r}return Ch(e,t),e.prototype.getFeatures=function(t){return n()},e.prototype.prepareFrame=function(t){return n()},e.prototype.renderFrame=function(t,e){return n()},e.prototype.loadedTileCallback=function(t,e,r){t[e]||(t[e]={}),t[e][r.tileCoord.toString()]=r},e.prototype.createLoadedTileFinder=function(t,e,r){return function(n,i){var o=this.loadedTileCallback.bind(this,r,n);return t.forEachLoadedTile(e,n,i,o)}.bind(this)},e.prototype.forEachFeatureAtCoordinate=function(t,e,r,n,i){},e.prototype.getDataAtPixel=function(t,e,r){return n()},e.prototype.getLayer=function(){return this.layer_},e.prototype.handleFontsChanged=function(){},e.prototype.handleImageChange_=function(t){t.target.getState()===Pa.LOADED&&this.renderIfReadyAndVisible()},e.prototype.loadImage=function(t){var e=t.getState();return e!=Pa.LOADED&&e!=Pa.ERROR&&t.addEventListener(N.CHANGE,this.boundHandleImageChange_),e==Pa.IDLE&&(t.load(),e=t.getState()),e==Pa.LOADED},e.prototype.renderIfReadyAndVisible=function(){var t=this.getLayer();t.getVisible()&&t.getSourceState()==mi.READY&&t.changed()},e}(D),Ih=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),bh=function(t){function e(e){var r=t.call(this,e)||this;return r.container=null,r.renderedResolution,r.tempTransform_=[1,0,0,1,0,0],r.pixelTransform=[1,0,0,1,0,0],r.inversePixelTransform=[1,0,0,1,0,0],r.context=null,r.containerReused=!1,r.createTransformStringCanvas_=hi(1,1).canvas,r}return Ih(e,t),e.prototype.useContainer=function(t,e,r){var n,i,o=this.getLayer().getClassName();t&&""===t.style.opacity&&t.className===o&&((s=t.firstElementChild)instanceof HTMLCanvasElement&&(i=s.getContext("2d")));if(i&&i.canvas.style.transform===e?(this.container=t,this.context=i,this.containerReused=!0):this.containerReused&&(this.container=null,this.context=null,this.containerReused=!1),!this.container){(n=document.createElement("div")).className=o;var a=n.style;a.position="absolute",a.width="100%",a.height="100%";var s=(i=hi()).canvas;n.appendChild(s),(a=s.style).position="absolute",a.left="0",a.transformOrigin="top left",this.container=n,this.context=i}},e.prototype.clip=function(t,e,r){var n=e.pixelRatio,i=e.size[0]*n/2,o=e.size[1]*n/2,a=e.viewState.rotation,s=Ct(r),u=Pt(r),l=Tt(r),h=Et(r);Ze(e.coordinateToPixelTransform,s),Ze(e.coordinateToPixelTransform,u),Ze(e.coordinateToPixelTransform,l),Ze(e.coordinateToPixelTransform,h),t.save(),wa(t,-a,i,o),t.beginPath(),t.moveTo(s[0]*n,s[1]*n),t.lineTo(u[0]*n,u[1]*n),t.lineTo(l[0]*n,l[1]*n),t.lineTo(h[0]*n,h[1]*n),t.clip(),wa(t,a,i,o)},e.prototype.clipUnrotated=function(t,e,r){var n=Ct(r),i=Pt(r),o=Tt(r),a=Et(r);Ze(e.coordinateToPixelTransform,n),Ze(e.coordinateToPixelTransform,i),Ze(e.coordinateToPixelTransform,o),Ze(e.coordinateToPixelTransform,a);var s=this.inversePixelTransform;Ze(s,n),Ze(s,i),Ze(s,o),Ze(s,a),t.save(),t.beginPath(),t.moveTo(Math.round(n[0]),Math.round(n[1])),t.lineTo(Math.round(i[0]),Math.round(i[1])),t.lineTo(Math.round(o[0]),Math.round(o[1])),t.lineTo(Math.round(a[0]),Math.round(a[1])),t.clip()},e.prototype.dispatchRenderEvent_=function(t,e,r){var n=this.getLayer();if(n.hasListener(t)){var i=new Jo(t,this.inversePixelTransform,r,e);n.dispatchEvent(i)}},e.prototype.preRender=function(t,e){this.dispatchRenderEvent_(mn,t,e)},e.prototype.postRender=function(t,e){this.dispatchRenderEvent_(En,t,e)},e.prototype.getRenderTransform=function(t,e,r,n,i,o,a){var s=i/2,u=o/2,l=n/e,h=-l,c=-t[0]+a,p=-t[1];return He(this.tempTransform_,s,u,l,h,-r,c,p)},e.prototype.getDataAtPixel=function(t,e,r){var n,i=Ze(this.inversePixelTransform,t.slice()),o=this.context;try{n=o.getImageData(Math.round(i[0]),Math.round(i[1]),1,1).data}catch(t){return"SecurityError"===t.name?new Uint8Array:n}return 0===n[3]?null:n},e.prototype.createTransformString=function(t){return this.createTransformStringCanvas_.style.transform=Je(t),this.createTransformStringCanvas_.style.transform},e}(Ph),Lh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Mh=function(t){function e(e){var r=t.call(this,e)||this;return r.image_=null,r}return Lh(e,t),e.prototype.getImage=function(){return this.image_?this.image_.getImage():null},e.prototype.prepareFrame=function(t){var e=t.layerStatesArray[t.layerIndex],r=t.pixelRatio,n=t.viewState,i=n.resolution,o=this.getLayer().getSource(),a=t.viewHints,s=t.extent;if(void 0!==e.extent&&(s=Ot(s,Be(e.extent,n.projection))),!a[Dn]&&!a[jn]&&!Lt(s)){var u=n.projection,l=o.getImage(s,i,r,u);l&&this.loadImage(l)&&(this.image_=l)}return!!this.image_},e.prototype.renderFrame=function(t,e){var r=this.image_,n=r.getExtent(),i=r.getResolution(),o=r.getPixelRatio(),a=t.layerStatesArray[t.layerIndex],s=t.pixelRatio,u=t.viewState,l=u.center,h=u.resolution,c=t.size,p=s*i/(h*o),f=Math.round(c[0]*s),d=Math.round(c[1]*s),_=u.rotation;if(_){var g=Math.round(Math.sqrt(f*f+d*d));f=g,d=g}He(this.pixelTransform,t.size[0]/2,t.size[1]/2,1/s,1/s,_,-f/2,-d/2),qe(this.inversePixelTransform,this.pixelTransform);var y=this.createTransformString(this.pixelTransform);this.useContainer(e,y,a.opacity);var v=this.context,m=v.canvas;m.width!=f||m.height!=d?(m.width=f,m.height=d):this.containerReused||v.clearRect(0,0,f,d);var E=!1;if(a.extent){var T=Be(a.extent,u.projection);(E=!it(T,t.extent)&&bt(T,t.extent))&&this.clipUnrotated(v,t,T)}var S=r.getImage(),x=He(this.tempTransform_,f/2,d/2,p,p,0,o*(n[0]-l[0])/i,o*(l[1]-n[3])/i);this.renderedResolution=i*s/o;var w=x[4],R=x[5],O=S.width*x[0],C=S.height*x[3];if(this.preRender(v,t),O>=.5&&C>=.5){var P=a.opacity,I=void 0;1!==P&&(I=this.context.globalAlpha,this.context.globalAlpha=P),this.context.drawImage(S,0,0,+S.width,+S.height,Math.round(w),Math.round(R),Math.round(O),Math.round(C)),1!==P&&(this.context.globalAlpha=I)}return this.postRender(v,t),E&&v.restore(),y!==m.style.transform&&(m.style.transform=y),this.container},e}(bh),Fh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Ah=function(t){function e(e){return t.call(this,e)||this}return Fh(e,t),e.prototype.createRenderer=function(){return new Mh(this)},e}(Oh),Nh="preload",Gh="useInterimTilesOnError",Dh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),jh=function(t){function e(e){var r=this,n=e||{},i=p({},n);return delete i.preload,delete i.useInterimTilesOnError,(r=t.call(this,i)||this).setPreload(void 0!==n.preload?n.preload:0),r.setUseInterimTilesOnError(void 0===n.useInterimTilesOnError||n.useInterimTilesOnError),r}return Dh(e,t),e.prototype.getPreload=function(){return this.get(Nh)},e.prototype.setPreload=function(t){this.set(Nh,t)},e.prototype.getUseInterimTilesOnError=function(){return this.get(Gh)},e.prototype.setUseInterimTilesOnError=function(t){this.set(Gh,t)},e}(Yi),kh=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Uh=function(t){function e(e){var r=t.call(this,e)||this;return r.extentChanged=!0,r.renderedExtent_=null,r.renderedPixelRatio,r.renderedProjection=null,r.renderedRevision,r.renderedTiles=[],r.newTiles_=!1,r.tmpExtent=[1/0,1/0,-1/0,-1/0],r.tmpTileRange_=new es(0,0,0,0),r}return kh(e,t),e.prototype.isDrawableTile=function(t){var e=this.getLayer(),r=t.getState(),n=e.getUseInterimTilesOnError();return r==wn.LOADED||r==wn.EMPTY||r==wn.ERROR&&!n},e.prototype.getTile=function(t,e,r,n){var i=n.pixelRatio,o=n.viewState.projection,a=this.getLayer(),s=a.getSource().getTile(t,e,r,i,o);return s.getState()==wn.ERROR&&(a.getUseInterimTilesOnError()?a.getPreload()>0&&(this.newTiles_=!0):s.setState(wn.LOADED)),this.isDrawableTile(s)||(s=s.getInterimTile()),s},e.prototype.loadedTileCallback=function(e,r,n){return!!this.isDrawableTile(n)&&t.prototype.loadedTileCallback.call(this,e,r,n)},e.prototype.prepareFrame=function(t){return!!this.getLayer().getSource()},e.prototype.renderFrame=function(t,e){var r=t.layerStatesArray[t.layerIndex],n=t.viewState,i=n.projection,a=n.resolution,s=n.center,u=n.rotation,l=t.pixelRatio,h=this.getLayer(),c=h.getSource(),p=c.getRevision(),f=c.getTileGridForProjection(i),d=f.getZForResolution(a,c.zDirection),_=f.getResolution(d),g=t.extent,y=r.extent&&Be(r.extent,i);y&&(g=Ot(g,Be(r.extent,i)));var v=c.getTilePixelRatio(l),m=Math.round(t.size[0]*v),T=Math.round(t.size[1]*v);if(u){var S=Math.round(Math.sqrt(m*m+T*T));m=S,T=S}var x=_*m/2/v,w=_*T/2/v,R=[s[0]-x,s[1]-w,s[0]+x,s[1]+w],O=f.getTileRangeForExtentAndZ(g,d),C={};C[d]={};var P=this.createLoadedTileFinder(c,i,C),I=this.tmpExtent,b=this.tmpTileRange_;this.newTiles_=!1;for(var L=O.minX;L<=O.maxX;++L)for(var M=O.minY;M<=O.maxY;++M){var F=this.getTile(d,L,M,t);if(this.isDrawableTile(F)){var A=o(this);if(F.getState()==wn.LOADED){C[d][F.tileCoord.toString()]=F;var N=F.inTransition(A);this.newTiles_||!N&&-1!==this.renderedTiles.indexOf(F)||(this.newTiles_=!0)}if(1===F.getAlpha(A,t.time))continue}var G=f.getTileCoordChildTileRange(F.tileCoord,b,I),D=!1;G&&(D=P(d+1,G)),D||f.forEachTileCoordParentTileRange(F.tileCoord,P,b,I)}var j=_/a;He(this.pixelTransform,t.size[0]/2,t.size[1]/2,1/v,1/v,u,-m/2,-T/2);var k=this.createTransformString(this.pixelTransform);this.useContainer(e,k,r.opacity);var U=this.context,Y=U.canvas;qe(this.inversePixelTransform,this.pixelTransform),He(this.tempTransform_,m/2,T/2,j,j,0,-m/2,-T/2),Y.width!=m||Y.height!=T?(Y.width=m,Y.height=T):this.containerReused||U.clearRect(0,0,m,T),y&&this.clipUnrotated(U,t,y),this.preRender(U,t),this.renderedTiles.length=0;var B,z,X,V=Object.keys(C).map(Number);V.sort(E),1!==r.opacity||this.containerReused&&!c.getOpaque(t.viewState.projection)?(B=[],z=[]):V=V.reverse();for(var W=V.length-1;W>=0;--W){var Z=V[W],K=c.getTilePixelSize(Z,l,i),H=f.getResolution(Z)/_,q=K[0]*H*j,J=K[1]*H*j,Q=f.getTileCoordForCoordAndZ(Ct(R),Z),$=f.getTileCoordExtent(Q),tt=Ze(this.tempTransform_,[v*($[0]-R[0])/_,v*(R[3]-$[3])/_]),et=v*c.getGutterForProjection(i),rt=C[Z];for(var nt in rt){var it=(F=rt[nt]).tileCoord,ot=tt[0]-(Q[1]-it[1])*q,at=Math.round(ot+q),st=tt[1]-(Q[2]-it[2])*J,ut=Math.round(st+J),lt=at-(L=Math.round(ot)),ht=ut-(M=Math.round(st)),ct=d===Z;if(!(N=ct&&1!==F.getAlpha(o(this),t.time)))if(B){U.save(),X=[L,M,L+lt,M,L+lt,M+ht,L,M+ht];for(var ft=0,dt=B.length;ftStamen Design, under CC BY 3.0.',Sh],rc={terrain:{extension:"jpg",opaque:!0},"terrain-background":{extension:"jpg",opaque:!0},"terrain-labels":{extension:"png",opaque:!1},"terrain-lines":{extension:"png",opaque:!1},"toner-background":{extension:"png",opaque:!0},toner:{extension:"png",opaque:!0},"toner-hybrid":{extension:"png",opaque:!1},"toner-labels":{extension:"png",opaque:!1},"toner-lines":{extension:"png",opaque:!1},"toner-lite":{extension:"png",opaque:!0},watercolor:{extension:"jpg",opaque:!0}},nc={terrain:{minZoom:0,maxZoom:18},toner:{minZoom:0,maxZoom:20},watercolor:{minZoom:0,maxZoom:18}},ic=function(t){function e(e){var r=e.layer.indexOf("-"),n=-1==r?e.layer:e.layer.slice(0,r),i=nc[n],o=rc[e.layer],a=void 0!==e.url?e.url:"https://stamen-tiles-{a-d}.a.ssl.fastly.net/"+e.layer+"/{z}/{x}/{y}."+o.extension;return t.call(this,{attributions:ec,cacheSize:e.cacheSize,crossOrigin:"anonymous",maxZoom:null!=e.maxZoom?e.maxZoom:i.maxZoom,minZoom:null!=e.minZoom?e.minZoom:i.minZoom,opaque:o.opaque,reprojectionErrorThreshold:e.reprojectionErrorThreshold,tileLoadFunction:e.tileLoadFunction,transition:e.transition,url:a,wrapX:e.wrapX})||this}return tc(e,t),e}(Tl),oc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function ac(t,e,r){var n=this.getTileGrid();if(n||(n=this.getTileGridForProjection(r)),!(n.getResolutions().length<=t[0])){1==e||this.hidpi_||(e=1);var i=n.getTileCoordExtent(t,this.tmpExtent_),o=Ri(n.getTileSize(t[0]),this.tmpSize);1!=e&&(o=wi(o,e,this.tmpSize));var a={F:"image",FORMAT:"PNG32",TRANSPARENT:!0};return p(a,this.params_),this.getRequestUrl_(t,o,i,e,r,a)}}var sc=function(t){function e(e){var r=this,n=e||{};return(r=t.call(this,{attributions:n.attributions,cacheSize:n.cacheSize,crossOrigin:n.crossOrigin,projection:n.projection,reprojectionErrorThreshold:n.reprojectionErrorThreshold,tileGrid:n.tileGrid,tileLoadFunction:n.tileLoadFunction,tileUrlFunction:ac,url:n.url,urls:n.urls,wrapX:void 0===n.wrapX||n.wrapX,transition:n.transition})||this).params_=n.params||{},r.hidpi_=void 0===n.hidpi||n.hidpi,r.tmpExtent_=[1/0,1/0,-1/0,-1/0],r.setKey(r.getKeyForParams_()),r}return oc(e,t),e.prototype.getKeyForParams_=function(){var t=0,e=[];for(var r in this.params_)e[t++]=r+"-"+this.params_[r];return e.join("/")},e.prototype.getParams=function(){return this.params_},e.prototype.getRequestUrl_=function(t,e,r,n,i,o){var a=this.urls;if(a){var s,u=i.getCode().split(":").pop();if(o.SIZE=e[0]+","+e[1],o.BBOX=r.join(","),o.BBOXSR=u,o.IMAGESR=u,o.DPI=Math.round(o.DPI?o.DPI*n:90*n),1==a.length)s=a[0];else s=a[Vt(as(t),a.length)];return rh(s.replace(/MapServer\/?$/,"MapServer/export").replace(/ImageServer\/?$/,"ImageServer/exportImage"),o)}},e.prototype.getTilePixelRatio=function(t){return this.hidpi_?t:1},e.prototype.updateParams=function(t){p(this.params_,t),this.setKey(this.getKeyForParams_())},e}(yl),uc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),lc=function(t){function e(e,r,n){var i=t.call(this,e,wn.LOADED)||this;return i.tileSize_=r,i.text_=n,i.canvas_=null,i}return uc(e,t),e.prototype.getImage=function(){if(this.canvas_)return this.canvas_;var t=this.tileSize_,e=hi(t[0],t[1]);return e.strokeStyle="grey",e.strokeRect(.5,.5,t[0]+.5,t[1]+.5),e.fillStyle="grey",e.strokeStyle="white",e.textAlign="center",e.textBaseline="middle",e.font="24px sans-serif",e.lineWidth=4,e.strokeText(this.text_,t[0]/2,t[1]/2,t[0]),e.fillText(this.text_,t[0]/2,t[1]/2,t[0]),this.canvas_=e.canvas,e.canvas},e.prototype.load=function(){},e}(Xu),hc=function(t){function e(e){var r=e||{};return t.call(this,{opaque:!1,projection:r.projection,tileGrid:r.tileGrid,wrapX:void 0===r.wrapX||r.wrapX,zDirection:r.zDirection})||this}return uc(e,t),e.prototype.getTile=function(t,e,r){var n=ns(t,e,r);if(this.tileCache.containsKey(n))return this.tileCache.get(n);var i=Ri(this.tileGrid.getTileSize(t)),o=[t,e,r],a=this.getTileCoordForTileUrlFunction(o),s=void 0;s=a?"z:"+a[0]+" x:"+a[1]+" y:"+a[2]:"none";var u=new lc(o,i,s);return this.tileCache.set(n,u),u},e}(Tl),cc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),pc=function(t){function e(e){var r=t.call(this,{attributions:e.attributions,cacheSize:e.cacheSize,crossOrigin:e.crossOrigin,projection:xe("EPSG:3857"),reprojectionErrorThreshold:e.reprojectionErrorThreshold,state:mi.LOADING,tileLoadFunction:e.tileLoadFunction,wrapX:void 0===e.wrapX||e.wrapX,transition:e.transition})||this;if(r.tileJSON_=null,r.tileSize_=e.tileSize,e.url)if(e.jsonp)Yu(e.url,r.handleTileJSONResponse.bind(r),r.handleTileJSONError.bind(r));else{var n=new XMLHttpRequest;n.addEventListener("load",r.onXHRLoad_.bind(r)),n.addEventListener("error",r.onXHRError_.bind(r)),n.open("GET",e.url),n.send()}else e.tileJSON?r.handleTileJSONResponse(e.tileJSON):K(!1,51);return r}return cc(e,t),e.prototype.onXHRLoad_=function(t){var e=t.target;if(!e.status||e.status>=200&&e.status<300){var r=void 0;try{r=JSON.parse(e.responseText)}catch(t){return void this.handleTileJSONError()}this.handleTileJSONResponse(r)}else this.handleTileJSONError()},e.prototype.onXHRError_=function(t){this.handleTileJSONError()},e.prototype.getTileJSON=function(){return this.tileJSON_},e.prototype.handleTileJSONResponse=function(t){var e,r=xe("EPSG:4326"),n=this.getProjection();if(void 0!==t.bounds){var i=be(r,n);e=Ft(t.bounds,i)}var o=t.minzoom||0,a=t.maxzoom||22,s=hs({extent:fs(n),maxZoom:a,minZoom:o,tileSize:this.tileSize_});if(this.tileGrid=s,this.tileUrlFunction=Du(t.tiles,s),void 0!==t.attribution&&!this.getAttributions()){var u=void 0!==e?e:r.getExtent();this.setAttributions(function(e){return bt(u,e.extent)?[t.attribution]:null})}this.tileJSON_=t,this.setState(mi.READY)},e.prototype.handleTileJSONError=function(){this.setState(mi.ERROR)},e}(yl),fc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function dc(t,e,r){var n=this.getTileGrid();if(n||(n=this.getTileGridForProjection(r)),!(n.getResolutions().length<=t[0])){1==e||this.hidpi_&&void 0!==this.serverType_||(e=1);var i=n.getResolution(t[0]),o=n.getTileCoordExtent(t,this.tmpExtent_),a=Ri(n.getTileSize(t[0]),this.tmpSize),s=this.gutter_;0!==s&&(a=xi(a,s,this.tmpSize),o=tt(o,i*s,o)),1!=e&&(a=wi(a,e,this.tmpSize));var u={SERVICE:"WMS",VERSION:fh,REQUEST:"GetMap",FORMAT:"image/png",TRANSPARENT:!0};return p(u,this.params_),this.getRequestUrl_(t,a,o,e,r,u)}}var _c=function(t){function e(e){var r=this,n=e||{},i=n.params||{},o=!("TRANSPARENT"in i)||i.TRANSPARENT;return(r=t.call(this,{attributions:n.attributions,cacheSize:n.cacheSize,crossOrigin:n.crossOrigin,opaque:!o,projection:n.projection,reprojectionErrorThreshold:n.reprojectionErrorThreshold,tileClass:n.tileClass,tileGrid:n.tileGrid,tileLoadFunction:n.tileLoadFunction,tileUrlFunction:dc,url:n.url,urls:n.urls,wrapX:void 0===n.wrapX||n.wrapX,transition:n.transition})||this).gutter_=void 0!==n.gutter?n.gutter:0,r.params_=i,r.v13_=!0,r.serverType_=n.serverType,r.hidpi_=void 0===n.hidpi||n.hidpi,r.tmpExtent_=[1/0,1/0,-1/0,-1/0],r.updateV13_(),r.setKey(r.getKeyForParams_()),r}return fc(e,t),e.prototype.getFeatureInfoUrl=function(t,e,r,n){var i=xe(r),o=this.getProjection(),a=this.getTileGrid();a||(a=this.getTileGridForProjection(i));var s=a.getZForResolution(e,this.zDirection),u=a.getTileCoordForCoordAndZ(t,s);if(!(a.getResolutions().length<=u[0])){var l=a.getResolution(u[0]),h=a.getTileCoordExtent(u,this.tmpExtent_),c=Ri(a.getTileSize(u[0]),this.tmpSize),f=this.gutter_;0!==f&&(c=xi(c,f,this.tmpSize),h=tt(h,l*f,h)),o&&o!==i&&(l=qu(o,i,t,l),h=Fe(h,i,o),t=Me(t,i,o));var d={SERVICE:"WMS",VERSION:fh,REQUEST:"GetFeatureInfo",FORMAT:"image/png",TRANSPARENT:!0,QUERY_LAYERS:this.params_.LAYERS};p(d,this.params_,n);var _=Math.floor((t[0]-h[0])/l),g=Math.floor((h[3]-t[1])/l);return d[this.v13_?"I":"X"]=_,d[this.v13_?"J":"Y"]=g,this.getRequestUrl_(u,c,h,1,o||i,d)}},e.prototype.getLegendUrl=function(t,e){if(void 0!==this.urls[0]){var r={SERVICE:"WMS",VERSION:fh,REQUEST:"GetLegendGraphic",FORMAT:"image/png"};if(void 0===e||void 0===e.LAYER){var n=this.params_.LAYERS;if(!(!Array.isArray(n)||1===n.length))return;r.LAYER=n}if(void 0!==t){var i=this.getProjection()?this.getProjection().getMetersPerUnit():1;r.SCALE=t*i*39.37*(25.4/.28)}return p(r,e),rh(this.urls[0],r)}},e.prototype.getGutter=function(){return this.gutter_},e.prototype.getParams=function(){return this.params_},e.prototype.getRequestUrl_=function(t,e,r,n,i,o){var a=this.urls;if(a){if(o.WIDTH=e[0],o.HEIGHT=e[1],o[this.v13_?"CRS":"SRS"]=i.getCode(),"STYLES"in this.params_||(o.STYLES=""),1!=n)switch(this.serverType_){case _h:var s=90*n+.5|0;"FORMAT_OPTIONS"in o?o.FORMAT_OPTIONS+=";dpi:"+s:o.FORMAT_OPTIONS="dpi:"+s;break;case gh:o.MAP_RESOLUTION=90*n;break;case dh:case yh:o.DPI=90*n;break;default:K(!1,52)}var u,l=i.getAxisOrientation(),h=r;if(this.v13_&&"ne"==l.substr(0,2)){var c=void 0;c=r[0],h[0]=r[1],h[1]=c,c=r[2],h[2]=r[3],h[3]=c}if(o.BBOX=h.join(","),1==a.length)u=a[0];else u=a[Vt(as(t),a.length)];return rh(u,o)}},e.prototype.getTilePixelRatio=function(t){return this.hidpi_&&void 0!==this.serverType_?t:1},e.prototype.getKeyForParams_=function(){var t=0,e=[];for(var r in this.params_)e[t++]=r+"-"+this.params_[r];return e.join("/")},e.prototype.updateParams=function(t){p(this.params_,t),this.updateV13_(),this.setKey(this.getKeyForParams_())},e.prototype.updateV13_=function(){var t=this.params_.VERSION||fh;this.v13_=zn(t,"1.3")>=0},e}(yl),gc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),yc=function(t){function e(e,r,n,i,o,a){var s=t.call(this,e,r)||this;return s.src_=n,s.extent_=i,s.preemptive_=o,s.grid_=null,s.keys_=null,s.data_=null,s.jsonp_=a,s}return gc(e,t),e.prototype.getImage=function(){return null},e.prototype.getData=function(t){if(!this.grid_||!this.keys_)return null;var e=(t[0]-this.extent_[0])/(this.extent_[2]-this.extent_[0]),r=(t[1]-this.extent_[1])/(this.extent_[3]-this.extent_[1]),n=this.grid_[Math.floor((1-r)*this.grid_.length)];if("string"!=typeof n)return null;var i=n.charCodeAt(Math.floor(e*n.length));i>=93&&i--,i>=35&&i--;var o=null;if((i-=32)in this.keys_){var a=this.keys_[i];o=this.data_&&a in this.data_?this.data_[a]:a}return o},e.prototype.forDataAtCoordinate=function(t,e,r){this.state==wn.EMPTY&&!0===r?(this.state=wn.IDLE,y(this,N.CHANGE,function(r){e(this.getData(t))},this),this.loadInternal_()):!0===r?setTimeout(function(){e(this.getData(t))}.bind(this),0):e(this.getData(t))},e.prototype.getKey=function(){return this.src_},e.prototype.handleError_=function(){this.state=wn.ERROR,this.changed()},e.prototype.handleLoad_=function(t){this.grid_=t.grid,this.keys_=t.keys,this.data_=t.data,this.state=wn.LOADED,this.changed()},e.prototype.loadInternal_=function(){if(this.state==wn.IDLE)if(this.state=wn.LOADING,this.jsonp_)Yu(this.src_,this.handleLoad_.bind(this),this.handleError_.bind(this));else{var t=new XMLHttpRequest;t.addEventListener("load",this.onXHRLoad_.bind(this)),t.addEventListener("error",this.onXHRError_.bind(this)),t.open("GET",this.src_),t.send()}},e.prototype.onXHRLoad_=function(t){var e=t.target;if(!e.status||e.status>=200&&e.status<300){var r=void 0;try{r=JSON.parse(e.responseText)}catch(t){return void this.handleError_()}this.handleLoad_(r)}else this.handleError_()},e.prototype.onXHRError_=function(t){this.handleError_()},e.prototype.load=function(){this.preemptive_?this.loadInternal_():this.setState(wn.EMPTY)},e}(Xu),vc=function(t){function e(e){var r=t.call(this,{projection:xe("EPSG:3857"),state:mi.LOADING})||this;if(r.preemptive_=void 0===e.preemptive||e.preemptive,r.tileUrlFunction_=ku,r.template_=void 0,r.jsonp_=e.jsonp||!1,e.url)if(r.jsonp_)Yu(e.url,r.handleTileJSONResponse.bind(r),r.handleTileJSONError.bind(r));else{var n=new XMLHttpRequest;n.addEventListener("load",r.onXHRLoad_.bind(r)),n.addEventListener("error",r.onXHRError_.bind(r)),n.open("GET",e.url),n.send()}else e.tileJSON?r.handleTileJSONResponse(e.tileJSON):K(!1,51);return r}return gc(e,t),e.prototype.onXHRLoad_=function(t){var e=t.target;if(!e.status||e.status>=200&&e.status<300){var r=void 0;try{r=JSON.parse(e.responseText)}catch(t){return void this.handleTileJSONError()}this.handleTileJSONResponse(r)}else this.handleTileJSONError()},e.prototype.onXHRError_=function(t){this.handleTileJSONError()},e.prototype.getTemplate=function(){return this.template_},e.prototype.forDataAtCoordinateAndResolution=function(t,e,r,n){if(this.tileGrid){var i=this.tileGrid.getZForResolution(e,this.zDirection),o=this.tileGrid.getTileCoordForCoordAndZ(t,i);this.getTile(o[0],o[1],o[2],1,this.getProjection()).forDataAtCoordinate(t,r,n)}else!0===n?setTimeout(function(){r(null)},0):r(null)},e.prototype.handleTileJSONError=function(){this.setState(mi.ERROR)},e.prototype.handleTileJSONResponse=function(t){var e,r=xe("EPSG:4326"),n=this.getProjection();if(void 0!==t.bounds){var i=be(r,n);e=Ft(t.bounds,i)}var o=t.minzoom||0,a=t.maxzoom||22,s=hs({extent:fs(n),maxZoom:a,minZoom:o});this.tileGrid=s,this.template_=t.template;var u=t.grids;if(u){if(this.tileUrlFunction_=Du(u,s),void 0!==t.attribution){var l=void 0!==e?e:r.getExtent();this.setAttributions(function(e){return bt(l,e.extent)?[t.attribution]:null})}this.setState(mi.READY)}else this.setState(mi.ERROR)},e.prototype.getTile=function(t,e,r,n,i){var o=ns(t,e,r);if(this.tileCache.containsKey(o))return this.tileCache.get(o);var a=[t,e,r],s=this.getTileCoordForTileUrlFunction(a,i),u=this.tileUrlFunction_(s,n,i),l=new yc(a,void 0!==u?wn.IDLE:wn.EMPTY,void 0!==u?u:"",this.tileGrid.getTileCoordExtent(a),this.preemptive_,this.jsonp_);return this.tileCache.set(o,l),l},e.prototype.useTile=function(t,e,r){var n=ns(t,e,r);this.tileCache.containsKey(n)&&this.tileCache.get(n)},e}(ll),mc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Ec=[],Tc=function(t){function e(e,r,n,i){var o=t.call(this,e,r,{transition:0})||this;return o.context_={},o.executorGroups={},o.loadingSourceTiles=0,o.errorSourceTileKeys={},o.hitDetectionImageData={},o.replayState_={},o.sourceTiles=null,o.wantedResolution,o.getSourceTiles=i.bind(void 0,o),o.sourceZ=-1,o.hifi=!1,o.wrappedTileCoord=n,o}return mc(e,t),e.prototype.getContext=function(t){var e=o(t);return e in this.context_||(this.context_[e]=hi(1,1,Ec)),this.context_[e]},e.prototype.hasContext=function(t){return o(t)in this.context_},e.prototype.getImage=function(t){return this.hasContext(t)?this.getContext(t).canvas:null},e.prototype.getReplayState=function(t){var e=o(t);return e in this.replayState_||(this.replayState_[e]={dirty:!1,renderedRenderOrder:null,renderedResolution:NaN,renderedRevision:-1,renderedTileResolution:NaN,renderedTileRevision:-1,renderedZ:-1,renderedTileZ:-1}),this.replayState_[e]},e.prototype.load=function(){this.getSourceTiles()},e.prototype.release=function(){for(var e in this.context_)Ec.push(this.context_[e].canvas);t.prototype.release.call(this)},e}(Xu),Sc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),xc=function(t){function e(e,r,n,i,o,a){var s=t.call(this,e,r,a)||this;return s.extent=null,s.format_=i,s.features_=null,s.loader_,s.projection=null,s.resolution,s.tileLoadFunction_=o,s.url_=n,s}return Sc(e,t),e.prototype.getFormat=function(){return this.format_},e.prototype.getFeatures=function(){return this.features_},e.prototype.getKey=function(){return this.url_},e.prototype.load=function(){this.state==wn.IDLE&&(this.setState(wn.LOADING),this.tileLoadFunction_(this,this.url_),this.loader_&&this.loader_(this.extent,this.resolution,this.projection))},e.prototype.onLoad=function(t,e){this.setFeatures(t)},e.prototype.onError=function(){this.setState(wn.ERROR)},e.prototype.setFeatures=function(t){this.features_=t,this.setState(wn.LOADED)},e.prototype.setLoader=function(t){this.loader_=t},e}(Xu),wc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Rc=function(t){function e(e){var r=this,n=e.projection||"EPSG:3857",i=e.extent||fs(n),o=e.tileGrid||hs({extent:i,maxZoom:void 0!==e.maxZoom?e.maxZoom:22,minZoom:e.minZoom,tileSize:e.tileSize||512});return(r=t.call(this,{attributions:e.attributions,attributionsCollapsible:e.attributionsCollapsible,cacheSize:e.cacheSize,opaque:!1,projection:n,state:e.state,tileGrid:o,tileLoadFunction:e.tileLoadFunction?e.tileLoadFunction:Oc,tileUrlFunction:e.tileUrlFunction,url:e.url,urls:e.urls,wrapX:void 0===e.wrapX||e.wrapX,transition:e.transition,zDirection:void 0===e.zDirection?1:e.zDirection})||this).format_=e.format?e.format:null,r.loadingTiles_={},r.sourceTileCache=new Hu(r.tileCache.highWaterMark),r.overlaps_=null==e.overlaps||e.overlaps,r.tileClass=e.tileClass?e.tileClass:xc,r.tileGrids_={},r}return wc(e,t),e.prototype.getFeaturesInExtent=function(t){var e=[],r=this.tileCache;if(0===r.getCount())return e;var n=os(r.peekFirstKey())[0],i=this.tileGrid;return r.forEach(function(r){if(r.tileCoord[0]===n&&r.getState()===wn.LOADED)for(var o=r.getSourceTiles(),a=0,s=o.length;a0&&_[0].tileCoord[0]===f)h=_,c=!0,p=f;else{h=[],p=f+1;do{--p,c=!0,u.forEachTileCoord(o,p,function(n){var i,o=this.tileUrlFunction(n,t,e);if(void 0!==o)if(this.sourceTileCache.containsKey(o)){var a=(i=this.sourceTileCache.get(o)).getState();if(a===wn.LOADED||a===wn.ERROR||a===wn.EMPTY)return void h.push(i)}else p===f&&((i=new this.tileClass(n,wn.IDLE,o,this.format_,this.tileLoadFunction)).extent=u.getTileCoordExtent(n),i.projection=e,i.resolution=u.getResolution(n[0]),this.sourceTileCache.set(o,i),i.addEventListener(N.CHANGE,this.handleTileChange.bind(this)),i.load());c=c&&i&&i.getState()===wn.LOADED,i&&i.getState()!==wn.EMPTY&&r.getState()===wn.IDLE&&(r.loadingSourceTiles++,i.addEventListener(N.CHANGE,function t(){var e=i.getState(),n=i.getKey();if(e===wn.LOADED||e===wn.ERROR){e===wn.LOADED?(i.removeEventListener(N.CHANGE,t),r.loadingSourceTiles--,delete r.errorSourceTileKeys[n]):e===wn.ERROR&&(r.errorSourceTileKeys[n]=!0);var o=Object.keys(r.errorSourceTileKeys).length;r.loadingSourceTiles-o==0&&(r.hifi=0===o,r.sourceZ=f,r.setState(wn.LOADED))}}))}.bind(this)),c||(h.length=0)}while(!c&&p>d)}return r.getState()===wn.IDLE&&r.setState(wn.LOADING),c&&(r.hifi=f===p,r.sourceZ=p,r.getState()0&&(r.tileUrlFunction=ju(o.map(bc.bind(r)))),r}return Pc(e,t),e.prototype.setUrls=function(t){this.urls=t;var e=t.join("\n");this.setTileUrlFunction(ju(t.map(bc.bind(this))),e)},e.prototype.getDimensions=function(){return this.dimensions_},e.prototype.getFormat=function(){return this.format_},e.prototype.getLayer=function(){return this.layer_},e.prototype.getMatrixSet=function(){return this.matrixSet_},e.prototype.getRequestEncoding=function(){return this.requestEncoding_},e.prototype.getStyle=function(){return this.style_},e.prototype.getVersion=function(){return this.version_},e.prototype.getKeyForDimensions_=function(){var t=0,e=[];for(var r in this.dimensions_)e[t++]=r+"-"+this.dimensions_[r];return e.join("/")},e.prototype.updateDimensions=function(t){p(this.dimensions_,t),this.setKey(this.getKeyForDimensions_())},e}(yl);function bc(t){var e=this.requestEncoding_,r={layer:this.layer_,style:this.style_,tilematrixset:this.matrixSet_};e==Cc.KVP&&p(r,{Service:"WMTS",Request:"GetTile",Version:this.version_,Format:this.format_}),t=e==Cc.KVP?rh(t,r):t.replace(/\{(\w+?)\}/g,function(t,e){return e.toLowerCase()in r?r[e.toLowerCase()]:t});var n=this.tileGrid,i=this.dimensions_;return function(r,o,a){if(r){var s={TileMatrix:n.getMatrixId(r[0]),TileCol:r[1],TileRow:r[2]};p(s,i);var u=t;return u=e==Cc.KVP?rh(u,s):u.replace(/\{(\w+?)\}/g,function(t,e){return s[e]})}}}var Lc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Mc={GENERATE_BUFFERS:"GENERATE_BUFFERS"},Fc=function(t){function e(e,r){var n=t.call(this,e)||this,i=r||{};return n.helper=new ru({postProcesses:i.postProcesses,uniforms:i.uniforms}),n}return Lc(e,t),e.prototype.disposeInternal=function(){this.helper.dispose(),t.prototype.disposeInternal.call(this)},e.prototype.getShaderCompileErrors=function(){return this.helper.getShaderCompileErrors()},e}(Ph);var Ac=Fc,Nc=new Blob(['var e="function"==typeof Object.assign?Object.assign:function(e,n){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),r=1,o=arguments.length;rthis.maxLineWidth&&(this.maxLineWidth=r.lineWidth,this.bufferedMaxExtent_=null)}else r.strokeStyle=void 0,r.lineCap=void 0,r.lineDash=null,r.lineDashOffset=void 0,r.lineJoin=void 0,r.lineWidth=void 0,r.miterLimit=void 0},e.prototype.createFill=function(t){var e=t.fillStyle,r=[Zc.SET_FILL_STYLE,e];return"string"!=typeof e&&r.push(!0),r},e.prototype.applyStroke=function(t){this.instructions.push(this.createStroke(t))},e.prototype.createStroke=function(t){return[Zc.SET_STROKE_STYLE,t.strokeStyle,t.lineWidth*this.pixelRatio,t.lineCap,t.lineJoin,t.miterLimit,this.applyPixelRatio(t.lineDash),t.lineDashOffset*this.pixelRatio]},e.prototype.updateFillStyle=function(t,e){var r=t.fillStyle;"string"==typeof r&&t.currentFillStyle==r||(void 0!==r&&this.instructions.push(e.call(this,t)),t.currentFillStyle=r)},e.prototype.updateStrokeStyle=function(t,e){var r=t.strokeStyle,n=t.lineCap,i=t.lineDash,o=t.lineDashOffset,a=t.lineJoin,s=t.lineWidth,u=t.miterLimit;(t.currentStrokeStyle!=r||t.currentLineCap!=n||i!=t.currentLineDash&&!O(t.currentLineDash,i)||t.currentLineDashOffset!=o||t.currentLineJoin!=a||t.currentLineWidth!=s||t.currentMiterLimit!=u)&&(void 0!==r&&e.call(this,t),t.currentStrokeStyle=r,t.currentLineCap=n,t.currentLineDash=i,t.currentLineDashOffset=o,t.currentLineJoin=a,t.currentLineWidth=s,t.currentMiterLimit=u)},e.prototype.endGeometry=function(t){this.beginGeometryInstruction1_[2]=this.instructions.length,this.beginGeometryInstruction1_=null,this.beginGeometryInstruction2_[2]=this.hitDetectionInstructions.length,this.beginGeometryInstruction2_=null;var e=[Zc.END_GEOMETRY,t];this.instructions.push(e),this.hitDetectionInstructions.push(e)},e.prototype.getBufferedMaxExtent=function(){if(!this.bufferedMaxExtent_&&(this.bufferedMaxExtent_=et(this.maxExtent),this.maxLineWidth>0)){var t=this.resolution*(this.maxLineWidth+1)/2;tt(this.bufferedMaxExtent_,t,this.bufferedMaxExtent_)}return this.bufferedMaxExtent_},e}(ha),qc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Jc=function(t){function e(e,r,n,i){var o=t.call(this,e,r,n,i)||this;return o.declutterGroups_=null,o.hitDetectionImage_=null,o.image_=null,o.anchorX_=void 0,o.anchorY_=void 0,o.height_=void 0,o.opacity_=void 0,o.originX_=void 0,o.originY_=void 0,o.rotateWithView_=void 0,o.rotation_=void 0,o.scale_=void 0,o.width_=void 0,o}return qc(e,t),e.prototype.drawCoordinates_=function(t,e,r,n){return this.appendFlatCoordinates(t,e,r,n,!1,!1)},e.prototype.drawPoint=function(t,e){if(this.image_){this.beginGeometry(t,e);var r=t.getFlatCoordinates(),n=t.getStride(),i=this.coordinates.length,o=this.drawCoordinates_(r,0,r.length,n);this.instructions.push([Zc.DRAW_IMAGE,i,o,this.image_,this.anchorX_,this.anchorY_,this.declutterGroups_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_*this.pixelRatio,this.width_]),this.hitDetectionInstructions.push([Zc.DRAW_IMAGE,i,o,this.hitDetectionImage_,this.anchorX_,this.anchorY_,this.declutterGroups_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_,this.width_]),this.endGeometry(e)}},e.prototype.drawMultiPoint=function(t,e){if(this.image_){this.beginGeometry(t,e);var r=t.getFlatCoordinates(),n=t.getStride(),i=this.coordinates.length,o=this.drawCoordinates_(r,0,r.length,n);this.instructions.push([Zc.DRAW_IMAGE,i,o,this.image_,this.anchorX_,this.anchorY_,this.declutterGroups_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_*this.pixelRatio,this.width_]),this.hitDetectionInstructions.push([Zc.DRAW_IMAGE,i,o,this.hitDetectionImage_,this.anchorX_,this.anchorY_,this.declutterGroups_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_,this.width_]),this.endGeometry(e)}},e.prototype.finish=function(){return this.reverseHitDetectionInstructions(),this.anchorX_=void 0,this.anchorY_=void 0,this.hitDetectionImage_=null,this.image_=null,this.height_=void 0,this.scale_=void 0,this.opacity_=void 0,this.originX_=void 0,this.originY_=void 0,this.rotateWithView_=void 0,this.rotation_=void 0,this.width_=void 0,t.prototype.finish.call(this)},e.prototype.setImageStyle=function(t,e){var r=t.getAnchor(),n=t.getSize(),i=t.getHitDetectionImage(1),o=t.getImage(1),a=t.getOrigin();this.anchorX_=r[0],this.anchorY_=r[1],this.declutterGroups_=e,this.hitDetectionImage_=i,this.image_=o,this.height_=n[1],this.opacity_=t.getOpacity(),this.originX_=a[0],this.originY_=a[1],this.rotateWithView_=t.getRotateWithView(),this.rotation_=t.getRotation(),this.scale_=t.getScale(),this.width_=n[0]},e}(Hc),Qc=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),$c=function(t){function e(e,r,n,i){return t.call(this,e,r,n,i)||this}return Qc(e,t),e.prototype.drawFlatCoordinates_=function(t,e,r,n){var i=this.coordinates.length,o=this.appendFlatCoordinates(t,e,r,n,!1,!1),a=[Zc.MOVE_TO_LINE_TO,i,o];return this.instructions.push(a),this.hitDetectionInstructions.push(a),r},e.prototype.drawLineString=function(t,e){var r=this.state,n=r.strokeStyle,i=r.lineWidth;if(void 0!==n&&void 0!==i){this.updateStrokeStyle(r,this.applyStroke),this.beginGeometry(t,e),this.hitDetectionInstructions.push([Zc.SET_STROKE_STYLE,r.strokeStyle,r.lineWidth,r.lineCap,r.lineJoin,r.miterLimit,r.lineDash,r.lineDashOffset],Vc);var o=t.getFlatCoordinates(),a=t.getStride();this.drawFlatCoordinates_(o,0,o.length,a),this.hitDetectionInstructions.push(Xc),this.endGeometry(e)}},e.prototype.drawMultiLineString=function(t,e){var r=this.state,n=r.strokeStyle,i=r.lineWidth;if(void 0!==n&&void 0!==i){this.updateStrokeStyle(r,this.applyStroke),this.beginGeometry(t,e),this.hitDetectionInstructions.push([Zc.SET_STROKE_STYLE,r.strokeStyle,r.lineWidth,r.lineCap,r.lineJoin,r.miterLimit,r.lineDash,r.lineDashOffset],Vc);for(var o=t.getEnds(),a=t.getFlatCoordinates(),s=t.getStride(),u=0,l=0,h=o.length;lt&&(y>g&&(g=y,d=v,_=o),y=0,v=o-i)),a=s,h=p,c=f),u=m,l=E}return(y+=s)>g?[v,o]:[d,_]}var np=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),ip={left:0,end:0,center:.5,right:1,start:1,top:0,middle:.5,hanging:.2,alphabetic:.8,ideographic:.8,bottom:1},op={Circle:ep,Default:Hc,Image:Jc,LineString:$c,Polygon:ep,Text:function(t){function e(e,r,n,i){var o=t.call(this,e,r,n,i)||this;return o.declutterGroups_,o.labels_=null,o.text_="",o.textOffsetX_=0,o.textOffsetY_=0,o.textRotateWithView_=void 0,o.textRotation_=0,o.textFillState_=null,o.fillStates={},o.textStrokeState_=null,o.strokeStates={},o.textState_={},o.textStates={},o.textKey_="",o.fillKey_="",o.strokeKey_="",o}return np(e,t),e.prototype.finish=function(){var e=t.prototype.finish.call(this);return e.textStates=this.textStates,e.fillStates=this.fillStates,e.strokeStates=this.strokeStates,e},e.prototype.drawText=function(t,e){var r=this.textFillState_,n=this.textStrokeState_,i=this.textState_;if(""!==this.text_&&i&&(r||n)){var o,a,s=this.coordinates.length,u=t.getType(),l=null,h=2,c=2;if(i.placement===Fu.LINE){if(!bt(this.getBufferedMaxExtent(),t.getExtent()))return;var p=void 0;if(l=t.getFlatCoordinates(),c=t.getStride(),u==Nt.LINE_STRING)p=[l.length];else if(u==Nt.MULTI_LINE_STRING)p=t.getEnds();else if(u==Nt.POLYGON)p=t.getEnds().slice(0,1);else if(u==Nt.MULTI_POLYGON){var f=t.getEndss();for(p=[],o=0,a=f.length;ot[r-n],_=i.length,g=t[e],y=t[e+1],v=t[e+=n],m=t[e+1],E=0,T=Math.sqrt(Math.pow(v-g,2)+Math.pow(m-y,2)),S=!1,x=0;x<_;++x){for(var w=i[c=d?_-x-1:x],R=s*u(l,w,h),O=o+R/2;e0?-Math.PI:Math.PI),void 0!==p){var I=P-p;if(S=S||0!==I,I+=I>Math.PI?-2*Math.PI:I<-Math.PI?2*Math.PI:0,Math.abs(I)>a)return null}p=P;var b=C/T,L=Wt(g,v,b),M=Wt(y,m,b);f[c]=[L,M,R/2,P,w],o+=R}return S?f:[[f[0][0],f[0][1],f[0][2],f[0][3],i]]}var lp=[1/0,1/0,-1/0,-1/0],hp=[1,0,0,1,0,0],cp=[],pp=[],fp=[],dp=[],_p=function(){function t(t,e,r,n){this.overlaps=r,this.pixelRatio=e,this.resolution=t,this.alignFill_,this.declutterItems=[],this.instructions=n.instructions,this.coordinates=n.coordinates,this.coordinateCache_={},this.renderedTransform_=[1,0,0,1,0,0],this.hitDetectionInstructions=n.hitDetectionInstructions,this.pixelCoordinates_=null,this.viewRotation_=0,this.fillStates=n.fillStates||{},this.strokeStates=n.strokeStates||{},this.textStates=n.textStates||{},this.widths_={},this.labels_={}}return t.prototype.createLabel=function(t,e,r,n){var i=t+e+r+n;if(this.labels_[i])return this.labels_[i];var o=n?this.strokeStates[n]:null,a=r?this.fillStates[r]:null,s=this.textStates[e],u=this.pixelRatio,l=s.scale*u,h=ip[s.textAlign||"center"],c=n&&o.lineWidth?o.lineWidth:0,p=t.split("\n"),f=p.length,d=[],_=function(t,e,r){for(var n=e.length,i=0,o=0;on.width?n.width-l:d,E=s+h>n.height?n.height-h:s,T=_[3]+m*p+_[1],S=_[0]+E*p+_[2],x=e-_[3],w=r-_[0];(v||0!==c)&&(cp[0]=x,dp[0]=x,cp[1]=w,pp[1]=w,pp[0]=x+T,fp[0]=pp[0],fp[1]=w+S,dp[1]=fp[1]);var R=null;if(0!==c){var O=e+i,C=r+o;R=He(hp,O,C,1,1,c,-O,-C),Ze(hp,cp),Ze(hp,pp),Ze(hp,fp),Ze(hp,dp),ut(Math.min(cp[0],pp[0],fp[0],dp[0]),Math.min(cp[1],pp[1],fp[1],dp[1]),Math.max(cp[0],pp[0],fp[0],dp[0]),Math.max(cp[1],pp[1],fp[1],dp[1]),lp)}else ut(x,w,x+T,w+S,lp);var P=t.canvas,I=y?y[2]*p/2:0,b=lp[0]-I<=P.width&&lp[2]+I>=0&&lp[1]-I<=P.height&&lp[3]+I>=0;if(f&&(e=Math.round(e),r=Math.round(r)),a){if(!b&&1==a[4])return;ft(a,lp);var L=b?[t,R?R.slice(0):null,u,n,l,h,m,E,e,r,p]:null;L&&(v&&L.push(g,y,cp,pp,fp,dp),a.push(L))}else b&&(v&&this.replayTextBackground_(t,cp,pp,fp,dp,g,y),Ra(t,R,0,n,l,h,m,E,e,r,p))},t.prototype.fill_=function(t){if(this.alignFill_){var e=Ze(this.renderedTransform_,[0,0]),r=512*this.pixelRatio;t.save(),t.translate(e[0]%r,e[1]%r),t.rotate(this.viewRotation_)}t.fill(),this.alignFill_&&t.restore()},t.prototype.setStrokeStyle_=function(t,e){t.strokeStyle=e[1],t.lineWidth=e[2],t.lineCap=e[3],t.lineJoin=e[4],t.miterLimit=e[5],t.setLineDash&&(t.lineDashOffset=e[7],t.setLineDash(e[6]))},t.prototype.renderDeclutter=function(t,e,r,n){if(t&&t.length>5){var i=t[4];if(1==i||i==t.length-5){var o={minX:t[0],minY:t[1],maxX:t[2],maxY:t[3],value:e};if(n||(n=new Ol.a(9)),!n.collides(o)){n.insert(o);for(var a=5,s=t.length;a11&&this.replayTextBackground_(u[0],u[13],u[14],u[15],u[16],u[11],u[12]),Ra.apply(void 0,u),h!==r&&(l.globalAlpha=h)}}t.length=5,lt(t)}}return n},t.prototype.drawLabelWithPointPlacement_=function(t,e,r,n){var i=this.textStates[e],o=this.createLabel(t,e,n,r),a=this.strokeStates[r],s=this.pixelRatio,u=ip[i.textAlign||"center"],l=ip[i.textBaseline||"middle"],h=a&&a.lineWidth?a.lineWidth:0;return{label:o,anchorX:u*(o.width/s-2*i.scale)+2*(.5-u)*h,anchorY:l*o.height/s+2*(.5-l)*h}},t.prototype.execute_=function(t,e,r,n,i,o){var a,s,u;this.declutterItems.length=0,this.pixelCoordinates_&&O(e,this.renderedTransform_)?a=this.pixelCoordinates_:(this.pixelCoordinates_||(this.pixelCoordinates_=[]),a=Gt(this.coordinates,0,this.coordinates.length,2,e,this.pixelCoordinates_),s=this.renderedTransform_,u=e,s[0]=u[0],s[1]=u[1],s[2]=u[2],s[3]=u[3],s[4]=u[4],s[5]=u[5]);for(var l,h,c,p,f,d,_,g,y,v,m,E,T,S,x,w,R,C=0,P=r.length,I=0,b=0,L=0,M=null,F=null,A=this.coordinateCache_,N=this.viewRotation_,G=Math.round(1e12*Math.atan2(-e[1],e[0]))/1e12,D={context:t,pixelRatio:this.pixelRatio,resolution:this.resolution,rotation:N},j=this.instructions!=r||this.overlaps?0:200;Cj&&(this.fill_(t),b=0),L>j&&(t.stroke(),L=0),b||L||(t.beginPath(),p=NaN,f=NaN),++C;break;case Zc.CIRCLE:var U=a[I=k[1]],Y=a[I+1],B=a[I+2]-U,z=a[I+3]-Y,X=Math.sqrt(B*B+z*z);t.moveTo(U+X,Y),t.arc(U,Y,X,0,2*Math.PI,!0),++C;break;case Zc.CLOSE_PATH:t.closePath(),++C;break;case Zc.CUSTOM:I=k[1],l=k[2];var V=k[3],W=k[4],Z=6==k.length?k[5]:void 0;D.geometry=V,D.feature=x,C in A||(A[C]=[]);var K=A[C];Z?Z(a,I,l,2,K):(K[0]=a[I],K[1]=a[I+1],K.length=2),W(K,D),++C;break;case Zc.DRAW_IMAGE:I=k[1],l=k[2],v=k[3],h=k[4],c=k[5],y=i?null:k[6];var H=k[7],q=k[8],J=k[9],Q=k[10],$=k[11],tt=k[12],et=k[13],rt=k[14];if(!v&&k.length>=19){m=k[18],E=k[19],T=k[20],S=k[21];var nt=this.drawLabelWithPointPlacement_(m,E,T,S);v=nt.label,k[3]=v;var it=k[22];h=(nt.anchorX-it)*this.pixelRatio,k[4]=h;var ot=k[23];c=(nt.anchorY-ot)*this.pixelRatio,k[5]=c,H=v.height,k[7]=H,rt=v.width,k[14]=rt}var at=void 0;k.length>24&&(at=k[24]);var st=void 0,ut=void 0,lt=void 0;k.length>16?(st=k[15],ut=k[16],lt=k[17]):(st=pa,ut=!1,lt=!1),$&&G?tt+=N:$||G||(tt-=N);for(var ht=0,ct=0;I=o;)mp(r,t+i,t+o),mp(r,t+o,t+i),mp(r,t-o,t+i),mp(r,t-i,t+o),mp(r,t-i,t-o),mp(r,t-o,t-i),mp(r,t+o,t-i),mp(r,t+i,t-o),2*((a+=1+2*++o)-i)+1>0&&(a+=1-2*(i-=1));return vp[t]=r,r}(n);function p(t){for(var e=l.getImageData(0,0,a,a).data,r=0;r0){var s=void 0;return(!o||h!=Ia.IMAGE&&h!=Ia.TEXT||-1!==o.indexOf(t))&&(s=i(t)),s||void l.clearRect(0,0,a,a)}}var f,d,_,g,y,v=Object.keys(this.executorsByZIndex_).map(Number);for(v.sort(E),f=v.length-1;f>=0;--f){var m=v[f].toString();for(_=this.executorsByZIndex_[m],d=gp.length-1;d>=0;--d)if(void 0!==(g=_[h=gp[d]])&&(y=g.executeHitDetection(l,s,r,p,u)))return y}},t.prototype.getClipCoords=function(t){var e=this.maxExtent_;if(!e)return null;var r=e[0],n=e[1],i=e[2],o=e[3],a=[r,n,r,o,i,o,i,n];return Gt(a,0,8,2,t,a),a},t.prototype.isEmpty=function(){return _(this.executorsByZIndex_)},t.prototype.execute=function(t,e,r,n,i,o){var a=Object.keys(this.executorsByZIndex_).map(Number);a.sort(E),this.maxExtent_&&(t.save(),this.clip(t,e));var s,u,l,h,c,p,f=i||gp;for(s=0,u=a.length;s=i)for(n=i;n0&&(a.width=0),this.container;var u=Math.round(t.size[0]*r),l=Math.round(t.size[1]*r);a.width!=u||a.height!=l?(a.width=u,a.height=l,a.style.transform!==i&&(a.style.transform=i)):this.containerReused||o.clearRect(0,0,u,l),this.preRender(o,t);var h=t.extent,c=t.viewState,p=c.center,f=c.resolution,d=c.projection,_=c.rotation,g=d.getExtent(),y=this.getLayer().getSource(),v=!1;if(n.extent){var m=Be(n.extent,d);(v=!it(m,t.extent)&&bt(m,t.extent))&&this.clip(o,t,m)}var E=t.viewHints,T=!(E[Dn]||E[jn]),S=this.getRenderTransform(p,f,_,r,u,l,0),x=this.getLayer().getDeclutter()?{}:null;if(s.execute(o,S,_,T,void 0,x),y.getWrapX()&&d.canWrapX()&&!it(g,h)){for(var w=h[0],R=It(g),O=0,C=void 0;wg[2];){C=R*++O;var I=this.getRenderTransform(p,f,_,r,u,l,C);s.execute(o,I,_,T,void 0,x),w-=R}}if(x){var b=t.viewHints;Ep(x,o,_,1,!(b[Dn]||b[jn]),t.declutterItems)}v&&o.restore(),this.postRender(o,t);var L=n.opacity,M=this.container;return L!==parseFloat(M.style.opacity)&&(M.style.opacity=1===L?"":L),this.container},e.prototype.getFeatures=function(t){return new Promise(function(e,r){if(!this.hitDetectionImageData_&&!this.animatingOrInteracting_){var n=[this.context.canvas.width,this.context.canvas.height];Ze(this.pixelTransform,n);var i=this.renderedCenter_,o=this.renderedResolution_,a=this.renderedRotation_,s=this.renderedProjection_,u=this.renderedExtent_,l=this.getLayer(),h=[],c=n[0]/2,p=n[1]/2;h.push(this.getRenderTransform(i,o,a,.5,c,p,0).slice());var f=l.getSource(),d=s.getExtent();if(f.getWrapX()&&s.canWrapX()&&!it(d,u)){for(var _=u[0],g=It(d),y=0,v=void 0;_d[2];)v=g*++y,h.push(this.getRenderTransform(i,o,a,.5,c,p,v).slice()),_-=g}this.hitDetectionImageData_=Sp(n,h,this.renderedFeatures_,l.getStyleFunction(),u,o,a)}e(xp(t,this.renderedFeatures_,this.hitDetectionImageData_))}.bind(this))},e.prototype.forEachFeatureAtCoordinate=function(t,e,r,n,i){if(this.replayGroup_){var a=e.viewState.resolution,s=e.viewState.rotation,u=this.getLayer(),l={};return this.replayGroup_.forEachFeatureAtCoordinate(t,a,s,r,function(t){var e=o(t);if(!(e in l))return l[e]=!0,n(t,u)},u.getDeclutter()?i:null)}},e.prototype.handleFontsChanged=function(){var t=this.getLayer();t.getVisible()&&this.replayGroup_&&t.changed()},e.prototype.handleStyleImageChange_=function(t){this.renderIfReadyAndVisible()},e.prototype.prepareFrame=function(t){var e=this.getLayer(),r=e.getSource();if(!r)return!1;var n=t.viewHints[Dn],i=t.viewHints[jn],o=e.getUpdateWhileAnimating(),a=e.getUpdateWhileInteracting();if(!this.dirty_&&!o&&n||!a&&i)return this.animatingOrInteracting_=!0,!0;this.animatingOrInteracting_=!1;var s=t.extent,u=t.viewState,l=u.projection,h=u.resolution,c=t.pixelRatio,p=e.getRevision(),f=e.getRenderBuffer(),d=e.getRenderOrder();void 0===d&&(d=Ma);var _=u.center.slice(),g=tt(s,f*h),y=u.projection.getExtent();if(r.getWrapX()&&u.projection.canWrapX()&&!it(y,t.extent)){var v=It(y),m=Math.max(It(g)/2,v);g[0]=y[0]-m,g[2]=y[2]+m;var E=Math.floor((_[0]-y[0])/v);_[0]-=E*v}if(!this.dirty_&&this.renderedResolution_==h&&this.renderedRevision_==p&&this.renderedRenderOrder_==d&&it(this.renderedExtent_,g))return this.replayGroupChanged=!1,!0;this.replayGroup_=null,this.dirty_=!1;var T,S=new ap(Aa(h,c),g,h,c,e.getDeclutter()),x=je();x?(r.loadFeatures(Ye(g,l),h,x),T=be(x,l)):r.loadFeatures(g,h,l);var w=Fa(h,c),R=function(t){var r,n=t.getStyleFunction()||e.getStyleFunction();if(n&&(r=n(t,h)),r){var i=this.renderFeature(t,w,r,S,T);this.dirty_=this.dirty_||i}}.bind(this),O=Ye(g,l),C=r.getFeaturesInExtent(O);d&&C.sort(d);for(var P=0,I=C.length;P0)e([]);else{var m=Ct(c.getTileCoordExtent(n.wrappedTileCoord)),E=[(p[0]-m[0])/h,(m[1]-p[1])/h],T=n.getSourceTiles().reduce(function(t,e){return t.concat(e.getFeatures())},[]),S=n.hitDetectionImageData[a];if(!S&&!this.animatingOrInteracting_){var x=Ri(c.getTileSize(c.getZForResolution(h))),w=[x[0]/2,x[1]/2],R=this.renderedRotation_;S=Sp(x,[this.getRenderTransform(c.getTileCoordCenter(n.wrappedTileCoord),h,0,.5,w[0],w[1],0)],T,i.getStyleFunction(),c.getTileCoordExtent(n.wrappedTileCoord),n.getReplayState(i).renderedResolution,R),n.hitDetectionImageData[a]=S}e(xp(E,T,S))}}.bind(this))},e.prototype.handleFontsChanged=function(){f(this.renderTileImageQueue_);var t=this.getLayer();t.getVisible()&&void 0!==this.renderedLayerRevision_&&t.changed()},e.prototype.handleStyleImageChange_=function(t){this.renderIfReadyAndVisible()},e.prototype.renderFrame=function(e,r){var n=e.viewHints,i=!(n[Dn]||n[jn]);this.renderQueuedTileImages_(i,e),t.prototype.renderFrame.call(this,e,r),this.renderedPixelToCoordinateTransform_=e.pixelToCoordinateTransform.slice(),this.renderedRotation_=e.viewState.rotation;var a=this.getLayer(),s=a.getRenderMode();if(s===Pp.IMAGE)return this.container;var u=a.getSource(),l=e.usedTiles[o(u)];for(var h in this.renderTileImageQueue_)l&&h in l||delete this.renderTileImageQueue_[h];for(var c=this.context,p=a.getDeclutter()?{}:null,f=Lp[s],d=e.pixelRatio,_=e.viewState,g=_.center,y=_.resolution,v=_.rotation,m=e.size,E=Math.round(m[0]*d),T=Math.round(m[1]*d),S=this.renderedTiles,x=u.getTileGridForProjection(e.viewState.projection),w=[],R=[],O=S.length-1;O>=0;--O)for(var C=S[O],P=C.tileCoord,I=x.getTileCoordExtent(C.wrappedTileCoord),b=x.getTileCoordExtent(P,this.tmpExtent)[0]-I[0],L=Ve(Ke(this.inversePixelTransform.slice(),1/d,1/d),this.getRenderTransform(g,y,v,d,E,T,b)),M=C.executorGroups[o(a)],F=!1,A=0,N=M.length;A8){e.animate=!0;break}var n=this.renderTileImageQueue_[r];delete this.renderTileImageQueue_[r],this.renderTileImage_(n,e)}},e.prototype.renderFeature=function(t,e,r,n){if(!r)return!1;var i=!1;if(Array.isArray(r))for(var o=0,a=r.length;o>1)],e))<0?a=n+1:(s=n,u=!i);return u?a:~a}(p,g);if(y<0){var v=(g-p[-y-2])/(p[-y-1]-p[-y-2]),m=e+(-y-2)*n;a=Wt(t[m],t[m+n],v),s=Wt(t[m+1],t[m+n+1],v)}else a=t[e+y*n],s=t[e+y*n+1]}return o?(o[0]=a,o[1]=s,o):[a,s]}function Gp(t,e,r,n,i,o){if(r==e)return null;var a;if(i>1;i0&&g.length>0;)o=g.pop(),h=d.pop(),p=_.pop(),(u=o.toString())in y||(l.push(p[0],p[1]),y[u]=!0),a=g.pop(),c=d.pop(),f=_.pop(),Yt((i=e(n=t(s=(o+a)/2)))[0],i[1],p[0],p[1],f[0],f[1])this.featurePool_.length;)s=new q,this.featurePool_.push(s);var l=n.getFeaturesCollection();l.clear();var h,c,p,f=0;for(h=0,c=this.meridians_.length;h0)break}this.source_&&(this.source_.clear(),this.source_.addFeatures(a)),this.dispatchEvent(new tf($p,t,a,i))},e.prototype.registerListeners_=function(){var t=this.getMap();if(t){var e=this.target?this.target:t.getViewport();this.dropListenKeys_=[g(e,N.DROP,ef,this),g(e,N.DRAGENTER,rf,this),g(e,N.DRAGOVER,rf,this),g(e,N.DROP,rf,this)]}},e.prototype.setActive=function(e){!this.getActive()&&e&&this.registerListeners_(),this.getActive()&&!e&&this.unregisterListeners_(),t.prototype.setActive.call(this,e)},e.prototype.setMap=function(e){this.unregisterListeners_(),t.prototype.setMap.call(this,e),this.getActive()&&this.registerListeners_()},e.prototype.tryReadFeatures_=function(t,e,r){try{return t.readFeatures(e,r)}catch(t){return null}},e.prototype.unregisterListeners_=function(){this.dropListenKeys_&&(this.dropListenKeys_.forEach(v),this.dropListenKeys_=null)},e}(to),of=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),af=function(t){function e(e){var r=this,n=e||{};return(r=t.call(this,n)||this).condition_=n.condition?n.condition:po,r.lastAngle_=void 0,r.lastMagnitude_=void 0,r.lastScaleDelta_=0,r.duration_=void 0!==n.duration?n.duration:400,r}return of(e,t),e.prototype.handleDragEvent=function(t){if(_o(t)){var e=t.map,r=e.getSize(),n=t.pixel,i=n[0]-r[0]/2,o=r[1]/2-n[1],a=Math.atan2(o,i),s=Math.sqrt(i*i+o*o),u=e.getView();if(void 0!==this.lastAngle_){var l=this.lastAngle_-a;u.adjustRotationInternal(l)}this.lastAngle_=a,void 0!==this.lastMagnitude_&&u.adjustResolutionInternal(this.lastMagnitude_/s),void 0!==this.lastMagnitude_&&(this.lastScaleDelta_=this.lastMagnitude_/s),this.lastMagnitude_=s}},e.prototype.handleUpEvent=function(t){if(!_o(t))return!0;var e=t.map.getView(),r=this.lastScaleDelta_>1?1:-1;return e.endInteraction(this.duration_,r),this.lastScaleDelta_=0,!1},e.prototype.handleDownEvent=function(t){return!!_o(t)&&(!!this.condition_(t)&&(t.map.getView().beginInteraction(),this.lastAngle_=void 0,this.lastMagnitude_=void 0,!0))},e}(mo),sf=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),uf=function(t){function e(e,r,n){var i=t.call(this)||this;if(void 0!==n&&void 0===r)i.setFlatCoordinates(n,e);else{var o=r||0;i.setCenterAndRadius(e,o,n)}return i}return sf(e,t),e.prototype.clone=function(){return new e(this.flatCoordinates.slice(),void 0,this.layout)},e.prototype.closestPointXY=function(t,e,r,n){var i=this.flatCoordinates,o=t-i[0],a=e-i[1],s=o*o+a*a;if(s=e[0]||(t[1]<=e[1]&&t[3]>=e[1]||vt(t,this.intersectsCoordinate.bind(this)))}return!1},e.prototype.setCenter=function(t){var e=this.stride,r=this.flatCoordinates[e]-this.flatCoordinates[0],n=t.slice();n[e]=n[0]+r;for(var i=1;i=this.dragVertexDelay_?(this.downPx_=e.pixel,this.shouldHandle_=!this.freehand_,r=!0):this.lastDragTime_=void 0,this.shouldHandle_&&void 0!==this.downTimeout_&&(clearTimeout(this.downTimeout_),this.downTimeout_=void 0));return this.freehand_&&e.type===ln.POINTERDRAG&&null!==this.sketchFeature_?(this.addToDrawing_(e.coordinate),n=!1):this.freehand_&&e.type===ln.POINTERDOWN?n=!1:r?(n=e.type===ln.POINTERMOVE)&&this.freehand_?n=this.handlePointerMove_(e):("mouse"==e.pointerEvent.pointerType||e.type===ln.POINTERDRAG&&void 0===this.downTimeout_)&&this.handlePointerMove_(e):e.type===ln.DBLCLICK&&(n=!1),t.prototype.handleEvent.call(this,e)&&n},e.prototype.handleDownEvent=function(t){return this.shouldHandle_=!this.freehand_,this.freehand_?(this.downPx_=t.pixel,this.finishCoordinate_||this.startDrawing_(t),!0):this.condition_(t)?(this.lastDragTime_=Date.now(),this.downTimeout_=setTimeout(function(){this.handlePointerMove_(new cn(ln.POINTERMOVE,t.map,t.pointerEvent,!1,t.frameState))}.bind(this),this.dragVertexDelay_),this.downPx_=t.pixel,!0):(this.lastDragTime_=void 0,!1)},e.prototype.handleUpEvent=function(t){var e=!0;this.downTimeout_&&(clearTimeout(this.downTimeout_),this.downTimeout_=void 0),this.handlePointerMove_(t);var r=this.mode_===vf.CIRCLE;return this.shouldHandle_?(this.finishCoordinate_?this.freehand_||r?this.finishDrawing():this.atFinish_(t)?this.finishCondition_(t)&&this.finishDrawing():this.addToDrawing_(t.coordinate):(this.startDrawing_(t),this.mode_===vf.POINT&&this.finishDrawing()),e=!1):this.freehand_&&(this.finishCoordinate_=null,this.abortDrawing_()),!e&&this.stopClick_&&t.stopPropagation(),e},e.prototype.handlePointerMove_=function(t){if(this.downPx_&&(!this.freehand_&&this.shouldHandle_||this.freehand_&&!this.shouldHandle_)){var e=this.downPx_,r=t.pixel,n=e[0]-r[0],i=e[1]-r[1],o=n*n+i*i;if(this.shouldHandle_=this.freehand_?o>this.squaredClickTolerance_:o<=this.squaredClickTolerance_,!this.shouldHandle_)return!0}return this.finishCoordinate_?this.modifyDrawing_(t):this.createOrUpdateSketchPoint_(t),!0},e.prototype.atFinish_=function(t){var e=!1;if(this.sketchFeature_){var r=!1,n=[this.finishCoordinate_];if(this.mode_===vf.LINE_STRING)r=this.sketchCoords_.length>this.minPoints_;else if(this.mode_===vf.POLYGON){var i=this.sketchCoords_;r=i[0].length>this.minPoints_,n=[i[0][0],i[0][i[0].length-2]]}if(r)for(var o=t.map,a=0,s=n.length;a=this.maxPoints_&&(this.freehand_?r.pop():e=!0),r.push(t.slice()),this.geometryFunction_(r,n,i)):this.mode_===vf.POLYGON&&((r=this.sketchCoords_[0]).length>=this.maxPoints_&&(this.freehand_?r.pop():e=!0),r.push(t.slice()),e&&(this.finishCoordinate_=r[0]),this.geometryFunction_(this.sketchCoords_,n,i)),this.updateSketchFeatures_(),e&&this.finishDrawing()},e.prototype.removeLastPoint=function(){if(this.sketchFeature_){var t,e=this.sketchFeature_.getGeometry(),r=this.getMap().getView().getProjection();this.mode_===vf.LINE_STRING?((t=this.sketchCoords_).splice(-2,1),this.geometryFunction_(t,e,r),t.length>=2&&(this.finishCoordinate_=t[t.length-2].slice())):this.mode_===vf.POLYGON&&((t=this.sketchCoords_[0]).splice(-2,1),this.sketchLine_.getGeometry().setCoordinates(t),this.geometryFunction_(this.sketchCoords_,e,r)),0===t.length&&(this.finishCoordinate_=null),this.updateSketchFeatures_()}},e.prototype.finishDrawing=function(){var t=this.abortDrawing_();if(t){var e=this.sketchCoords_,r=t.getGeometry(),n=this.getMap().getView().getProjection();this.mode_===vf.LINE_STRING?(e.pop(),this.geometryFunction_(e,r,n)):this.mode_===vf.POLYGON&&(e[0].pop(),this.geometryFunction_(e,r,n),e=r.getCoordinates()),this.type_===Nt.MULTI_POINT?t.setGeometry(new ff([e])):this.type_===Nt.MULTI_LINE_STRING?t.setGeometry(new cf([e])):this.type_===Nt.MULTI_POLYGON&&t.setGeometry(new gf([e])),this.dispatchEvent(new Tf(Ef,t)),this.features_&&this.features_.push(t),this.source_&&this.source_.addFeature(t)}},e.prototype.abortDrawing_=function(){this.finishCoordinate_=null;var t=this.sketchFeature_;return this.sketchFeature_=null,this.sketchPoint_=null,this.sketchLine_=null,this.overlay_.getSource().clear(!0),t},e.prototype.appendCoordinates=function(t){var e=this.mode_,r=[];e===vf.LINE_STRING?r=this.sketchCoords_:e===vf.POLYGON&&(r=this.sketchCoords_&&this.sketchCoords_.length?this.sketchCoords_[0]:[]);for(var n=r.pop(),i=0;ic?o[1]:o[0]),a}}return null},e.prototype.handlePointerMove_=function(t){var e=t.pixel,r=t.map,n=this.snapToVertex_(e,r);n||(n=r.getCoordinateFromPixelInternal(e)),this.createOrUpdatePointerFeature_(n)},e.prototype.createOrUpdateExtentFeature_=function(t){var e=this.extentFeature_;return e?t?e.setGeometry(zr(t)):e.setGeometry(void 0):(e=new q(t?zr(t):{}),this.extentFeature_=e,this.extentOverlay_.getSource().addFeature(e)),e},e.prototype.createOrUpdatePointerFeature_=function(t){var e=this.vertexFeature_;e?e.getGeometry().setCoordinates(t):(e=new q(new Rr(t)),this.vertexFeature_=e,this.vertexOverlay_.getSource().addFeature(e));return e},e.prototype.handleEvent=function(e){return!e.pointerEvent||(e.type!=ln.POINTERMOVE||this.handlingDownUpSequence||this.handlePointerMove_(e),t.prototype.handleEvent.call(this,e),!1)},e.prototype.handleDownEvent=function(t){var e=t.pixel,r=t.map,n=this.getExtentInternal(),i=this.snapToVertex_(e,r),o=function(t){var e=null,r=null;return t[0]==n[0]?e=n[2]:t[0]==n[2]&&(e=n[0]),t[1]==n[1]?r=n[3]:t[1]==n[3]&&(r=n[1]),null!==e&&null!==r?[e,r]:null};if(i&&n){var a=i[0]==n[0]||i[0]==n[2]?i[0]:null,s=i[1]==n[1]||i[1]==n[3]?i[1]:null;null!==a&&null!==s?this.pointerHandler_=Pf(o(i)):null!==a?this.pointerHandler_=If(o([a,n[1]]),o([a,n[3]])):null!==s&&(this.pointerHandler_=If(o([n[0],s]),o([n[2],s])))}else i=r.getCoordinateFromPixelInternal(e),this.setExtent([i[0],i[1],i[0],i[1]]),this.pointerHandler_=Pf(i);return!0},e.prototype.handleDragEvent=function(t){if(this.pointerHandler_){var e=t.coordinate;this.setExtent(this.pointerHandler_(e)),this.createOrUpdatePointerFeature_(e)}return!0},e.prototype.handleUpEvent=function(t){this.pointerHandler_=null;var e=this.getExtentInternal();return e&&0!==mt(e)||this.setExtent(null),!1},e.prototype.setMap=function(e){this.extentOverlay_.setMap(e),this.vertexOverlay_.setMap(e),t.prototype.setMap.call(this,e)},e.prototype.getExtent=function(){return Ye(this.getExtentInternal(),this.getMap().getView().getProjection())},e.prototype.getExtentInternal=function(){return this.extent_},e.prototype.setExtent=function(t){this.extent_=t||null,this.createOrUpdateExtentFeature_(t),this.dispatchEvent(new Rf(this.extent_))},e}(mo),Lf=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Mf=1,Ff=[0,0,0,0],Af=[],Nf="modifystart",Gf="modifyend",Df=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.features=r,i.mapBrowserEvent=n,i}return Lf(e,t),e}(M);function jf(t,e){return t.index-e.index}function kf(t,e,r){var n=e.geometry;if(n.getType()===Nt.CIRCLE){var i=n;if(e.index===Mf){var o=Jn(i.getCenter(),t),a=Math.sqrt(o)-i.getRadius();return a*a}}var s=Ue(t,r);return Af[0]=Ue(e.segment[0],r),Af[1]=Ue(e.segment[1],r),$n(s,Af)}function Uf(t,e,r){var n=e.geometry;if(n.getType()===Nt.CIRCLE&&e.index===Mf)return n.getClosestPoint(t);var i=Ue(t,r);return Af[0]=Ue(e.segment[0],r),Af[1]=Ue(e.segment[1],r),ke(Vn(i,Af),r)}function Yf(){var t=bu();return function(e,r){return t[Nt.POINT]}}var Bf=function(t){function e(e){var r,n=t.call(this,e)||this;if(n.boundHandleFeatureChange_=n.handleFeatureChange_.bind(n),n.condition_=e.condition?e.condition:go,n.defaultDeleteCondition_=function(t){return io(t)&&ho(t)},n.deleteCondition_=e.deleteCondition?e.deleteCondition:n.defaultDeleteCondition_,n.insertVertexCondition_=e.insertVertexCondition?e.insertVertexCondition:so,n.vertexFeature_=null,n.vertexSegments_=null,n.lastPixel_=[0,0],n.ignoreNextSingleClick_=!1,n.modified_=!1,n.rBush_=new Cl,n.pixelTolerance_=void 0!==e.pixelTolerance?e.pixelTolerance:10,n.snappedToVertex_=!1,n.changingFeature_=!1,n.dragSegments_=[],n.overlay_=new Ap({source:new bl({useSpatialIndex:!1,wrapX:!!e.wrapX}),style:e.style?e.style:Yf(),updateWhileAnimating:!0,updateWhileInteracting:!0}),n.SEGMENT_WRITERS_={Point:n.writePointGeometry_.bind(n),LineString:n.writeLineStringGeometry_.bind(n),LinearRing:n.writeLineStringGeometry_.bind(n),Polygon:n.writePolygonGeometry_.bind(n),MultiPoint:n.writeMultiPointGeometry_.bind(n),MultiLineString:n.writeMultiLineStringGeometry_.bind(n),MultiPolygon:n.writeMultiPolygonGeometry_.bind(n),Circle:n.writeCircleGeometry_.bind(n),GeometryCollection:n.writeGeometryCollectionGeometry_.bind(n)},n.source_=null,e.source?(n.source_=e.source,r=new Z(n.source_.getFeatures()),n.source_.addEventListener(wl.ADDFEATURE,n.handleSourceAdd_.bind(n)),n.source_.addEventListener(wl.REMOVEFEATURE,n.handleSourceRemove_.bind(n))):r=e.features,!r)throw new Error("The modify interaction requires features or a source");return n.features_=r,n.features_.forEach(n.addFeature_.bind(n)),n.features_.addEventListener(h.ADD,n.handleFeatureAdd_.bind(n)),n.features_.addEventListener(h.REMOVE,n.handleFeatureRemove_.bind(n)),n.lastPointerEvent_=null,n}return Lf(e,t),e.prototype.addFeature_=function(t){var e=t.getGeometry();if(e){var r=this.SEGMENT_WRITERS_[e.getType()];r&&r(t,e)}var n=this.getMap();n&&n.isRendered()&&this.getActive()&&this.handlePointerAtPixel_(this.lastPixel_,n),t.addEventListener(N.CHANGE,this.boundHandleFeatureChange_)},e.prototype.willModifyFeatures_=function(t){this.modified_||(this.modified_=!0,this.dispatchEvent(new Df(Nf,this.features_,t)))},e.prototype.removeFeature_=function(t){this.removeFeatureSegmentData_(t),this.vertexFeature_&&0===this.features_.getLength()&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),t.removeEventListener(N.CHANGE,this.boundHandleFeatureChange_)},e.prototype.removeFeatureSegmentData_=function(t){var e=this.rBush_,r=[];e.forEach(function(e){t===e.feature&&r.push(e)});for(var n=r.length-1;n>=0;--n){for(var i=r[n],o=this.dragSegments_.length-1;o>=0;--o)this.dragSegments_[o][0]===i&&this.dragSegments_.splice(o,1);e.remove(i)}},e.prototype.setActive=function(e){this.vertexFeature_&&!e&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),t.prototype.setActive.call(this,e)},e.prototype.setMap=function(e){this.overlay_.setMap(e),t.prototype.setMap.call(this,e)},e.prototype.getOverlay=function(){return this.overlay_},e.prototype.handleSourceAdd_=function(t){t.feature&&this.features_.push(t.feature)},e.prototype.handleSourceRemove_=function(t){t.feature&&this.features_.remove(t.feature)},e.prototype.handleFeatureAdd_=function(t){this.addFeature_(t.element)},e.prototype.handleFeatureChange_=function(t){if(!this.changingFeature_){var e=t.target;this.removeFeature_(e),this.addFeature_(e)}},e.prototype.handleFeatureRemove_=function(t){var e=t.element;this.removeFeature_(e)},e.prototype.writePointGeometry_=function(t,e){var r=e.getCoordinates(),n={feature:t,geometry:e,segment:[r,r]};this.rBush_.insert(e.getExtent(),n)},e.prototype.writeMultiPointGeometry_=function(t,e){for(var r=e.getCoordinates(),n=0,i=r.length;n=0;--g)this.insertVertex_.apply(this,i[g])}return!!this.vertexFeature_},e.prototype.handleUpEvent=function(t){for(var e=this.dragSegments_.length-1;e>=0;--e){var r=this.dragSegments_[e][0],n=r.geometry;if(n.getType()===Nt.CIRCLE){var i=n.getCenter(),o=r.featureSegments[0],a=r.featureSegments[1];o.segment[0]=i,o.segment[1]=i,a.segment[0]=i,a.segment[1]=i,this.rBush_.update(ht(i),o),this.rBush_.update(n.getExtent(),a)}else this.rBush_.update($(r.segment),r)}return this.modified_&&(this.dispatchEvent(new Df(Gf,this.features_,t)),this.modified_=!1),!1},e.prototype.handlePointerMove_=function(t){this.lastPixel_=t.pixel,this.handlePointerAtPixel_(t.pixel,t.map,t.coordinate)},e.prototype.handlePointerAtPixel_=function(t,e,r){var n=r||e.getCoordinateFromPixel(t),i=e.getView().getProjection(),a=Ye(tt(Be(ht(n,Ff),i),e.getView().getResolution()*this.pixelTolerance_,Ff),i),s=this.rBush_.getInExtent(a);if(s.length>0){s.sort(function(t,e){return kf(n,t,i)-kf(n,e,i)});var u=s[0],l=u.segment,h=Uf(n,u,i),c=e.getPixelFromCoordinate(h),p=Qn(t,c);if(p<=this.pixelTolerance_){var f={};if(u.geometry.getType()===Nt.CIRCLE&&u.index===Mf)this.snappedToVertex_=!0,this.createOrUpdateVertexFeature_(h);else{var d=e.getPixelFromCoordinate(l[0]),_=e.getPixelFromCoordinate(l[1]),g=Jn(c,d),y=Jn(c,_);p=Math.sqrt(Math.min(g,y)),this.snappedToVertex_=p<=this.pixelTolerance_,this.snappedToVertex_&&(h=g>y?l[1]:l[0]),this.createOrUpdateVertexFeature_(h);for(var v=1,m=s.length;v=0;--i)c=o((h=(r=p[i])[0]).feature),h.depth&&(c+="-"+h.depth.join("-")),c in f||(f[c]={}),0===r[1]?(f[c].right=h,f[c].index=h.index):1==r[1]&&(f[c].left=h,f[c].index=h.index+1);for(c in f){switch(l=f[c].right,s=f[c].left,(u=(a=f[c].index)-1)<0&&(u=0),t=e=(n=(h=void 0!==s?s:l).geometry).getCoordinates(),d=!1,n.getType()){case Nt.MULTI_LINE_STRING:e[h.depth[0]].length>2&&(e[h.depth[0]].splice(a,1),d=!0);break;case Nt.LINE_STRING:e.length>2&&(e.splice(a,1),d=!0);break;case Nt.MULTI_POLYGON:t=t[h.depth[1]];case Nt.POLYGON:(t=t[h.depth[0]]).length>4&&(a==t.length-1&&(a=0),t.splice(a,1),d=!0,0===a&&(t.pop(),t.push(t[0]),u=t.length-1))}if(d){this.setGeometryCoordinates_(n,e);var _=[];if(void 0!==s&&(this.rBush_.remove(s),_.push(s.segment[0])),void 0!==l&&(this.rBush_.remove(l),_.push(l.segment[1])),void 0!==s&&void 0!==l){var g={depth:h.depth,feature:h.feature,geometry:h.geometry,index:u,segment:_};this.rBush_.insert($(g.segment),g)}this.updateSegmentIndices_(n,a,h.depth,-1),this.vertexFeature_&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),p.length=0}}return d},e.prototype.setGeometryCoordinates_=function(t,e){this.changingFeature_=!0,t.setCoordinates(e),this.changingFeature_=!1},e.prototype.updateSegmentIndices_=function(t,e,r,n){this.rBush_.forEachInExtent(t.getExtent(),function(i){i.geometry===t&&(void 0===r||void 0===i.depth||O(i.depth,r))&&i.index>e&&(i.index+=n)})},e}(mo),zf=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Xf={SELECT:"select"},Vf=function(t){function e(e,r,n,i){var o=t.call(this,e)||this;return o.selected=r,o.deselected=n,o.mapBrowserEvent=i,o}return zf(e,t),e}(M);function Wf(t){if(!this.condition_(t))return!0;var e=this.addCondition_(t),r=this.removeCondition_(t),n=this.toggleCondition_(t),i=!e&&!r&&!n,o=t.map,a=this.getFeatures(),s=[],u=[];if(i){f(this.featureLayerAssociation_),o.forEachFeatureAtPixel(t.pixel,function(t,e){if(this.filter_(t,e))return u.push(t),this.addFeatureLayerAssociation_(t,e),!this.multi_}.bind(this),{layerFilter:this.layerFilter_,hitTolerance:this.hitTolerance_});for(var l=a.getLength()-1;l>=0;--l){var h=a.item(l),c=u.indexOf(h);c>-1?u.splice(c,1):(a.remove(h),s.push(h))}0!==u.length&&a.extend(u)}else{o.forEachFeatureAtPixel(t.pixel,function(t,i){if(this.filter_(t,i))return!e&&!n||T(a.getArray(),t)?(r||n)&&T(a.getArray(),t)&&(s.push(t),this.removeFeatureLayerAssociation_(t)):(u.push(t),this.addFeatureLayerAssociation_(t,i)),!this.multi_}.bind(this),{layerFilter:this.layerFilter_,hitTolerance:this.hitTolerance_});for(var p=s.length-1;p>=0;--p)a.remove(s[p]);a.extend(u)}return(u.length>0||s.length>0)&&this.dispatchEvent(new Vf(Xf.SELECT,u,s,t)),!0}var Zf=function(t){function e(e){var r,n,i=t.call(this,{handleEvent:Wf})||this,o=e||{};if(i.condition_=o.condition?o.condition:ho,i.addCondition_=o.addCondition?o.addCondition:lo,i.removeCondition_=o.removeCondition?o.removeCondition:lo,i.toggleCondition_=o.toggleCondition?o.toggleCondition:po,i.multi_=!!o.multi&&o.multi,i.filter_=o.filter?o.filter:P,i.hitTolerance_=o.hitTolerance?o.hitTolerance:0,i.style_=void 0!==o.style?o.style:(w((r=bu())[Nt.POLYGON],r[Nt.LINE_STRING]),w(r[Nt.GEOMETRY_COLLECTION],r[Nt.LINE_STRING]),function(t){return t.getGeometry()?r[t.getGeometry().getType()]:null}),i.featureStyleAssociation_={},i.features_=o.features||new Z,o.layers)if("function"==typeof o.layers)n=o.layers;else{var a=o.layers;n=function(t){return T(a,t)}}else n=P;i.layerFilter_=n,i.featureLayerAssociation_={};var s=i.getFeatures();return s.addEventListener(h.ADD,i.addFeature_.bind(i)),s.addEventListener(h.REMOVE,i.removeFeature_.bind(i)),i}return zf(e,t),e.prototype.addFeatureLayerAssociation_=function(t,e){this.featureLayerAssociation_[o(t)]=e},e.prototype.getFeatures=function(){return this.features_},e.prototype.getHitTolerance=function(){return this.hitTolerance_},e.prototype.getLayer=function(t){return this.featureLayerAssociation_[o(t)]},e.prototype.setHitTolerance=function(t){this.hitTolerance_=t},e.prototype.setMap=function(e){this.getMap()&&this.style_&&this.features_.forEach(this.removeSelectedStyle_.bind(this)),t.prototype.setMap.call(this,e),e&&this.style_&&this.features_.forEach(this.giveSelectedStyle_.bind(this))},e.prototype.addFeature_=function(t){var e=t.element;this.style_&&this.giveSelectedStyle_(e)},e.prototype.removeFeature_=function(t){var e=t.element;this.style_&&this.removeSelectedStyle_(e)},e.prototype.giveSelectedStyle_=function(t){var e=o(t);this.featureStyleAssociation_[e]=t.getStyle(),t.setStyle(this.style_)},e.prototype.removeSelectedStyle_=function(t){var e=o(t);t.setStyle(this.featureStyleAssociation_[e]),delete this.featureStyleAssociation_[e]},e.prototype.removeFeatureLayerAssociation_=function(t){delete this.featureLayerAssociation_[o(t)]},e}(to),Kf=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();function Hf(t){return t.feature?t.feature:t.element?t.element:void 0}var qf=[],Jf=function(t){function e(e){var r=this,n=e||{},i=n;return i.handleDownEvent||(i.handleDownEvent=P),i.stopDown||(i.stopDown=I),(r=t.call(this,i)||this).source_=n.source?n.source:null,r.vertex_=void 0===n.vertex||n.vertex,r.edge_=void 0===n.edge||n.edge,r.features_=n.features?n.features:null,r.featuresListenerKeys_=[],r.featureChangeListenerKeys_={},r.indexedFeaturesExtents_={},r.pendingFeatures_={},r.pixelTolerance_=void 0!==n.pixelTolerance?n.pixelTolerance:10,r.rBush_=new Cl,r.SEGMENT_WRITERS_={Point:r.writePointGeometry_.bind(r),LineString:r.writeLineStringGeometry_.bind(r),LinearRing:r.writeLineStringGeometry_.bind(r),Polygon:r.writePolygonGeometry_.bind(r),MultiPoint:r.writeMultiPointGeometry_.bind(r),MultiLineString:r.writeMultiLineStringGeometry_.bind(r),MultiPolygon:r.writeMultiPolygonGeometry_.bind(r),GeometryCollection:r.writeGeometryCollectionGeometry_.bind(r),Circle:r.writeCircleGeometry_.bind(r)},r}return Kf(e,t),e.prototype.addFeature=function(t,e){var r=void 0===e||e,n=o(t),i=t.getGeometry();if(i){var a=this.SEGMENT_WRITERS_[i.getType()];a&&(this.indexedFeaturesExtents_[n]=i.getExtent([1/0,1/0,-1/0,-1/0]),a(t,i))}r&&(this.featureChangeListenerKeys_[n]=g(t,N.CHANGE,this.handleFeatureChange_,this))},e.prototype.forEachFeatureAdd_=function(t){this.addFeature(t)},e.prototype.forEachFeatureRemove_=function(t){this.removeFeature(t)},e.prototype.getFeatures_=function(){var t;return this.features_?t=this.features_:this.source_&&(t=this.source_.getFeatures()),t},e.prototype.handleEvent=function(e){var r=this.snapTo(e.pixel,e.coordinate,e.map);return r.snapped&&(e.coordinate=r.vertex.slice(0,2),e.pixel=r.vertexPixel),t.prototype.handleEvent.call(this,e)},e.prototype.handleFeatureAdd_=function(t){var e=Hf(t);this.addFeature(e)},e.prototype.handleFeatureRemove_=function(t){var e=Hf(t);this.removeFeature(e)},e.prototype.handleFeatureChange_=function(t){var e=t.target;if(this.handlingDownUpSequence){var r=o(e);r in this.pendingFeatures_||(this.pendingFeatures_[r]=e)}else this.updateFeature_(e)},e.prototype.handleUpEvent=function(t){var e=d(this.pendingFeatures_);return e.length&&(e.forEach(this.updateFeature_.bind(this)),this.pendingFeatures_={}),!1},e.prototype.removeFeature=function(t,e){var r=void 0===e||e,n=o(t),i=this.indexedFeaturesExtents_[n];if(i){var a=this.rBush_,s=[];a.forEachInExtent(i,function(e){t===e.feature&&s.push(e)});for(var u=s.length-1;u>=0;--u)a.remove(s[u])}r&&(v(this.featureChangeListenerKeys_[n]),delete this.featureChangeListenerKeys_[n])},e.prototype.setMap=function(e){var r=this.getMap(),n=this.featuresListenerKeys_,i=this.getFeatures_();r&&(n.forEach(v),n.length=0,i.forEach(this.forEachFeatureRemove_.bind(this))),t.prototype.setMap.call(this,e),e&&(this.features_?n.push(g(this.features_,h.ADD,this.handleFeatureAdd_,this),g(this.features_,h.REMOVE,this.handleFeatureRemove_,this)):this.source_&&n.push(g(this.source_,wl.ADDFEATURE,this.handleFeatureAdd_,this),g(this.source_,wl.REMOVEFEATURE,this.handleFeatureRemove_,this)),i.forEach(this.forEachFeatureAdd_.bind(this)))},e.prototype.snapTo=function(t,e,r){var n=$([r.getCoordinateFromPixel([t[0]-this.pixelTolerance_,t[1]+this.pixelTolerance_]),r.getCoordinateFromPixel([t[0]+this.pixelTolerance_,t[1]-this.pixelTolerance_])]),i=this.rBush_.getInExtent(n);this.vertex_&&!this.edge_&&(i=i.filter(function(t){return t.feature.getGeometry().getType()!==Nt.CIRCLE}));var o=!1,a=null,s=null;if(0===i.length)return{snapped:o,vertex:a,vertexPixel:s};for(var u,l=r.getView().getProjection(),h=Ue(e,l),c=1/0,p=0;pm?_[1]:_[0],s=r.getPixelFromCoordinate(a))}else if(this.edge_){var E=u.feature.getGeometry().getType()===Nt.CIRCLE;if(E?a=function(t,e){var r=e.getRadius(),n=e.getCenter(),i=n[0],o=n[1],a=t[0]-i,s=t[1]-o;0===a&&0===s&&(a=1);var u=Math.sqrt(a*a+s*s);return[i+r*a/u,o+r*s/u]}(e,u.feature.getGeometry()):(qf[0]=Ue(_[0],l),qf[1]=Ue(_[1],l),a=ke(Vn(h,qf),l)),Qn(t,s=r.getPixelFromCoordinate(a))<=this.pixelTolerance_&&(o=!0,this.vertex_&&!E)){g=r.getPixelFromCoordinate(_[0]),y=r.getPixelFromCoordinate(_[1]),v=Jn(s,g),m=Jn(s,y);Math.sqrt(Math.min(v,m))<=this.pixelTolerance_&&(a=v>m?_[1]:_[0],s=r.getPixelFromCoordinate(a))}}return o&&(s=[Math.round(s[0]),Math.round(s[1])]),{snapped:o,vertex:a,vertexPixel:s}},e.prototype.updateFeature_=function(t){this.removeFeature(t,!1),this.addFeature(t,!1)},e.prototype.writeCircleGeometry_=function(t,e){for(var r=Xr(e).getCoordinates()[0],n=0,i=r.length-1;n=0;r--){var l=o[r][0];if(it(new xr(l).getExtent(),new xr(s).getExtent())){o[r].push(s),u=!0;break}}u||o.push([s.reverse()])}return o}(o.rings,a);1===s.length?(i=Nt.POLYGON,t=Object.assign({},t,((r={}).rings=s[0],r))):(i=Nt.MULTI_POLYGON,t=Object.assign({},t,((n={}).rings=s,n)))}return ud((0,dd[i])(t),!1,e)}function yd(t){var e=At.XY;return!0===t.hasZ&&!0===t.hasM?e=At.XYZM:!0===t.hasZ?e=At.XYZ:!0===t.hasM&&(e=At.XYM),e}function vd(t){var e=t.getLayout();return{hasZ:e===At.XYZ||e===At.XYZM,hasM:e===At.XYM||e===At.XYZM}}function md(t,e){return(0,_d[t.getType()])(ud(t,!0,e),e)}_d[Nt.POINT]=function(t,e){var r,n=t.getCoordinates(),i=t.getLayout();i===At.XYZ?r={x:n[0],y:n[1],z:n[2]}:i===At.XYM?r={x:n[0],y:n[1],m:n[2]}:i===At.XYZM?r={x:n[0],y:n[1],z:n[2],m:n[3]}:i===At.XY?r={x:n[0],y:n[1]}:K(!1,34);return r},_d[Nt.LINE_STRING]=function(t,e){var r=vd(t);return{hasZ:r.hasZ,hasM:r.hasM,paths:[t.getCoordinates()]}},_d[Nt.POLYGON]=function(t,e){var r=vd(t);return{hasZ:r.hasZ,hasM:r.hasM,rings:t.getCoordinates(!1)}},_d[Nt.MULTI_POINT]=function(t,e){var r=vd(t);return{hasZ:r.hasZ,hasM:r.hasM,points:t.getCoordinates()}},_d[Nt.MULTI_LINE_STRING]=function(t,e){var r=vd(t);return{hasZ:r.hasZ,hasM:r.hasM,paths:t.getCoordinates()}},_d[Nt.MULTI_POLYGON]=function(t,e){for(var r=vd(t),n=t.getCoordinates(!1),i=[],o=0;o=0;a--)i.push(n[o][a]);return{hasZ:r.hasZ,hasM:r.hasM,rings:i}};var Ed=function(t){function e(e){var r=this,n=e||{};return(r=t.call(this)||this).geometryName_=n.geometryName,r}return fd(e,t),e.prototype.readFeatureFromObject=function(t,e){var r=t,n=gd(r.geometry,e),i=new q;return this.geometryName_&&i.setGeometryName(this.geometryName_),i.setGeometry(n),e&&e.idField&&r.attributes[e.idField]&&i.setId(r.attributes[e.idField]),r.attributes&&i.setProperties(r.attributes,!0),i},e.prototype.readFeaturesFromObject=function(t,e){var r=e||{};if(t.features){var n=[],i=t.features;r.idField=t.objectIdFieldName;for(var o=0,a=i.length;o0?r[0]:null},e.prototype.readFeatureFromNode=function(t,e){return null},e.prototype.readFeatures=function(t,e){if(t){if("string"==typeof t){var r=ws(t);return this.readFeaturesFromDocument(r,e)}return xs(t)?this.readFeaturesFromDocument(t,e):this.readFeaturesFromNode(t,e)}return[]},e.prototype.readFeaturesFromDocument=function(t,e){for(var r=[],n=t.firstChild;n;n=n.nextSibling)n.nodeType==Node.ELEMENT_NODE&&w(r,this.readFeaturesFromNode(n,e));return r},e.prototype.readFeaturesFromNode=function(t,e){return n()},e.prototype.readGeometry=function(t,e){if(t){if("string"==typeof t){var r=ws(t);return this.readGeometryFromDocument(r,e)}return xs(t)?this.readGeometryFromDocument(t,e):this.readGeometryFromNode(t,e)}return null},e.prototype.readGeometryFromDocument=function(t,e){return null},e.prototype.readGeometryFromNode=function(t,e){return null},e.prototype.readProjection=function(t){if(t){if("string"==typeof t){var e=ws(t);return this.readProjectionFromDocument(e)}return xs(t)?this.readProjectionFromDocument(t):this.readProjectionFromNode(t)}return null},e.prototype.readProjectionFromDocument=function(t){return this.dataProjection},e.prototype.readProjectionFromNode=function(t){return this.dataProjection},e.prototype.writeFeature=function(t,e){var r=this.writeFeatureNode(t,e);return this.xmlSerializer_.serializeToString(r)},e.prototype.writeFeatureNode=function(t,e){return null},e.prototype.writeFeatures=function(t,e){var r=this.writeFeaturesNode(t,e);return this.xmlSerializer_.serializeToString(r)},e.prototype.writeFeaturesNode=function(t,e){return null},e.prototype.writeGeometry=function(t,e){var r=this.writeGeometryNode(t,e);return this.xmlSerializer_.serializeToString(r)},e.prototype.writeGeometryNode=function(t,e){return null},e}(sd),xd=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),wd="http://www.opengis.net/gml",Rd=/^[\s\xa0]*$/,Od=function(t){function e(e){var r=t.call(this)||this,n=e||{};return r.featureType=n.featureType,r.featureNS=n.featureNS,r.srsName=n.srsName,r.schemaLocation="",r.FEATURE_COLLECTION_PARSERS={},r.FEATURE_COLLECTION_PARSERS[r.namespace]={featureMember:Os(r.readFeaturesInternal),featureMembers:Cs(r.readFeaturesInternal)},r}return xd(e,t),e.prototype.readFeaturesInternal=function(t,e){var r=t.localName,n=null;if("FeatureCollection"==r)n=Ds([],this.FEATURE_COLLECTION_PARSERS,t,e,this);else if("featureMembers"==r||"featureMember"==r){var i=e[0],o=i.featureType,a=i.featureNS;if(!o&&t.childNodes){o=[],a={};for(var s=0,u=t.childNodes.length;s0){i[s]={_content_:i[s]};for(var l=0;l0:c===Nt.POINT||c===Nt.MULTI_POINT}}s&&(u=o.get("name"),(s=s&&!!u)&&u.search(/&[^&]+;/)>-1&&(Tg||(Tg=document.createElement("textarea")),Tg.innerHTML=u,u=Tg.value));var p=r;if(t?p=t:e&&(p=function t(e,r,n){return Array.isArray(e)?e:"string"==typeof e?(!(e in n)&&"#"+e in n&&(e="#"+e),t(n[e],r,n)):r}(e,r,n)),s){var f=function(t,e){var r=[0,0],n="start",i=t.getImage();if(i){var o=i.getImageSize();if(null===o&&(o=Z_),2==o.length){var a=i.getScale();r[0]=a*o[0]/2,r[1]=-a*o[1]/2,n="left"}}var s=t.getText();s?((s=s.clone()).setFont(s.getFont()||mg.getFont()),s.setScale(s.getScale()||mg.getScale()),s.setFill(s.getFill()||mg.getFill()),s.setStroke(s.getStroke()||yg)):s=mg.clone();return s.setText(e),s.setOffsetX(r[0]),s.setOffsetY(r[1]),s.setTextAlign(n),new Mu({image:i,text:s,fill:t.getFill(),stroke:t.getStroke()})}(p[0],u);return l.length>0?(f.setGeometry(new ad(l)),[f,new Mu({geometry:p[0].getGeometry(),image:null,fill:p[0].getFill(),stroke:p[0].getStroke(),text:null})].concat(p.slice(1))):f}return p}}(r.Style,r.styleUrl,this.defaultStyle_,this.sharedStyles_,this.showPointNames_);n.setStyle(s)}return delete r.Style,n.setProperties(r,!0),n}},e.prototype.readSharedStyle_=function(t,e){var r=t.getAttribute("id");if(null!==r){var n=Jg.call(this,t,e);if(n){var i=void 0,o=t.baseURI;if(o&&"about:blank"!=o||(o=window.location.href),o)i=new URL("#"+r,o).href;else i="#"+r;this.sharedStyles_[i]=n}}},e.prototype.readSharedStyleMap_=function(t,e){var r=t.getAttribute("id");if(null!==r){var n=Ig.call(this,t,e);if(n){var i,o=t.baseURI;if(o&&"about:blank"!=o||(o=window.location.href),o)i=new URL("#"+r,o).href;else i="#"+r;this.sharedStyles_[i]=n}}},e.prototype.readFeatureFromNode=function(t,e){if(!T(ag,t.namespaceURI))return null;var r=this.readPlacemark_(t,[this.getReadOptions(t,e)]);return r||null},e.prototype.readFeaturesFromNode=function(t,e){if(!T(ag,t.namespaceURI))return[];var r,n=t.localName;if("Document"==n||"Folder"==n)return(r=this.readDocumentOrFolder_(t,[this.getReadOptions(t,e)]))||[];if("Placemark"==n){var i=this.readPlacemark_(t,[this.getReadOptions(t,e)]);return i?[i]:[]}if("kml"==n){r=[];for(var o=t.firstElementChild;o;o=o.nextElementSibling){var a=this.readFeaturesFromNode(o,e);a&&w(r,a)}return r}return[]},e.prototype.readName=function(t){if(t){if("string"==typeof t){var e=ws(t);return this.readNameFromDocument(e)}return xs(t)?this.readNameFromDocument(t):this.readNameFromNode(t)}},e.prototype.readNameFromDocument=function(t){for(var e=t.firstChild;e;e=e.nextSibling)if(e.nodeType==Node.ELEMENT_NODE){var r=this.readNameFromNode(e);if(r)return r}},e.prototype.readNameFromNode=function(t){for(var e=t.firstElementChild;e;e=e.nextElementSibling)if(T(ag,e.namespaceURI)&&"name"==e.localName)return Nd(e);for(e=t.firstElementChild;e;e=e.nextElementSibling){var r=e.localName;if(T(ag,e.namespaceURI)&&("Document"==r||"Folder"==r||"Placemark"==r||"kml"==r)){var n=this.readNameFromNode(e);if(n)return n}}},e.prototype.readNetworkLinks=function(t){var e=[];if("string"==typeof t){var r=ws(t);w(e,this.readNetworkLinksFromDocument(r))}else xs(t)?w(e,this.readNetworkLinksFromDocument(t)):w(e,this.readNetworkLinksFromNode(t));return e},e.prototype.readNetworkLinksFromDocument=function(t){for(var e=[],r=t.firstChild;r;r=r.nextSibling)r.nodeType==Node.ELEMENT_NODE&&w(e,this.readNetworkLinksFromNode(r));return e},e.prototype.readNetworkLinksFromNode=function(t){for(var e=[],r=t.firstElementChild;r;r=r.nextElementSibling)if(T(ag,r.namespaceURI)&&"NetworkLink"==r.localName){var n=Ds({},lg,r,[]);e.push(n)}for(r=t.firstElementChild;r;r=r.nextElementSibling){var i=r.localName;!T(ag,r.namespaceURI)||"Document"!=i&&"Folder"!=i&&"kml"!=i||w(e,this.readNetworkLinksFromNode(r))}return e},e.prototype.readRegion=function(t){var e=[];if("string"==typeof t){var r=ws(t);w(e,this.readRegionFromDocument(r))}else xs(t)?w(e,this.readRegionFromDocument(t)):w(e,this.readRegionFromNode(t));return e},e.prototype.readRegionFromDocument=function(t){for(var e=[],r=t.firstChild;r;r=r.nextSibling)r.nodeType==Node.ELEMENT_NODE&&w(e,this.readRegionFromNode(r));return e},e.prototype.readRegionFromNode=function(t){for(var e=[],r=t.firstElementChild;r;r=r.nextElementSibling)if(T(ag,r.namespaceURI)&&"Region"==r.localName){var n=Ds({},cg,r,[]);e.push(n)}for(r=t.firstElementChild;r;r=r.nextElementSibling){var i=r.localName;!T(ag,r.namespaceURI)||"Document"!=i&&"Folder"!=i&&"kml"!=i||w(e,this.readRegionFromNode(r))}return e},e.prototype.writeFeaturesNode=function(t,e){e=this.adaptOptions(e);var r=Ts(ag[4],"kml"),n="http://www.w3.org/2000/xmlns/";r.setAttributeNS(n,"xmlns:gx",og[0]),r.setAttributeNS(n,"xmlns:xsi",Es),r.setAttributeNS(Es,"xsi:schemaLocation","http://www.opengis.net/kml/2.2 https://developers.google.com/kml/schema/kml22gx.xsd");var i={node:r},o={};t.length>1?o.Document=t:1==t.length&&(o.Placemark=t[0]);var a=pg[r.namespaceURI],s=As(o,a);return ks(i,fg,Fs,s,[e],a,this),r},e}(Sd);function wg(t){var e=Ss(t,!1),r=/^\s*#?\s*([0-9A-Fa-f]{8})\s*$/.exec(e);if(r){var n=r[1];return[parseInt(n.substr(6,2),16),parseInt(n.substr(4,2),16),parseInt(n.substr(2,2),16),parseInt(n.substr(0,2),16)/255]}}function Rg(t){for(var e,r=Ss(t,!1),n=[],i=/^\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)\s*,\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)(?:\s*,\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?))?\s*/i;e=i.exec(r);){var o=parseFloat(e[1]),a=parseFloat(e[2]),s=e[3]?parseFloat(e[3]):0;n.push(o,a,s),r=r.substr(e[0].length)}if(""===r)return n}function Og(t){var e=Ss(t,!1).trim(),r=t.baseURI;return r&&"about:blank"!=r||(r=window.location.href),r?new URL(e,r).href:e}function Cg(t){return Ld(t)}var Pg=Ns(ag,{Pair:function(t,e){var r=Ds({},ny,t,e,this);if(!r)return;var n=r.key;if(n&&"normal"==n){var i=r.styleUrl;i&&(e[e.length-1]=i);var o=r.Style;o&&(e[e.length-1]=o)}}});function Ig(t,e){return Ds(void 0,Pg,t,e,this)}var bg=Ns(ag,{Icon:Is(function(t,e){var r=Ds({},kg,t,e);return r||null}),heading:Is(Ld),hotSpot:Is(function(t){var e,r=t.getAttribute("xunits"),n=t.getAttribute("yunits");return e="insetPixels"!==r?"insetPixels"!==n?xu.BOTTOM_LEFT:xu.TOP_LEFT:"insetPixels"!==n?xu.BOTTOM_RIGHT:xu.TOP_RIGHT,{x:parseFloat(t.getAttribute("x")),xunits:sg[r],y:parseFloat(t.getAttribute("y")),yunits:sg[n],origin:e}}),scale:Is(Cg)});var Lg=Ns(ag,{color:Is(wg),scale:Is(Cg)});var Mg=Ns(ag,{color:Is(wg),width:Is(Ld)});var Fg=Ns(ag,{color:Is(wg),fill:Is(Pd),outline:Is(Pd)});var Ag=Ns(ag,{coordinates:Cs(Rg)});function Ng(t,e){return Ds(null,Ag,t,e)}var Gg=Ns(og,{Track:Os(jg)});var Dg=Ns(ag,{when:function(t,e){var r=e[e.length-1].whens,n=Ss(t,!1),i=Date.parse(n);r.push(isNaN(i)?0:i)}},Ns(og,{coord:function(t,e){var r=e[e.length-1].flatCoordinates,n=Ss(t,!1),i=/^\s*([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s+([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s+([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s*$/i.exec(n);if(i){var o=parseFloat(i[1]),a=parseFloat(i[2]),s=parseFloat(i[3]);r.push(o,a,s,0)}else r.push(0,0,0,0)}}));function jg(t,e){var r=Ds({flatCoordinates:[],whens:[]},Dg,t,e);if(r){for(var n=r.flatCoordinates,i=r.whens,o=0,a=Math.min(n.length,i.length);o0,h=u.href;h?n=h:l&&(n=K_);var c,p=xu.BOTTOM_LEFT,f=r.hotSpot;f?(i=[f.x,f.y],o=f.xunits,a=f.yunits,p=f.origin):n===K_?(i=X_,o=V_,a=W_):/^http:\/\/maps\.(?:google|gstatic)\.com\//.test(n)&&(i=[.5,0],o=_u.FRACTION,a=_u.FRACTION);var d,_=u.x,g=u.y;void 0!==_&&void 0!==g&&(c=[_,g]);var y,v=u.w,m=u.h;void 0!==v&&void 0!==m&&(d=[v,m]);var E=r.heading;void 0!==E&&(y=Xt(E));var T=r.scale;if(l){n==K_&&(d=Z_,void 0===T&&(T=H_));var S=new Ru({anchor:i,anchorOrigin:p,anchorXUnits:o,anchorYUnits:a,crossOrigin:this.crossOrigin_,offset:c,offsetOrigin:xu.BOTTOM_LEFT,rotation:y,scale:T,size:d,src:n});s.imageStyle=S}else s.imageStyle=_g}},LabelStyle:function(t,e){var r=Ds({},Lg,t,e);if(r){var n=e[e.length-1],i=new Nu({fill:new du({color:"color"in r?r.color:z_}),scale:r.scale});n.textStyle=i}},LineStyle:function(t,e){var r=Ds({},Mg,t,e);if(r){var n=e[e.length-1],i=new Ou({color:"color"in r?r.color:z_,width:"width"in r?r.width:1});n.strokeStyle=i}},PolyStyle:function(t,e){var r=Ds({},Fg,t,e);if(r){var n=e[e.length-1],i=new du({color:"color"in r?r.color:z_});n.fillStyle=i;var o=r.fill;void 0!==o&&(n.fill=o);var a=r.outline;void 0!==a&&(n.outline=a)}}});function Jg(t,e){var r=Ds({},qg,t,e,this);if(!r)return null;var n,i="fillStyle"in r?r.fillStyle:dg,o=r.fill;void 0===o||o||(i=null),"imageStyle"in r?r.imageStyle!=_g&&(n=r.imageStyle):n=gg;var a="textStyle"in r?r.textStyle:mg,s="strokeStyle"in r?r.strokeStyle:vg,u=r.outline;return void 0===u||u?[new Mu({fill:i,image:n,stroke:s,text:a,zIndex:void 0})]:[new Mu({geometry:function(t){var e=t.getGeometry(),r=e.getType();return r===Nt.GEOMETRY_COLLECTION?new ad(e.getGeometriesArray().filter(function(t){var e=t.getType();return e!==Nt.POLYGON&&e!==Nt.MULTI_POLYGON})):r!==Nt.POLYGON&&r!==Nt.MULTI_POLYGON?e:void 0},fill:i,image:n,stroke:s,text:a,zIndex:void 0}),new Mu({geometry:function(t){var e=t.getGeometry(),r=e.getType();return r===Nt.GEOMETRY_COLLECTION?new ad(e.getGeometriesArray().filter(function(t){var e=t.getType();return e===Nt.POLYGON||e===Nt.MULTI_POLYGON})):r===Nt.POLYGON||r===Nt.MULTI_POLYGON?e:void 0},fill:i,stroke:null,zIndex:void 0})]}function Qg(t,e){var r,n,i,o=e.length,a=new Array(e.length),s=new Array(e.length),u=new Array(e.length);r=!1,n=!1,i=!1;for(var l=0;l0){var d=As(i,a);ks(n,Fy,Ny,[{names:a,values:d}],r)}var _=r[0],g=e.getGeometry();g&&(g=ud(g,!0,_)),ks(n,Fy,wy,[g],r)}var Dy=Ns(ag,["extrude","tessellate","altitudeMode","coordinates"]),jy=Ns(ag,{extrude:bs(Gd),tessellate:bs(Gd),altitudeMode:bs(kd),coordinates:bs(function(t,e,r){var n,i=r[r.length-1],o=i.layout,a=i.stride;o==At.XY||o==At.XYM?n=2:o==At.XYZ||o==At.XYZM?n=3:K(!1,34);var s=e.length,u="";if(s>0){u+=e[0];for(var l=1;l>3)?r.readString():2===t?r.readFloat():3===t?r.readDouble():4===t?r.readVarint64():5===t?r.readVarint():6===t?r.readSVarint():7===t?r.readBoolean():null;e.values.push(n)}}function iv(t,e,r){if(1==t)e.id=r.readVarint();else if(2==t)for(var n=r.readVarint()+r.pos;r.pos>3}a--,1===o||2===o?(s+=t.readSVarint(),u+=t.readSVarint(),1===o&&l>h&&(n.push(l),h=l),r.push(s,u),l+=2):7===o?l>h&&(r.push(r[h],r[h+1]),l+=2):K(!1,59)}l>h&&(n.push(l),h=l)},e.prototype.createFeature_=function(t,e,r){var n,i=e.type;if(0===i)return null;var o,a=e.properties;this.idProperty_?(o=a[this.idProperty_],delete a[this.idProperty_]):o=e.id,a[this.layerName_]=e.layer.name;var s=[],u=[];this.readRawGeometry_(t,e,s,u);var l=function(t,e){var r;1===t?r=1===e?Nt.POINT:Nt.MULTI_POINT:2===t?r=1===e?Nt.LINE_STRING:Nt.MULTI_LINE_STRING:3===t&&(r=Nt.POLYGON);return r}(i,u.length);if(this.featureClass_===tv)(n=new this.featureClass_(l,s,u,a,o)).transform(r.dataProjection,r.featureProjection);else{var h=void 0;if(l==Nt.POLYGON){for(var c=[],p=0,f=0,d=0,_=u.length;d<_;++d){var g=u[d];Nr(s,p,g,2)||(c.push(u.slice(f,d)),f=d),p=g}h=c.length>1?new gf(s,At.XY,c):new Yr(s,At.XY,u)}else h=l===Nt.POINT?new Rr(s,At.XY):l===Nt.LINE_STRING?new jp(s,At.XY):l===Nt.POLYGON?new Yr(s,At.XY,u):l===Nt.MULTI_POINT?new ff(s,At.XY):l===Nt.MULTI_LINE_STRING?new cf(s,At.XY,u):null;n=new(0,this.featureClass_),this.geometryName_&&n.setGeometryName(this.geometryName_);var y=ud(h,!1,r);n.setGeometry(y),n.setId(o),n.setProperties(a,!0)}return n},e.prototype.getType=function(){return Ka.ARRAY_BUFFER},e.prototype.readFeatures=function(t,e){var r=this.layers_,n=this.adaptOptions(e),i=xe(n.dataProjection);i.setWorldExtent(n.extent),n.dataProjection=i;var o=new Jy.a(t),a=o.readFields(rv,{}),s=[];for(var u in a)if(!r||-1!=r.indexOf(u)){var l=a[u],h=l?[0,0,l.extent,l.extent]:null;i.setExtent(h);for(var c=0,p=l.length;c>1):i>>1}return e}(t),i=0,o=n.length;i=32;)e=63+(32|31&t),r+=String.fromCharCode(e),t>>=5;return e=t+63,r+=String.fromCharCode(e)}var Sv=function(t){function e(e){var r=t.call(this)||this,n=e||{};return r.dataProjection=xe("EPSG:4326"),r.factor_=n.factor?n.factor:1e5,r.geometryLayout_=n.geometryLayout?n.geometryLayout:At.XY,r}return gv(e,t),e.prototype.readFeatureFromText=function(t,e){var r=this.readGeometryFromText(t,e);return new q(r)},e.prototype.readFeaturesFromText=function(t,e){return[this.readFeatureFromText(t,e)]},e.prototype.readGeometryFromText=function(t,e){var r=rr(this.geometryLayout_),n=vv(t,r,this.factor_);_v(n,0,n.length,r,n);var i=dr(n,0,n.length,r);return ud(new jp(i,this.geometryLayout_),!1,this.adaptOptions(e))},e.prototype.writeFeatureText=function(t,e){var r=t.getGeometry();return r?this.writeGeometryText(r,e):(K(!1,40),"")},e.prototype.writeFeaturesText=function(t,e){return this.writeFeatureText(t[0],e)},e.prototype.writeGeometryText=function(t,e){var r=(t=ud(t,!0,this.adaptOptions(e))).getFlatCoordinates(),n=t.getStride();return _v(r,0,r.length,n,r),yv(r,n,this.factor_)},e}(q_),xv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),wv=function(t){function e(e){var r=t.call(this)||this,n=e||{};return r.layerName_=n.layerName,r.layers_=n.layers?n.layers:null,r.dataProjection=xe(n.dataProjection?n.dataProjection:"EPSG:4326"),r}return xv(e,t),e.prototype.readFeaturesFromObject=function(t,e){if("Topology"==t.type){var r=t,n=void 0,i=null,o=null;r.transform&&(i=(n=r.transform).scale,o=n.translate);var a=r.arcs;n&&function(t,e,r){for(var n=0,i=t.length;n0&&i.pop(),n=r>=0?e[r]:e[~r].slice().reverse(),i.push.apply(i,n);for(var s=0,u=i.length;s=2,57),n}return Fv(e,t),e}(Mv),Nv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Gv=function(t){function e(e){return t.call(this,"And",Array.prototype.slice.call(arguments))||this}return Nv(e,t),e}(Av),Dv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),jv=function(t){function e(e,r,n){var i=t.call(this,"BBOX")||this;if(i.geometryName=e,i.extent=r,4!==r.length)throw new Error("Expected an extent with four values ([minX, minY, maxX, maxY])");return i.srsName=n,i}return Dv(e,t),e}(Mv),kv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Uv=function(t){function e(e,r,n,i){var o=t.call(this,e)||this;return o.geometryName=r||"the_geom",o.geometry=n,o.srsName=i,o}return kv(e,t),e}(Mv),Yv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Bv=function(t){function e(e,r,n){return t.call(this,"Contains",e,r,n)||this}return Yv(e,t),e}(Uv),zv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Xv=function(t){function e(e,r){var n=t.call(this,e)||this;return n.propertyName=r,n}return zv(e,t),e}(Mv),Vv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Wv=function(t){function e(e,r,n){var i=t.call(this,"During",e)||this;return i.begin=r,i.end=n,i}return Vv(e,t),e}(Xv),Zv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Kv=function(t){function e(e,r,n,i){var o=t.call(this,e,r)||this;return o.expression=n,o.matchCase=i,o}return Zv(e,t),e}(Xv),Hv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),qv=function(t){function e(e,r,n){return t.call(this,"PropertyIsEqualTo",e,r,n)||this}return Hv(e,t),e}(Kv),Jv=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Qv=function(t){function e(e,r){return t.call(this,"PropertyIsGreaterThan",e,r)||this}return Jv(e,t),e}(Kv),$v=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),tm=function(t){function e(e,r){return t.call(this,"PropertyIsGreaterThanOrEqualTo",e,r)||this}return $v(e,t),e}(Kv),em=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),rm=function(t){function e(e,r,n){return t.call(this,"Intersects",e,r,n)||this}return em(e,t),e}(Uv),nm=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),im=function(t){function e(e,r,n){var i=t.call(this,"PropertyIsBetween",e)||this;return i.lowerBoundary=r,i.upperBoundary=n,i}return nm(e,t),e}(Xv),om=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),am=function(t){function e(e,r,n,i,o,a){var s=t.call(this,"PropertyIsLike",e)||this;return s.pattern=r,s.wildCard=void 0!==n?n:"*",s.singleChar=void 0!==i?i:".",s.escapeChar=void 0!==o?o:"!",s.matchCase=a,s}return om(e,t),e}(Xv),sm=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),um=function(t){function e(e){return t.call(this,"PropertyIsNull",e)||this}return sm(e,t),e}(Xv),lm=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),hm=function(t){function e(e,r){return t.call(this,"PropertyIsLessThan",e,r)||this}return lm(e,t),e}(Kv),cm=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),pm=function(t){function e(e,r){return t.call(this,"PropertyIsLessThanOrEqualTo",e,r)||this}return cm(e,t),e}(Kv),fm=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),dm=function(t){function e(e){var r=t.call(this,"Not")||this;return r.condition=e,r}return fm(e,t),e}(Mv),_m=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),gm=function(t){function e(e,r,n){return t.call(this,"PropertyIsNotEqualTo",e,r,n)||this}return _m(e,t),e}(Kv),ym=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),vm=function(t){function e(e){return t.call(this,"Or",Array.prototype.slice.call(arguments))||this}return ym(e,t),e}(Av),mm=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Em=function(t){function e(e,r,n){return t.call(this,"Within",e,r,n)||this}return mm(e,t),e}(Uv);function Tm(t){var e=[null].concat(Array.prototype.slice.call(arguments));return new(Function.prototype.bind.apply(Gv,e))}function Sm(t,e,r){return new jv(t,e,r)}var xm=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),wm={"http://www.opengis.net/gml":{boundedBy:Is(Cd.prototype.readGeometryElement,"bounds")}},Rm={"http://www.opengis.net/wfs":{totalInserted:Is(Fd),totalUpdated:Is(Fd),totalDeleted:Is(Fd)}},Om={"http://www.opengis.net/wfs":{TransactionSummary:Is(function(t,e){return Ds({},Rm,t,e)},"transactionSummary"),InsertResults:Is(function(t,e){return Ds([],jm,t,e)},"insertIds")}},Cm={"http://www.opengis.net/wfs":{PropertyName:bs(kd)}},Pm={"http://www.opengis.net/wfs":{Insert:bs(function(t,e,r){var n=r[r.length-1],i=n.featureType,o=n.featureNS,a=n.gmlVersion,s=Ts(o,i);t.appendChild(s),2===a?Jd.prototype.writeFeatureElement(s,e,r):Xd.prototype.writeFeatureElement(s,e,r)}),Update:bs(function(t,e,r){var n=r[r.length-1];K(void 0!==e.getId(),27);var i=n.featureType,o=n.featurePrefix,a=n.featureNS,s=Um(o,i),u=e.getGeometryName();t.setAttribute("typeName",s),t.setAttributeNS(bm,"xmlns:"+o,a);var l=e.getId();if(void 0!==l){for(var h=e.getKeys(),c=[],p=0,f=h.length;p="a"&&t<="z"||t>="A"&&t<="Z"},t.prototype.isNumeric_=function(t,e){return t>="0"&&t<="9"||"."==t&&!(void 0!==e&&e)},t.prototype.isWhiteSpace_=function(t){return" "==t||"\t"==t||"\r"==t||"\n"==t},t.prototype.nextChar_=function(){return this.wkt.charAt(++this.index_)},t.prototype.nextToken=function(){var t,e=this.nextChar_(),r=this.index_,n=e;if("("==e)t=rE;else if(","==e)t=oE;else if(")"==e)t=nE;else if(this.isNumeric_(e)||"-"==e)t=iE,n=this.readNumber_();else if(this.isAlpha_(e))t=eE,n=this.readText_();else{if(this.isWhiteSpace_(e))return this.nextToken();if(""!==e)throw new Error("Unexpected character: "+e);t=aE}return{position:r,value:n,type:t}},t.prototype.readNumber_=function(){var t,e=this.index_,r=!1,n=!1;do{"."==t?r=!0:"e"!=t&&"E"!=t||(n=!0),t=this.nextChar_()}while(this.isNumeric_(t,r)||!n&&("e"==t||"E"==t)||n&&("-"==t||"+"==t));return parseFloat(this.wkt.substring(e,this.index_--))},t.prototype.readText_=function(){var t,e=this.index_;do{t=this.nextChar_()}while(this.isAlpha_(t));return this.wkt.substring(e,this.index_--).toUpperCase()},t}(),hE=function(){function t(t){this.lexer_=t,this.token_,this.layout_=At.XY}return t.prototype.consume_=function(){this.token_=this.lexer_.nextToken()},t.prototype.isTokenType=function(t){return this.token_.type==t},t.prototype.match=function(t){var e=this.isTokenType(t);return e&&this.consume_(),e},t.prototype.parse=function(){return this.consume_(),this.parseGeometry_()},t.prototype.parseGeometryLayout_=function(){var t=At.XY,e=this.token_;if(this.isTokenType(eE)){var r=e.value;r===$m?t=At.XYZ:r===tE?t=At.XYM:"ZM"===r&&(t=At.XYZM),t!==At.XY&&this.consume_()}return t},t.prototype.parseGeometryCollectionText_=function(){if(this.match(rE)){var t=[];do{t.push(this.parseGeometry_())}while(this.match(oE));if(this.match(nE))return t}else if(this.isEmptyGeometry_())return[];throw new Error(this.formatErrorMessage_())},t.prototype.parsePointText_=function(){if(this.match(rE)){var t=this.parsePoint_();if(this.match(nE))return t}else if(this.isEmptyGeometry_())return null;throw new Error(this.formatErrorMessage_())},t.prototype.parseLineStringText_=function(){if(this.match(rE)){var t=this.parsePointList_();if(this.match(nE))return t}else if(this.isEmptyGeometry_())return[];throw new Error(this.formatErrorMessage_())},t.prototype.parsePolygonText_=function(){if(this.match(rE)){var t=this.parseLineStringTextList_();if(this.match(nE))return t}else if(this.isEmptyGeometry_())return[];throw new Error(this.formatErrorMessage_())},t.prototype.parseMultiPointText_=function(){if(this.match(rE)){var t=void 0;if(t=this.token_.type==rE?this.parsePointTextList_():this.parsePointList_(),this.match(nE))return t}else if(this.isEmptyGeometry_())return[];throw new Error(this.formatErrorMessage_())},t.prototype.parseMultiLineStringText_=function(){if(this.match(rE)){var t=this.parseLineStringTextList_();if(this.match(nE))return t}else if(this.isEmptyGeometry_())return[];throw new Error(this.formatErrorMessage_())},t.prototype.parseMultiPolygonText_=function(){if(this.match(rE)){var t=this.parsePolygonTextList_();if(this.match(nE))return t}else if(this.isEmptyGeometry_())return[];throw new Error(this.formatErrorMessage_())},t.prototype.parsePoint_=function(){for(var t=[],e=this.layout_.length,r=0;r0&&(e+=" "+n)}return 0===r.length?e+" "+Qm:e+"("+r+")"}var yE=cE,vE="http://www.w3.org/1999/xlink";function mE(t){return t.getAttributeNS(vE,"href")}var EE=function(){function t(){}return t.prototype.read=function(t){if(t){if("string"==typeof t){var e=ws(t);return this.readFromDocument(e)}return xs(t)?this.readFromDocument(t):this.readFromNode(t)}return null},t.prototype.readFromDocument=function(t){},t.prototype.readFromNode=function(t){},t}(),TE=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),SE=[null,"http://www.opengis.net/wms"],xE=Ns(SE,{Service:Is(function(t,e){return Ds({},OE,t,e)}),Capability:Is(function(t,e){return Ds({},wE,t,e)})}),wE=Ns(SE,{Request:Is(function(t,e){return Ds({},AE,t,e)}),Exception:Is(function(t,e){return Ds([],bE,t,e)}),Layer:Is(function(t,e){return Ds({},LE,t,e)})}),RE=function(t){function e(){var e=t.call(this)||this;return e.version=void 0,e}return TE(e,t),e.prototype.readFromDocument=function(t){for(var e=t.firstChild;e;e=e.nextSibling)if(e.nodeType==Node.ELEMENT_NODE)return this.readFromNode(e);return null},e.prototype.readFromNode=function(t){this.version=t.getAttribute("version").trim();var e=Ds({version:this.version},xE,t,[]);return e||null},e}(EE),OE=Ns(SE,{Name:Is(Nd),Title:Is(Nd),Abstract:Is(Nd),KeywordList:Is(XE),OnlineResource:Is(mE),ContactInformation:Is(function(t,e){return Ds({},CE,t,e)}),Fees:Is(Nd),AccessConstraints:Is(Nd),LayerLimit:Is(Fd),MaxWidth:Is(Fd),MaxHeight:Is(Fd)}),CE=Ns(SE,{ContactPersonPrimary:Is(function(t,e){return Ds({},PE,t,e)}),ContactPosition:Is(Nd),ContactAddress:Is(function(t,e){return Ds({},IE,t,e)}),ContactVoiceTelephone:Is(Nd),ContactFacsimileTelephone:Is(Nd),ContactElectronicMailAddress:Is(Nd)}),PE=Ns(SE,{ContactPerson:Is(Nd),ContactOrganization:Is(Nd)}),IE=Ns(SE,{AddressType:Is(Nd),Address:Is(Nd),City:Is(Nd),StateOrProvince:Is(Nd),PostCode:Is(Nd),Country:Is(Nd)}),bE=Ns(SE,{Format:Os(Nd)}),LE=Ns(SE,{Name:Is(Nd),Title:Is(Nd),Abstract:Is(Nd),KeywordList:Is(XE),CRS:Ps(Nd),EX_GeographicBoundingBox:Is(function(t,e){var r=Ds({},FE,t,e);if(!r)return;var n=r.westBoundLongitude,i=r.southBoundLatitude,o=r.eastBoundLongitude,a=r.northBoundLatitude;if(void 0===n||void 0===i||void 0===o||void 0===a)return;return[n,i,o,a]}),BoundingBox:Ps(function(t,e){var r=[Md(t.getAttribute("minx")),Md(t.getAttribute("miny")),Md(t.getAttribute("maxx")),Md(t.getAttribute("maxy"))],n=[Md(t.getAttribute("resx")),Md(t.getAttribute("resy"))];return{crs:t.getAttribute("CRS"),extent:r,res:n}}),Dimension:Ps(function(t,e){return{name:t.getAttribute("name"),units:t.getAttribute("units"),unitSymbol:t.getAttribute("unitSymbol"),default:t.getAttribute("default"),multipleValues:Id(t.getAttribute("multipleValues")),nearestValue:Id(t.getAttribute("nearestValue")),current:Id(t.getAttribute("current")),values:Nd(t)}}),Attribution:Is(function(t,e){return Ds({},ME,t,e)}),AuthorityURL:Ps(function(t,e){var r=YE(t,e);if(r)return r.name=t.getAttribute("name"),r;return}),Identifier:Ps(Nd),MetadataURL:Ps(function(t,e){var r=YE(t,e);if(r)return r.type=t.getAttribute("type"),r;return}),DataURL:Ps(YE),FeatureListURL:Ps(YE),Style:Ps(function(t,e){return Ds({},jE,t,e)}),MinScaleDenominator:Is(Ld),MaxScaleDenominator:Is(Ld),Layer:Ps(function(t,e){var r=e[e.length-1],n=Ds({},LE,t,e);if(!n)return;var i=Id(t.getAttribute("queryable"));void 0===i&&(i=r.queryable);n.queryable=void 0!==i&&i;var o=Ad(t.getAttribute("cascaded"));void 0===o&&(o=r.cascaded);n.cascaded=o;var a=Id(t.getAttribute("opaque"));void 0===a&&(a=r.opaque);n.opaque=void 0!==a&&a;var s=Id(t.getAttribute("noSubsets"));void 0===s&&(s=r.noSubsets);n.noSubsets=void 0!==s&&s;var u=Md(t.getAttribute("fixedWidth"));u||(u=r.fixedWidth);n.fixedWidth=u;var l=Md(t.getAttribute("fixedHeight"));l||(l=r.fixedHeight);n.fixedHeight=l,["Style","CRS","AuthorityURL"].forEach(function(t){if(t in r){var e=n[t]||[];n[t]=e.concat(r[t])}});return["EX_GeographicBoundingBox","BoundingBox","Dimension","Attribution","MinScaleDenominator","MaxScaleDenominator"].forEach(function(t){if(!(t in n)){var e=r[t];n[t]=e}}),n})}),ME=Ns(SE,{Title:Is(Nd),OnlineResource:Is(mE),LogoURL:Is(zE)}),FE=Ns(SE,{westBoundLongitude:Is(Ld),eastBoundLongitude:Is(Ld),southBoundLatitude:Is(Ld),northBoundLatitude:Is(Ld)}),AE=Ns(SE,{GetCapabilities:Is(BE),GetMap:Is(BE),GetFeatureInfo:Is(BE)}),NE=Ns(SE,{Format:Ps(Nd),DCPType:Ps(function(t,e){return Ds({},GE,t,e)})}),GE=Ns(SE,{HTTP:Is(function(t,e){return Ds({},DE,t,e)})}),DE=Ns(SE,{Get:Is(YE),Post:Is(YE)}),jE=Ns(SE,{Name:Is(Nd),Title:Is(Nd),Abstract:Is(Nd),LegendURL:Ps(zE),StyleSheetURL:Is(YE),StyleURL:Is(YE)}),kE=Ns(SE,{Format:Is(Nd),OnlineResource:Is(mE)}),UE=Ns(SE,{Keyword:Os(Nd)});function YE(t,e){return Ds({},kE,t,e)}function BE(t,e){return Ds({},NE,t,e)}function zE(t,e){var r=YE(t,e);if(r){var n=[Ad(t.getAttribute("width")),Ad(t.getAttribute("height"))];return r.size=n,r}}function XE(t,e){return Ds([],UE,t,e)}var VE=RE,WE=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),ZE=function(t){function e(e){var r=t.call(this)||this,n=e||{};return r.featureNS_="http://mapserver.gis.umn.edu/mapserver",r.gmlFormat_=new Jd,r.layers_=n.layers?n.layers:null,r}return WE(e,t),e.prototype.getLayers=function(){return this.layers_},e.prototype.setLayers=function(t){this.layers_=t},e.prototype.readFeatures_=function(t,e){t.setAttribute("namespaceURI",this.featureNS_);var r=t.localName,n=[];if(0===t.childNodes.length)return n;if("msGMLOutput"==r)for(var i=0,o=t.childNodes.length;i.75*h||l>.75*c?this.resetExtent_():it(o,n)||this.recenter_()}}},e.prototype.resetExtent_=function(){var t=this.getMap(),e=this.ovmap_,r=t.getSize(),n=t.getView().calculateExtentInternal(r),i=e.getView(),o=Math.log(7.5)/Math.LN2;Mt(n,1/(.1*Math.pow(2,o/2))),i.fitInternal(zr(n))},e.prototype.recenter_=function(){var t=this.getMap(),e=this.ovmap_,r=t.getView();e.getView().setCenterInternal(r.getCenterInternal())},e.prototype.updateBox_=function(){var t=this.getMap(),e=this.ovmap_;if(t.isRendered()&&e.isRendered()){var r=t.getSize(),n=t.getView(),i=e.getView(),o=this.rotateWithView_?0:-n.getRotation(),a=this.boxOverlay_,s=this.boxOverlay_.getElement(),u=n.getCenterInternal(),l=n.getResolution(),h=i.getResolution(),c=r[0]*l/h,p=r[1]*l/h;if(a.setPosition(u),s){s.style.width=c+"px",s.style.height=p+"px";var f="rotate("+o+"rad)";s.style.transform=f}}},e.prototype.handleClick_=function(t){t.preventDefault(),this.handleToggle_()},e.prototype.handleToggle_=function(){this.element.classList.toggle(Di),this.collapsed_?fi(this.collapseLabel_,this.label_):fi(this.label_,this.collapseLabel_),this.collapsed_=!this.collapsed_;var t=this.ovmap_;if(!this.collapsed_){if(t.isRendered())return this.viewExtent_=void 0,void t.render();t.updateSize(),this.resetExtent_(),y(t,_n,function(t){this.updateBox_()},this)}},e.prototype.getCollapsible=function(){return this.collapsible_},e.prototype.setCollapsible=function(t){this.collapsible_!==t&&(this.collapsible_=t,this.element.classList.toggle("ol-uncollapsible"),!t&&this.collapsed_&&this.handleToggle_())},e.prototype.setCollapsed=function(t){this.collapsible_&&this.collapsed_!==t&&this.handleToggle_()},e.prototype.getCollapsed=function(){return this.collapsed_},e.prototype.getRotateWithView=function(){return this.rotateWithView_},e.prototype.setRotateWithView=function(t){this.rotateWithView_!==t&&(this.rotateWithView_=t,0!==this.getMap().getView().getRotation()&&(this.rotateWithView_?this.handleRotationChanged_():this.ovmap_.getView().setRotation(0),this.viewExtent_=void 0,this.validateExtent_(),this.updateBox_()))},e.prototype.getOverviewMap=function(){return this.ovmap_},e}(Li),zT=function(){var t=function(e,r){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(e,r)};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),XT="units",VT={DEGREES:"degrees",IMPERIAL:"imperial",NAUTICAL:"nautical",METRIC:"metric",US:"us"},WT=[1,2,5];function ZT(t){var e=t.frameState;this.viewState_=e?e.viewState:null,this.updateElement_()}var KT=function(t){function e(e){var r=this,n=e||{},i=void 0!==n.className?n.className:n.bar?"ol-scale-bar":"ol-scale-line";return(r=t.call(this,{element:document.createElement("div"),render:n.render||ZT,target:n.target})||this).innerElement_=document.createElement("div"),r.innerElement_.className=i+"-inner",r.element.className=i+" "+Ai,r.element.appendChild(r.innerElement_),r.viewState_=null,r.minWidth_=void 0!==n.minWidth?n.minWidth:64,r.renderedVisible_=!1,r.renderedWidth_=void 0,r.renderedHTML_="",r.addEventListener(B(XT),r.handleUnitsChanged_),r.setUnits(n.units||VT.METRIC),r.scaleBar_=n.bar||!1,r.scaleBarSteps_=n.steps||4,r.scaleBarText_=n.text||!1,r}return zT(e,t),e.prototype.getUnits=function(){return this.get(XT)},e.prototype.handleUnitsChanged_=function(){this.updateElement_()},e.prototype.setUnits=function(t){this.set(XT,t)},e.prototype.updateElement_=function(){var t=this.viewState_;if(t){var e=t.center,r=t.projection,n=this.getUnits(),i=n==VT.DEGREES?te.DEGREES:te.METERS,o=we(r,t.resolution,e,i),a=this.minWidth_*o,s="";if(n==VT.DEGREES){var u=$t[te.DEGREES];(a*=u)=this.minWidth_)break;++f}p=this.scaleBar_?this.createScaleBar(h,l,s):l.toFixed(c<0?-c:0)+" "+s,this.renderedHTML_!=p&&(this.innerElement_.innerHTML=p,this.renderedHTML_=p),this.renderedWidth_!=h&&(this.innerElement_.style.width=h+"px",this.renderedWidth_=h),this.renderedVisible_||(this.element.style.display="",this.renderedVisible_=!0)}else this.renderedVisible_&&(this.element.style.display="none",this.renderedVisible_=!1)},e.prototype.createScaleBar=function(t,e,r){for(var n="1 : "+Math.round(this.getScaleForResolution()).toLocaleString(),i=[],o=t/this.scaleBarSteps_,a="#ffffff",s=0;s