diff --git a/sass/custom/_paulus.scss b/sass/custom/_paulus.scss
index 6efc4c17a18..7728f716e0f 100644
--- a/sass/custom/_paulus.scss
+++ b/sass/custom/_paulus.scss
@@ -74,31 +74,24 @@
.blog-date {
white-space: nowrap;
}
-}
-.supported-brands {
- text-align: center;
- img {
- border: none !important;
- box-shadow: none !important;
- max-height: 50px;
- max-width: 140px;
- margin: 10px;
- vertical-align: middle;
+ .supported-brands {
+ text-align: center;
+
+ a {
+ text-decoration: none;
+ }
+
+ img {
+ border: none !important;
+ box-shadow: none !important;
+ max-height: 50px;
+ max-width: 140px;
+ margin: 10px;
+ vertical-align: middle;
+ }
}
-}
-.brand {
- border: none !important;
- box-shadow: none !important;
- max-height: 50px;
- max-width: 200px;
- margin: 10px;
-
- &.overview {
- max-width: 100px;
- vertical-align: middle;
- }
}
// https://fortawesome.github.io/Font-Awesome/3.2.1/icons/
@@ -202,10 +195,6 @@ article.post, article.page, article.listing {
text-decoration: none;
}
}
-
- .frontpage a {
- text-decoration: none;
- }
}
p.note {
@@ -406,3 +395,8 @@ ul.sidebar-menu {
a code {
color: #049cdb;
}
+
+twitterwidget {
+ margin-left: auto;
+ margin-right: auto;
+}
\ No newline at end of file
diff --git a/source/_components/binary_sensor.enocean.markdown b/source/_components/binary_sensor.enocean.markdown
index 24cdbf89023..435b7bfbc9c 100644
--- a/source/_components/binary_sensor.enocean.markdown
+++ b/source/_components/binary_sensor.enocean.markdown
@@ -9,6 +9,7 @@ sharing: true
footer: true
logo: enocean.png
ha_category: Binary Sensor
+ha_release: 0.21
---
This can typically be one of those batteryless wall switches. Currently only one type has been tested: Eltako FT55. Other devices will most likely not work without changing the Home-Asisstant code.
diff --git a/source/_components/camera.generic.markdown b/source/_components/camera.generic.markdown
index 9b9984c3ffa..3872b836cfb 100644
--- a/source/_components/camera.generic.markdown
+++ b/source/_components/camera.generic.markdown
@@ -17,7 +17,7 @@ The `generic` camera platform allows you to integrate any IP camera into Home As
Home Assistant will serve the images via its server, making it possible to view your IP camera's while outside of your network. The endpoint is `/api/camera_proxy/camera.[name]?time=[timestamp]`.
-To enable this camery in your installation, add the following to your `configuration.yaml` file:
+To enable this camera in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@@ -31,7 +31,7 @@ camera:
Configuration variables:
-- **still_image_url** *Required*: The URL your camera serves the image on, eg. http://192.168.1.21:2112/
-- **name** *Optional*: This parameter allows you to override the name of your camera.
-- **username** *Optional*: The username for accessing your camera.
-- **password** *Optional*: The password for accessing your camera.
+- **still_image_url** (*Required*): The URL your camera serves the image on, eg. http://192.168.1.21:2112/
+- **name** (*Optional*): This parameter allows you to override the name of your camera.
+- **username** (*Optional*): The username for accessing your camera.
+- **password** (*Optional*): The password for accessing your camera.
diff --git a/source/_components/camera.mjpeg.markdown b/source/_components/camera.mjpeg.markdown
index 9f84a34851b..61202b15612 100644
--- a/source/_components/camera.mjpeg.markdown
+++ b/source/_components/camera.mjpeg.markdown
@@ -31,10 +31,10 @@ camera:
Configuration variables:
-- **mjpeg_url** *Required*: The URL your camera serves the video on, eg. http://192.168.1.21:2112/
-- **name** *Optional*: This parameter allows you to override the name of your camera.
-- **username** *Optional*: The username for accessing your camera.
-- **password** *Optional*: The password for accessing your camera.
+- **mjpeg_url** (*Required*): The URL your camera serves the video on, eg. http://192.168.1.21:2112/
+- **name** (*Optional*): This parameter allows you to override the name of your camera.
+- **username** (*Optional*): The username for accessing your camera.
+- **password** (*Optional*): The password for accessing your camera.
There is a known issue in urllib3 that you will get error messages in your logs like [StartBoundaryNotFoundDefect(), MultipartInvariantViolationDefect()], unparsed data: ''
but the component still works fine. You can ignore the messages.
diff --git a/source/_components/camera.rpi_camera.markdown b/source/_components/camera.rpi_camera.markdown
index e2b6b4f2634..23de89c3273 100644
--- a/source/_components/camera.rpi_camera.markdown
+++ b/source/_components/camera.rpi_camera.markdown
@@ -14,7 +14,9 @@ ha_release: 0.17
---
-The `rpi` platform allows you to integrate the Raspberry Pi camera into Home Assistant. This component uses the application "raspistill" to store the image from camera.
+The `rpi` platform allows you to integrate the Raspberry Pi camera into Home Assistant. This component uses the application [`raspistill`](https://www.raspberrypi.org/documentation/usage/camera/raspicam/raspistill.md) to store the image from camera.
+
+To enable this camera in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@@ -33,14 +35,14 @@ camera:
Configuration variables:
- - **name** (optional): name of the camera
- - **image_width** (optional): set the image width (default: 640)
- - **image_height** (optional): set the image height (default: 480)
- - **image_quality** (optional): set the image quality (from 0 to 100, default: 7)
- - **image_rotation** (optional): Set image rotation (0-359, default: 0)
- - **horizontal_flip** (optional): Set horizontal flip (0 to disable, 1 to enable, default: 0)
- - **vertical_flip** (optional): Set vertical flip (0 to disable, 1 to enable, default: 0)
- - **timelapse** (optional): Takes a picture every ms (default: 1000)
- - **file_path** (optional): Save the picture in a custom file path (default: camera components folder)
+ - **name** (*Optional*): Name of the camera
+ - **image_width** (*Optional*): Set the image width (default: 640)
+ - **image_height** (*Optional*): Set the image height (default: 480)
+ - **image_quality** (*Optional*): Set the image quality (from 0 to 100, default: 7)
+ - **image_rotation** (*Optional*): Set image rotation (0-359, default: 0)
+ - **horizontal_flip** (*Optional*): Set horizontal flip (0 to disable, 1 to enable, default: 0)
+ - **vertical_flip** (*Optional*): Set vertical flip (0 to disable, 1 to enable, default: 0)
+ - **timelapse** (*Optional*): Takes a picture every ms (default: 1000)
+ - **file_path** (*Optional*): Save the picture in a custom file path (default: camera components folder)
The given **file_path** must be an existing file because the camera platform setup make a writeable check on it.
diff --git a/source/_components/device_tracker.ddwrt.markdown b/source/_components/device_tracker.ddwrt.markdown
index a53c0aff9a4..311324a6300 100644
--- a/source/_components/device_tracker.ddwrt.markdown
+++ b/source/_components/device_tracker.ddwrt.markdown
@@ -9,9 +9,9 @@ sharing: true
footer: true
logo: ddwrt.png
ha_category: Presence Detection
+ha_release: pre 0.7
---
-
This platform offers presence detection by looking at connected devices to a [DD-WRT](http://www.dd-wrt.com/site/index) based router.
To use a DD-WRT router in your installation, add the following to your `configuration.yaml` file:
diff --git a/source/_components/device_tracker.netgear.markdown b/source/_components/device_tracker.netgear.markdown
index 4466885b505..005773f2186 100644
--- a/source/_components/device_tracker.netgear.markdown
+++ b/source/_components/device_tracker.netgear.markdown
@@ -10,6 +10,7 @@ footer: true
logo: netgear.png
ha_category: Presence Detection
ha_iot_class: "Local Polling"
+ha_release: pre 0.7
---
diff --git a/source/_components/ecobee.markdown b/source/_components/ecobee.markdown
index 529a293ad0e..ab7e2cc0bea 100644
--- a/source/_components/ecobee.markdown
+++ b/source/_components/ecobee.markdown
@@ -15,7 +15,9 @@ featured: true
The Ecobee platform lets you control a thermostats and view sensor data from the [Ecobee](https://ecobee.com) thermostat.
-You will need to obtain an API key from ecobee's [developer site](https://www.ecobee.com/developers/) to use this component. The first time you run Home-Assistant with this component it will give you a PIN code that you need to authorize in the [ecobee consumer portal](https://www.ecobee.com/consumerportal/index.html). You can do this by clicking 'Add Application' in the 'My Apps' section in the sidebar.
+You will need to obtain an API key from ecobee's [developer site](https://www.ecobee.com/developers/) to use this component. To get the key, first you need to register your thermostat. Once you have done that, click on the 'Become a developer' link on the developer site. Login with your ecobee credentials, accept the SDK agreement, fill in the fields, and click save. Now login to the regular consumer portal, and in the hamburger menu there will br a new option 'Developer'. Select that, then select 'Create New'. Give your app a name (it appears to need to be unique across all users, as I tried 'home-assistant' and it said it was already in use) and a summary (neither of these are important as they are not used anywhere). For Authorization method select 'ecobee PIN'. You don't need an Application Icon or Detailed Description. Click Save. Now under the Name and Summary Section you will have an API key. Copy this key and use it in you configuration section below. Click the 'X' to close the Developer section.
+
+The first time you run Home-Assistant with this component it will give you a PIN code that you need to authorize in the [ecobee consumer portal](https://www.ecobee.com/consumerportal/index.html). You can do this by clicking 'Add Application' in the 'My Apps' section in the sidebar. Enter the PIN code from the Home Assistant screeen. To get the PIN code select the item in the Ecobee card. If you do not have an Ecobee card, you may be using groups with default_view that don't show the card. To get around this you can temporarily comment out the default_view section and restart Home Assistant. Once you enter the PIN on the Ecobee site, wait approximately 5 minutes and then click on the 'I have authorized the app' link at the bottom of the Ecobee popup window. If everything worked correctly, you should now be able to restart Home Assistant again to see the full Ecobee card with all of the sensors populated. Now you can re-enable your default_view (if you had to disable it) and add the Ecobee sensors to a group and/or view.
To set it up, add the following information to your `configuration.yaml` file:
diff --git a/source/_components/enocean.markdown b/source/_components/enocean.markdown
index ea9fa21df69..6e39caf744e 100644
--- a/source/_components/enocean.markdown
+++ b/source/_components/enocean.markdown
@@ -9,6 +9,7 @@ sharing: true
footer: true
logo: enocean.png
ha_category: Hub
+ha_release: 0.21
---
The [EnOcean](https://en.wikipedia.org/wiki/EnOcean) standard is supported by many different vendors. There are switches and sensors of many different kinds, and typically they employ energy harvesting to get power such that no batteries are unnecessary.
diff --git a/source/_components/light.enocean.markdown b/source/_components/light.enocean.markdown
index 560500de3e1..7bed96c53d9 100644
--- a/source/_components/light.enocean.markdown
+++ b/source/_components/light.enocean.markdown
@@ -9,6 +9,7 @@ sharing: true
footer: true
logo: enocean.png
ha_category: Light
+ha_release: 0.21
---
An EnOcean light can take many formes. Currently only one type has been tested: Eltako FUD61 dimmer.
diff --git a/source/_components/light.markdown b/source/_components/light.markdown
index 7d92ef67606..c54acd0ebb6 100644
--- a/source/_components/light.markdown
+++ b/source/_components/light.markdown
@@ -49,7 +49,7 @@ Turns one or multiple lights off.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | no | String or list of strings that point at `entity_id`s of lights. Else targets all.
-| `transition` | yes | Integer that represents the time the light should take to transition to the new state.
+| `transition` | yes | Integer that represents the time the light should take to transition to the new state in seconds.
### {% linkable_title Service `light.toggle` %}
diff --git a/source/_components/light.osramlightify.markdown b/source/_components/light.osramlightify.markdown
index 0ac64a1f923..a3d5364e107 100644
--- a/source/_components/light.osramlightify.markdown
+++ b/source/_components/light.osramlightify.markdown
@@ -9,6 +9,7 @@ sharing: true
footer: true
logo: osramlightify.png
ha_category: Light
+ha_release: 0.21
---
The `osramlightify` platform allows you to integrate your [Osram Lightify](http://www.osram.com/osram_com/products/led-technology/lightify/index.jsp) into Home Assistant.
diff --git a/source/_components/sensor.enocean.markdown b/source/_components/sensor.enocean.markdown
index f635a8d2e33..654c054a923 100644
--- a/source/_components/sensor.enocean.markdown
+++ b/source/_components/sensor.enocean.markdown
@@ -9,6 +9,7 @@ sharing: true
footer: true
logo: enocean.png
ha_category: Sensor
+ha_release: 0.21
---
diff --git a/source/_components/switch.enocean.markdown b/source/_components/switch.enocean.markdown
index 3c6fc5e3467..d9c3f10454d 100644
--- a/source/_components/switch.enocean.markdown
+++ b/source/_components/switch.enocean.markdown
@@ -9,6 +9,7 @@ sharing: true
footer: true
logo: enocean.png
ha_category: Switch
+ha_release: 0.21
---
An EnOcean switch can take many forms. Currently only one type has been tested: Permundo PSC234
diff --git a/source/_cookbook/python_component_basic_state.markdown b/source/_cookbook/python_component_basic_state.markdown
index d81d478ad16..1720868ed4d 100644
--- a/source/_cookbook/python_component_basic_state.markdown
+++ b/source/_cookbook/python_component_basic_state.markdown
@@ -95,7 +95,7 @@ def setup(hass, config):
To add the latest feature of our component, update the entry in your `configuration.yaml` file.
```yaml
-information:
+hello_state:
text: 'Hello, World!'
```
diff --git a/source/_posts/2015-10-11-measure-temperature-with-esp8266-and-report-to-mqtt.markdown b/source/_posts/2015-10-11-measure-temperature-with-esp8266-and-report-to-mqtt.markdown
index 58588c42bd2..f8543a5855e 100644
--- a/source/_posts/2015-10-11-measure-temperature-with-esp8266-and-report-to-mqtt.markdown
+++ b/source/_posts/2015-10-11-measure-temperature-with-esp8266-and-report-to-mqtt.markdown
@@ -29,7 +29,7 @@ Home Assistant will keep track of historical values and allow you to integrate i
-### Components
+### {% linkable_title Components %}
I've been using Adafruit for my shopping:
@@ -39,7 +39,11 @@ I've been using Adafruit for my shopping:
_Besides this, you will need the usual hardware prototype equipment: a breadboard, some wires, soldering iron + wire, Serial USB cable._
-### Connections
+
+Adafruit has stopped selling the HDC1008. One possible replacement is the [BME280](https://www.adafruit.com/product/2652). Adjusted sketch to work with the BME280 can be found [here](https://gist.github.com/mtl010957/9ee85fb404f65e15c440b08c659c0419).
+
+
+### {% linkable_title Connections %}
On your breadboard, make the following connections from your ESP8266 to the HDC1008:
@@ -52,7 +56,7 @@ On your breadboard, make the following connections from your ESP8266 to the HDC1
_I picked `#2` and `14` myself, you can configure them in the sketch._
-### Preparing your IDE
+### {% linkable_title Preparing your IDE %}
Follow [these instructions](https://github.com/esp8266/Arduino#installing-with-boards-manager) on how to install and prepare the Arduino IDE for ESP8266 development.
@@ -61,7 +65,7 @@ After you're done installing, open the Arduino IDE, in the menu click on `sketch
- PubSubClient by Nick 'O Leary
- Adafruit HDC1000
-### Sketch
+### {% linkable_title Sketch %}
If you have followed the previous steps, you're all set.
@@ -187,7 +191,7 @@ void loop() {
}
```
-### Configuring Home Assistant
+### {% linkable_title Configuring Home Assistant %}
The last step is to integrate the sensor values into Home Assistant. This can be done by setting up Home Assistant to connect to the MQTT broker and subscribe to the sensor topics.
diff --git a/source/_posts/2015-12-13-setup-encryption-using-lets-encrypt.markdown b/source/_posts/2015-12-13-setup-encryption-using-lets-encrypt.markdown
index 6a12fddecce..9f1e04ed9a7 100644
--- a/source/_posts/2015-12-13-setup-encryption-using-lets-encrypt.markdown
+++ b/source/_posts/2015-12-13-setup-encryption-using-lets-encrypt.markdown
@@ -4,7 +4,7 @@ title: "Set up encryption using Let's Encrypt"
description: "Tutorial how to encrypt your connection with Home Assistant."
date: 2015-12-13 10:05:00 -0800
date_formatted: "December 13, 2015"
-author: Paulus Schoutsen
+author: Paulus Schoutsen & Martin Hjelmare
author_twitter: balloob
comments: true
categories: How-To
@@ -21,12 +21,15 @@ This tutorial will take you through the steps to setup a dynamic DNS for your IP
+**Updated 2016-06-18**
+
### {% linkable_title Requirements %}
The DuckDNS part of this tutorial has no requirements but there are a few requirements as of now to run the Let's Encrypt client.
- - Direct connection to the internet or admin access to your router to set up port forwarding
- - A machine running a Unix-ish OS that include Python 2.6 or 2.7 (Docker can be used)
+ - Direct connection to the internet or admin access to your router to set up port forwarding.
+ - A machine running a Unix-ish OS that include Python 2.6 or 2.7 (Docker can be used).
+ - Root access, to write to default config, log and library directories and bind port 80.
@@ -46,48 +49,45 @@ First step is to acquire and set up our domain name. For this, go to [DuckDNS],
Let's Encrypt will give you a free 90-day certificate if you pass their domain validation challenge. Domains are validated by having certain data be accessible on your domain for Let's Encrypt ([they describe it better themselves][letsencrypt-technology]).
-Assuming that your home is behind a router, the first thing to do is to set up port forwarding from your router to your computer that will run Let's Encrypt. For the Let's Encrypt set up we need to temporary forward ports `80` (http connections) and `443` (https connections). This can be set up by accessing your router admin interface ([Site with port forwarding instructions per router][port-forward]).
+Assuming that your home is behind a router, the first thing to do is to set up port forwarding from your router to your computer that will run Let's Encrypt. For the Let's Encrypt set up we need to forward external port `80` to internal port `80` (http connections). This can be set up by accessing your router admin interface ([Site with port forwarding instructions per router][port-forward]). This port forward must be active whenever you want to request a new certificate from Let's Encrypt, typically every three months. If you normally don't use or have an app that listens to port `80`, it should be safe to leave the port open. This will make renewing certificates easier.
-Now you're ready to run Let's Encrypt:
+Now you're ready to install and run the client that requests certificates from Let's Encrypt. The following example will use the platform independent script to install and run the [certbot][certbot] client from Let's Encrypt. If there is a certbot package for your OS, it's recommended to install the package instead of the platform independent script. Read the [docs][certbot] for more information. There are also other clients that might offer more customization and options. See the [client options page][letsencrypt-clients] at Let's Encrypt.
```bash
-$ git clone https://github.com/letsencrypt/letsencrypt
-[…]
-$ cd letsencrypt
-$ ./letsencrypt-auto certonly --email your@email.address -d hass-example.duckdns.org
-
-Updating letsencrypt and virtual environment dependencies.......
-Running with virtualenv: sudo /path/letsencrypt/bin/letsencrypt certonly --email your@e-mail.address -d hass-example.duckdns.org
-
-IMPORTANT NOTES:
- - Congratulations! Your certificate and chain have been saved at
- /etc/letsencrypt/live/hass-example.duckdns.org/fullchain.pem. Your cert
- will expire on 2016-03-12. To obtain a new version of the
- certificate in the future, simply run Let's Encrypt again.
- - If like Let's Encrypt, please consider supporting our work by:
-
- Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
- Donating to EFF: https://eff.org/donate-le
+$ mkdir certbot
+$ cd certbot/
+$ wget https://dl.eff.org/certbot-auto
+$ chmod a+x certbot-auto
+$ ./certbot-auto certonly --standalone \
+ --standalone-supported-challenges http-01 \
+ --email your@email.address \
+ -d hass-example.duckdns.org
```
If you're using Docker, run the following command to generate the required keys:
```bash
sudo mkdir /etc/letsencrypt /var/lib/letsencrypt
-sudo docker run -it --rm -p 443:443 -p 80:80 --name letsencrypt \
+sudo docker run -it --rm -p 80:80 --name certbot \
-v "/etc/letsencrypt:/etc/letsencrypt" \
-v "/var/lib/letsencrypt:/var/lib/letsencrypt" \
quay.io/letsencrypt/letsencrypt:latest certonly \
- --email your@e-mail.address -d hass-example.duckdns.org
+ --standalone --standalone-supported-challenges http-01 \
+ --email your@email.address -d hass-example.duckdns.org
```
-With either method your certificate will be generated and put in the directory `/etc/letsencrypt/live/hass-example.duckdns.org`. As the lifetime is only 90 days, you will have to repeat this every 90 days.
+With either method your certificate will be generated and put in the directory `/etc/letsencrypt/live/hass-example.duckdns.org`. As the lifetime is only 90 days, you will have to repeat this every 90 days. There's a special command to simplify renewing certificates:
+
+```bash
+./certbot-auto renew --quiet --no-self-upgrade --standalone \
+ --standalone-supported-challenges http-01
+```
### {% linkable_title Home Assistant %}
-Before updating the Home Assistant configuration, we have to update the port forwarding at your router config. We can drop the port forwarding for port `80` as we no longer care about unecrypted messages. Update port `443` to forward to port `8123` on the computer that will run Home Assistant.
+Before updating the Home Assistant configuration, we have to forward port `443` (https connections) to port `8123` on the computer that will run Home Assistant. Do this in your router configuration as previously done for port `80`.
The final step is to point Home Assistant at the generated certificates. Before you do this, make sure that the user running Home Assistant has read access to the folder that holds the certificates.
@@ -105,5 +105,7 @@ _Big thanks to Fabian Affolter for his help and feedback on this article._
[DuckDNS]: https://duckdns.org
[duckdns-install]: https://www.duckdns.org/install.jsp
[Let's Encrypt]: https://letsencrypt.org
-[letsencrypt-technology]: https://letsencrypt.org/howitworks/technology/
+[letsencrypt-technology]: https://letsencrypt.org/how-it-works/
+[letsencrypt-clients]: https://letsencrypt.org/docs/client-options/
[port-forward]: http://portforward.com
+[certbot]: https://certbot.eff.org/
diff --git a/source/_posts/2016-06-08-super-fast-web-enocean-lirc.markdown b/source/_posts/2016-06-08-super-fast-web-enocean-lirc.markdown
index 110d6f789b2..332cc9822d9 100644
--- a/source/_posts/2016-06-08-super-fast-web-enocean-lirc.markdown
+++ b/source/_posts/2016-06-08-super-fast-web-enocean-lirc.markdown
@@ -41,7 +41,32 @@ Alright, time for the changes:
- Our work in the WSGI stack is not fully done yet. We still have a minor issues where retrieving the error log in the about screen can raise an encoding error
- The API used to incorrectly accept a JSON body with form-url-encoded headers. Our cURL examples on the website used to be wrong and have [been updated].
+ - Make sure your configuration.yaml file contains `frontend:` to serve the frontend
+### Hotfixes 0.21.1 and 0.21.2
+
+We released two hotfixes to address some issues that couldn't wait till the next release.
+
+##### 0.21.1 - June 12
+
+ - Add eventlet to base requirements to resolve some installation issues ([@balloob])
+ - GTFS will filter out routes in the wrong direction ([@imrehg])
+ - Recover from rare error condition from LIRC ([@partofthething])
+ - Z-Wave autoheal will no longer raise exception ([@balloob])
+ - Alexa will now execute the script before making reply ([@balloob])
+ - Fix MJPEG camera streaming ([@stjohnjohnson])
+ - Fix frontend in older browsers ([@balloob])
+ - Fix history in more info dialog being cut off ([@balloob])
+
+##### 0.21.2 - June 15
+
+ - Fix input_select calling the set_option service again when changed ([@persandstrom])
+ - Fix more info dialog not being able to open on Safari ([@balloob])
+ - Add support for OPTIONS HTTP command to get CORS working ([@JshWright])
+
+[@stjohnjohnson]: https://github.com/stjohnjohnson
+[@imrehg]: https://github.com/imrehg
+[@persandstrom]: https://github.com/persandstrom
[@armills]: https://github.com/armills
[@balloob]: https://github.com/balloob
[@Bart274]: https://github.com/Bart274
diff --git a/source/_posts/2016-06-13-home-assistant-at-pycon-2016.markdown b/source/_posts/2016-06-13-home-assistant-at-pycon-2016.markdown
new file mode 100644
index 00000000000..18de1b3c258
--- /dev/null
+++ b/source/_posts/2016-06-13-home-assistant-at-pycon-2016.markdown
@@ -0,0 +1,53 @@
+---
+layout: post
+title: "Home Assistant at PyCon 2016"
+description: "A wrap up of what our developers were up to during PyCon 2016."
+date: 2016-06-13 01:06:00 +0000
+date_formatted: "June 13, 2016"
+author: Paulus Schoutsen
+author_twitter: balloob
+comments: true
+categories: Video
+og_image: /images/blog/2016-06-pycon/crew.jpg
+---
+
+It's been already almost two weeks ago that a few of the Home Assistant developers headed towards Portland for [PyCon 2016] - the conference about everything Python. We were there to learn all the nifty tricks to make our code better but most of all, to talk Home Automation.
+
+
+
+ Couple of Home Assistant devs. Left to right: [Paulus (@balloob)], [Alex (@infamy)], [Ryan (@rmkraus)].
+
+
+On Monday I (Paulus) gave a presentation about Home Assistant to an audience of over 400 people! It was a bit scary at first but after a couple of minutes it went all great including some great questions afterwards. Slides can be found [here][slides] and the talk is embedded right below:
+
+
+VIDEO
+
+
+One of the things that really impressed me was the amount of people that approached us to tell how they love Home Assistant, how it has replaced their previous solution, how they enjoyed contributing to Home Assistant and how helpful our community is. It makes me proud of Home Assistant and especially our community.
+
+
+PyCon has a few great concepts that I haven't seen at other conferences: open spaces and sprints. Open spaces give anyone the opportunity to get a room and host a session for an hour to talk about any topic. Sprints happen after the conference part of PyCon is over. For four days there are rooms available for participants to get together and hack on their favorite open source projects.
+
+My talk had limited time for Q&A so open spaces offered a great opportunity to get all pending questions answered and connect with the commmunity. There was more interest after the first day so we ended up hosting another open space on the second day.
+
+
+
+We've had such positive reception on our open spaces that [Jonathan Baginski][@jbags81] decided to repeat it online. We will be hosting a free online webinar [Home Assistant Support 101 - Getting around in Home Assistant][webinar] later this month. Make sure to RSVP.
+
+After the conference part of PyCon was over we spent one extra day to host a Home Assistant sprint. This allowed us to help people get started with hacking on Home Assistant which lead to some great contributions.
+
+
+
+ Home Assistant sprint group photo.
+
+
+I've had a really great time at PyCon. It was awesome to meet everyone in person and I hope to see many of you next year!
+
+[PyCon 2016]: https://us.pycon.org/2016/
+[Paulus (@balloob)]: https://github.com/balloob/
+[Alex (@infamy)]: https://github.com/infamy/
+[Ryan (@rmkraus)]: https://github.com/rmkraus/
+[@jbags81]: https://github.com/jbags81/
+[slides]: https://docs.google.com/presentation/d/1F1pGOoSf0dD79Dl5dgys0ll7xiuIA4XiQeNeJ-xlqMg/edit
+[webinar]: https://www.eventbrite.com/e/home-assistant-support-101-getting-around-in-home-assistant-tickets-25943868810
diff --git a/source/demo/core.js b/source/demo/core.js
index d3b32bf1226..b6a65500a3b 100644
--- a/source/demo/core.js
+++ b/source/demo/core.js
@@ -1,5 +1,5 @@
-!function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,e,n){Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:n})},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=134)}([,function(t,e,n){!function(e,n){t.exports=n()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return t[r].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}Object.defineProperty(e,"__esModule",{value:!0}),n(1);var i=n(2),o=r(i),u=n(6),a=r(u),s=n(3),c=r(s),f=n(5),l=n(11),h=n(10),_=n(7),d=r(_);e["default"]={Reactor:a["default"],Store:o["default"],Immutable:c["default"],isKeyPath:l.isKeyPath,isGetter:h.isGetter,toJS:f.toJS,toImmutable:f.toImmutable,isImmutable:f.isImmutable,createReactMixin:d["default"]},t.exports=e["default"]},function(t,e){"use strict";try{window.console&&console.log||(console={log:function(){},debug:function(){},info:function(){},warn:function(){},error:function(){}})}catch(n){}},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t){return t instanceof c}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var n=0;ni;i++)r[i]=t[i+e];return r}function o(t){return void 0===t.size&&(t.size=t.__iterate(a)),t.size}function u(t,e){if("number"!=typeof e){var n=+e;if(""+n!==e)return NaN;e=n}return 0>e?o(t)+e:e}function a(){return!0}function s(t,e,n){return(0===t||void 0!==n&&-n>=t)&&(void 0===e||void 0!==n&&e>=n)}function c(t,e){return l(t,e,0)}function f(t,e){return l(t,e,e)}function l(t,e,n){return void 0===t?n:0>t?Math.max(0,e+t):void 0===e?t:Math.min(e,t)}function h(t){return v(t)?t:C(t)}function _(t){return y(t)?t:M(t)}function d(t){return m(t)?t:k(t)}function p(t){return v(t)&&!g(t)?t:R(t)}function v(t){return!(!t||!t[pn])}function y(t){return!(!t||!t[vn])}function m(t){return!(!t||!t[yn])}function g(t){return y(t)||m(t)}function S(t){return!(!t||!t[mn])}function b(t){this.next=t}function w(t,e,n,r){var i=0===t?e:1===t?n:[e,n];return r?r.value=i:r={value:i,done:!1},r}function E(){return{value:void 0,done:!0}}function I(t){return!!A(t)}function T(t){return t&&"function"==typeof t.next}function O(t){var e=A(t);return e&&e.call(t)}function A(t){var e=t&&(wn&&t[wn]||t[En]);return"function"==typeof e?e:void 0}function D(t){return t&&"number"==typeof t.length}function C(t){return null===t||void 0===t?H():v(t)?t.toSeq():V(t)}function M(t){return null===t||void 0===t?H().toKeyedSeq():v(t)?y(t)?t.toSeq():t.fromEntrySeq():U(t)}function k(t){return null===t||void 0===t?H():v(t)?y(t)?t.entrySeq():t.toIndexedSeq():x(t)}function R(t){return(null===t||void 0===t?H():v(t)?y(t)?t.entrySeq():t:x(t)).toSetSeq()}function z(t){this._array=t,this.size=t.length}function L(t){var e=Object.keys(t);this._object=t,this._keys=e,this.size=e.length}function j(t){this._iterable=t,this.size=t.length||t.size}function N(t){this._iterator=t,this._iteratorCache=[]}function P(t){return!(!t||!t[Tn])}function H(){return On||(On=new z([]))}function U(t){var e=Array.isArray(t)?new z(t).fromEntrySeq():T(t)?new N(t).fromEntrySeq():I(t)?new j(t).fromEntrySeq():"object"==typeof t?new L(t):void 0;if(!e)throw new TypeError("Expected Array or iterable object of [k, v] entries, or keyed object: "+t);return e}function x(t){var e=q(t);if(!e)throw new TypeError("Expected Array or iterable object of values: "+t);return e}function V(t){var e=q(t)||"object"==typeof t&&new L(t);if(!e)throw new TypeError("Expected Array or iterable object of values, or keyed object: "+t);return e}function q(t){return D(t)?new z(t):T(t)?new N(t):I(t)?new j(t):void 0}function G(t,e,n,r){var i=t._cache;if(i){for(var o=i.length-1,u=0;o>=u;u++){var a=i[n?o-u:u];if(e(a[1],r?a[0]:u,t)===!1)return u+1}return u}return t.__iterateUncached(e,n)}function F(t,e,n,r){var i=t._cache;if(i){var o=i.length-1,u=0;return new b(function(){var t=i[n?o-u:u];return u++>o?E():w(e,r?t[0]:u-1,t[1])})}return t.__iteratorUncached(e,n)}function K(){throw TypeError("Abstract")}function Y(){}function B(){}function J(){}function W(t,e){if(t===e||t!==t&&e!==e)return!0;if(!t||!e)return!1;if("function"==typeof t.valueOf&&"function"==typeof e.valueOf){if(t=t.valueOf(),e=e.valueOf(),t===e||t!==t&&e!==e)return!0;if(!t||!e)return!1}return!("function"!=typeof t.equals||"function"!=typeof e.equals||!t.equals(e))}function Z(t,e){return e?X(e,t,"",{"":t}):Q(t)}function X(t,e,n,r){return Array.isArray(e)?t.call(r,n,k(e).map(function(n,r){return X(t,n,r,e)})):$(e)?t.call(r,n,M(e).map(function(n,r){return X(t,n,r,e)})):e}function Q(t){return Array.isArray(t)?k(t).map(Q).toList():$(t)?M(t).map(Q).toMap():t}function $(t){return t&&(t.constructor===Object||void 0===t.constructor)}function tt(t){return t>>>1&1073741824|3221225471&t}function et(t){if(t===!1||null===t||void 0===t)return 0;if("function"==typeof t.valueOf&&(t=t.valueOf(),t===!1||null===t||void 0===t))return 0;if(t===!0)return 1;var e=typeof t;if("number"===e){var n=0|t;for(n!==t&&(n^=4294967295*t);t>4294967295;)t/=4294967295,n^=t;return tt(n)}return"string"===e?t.length>Ln?nt(t):rt(t):"function"==typeof t.hashCode?t.hashCode():it(t)}function nt(t){var e=Pn[t];return void 0===e&&(e=rt(t),Nn===jn&&(Nn=0,Pn={}),Nn++,Pn[t]=e),e}function rt(t){for(var e=0,n=0;n0)switch(t.nodeType){case 1:return t.uniqueID;case 9:return t.documentElement&&t.documentElement.uniqueID}}function ut(t,e){if(!t)throw new Error(e)}function at(t){ut(t!==1/0,"Cannot perform this action with an infinite size.")}function st(t,e){this._iter=t,this._useKeys=e,this.size=t.size}function ct(t){this._iter=t,this.size=t.size}function ft(t){this._iter=t,this.size=t.size}function lt(t){this._iter=t,this.size=t.size}function ht(t){var e=zt(t);return e._iter=t,e.size=t.size,e.flip=function(){return t},e.reverse=function(){var e=t.reverse.apply(this);return e.flip=function(){return t.reverse()},e},e.has=function(e){return t.includes(e)},e.includes=function(e){return t.has(e)},e.cacheResult=Lt,e.__iterateUncached=function(e,n){var r=this;return t.__iterate(function(t,n){return e(n,t,r)!==!1},n)},e.__iteratorUncached=function(e,n){if(e===bn){var r=t.__iterator(e,n);return new b(function(){var t=r.next();if(!t.done){var e=t.value[0];t.value[0]=t.value[1],t.value[1]=e}return t})}return t.__iterator(e===Sn?gn:Sn,n)},e}function _t(t,e,n){var r=zt(t);return r.size=t.size,r.has=function(e){return t.has(e)},r.get=function(r,i){var o=t.get(r,hn);return o===hn?i:e.call(n,o,r,t)},r.__iterateUncached=function(r,i){var o=this;return t.__iterate(function(t,i,u){return r(e.call(n,t,i,u),i,o)!==!1},i)},r.__iteratorUncached=function(r,i){var o=t.__iterator(bn,i);return new b(function(){var i=o.next();if(i.done)return i;var u=i.value,a=u[0];return w(r,a,e.call(n,u[1],a,t),i)})},r}function dt(t,e){var n=zt(t);return n._iter=t,n.size=t.size,n.reverse=function(){return t},t.flip&&(n.flip=function(){var e=ht(t);return e.reverse=function(){return t.flip()},e}),n.get=function(n,r){return t.get(e?n:-1-n,r)},n.has=function(n){return t.has(e?n:-1-n)},n.includes=function(e){return t.includes(e)},n.cacheResult=Lt,n.__iterate=function(e,n){var r=this;return t.__iterate(function(t,n){return e(t,n,r)},!n)},n.__iterator=function(e,n){return t.__iterator(e,!n)},n}function pt(t,e,n,r){var i=zt(t);return r&&(i.has=function(r){var i=t.get(r,hn);return i!==hn&&!!e.call(n,i,r,t)},i.get=function(r,i){var o=t.get(r,hn);return o!==hn&&e.call(n,o,r,t)?o:i}),i.__iterateUncached=function(i,o){var u=this,a=0;return t.__iterate(function(t,o,s){return e.call(n,t,o,s)?(a++,i(t,r?o:a-1,u)):void 0},o),a},i.__iteratorUncached=function(i,o){var u=t.__iterator(bn,o),a=0;return new b(function(){for(;;){var o=u.next();if(o.done)return o;var s=o.value,c=s[0],f=s[1];if(e.call(n,f,c,t))return w(i,r?c:a++,f,o)}})},i}function vt(t,e,n){var r=Pt().asMutable();return t.__iterate(function(i,o){r.update(e.call(n,i,o,t),0,function(t){return t+1})}),r.asImmutable()}function yt(t,e,n){var r=y(t),i=(S(t)?Ee():Pt()).asMutable();t.__iterate(function(o,u){i.update(e.call(n,o,u,t),function(t){return t=t||[],t.push(r?[u,o]:o),t})});var o=Rt(t);return i.map(function(e){return Ct(t,o(e))})}function mt(t,e,n,r){var i=t.size;if(void 0!==e&&(e=0|e),void 0!==n&&(n=0|n),s(e,n,i))return t;var o=c(e,i),a=f(n,i);if(o!==o||a!==a)return mt(t.toSeq().cacheResult(),e,n,r);var l,h=a-o;h===h&&(l=0>h?0:h);var _=zt(t);return _.size=0===l?l:t.size&&l||void 0,!r&&P(t)&&l>=0&&(_.get=function(e,n){return e=u(this,e),e>=0&&l>e?t.get(e+o,n):n}),_.__iterateUncached=function(e,n){var i=this;if(0===l)return 0;if(n)return this.cacheResult().__iterate(e,n);var u=0,a=!0,s=0;return t.__iterate(function(t,n){return a&&(a=u++l)return E();var t=i.next();return r||e===Sn?t:e===gn?w(e,a-1,void 0,t):w(e,a-1,t.value[1],t)})},_}function gt(t,e,n){var r=zt(t);return r.__iterateUncached=function(r,i){var o=this;if(i)return this.cacheResult().__iterate(r,i);var u=0;return t.__iterate(function(t,i,a){return e.call(n,t,i,a)&&++u&&r(t,i,o)}),u},r.__iteratorUncached=function(r,i){var o=this;if(i)return this.cacheResult().__iterator(r,i);var u=t.__iterator(bn,i),a=!0;return new b(function(){if(!a)return E();var t=u.next();if(t.done)return t;var i=t.value,s=i[0],c=i[1];return e.call(n,c,s,o)?r===bn?t:w(r,s,c,t):(a=!1,E())})},r}function St(t,e,n,r){var i=zt(t);return i.__iterateUncached=function(i,o){var u=this;if(o)return this.cacheResult().__iterate(i,o);var a=!0,s=0;return t.__iterate(function(t,o,c){return a&&(a=e.call(n,t,o,c))?void 0:(s++,i(t,r?o:s-1,u))}),s},i.__iteratorUncached=function(i,o){var u=this;if(o)return this.cacheResult().__iterator(i,o);var a=t.__iterator(bn,o),s=!0,c=0;return new b(function(){var t,o,f;do{if(t=a.next(),t.done)return r||i===Sn?t:i===gn?w(i,c++,void 0,t):w(i,c++,t.value[1],t);var l=t.value;o=l[0],f=l[1],s&&(s=e.call(n,f,o,u))}while(s);return i===bn?t:w(i,o,f,t)})},i}function bt(t,e){var n=y(t),r=[t].concat(e).map(function(t){return v(t)?n&&(t=_(t)):t=n?U(t):x(Array.isArray(t)?t:[t]),t}).filter(function(t){return 0!==t.size});if(0===r.length)return t;if(1===r.length){var i=r[0];if(i===t||n&&y(i)||m(t)&&m(i))return i}var o=new z(r);return n?o=o.toKeyedSeq():m(t)||(o=o.toSetSeq()),o=o.flatten(!0),o.size=r.reduce(function(t,e){if(void 0!==t){var n=e.size;if(void 0!==n)return t+n}},0),o}function wt(t,e,n){var r=zt(t);return r.__iterateUncached=function(r,i){function o(t,s){var c=this;t.__iterate(function(t,i){return(!e||e>s)&&v(t)?o(t,s+1):r(t,n?i:u++,c)===!1&&(a=!0),!a},i)}var u=0,a=!1;return o(t,0),u},r.__iteratorUncached=function(r,i){var o=t.__iterator(r,i),u=[],a=0;return new b(function(){for(;o;){var t=o.next();if(t.done===!1){var s=t.value;if(r===bn&&(s=s[1]),e&&!(u.length0}function Dt(t,e,n){var r=zt(t);return r.size=new z(n).map(function(t){return t.size}).min(),r.__iterate=function(t,e){for(var n,r=this.__iterator(Sn,e),i=0;!(n=r.next()).done&&t(n.value,i++,this)!==!1;);return i},r.__iteratorUncached=function(t,r){var i=n.map(function(t){return t=h(t),O(r?t.reverse():t)}),o=0,u=!1;return new b(function(){var n;return u||(n=i.map(function(t){return t.next()}),u=n.some(function(t){return t.done})),u?E():w(t,o++,e.apply(null,n.map(function(t){return t.value})))})},r}function Ct(t,e){return P(t)?e:t.constructor(e)}function Mt(t){if(t!==Object(t))throw new TypeError("Expected [K, V] tuple: "+t)}function kt(t){return at(t.size),o(t)}function Rt(t){return y(t)?_:m(t)?d:p}function zt(t){return Object.create((y(t)?M:m(t)?k:R).prototype)}function Lt(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):C.prototype.cacheResult.call(this)}function jt(t,e){return t>e?1:e>t?-1:0}function Nt(t){var e=O(t);if(!e){if(!D(t))throw new TypeError("Expected iterable or array-like: "+t);e=O(h(t))}return e}function Pt(t){return null===t||void 0===t?Jt():Ht(t)&&!S(t)?t:Jt().withMutations(function(e){var n=_(t);at(n.size),n.forEach(function(t,n){return e.set(n,t)})})}function Ht(t){return!(!t||!t[Hn])}function Ut(t,e){this.ownerID=t,this.entries=e}function xt(t,e,n){this.ownerID=t,this.bitmap=e,this.nodes=n}function Vt(t,e,n){this.ownerID=t,this.count=e,this.nodes=n}function qt(t,e,n){this.ownerID=t,this.keyHash=e,this.entries=n}function Gt(t,e,n){this.ownerID=t,this.keyHash=e,this.entry=n}function Ft(t,e,n){this._type=e,this._reverse=n,this._stack=t._root&&Yt(t._root)}function Kt(t,e){return w(t,e[0],e[1])}function Yt(t,e){return{node:t,index:0,__prev:e}}function Bt(t,e,n,r){var i=Object.create(Un);return i.size=t,i._root=e,i.__ownerID=n,i.__hash=r,i.__altered=!1,i}function Jt(){return xn||(xn=Bt(0))}function Wt(t,n,r){var i,o;if(t._root){var u=e(_n),a=e(dn);if(i=Zt(t._root,t.__ownerID,0,void 0,n,r,u,a),!a.value)return t;o=t.size+(u.value?r===hn?-1:1:0)}else{if(r===hn)return t;o=1,i=new Ut(t.__ownerID,[[n,r]])}return t.__ownerID?(t.size=o,t._root=i,t.__hash=void 0,t.__altered=!0,t):i?Bt(o,i):Jt()}function Zt(t,e,r,i,o,u,a,s){return t?t.update(e,r,i,o,u,a,s):u===hn?t:(n(s),n(a),new Gt(e,i,[o,u]))}function Xt(t){return t.constructor===Gt||t.constructor===qt}function Qt(t,e,n,r,i){if(t.keyHash===r)return new qt(e,r,[t.entry,i]);var o,u=(0===n?t.keyHash:t.keyHash>>>n)&ln,a=(0===n?r:r>>>n)&ln,s=u===a?[Qt(t,e,n+cn,r,i)]:(o=new Gt(e,r,i),a>u?[t,o]:[o,t]);return new xt(e,1<a;a++,s<<=1){var f=e[a];void 0!==f&&a!==r&&(i|=s,u[o++]=f)}return new xt(t,i,u)}function ee(t,e,n,r,i){for(var o=0,u=new Array(fn),a=0;0!==n;a++,n>>>=1)u[a]=1&n?e[o++]:void 0;return u[r]=i,new Vt(t,o+1,u)}function ne(t,e,n){for(var r=[],i=0;i>1&1431655765,t=(858993459&t)+(t>>2&858993459),t=t+(t>>4)&252645135,t+=t>>8,t+=t>>16,127&t}function ae(t,e,n,r){var o=r?t:i(t);return o[e]=n,o}function se(t,e,n,r){var i=t.length+1;if(r&&e+1===i)return t[e]=n,t;for(var o=new Array(i),u=0,a=0;i>a;a++)a===e?(o[a]=n,u=-1):o[a]=t[a+u];return o}function ce(t,e,n){var r=t.length-1;if(n&&e===r)return t.pop(),t;for(var i=new Array(r),o=0,u=0;r>u;u++)u===e&&(o=1),i[u]=t[u+o];return i}function fe(t){var e=pe();if(null===t||void 0===t)return e;if(le(t))return t;var n=d(t),r=n.size;return 0===r?e:(at(r),r>0&&fn>r?de(0,r,cn,null,new he(n.toArray())):e.withMutations(function(t){t.setSize(r),n.forEach(function(e,n){return t.set(n,e)})}))}function le(t){return!(!t||!t[Fn])}function he(t,e){this.array=t,this.ownerID=e}function _e(t,e){function n(t,e,n){return 0===e?r(t,n):i(t,e,n)}function r(t,n){var r=n===a?s&&s.array:t&&t.array,i=n>o?0:o-n,c=u-n;return c>fn&&(c=fn),function(){if(i===c)return Bn;var t=e?--c:i++;return r&&r[t]}}function i(t,r,i){var a,s=t&&t.array,c=i>o?0:o-i>>r,f=(u-i>>r)+1;return f>fn&&(f=fn),function(){for(;;){if(a){var t=a();if(t!==Bn)return t;a=null}if(c===f)return Bn;var o=e?--f:c++;a=n(s&&s[o],r-cn,i+(o<=t.size||0>n)return t.withMutations(function(t){0>n?Se(t,n).set(0,r):Se(t,0,n+1).set(n,r)});n+=t._origin;var i=t._tail,o=t._root,a=e(dn);return n>=we(t._capacity)?i=ye(i,t.__ownerID,0,n,r,a):o=ye(o,t.__ownerID,t._level,n,r,a),a.value?t.__ownerID?(t._root=o,t._tail=i,t.__hash=void 0,t.__altered=!0,t):de(t._origin,t._capacity,t._level,o,i):t}function ye(t,e,r,i,o,u){var a=i>>>r&ln,s=t&&a0){var f=t&&t.array[a],l=ye(f,e,r-cn,i,o,u);return l===f?t:(c=me(t,e),c.array[a]=l,c)}return s&&t.array[a]===o?t:(n(u),c=me(t,e),void 0===o&&a===c.array.length-1?c.array.pop():c.array[a]=o,c)}function me(t,e){return e&&t&&e===t.ownerID?t:new he(t?t.array.slice():[],e)}function ge(t,e){if(e>=we(t._capacity))return t._tail;if(e<1<0;)n=n.array[e>>>r&ln],r-=cn;return n}}function Se(t,e,n){void 0!==e&&(e=0|e),void 0!==n&&(n=0|n);var i=t.__ownerID||new r,o=t._origin,u=t._capacity,a=o+e,s=void 0===n?u:0>n?u+n:o+n;if(a===o&&s===u)return t;if(a>=s)return t.clear();for(var c=t._level,f=t._root,l=0;0>a+l;)f=new he(f&&f.array.length?[void 0,f]:[],i),c+=cn,l+=1<=1<_?ge(t,s-1):_>h?new he([],i):d;if(d&&_>h&&u>a&&d.array.length){f=me(f,i);for(var v=f,y=c;y>cn;y-=cn){var m=h>>>y&ln;v=v.array[m]=me(v.array[m],i)}v.array[h>>>cn&ln]=d}if(u>s&&(p=p&&p.removeAfter(i,0,s)),a>=_)a-=_,s-=_,c=cn,f=null,p=p&&p.removeBefore(i,0,a);else if(a>o||h>_){for(l=0;f;){var g=a>>>c&ln;if(g!==_>>>c&ln)break;g&&(l+=(1<o&&(f=f.removeBefore(i,c,a-l)),f&&h>_&&(f=f.removeAfter(i,c,_-l)),l&&(a-=l,s-=l)}return t.__ownerID?(t.size=s-a,t._origin=a,t._capacity=s,t._level=c,t._root=f,t._tail=p,t.__hash=void 0,t.__altered=!0,t):de(a,s,c,f,p)}function be(t,e,n){for(var r=[],i=0,o=0;oi&&(i=a.size),v(u)||(a=a.map(function(t){return Z(t)})),r.push(a)}return i>t.size&&(t=t.setSize(i)),ie(t,e,r)}function we(t){return fn>t?0:t-1>>>cn<=fn&&u.size>=2*o.size?(i=u.filter(function(t,e){return void 0!==t&&a!==e}),r=i.toKeyedSeq().map(function(t){return t[0]}).flip().toMap(),t.__ownerID&&(r.__ownerID=i.__ownerID=t.__ownerID)):(r=o.remove(e),i=a===u.size-1?u.pop():u.set(a,void 0))}else if(s){if(n===u.get(a)[1])return t;r=o,i=u.set(a,[e,n])}else r=o.set(e,u.size),i=u.set(u.size,[e,n]);return t.__ownerID?(t.size=r.size,t._map=r,t._list=i,t.__hash=void 0,t):Te(r,i)}function De(t){return null===t||void 0===t?ke():Ce(t)?t:ke().unshiftAll(t)}function Ce(t){return!(!t||!t[Wn])}function Me(t,e,n,r){var i=Object.create(Zn);return i.size=t,i._head=e,i.__ownerID=n,i.__hash=r,i.__altered=!1,i}function ke(){return Xn||(Xn=Me(0))}function Re(t){return null===t||void 0===t?Ne():ze(t)&&!S(t)?t:Ne().withMutations(function(e){var n=p(t);at(n.size),n.forEach(function(t){return e.add(t)})})}function ze(t){return!(!t||!t[Qn])}function Le(t,e){return t.__ownerID?(t.size=e.size,t._map=e,t):e===t._map?t:0===e.size?t.__empty():t.__make(e)}function je(t,e){var n=Object.create($n);return n.size=t?t.size:0,n._map=t,n.__ownerID=e,n}function Ne(){return tr||(tr=je(Jt()))}function Pe(t){return null===t||void 0===t?xe():He(t)?t:xe().withMutations(function(e){var n=p(t);at(n.size),n.forEach(function(t){return e.add(t)})})}function He(t){return ze(t)&&S(t)}function Ue(t,e){var n=Object.create(er);return n.size=t?t.size:0,n._map=t,n.__ownerID=e,n}function xe(){return nr||(nr=Ue(Oe()))}function Ve(t,e){var n,r=function(o){if(o instanceof r)return o;if(!(this instanceof r))return new r(o);if(!n){n=!0;var u=Object.keys(t);Fe(i,u),i.size=u.length,i._name=e,i._keys=u,i._defaultValues=t}this._map=Pt(o)},i=r.prototype=Object.create(rr);return i.constructor=r,r}function qe(t,e,n){var r=Object.create(Object.getPrototypeOf(t));return r._map=e,r.__ownerID=n,r}function Ge(t){return t._name||t.constructor.name||"Record"}function Fe(t,e){try{e.forEach(Ke.bind(void 0,t))}catch(n){}}function Ke(t,e){Object.defineProperty(t,e,{get:function(){return this.get(e)},set:function(t){ut(this.__ownerID,"Cannot set on an immutable record."),this.set(e,t)}})}function Ye(t,e){if(t===e)return!0;if(!v(e)||void 0!==t.size&&void 0!==e.size&&t.size!==e.size||void 0!==t.__hash&&void 0!==e.__hash&&t.__hash!==e.__hash||y(t)!==y(e)||m(t)!==m(e)||S(t)!==S(e))return!1;if(0===t.size&&0===e.size)return!0;var n=!g(t);if(S(t)){var r=t.entries();return e.every(function(t,e){var i=r.next().value;return i&&W(i[1],t)&&(n||W(i[0],e))})&&r.next().done}var i=!1;if(void 0===t.size)if(void 0===e.size)"function"==typeof t.cacheResult&&t.cacheResult();else{i=!0;var o=t;t=e,e=o}var u=!0,a=e.__iterate(function(e,r){return(n?t.has(e):i?W(e,t.get(r,hn)):W(t.get(r,hn),e))?void 0:(u=!1,!1)});return u&&t.size===a}function Be(t,e,n){if(!(this instanceof Be))return new Be(t,e,n);if(ut(0!==n,"Cannot step a Range by 0"),t=t||0,void 0===e&&(e=1/0),n=void 0===n?1:Math.abs(n),t>e&&(n=-n),this._start=t,this._end=e,this._step=n,this.size=Math.max(0,Math.ceil((e-t)/n-1)+1),0===this.size){if(ir)return ir;ir=this}}function Je(t,e){if(!(this instanceof Je))return new Je(t,e);if(this._value=t,this.size=void 0===e?1/0:Math.max(0,e),0===this.size){if(or)return or;or=this}}function We(t,e){var n=function(n){t.prototype[n]=e[n]};return Object.keys(e).forEach(n),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(e).forEach(n),t}function Ze(t,e){return e}function Xe(t,e){return[e,t]}function Qe(t){return function(){return!t.apply(this,arguments)}}function $e(t){return function(){return-t.apply(this,arguments)}}function tn(t){return"string"==typeof t?JSON.stringify(t):t}function en(){return i(arguments)}function nn(t,e){return e>t?1:t>e?-1:0}function rn(t){if(t.size===1/0)return 0;var e=S(t),n=y(t),r=e?1:0,i=t.__iterate(n?e?function(t,e){r=31*r+un(et(t),et(e))|0}:function(t,e){r=r+un(et(t),et(e))|0}:e?function(t){r=31*r+et(t)|0}:function(t){r=r+et(t)|0});return on(i,r)}function on(t,e){return e=Dn(e,3432918353),e=Dn(e<<15|e>>>-15,461845907),e=Dn(e<<13|e>>>-13,5),e=(e+3864292196|0)^t,e=Dn(e^e>>>16,2246822507),e=Dn(e^e>>>13,3266489909),e=tt(e^e>>>16)}function un(t,e){return t^e+2654435769+(t<<6)+(t>>2)|0}var an=Array.prototype.slice,sn="delete",cn=5,fn=1<=i;i++)if(t(n[e?r-i:i],i,this)===!1)return i+1;return i},z.prototype.__iterator=function(t,e){var n=this._array,r=n.length-1,i=0;return new b(function(){return i>r?E():w(t,i,n[e?r-i++:i++])})},t(L,M),L.prototype.get=function(t,e){return void 0===e||this.has(t)?this._object[t]:e},L.prototype.has=function(t){return this._object.hasOwnProperty(t)},L.prototype.__iterate=function(t,e){for(var n=this._object,r=this._keys,i=r.length-1,o=0;i>=o;o++){var u=r[e?i-o:o];if(t(n[u],u,this)===!1)return o+1}return o},L.prototype.__iterator=function(t,e){var n=this._object,r=this._keys,i=r.length-1,o=0;return new b(function(){var u=r[e?i-o:o];return o++>i?E():w(t,u,n[u])})},L.prototype[mn]=!0,t(j,k),j.prototype.__iterateUncached=function(t,e){if(e)return this.cacheResult().__iterate(t,e);var n=this._iterable,r=O(n),i=0;if(T(r))for(var o;!(o=r.next()).done&&t(o.value,i++,this)!==!1;);return i},j.prototype.__iteratorUncached=function(t,e){if(e)return this.cacheResult().__iterator(t,e);var n=this._iterable,r=O(n);if(!T(r))return new b(E);var i=0;return new b(function(){var e=r.next();return e.done?e:w(t,i++,e.value)})},t(N,k),N.prototype.__iterateUncached=function(t,e){if(e)return this.cacheResult().__iterate(t,e);for(var n=this._iterator,r=this._iteratorCache,i=0;i=r.length){var e=n.next();if(e.done)return e;r[i]=e.value}return w(t,i,r[i++])})};var On;t(K,h),t(Y,K),t(B,K),t(J,K),K.Keyed=Y,K.Indexed=B,K.Set=J;var An,Dn="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(t,e){t=0|t,e=0|e;var n=65535&t,r=65535&e;return n*r+((t>>>16)*r+n*(e>>>16)<<16>>>0)|0},Cn=Object.isExtensible,Mn=function(){try{return Object.defineProperty({},"@",{}),!0}catch(t){return!1}}(),kn="function"==typeof WeakMap;kn&&(An=new WeakMap);var Rn=0,zn="__immutablehash__";"function"==typeof Symbol&&(zn=Symbol(zn));var Ln=16,jn=255,Nn=0,Pn={};t(st,M),st.prototype.get=function(t,e){return this._iter.get(t,e)},st.prototype.has=function(t){return this._iter.has(t)},st.prototype.valueSeq=function(){return this._iter.valueSeq()},st.prototype.reverse=function(){var t=this,e=dt(this,!0);return this._useKeys||(e.valueSeq=function(){return t._iter.toSeq().reverse()}),e},st.prototype.map=function(t,e){var n=this,r=_t(this,t,e);return this._useKeys||(r.valueSeq=function(){return n._iter.toSeq().map(t,e)}),r},st.prototype.__iterate=function(t,e){var n,r=this;return this._iter.__iterate(this._useKeys?function(e,n){return t(e,n,r)}:(n=e?kt(this):0,function(i){return t(i,e?--n:n++,r)}),e)},st.prototype.__iterator=function(t,e){if(this._useKeys)return this._iter.__iterator(t,e);var n=this._iter.__iterator(Sn,e),r=e?kt(this):0;return new b(function(){var i=n.next();return i.done?i:w(t,e?--r:r++,i.value,i)})},st.prototype[mn]=!0,t(ct,k),ct.prototype.includes=function(t){return this._iter.includes(t)},ct.prototype.__iterate=function(t,e){var n=this,r=0;return this._iter.__iterate(function(e){return t(e,r++,n)},e)},ct.prototype.__iterator=function(t,e){var n=this._iter.__iterator(Sn,e),r=0;return new b(function(){var e=n.next();return e.done?e:w(t,r++,e.value,e)})},t(ft,R),ft.prototype.has=function(t){return this._iter.includes(t)},ft.prototype.__iterate=function(t,e){var n=this;return this._iter.__iterate(function(e){return t(e,e,n)},e)},ft.prototype.__iterator=function(t,e){var n=this._iter.__iterator(Sn,e);return new b(function(){var e=n.next();return e.done?e:w(t,e.value,e.value,e)})},t(lt,M),lt.prototype.entrySeq=function(){return this._iter.toSeq()},lt.prototype.__iterate=function(t,e){var n=this;return this._iter.__iterate(function(e){
-if(e){Mt(e);var r=v(e);return t(r?e.get(1):e[1],r?e.get(0):e[0],n)}},e)},lt.prototype.__iterator=function(t,e){var n=this._iter.__iterator(Sn,e);return new b(function(){for(;;){var e=n.next();if(e.done)return e;var r=e.value;if(r){Mt(r);var i=v(r);return w(t,i?r.get(0):r[0],i?r.get(1):r[1],e)}}})},ct.prototype.cacheResult=st.prototype.cacheResult=ft.prototype.cacheResult=lt.prototype.cacheResult=Lt,t(Pt,Y),Pt.prototype.toString=function(){return this.__toString("Map {","}")},Pt.prototype.get=function(t,e){return this._root?this._root.get(0,void 0,t,e):e},Pt.prototype.set=function(t,e){return Wt(this,t,e)},Pt.prototype.setIn=function(t,e){return this.updateIn(t,hn,function(){return e})},Pt.prototype.remove=function(t){return Wt(this,t,hn)},Pt.prototype.deleteIn=function(t){return this.updateIn(t,function(){return hn})},Pt.prototype.update=function(t,e,n){return 1===arguments.length?t(this):this.updateIn([t],e,n)},Pt.prototype.updateIn=function(t,e,n){n||(n=e,e=void 0);var r=oe(this,Nt(t),e,n);return r===hn?void 0:r},Pt.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Jt()},Pt.prototype.merge=function(){return ne(this,void 0,arguments)},Pt.prototype.mergeWith=function(t){var e=an.call(arguments,1);return ne(this,t,e)},Pt.prototype.mergeIn=function(t){var e=an.call(arguments,1);return this.updateIn(t,Jt(),function(t){return"function"==typeof t.merge?t.merge.apply(t,e):e[e.length-1]})},Pt.prototype.mergeDeep=function(){return ne(this,re(void 0),arguments)},Pt.prototype.mergeDeepWith=function(t){var e=an.call(arguments,1);return ne(this,re(t),e)},Pt.prototype.mergeDeepIn=function(t){var e=an.call(arguments,1);return this.updateIn(t,Jt(),function(t){return"function"==typeof t.mergeDeep?t.mergeDeep.apply(t,e):e[e.length-1]})},Pt.prototype.sort=function(t){return Ee(Tt(this,t))},Pt.prototype.sortBy=function(t,e){return Ee(Tt(this,e,t))},Pt.prototype.withMutations=function(t){var e=this.asMutable();return t(e),e.wasAltered()?e.__ensureOwner(this.__ownerID):this},Pt.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new r)},Pt.prototype.asImmutable=function(){return this.__ensureOwner()},Pt.prototype.wasAltered=function(){return this.__altered},Pt.prototype.__iterator=function(t,e){return new Ft(this,t,e)},Pt.prototype.__iterate=function(t,e){var n=this,r=0;return this._root&&this._root.iterate(function(e){return r++,t(e[1],e[0],n)},e),r},Pt.prototype.__ensureOwner=function(t){return t===this.__ownerID?this:t?Bt(this.size,this._root,t,this.__hash):(this.__ownerID=t,this.__altered=!1,this)},Pt.isMap=Ht;var Hn="@@__IMMUTABLE_MAP__@@",Un=Pt.prototype;Un[Hn]=!0,Un[sn]=Un.remove,Un.removeIn=Un.deleteIn,Ut.prototype.get=function(t,e,n,r){for(var i=this.entries,o=0,u=i.length;u>o;o++)if(W(n,i[o][0]))return i[o][1];return r},Ut.prototype.update=function(t,e,r,o,u,a,s){for(var c=u===hn,f=this.entries,l=0,h=f.length;h>l&&!W(o,f[l][0]);l++);var _=h>l;if(_?f[l][1]===u:c)return this;if(n(s),(c||!_)&&n(a),!c||1!==f.length){if(!_&&!c&&f.length>=Vn)return $t(t,f,o,u);var d=t&&t===this.ownerID,p=d?f:i(f);return _?c?l===h-1?p.pop():p[l]=p.pop():p[l]=[o,u]:p.push([o,u]),d?(this.entries=p,this):new Ut(t,p)}},xt.prototype.get=function(t,e,n,r){void 0===e&&(e=et(n));var i=1<<((0===t?e:e>>>t)&ln),o=this.bitmap;return 0===(o&i)?r:this.nodes[ue(o&i-1)].get(t+cn,e,n,r)},xt.prototype.update=function(t,e,n,r,i,o,u){void 0===n&&(n=et(r));var a=(0===e?n:n>>>e)&ln,s=1<=qn)return ee(t,h,c,a,d);if(f&&!d&&2===h.length&&Xt(h[1^l]))return h[1^l];if(f&&d&&1===h.length&&Xt(d))return d;var p=t&&t===this.ownerID,v=f?d?c:c^s:c|s,y=f?d?ae(h,l,d,p):ce(h,l,p):se(h,l,d,p);return p?(this.bitmap=v,this.nodes=y,this):new xt(t,v,y)},Vt.prototype.get=function(t,e,n,r){void 0===e&&(e=et(n));var i=(0===t?e:e>>>t)&ln,o=this.nodes[i];return o?o.get(t+cn,e,n,r):r},Vt.prototype.update=function(t,e,n,r,i,o,u){void 0===n&&(n=et(r));var a=(0===e?n:n>>>e)&ln,s=i===hn,c=this.nodes,f=c[a];if(s&&!f)return this;var l=Zt(f,t,e+cn,n,r,i,o,u);if(l===f)return this;var h=this.count;if(f){if(!l&&(h--,Gn>h))return te(t,c,h,a)}else h++;var _=t&&t===this.ownerID,d=ae(c,a,l,_);return _?(this.count=h,this.nodes=d,this):new Vt(t,h,d)},qt.prototype.get=function(t,e,n,r){for(var i=this.entries,o=0,u=i.length;u>o;o++)if(W(n,i[o][0]))return i[o][1];return r},qt.prototype.update=function(t,e,r,o,u,a,s){void 0===r&&(r=et(o));var c=u===hn;if(r!==this.keyHash)return c?this:(n(s),n(a),Qt(this,t,e,r,[o,u]));for(var f=this.entries,l=0,h=f.length;h>l&&!W(o,f[l][0]);l++);var _=h>l;if(_?f[l][1]===u:c)return this;if(n(s),(c||!_)&&n(a),c&&2===h)return new Gt(t,this.keyHash,f[1^l]);var d=t&&t===this.ownerID,p=d?f:i(f);return _?c?l===h-1?p.pop():p[l]=p.pop():p[l]=[o,u]:p.push([o,u]),d?(this.entries=p,this):new qt(t,this.keyHash,p)},Gt.prototype.get=function(t,e,n,r){return W(n,this.entry[0])?this.entry[1]:r},Gt.prototype.update=function(t,e,r,i,o,u,a){var s=o===hn,c=W(i,this.entry[0]);return(c?o===this.entry[1]:s)?this:(n(a),s?void n(u):c?t&&t===this.ownerID?(this.entry[1]=o,this):new Gt(t,this.keyHash,[i,o]):(n(u),Qt(this,t,e,et(i),[i,o])))},Ut.prototype.iterate=qt.prototype.iterate=function(t,e){for(var n=this.entries,r=0,i=n.length-1;i>=r;r++)if(t(n[e?i-r:r])===!1)return!1},xt.prototype.iterate=Vt.prototype.iterate=function(t,e){for(var n=this.nodes,r=0,i=n.length-1;i>=r;r++){var o=n[e?i-r:r];if(o&&o.iterate(t,e)===!1)return!1}},Gt.prototype.iterate=function(t,e){return t(this.entry)},t(Ft,b),Ft.prototype.next=function(){for(var t=this._type,e=this._stack;e;){var n,r=e.node,i=e.index++;if(r.entry){if(0===i)return Kt(t,r.entry)}else if(r.entries){if(n=r.entries.length-1,n>=i)return Kt(t,r.entries[this._reverse?n-i:i])}else if(n=r.nodes.length-1,n>=i){var o=r.nodes[this._reverse?n-i:i];if(o){if(o.entry)return Kt(t,o.entry);e=this._stack=Yt(o,e)}continue}e=this._stack=this._stack.__prev}return E()};var xn,Vn=fn/4,qn=fn/2,Gn=fn/4;t(fe,B),fe.of=function(){return this(arguments)},fe.prototype.toString=function(){return this.__toString("List [","]")},fe.prototype.get=function(t,e){if(t=u(this,t),t>=0&&t>>e&ln;if(r>=this.array.length)return new he([],t);var i,o=0===r;if(e>0){var u=this.array[r];if(i=u&&u.removeBefore(t,e-cn,n),i===u&&o)return this}if(o&&!i)return this;var a=me(this,t);if(!o)for(var s=0;r>s;s++)a.array[s]=void 0;return i&&(a.array[r]=i),a},he.prototype.removeAfter=function(t,e,n){if(n===(e?1<>>e&ln;if(r>=this.array.length)return this;var i;if(e>0){var o=this.array[r];if(i=o&&o.removeAfter(t,e-cn,n),i===o&&r===this.array.length-1)return this}var u=me(this,t);return u.array.splice(r+1),i&&(u.array[r]=i),u};var Yn,Bn={};t(Ee,Pt),Ee.of=function(){return this(arguments)},Ee.prototype.toString=function(){return this.__toString("OrderedMap {","}")},Ee.prototype.get=function(t,e){var n=this._map.get(t);return void 0!==n?this._list.get(n)[1]:e},Ee.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._map.clear(),this._list.clear(),this):Oe()},Ee.prototype.set=function(t,e){return Ae(this,t,e)},Ee.prototype.remove=function(t){return Ae(this,t,hn)},Ee.prototype.wasAltered=function(){return this._map.wasAltered()||this._list.wasAltered()},Ee.prototype.__iterate=function(t,e){var n=this;return this._list.__iterate(function(e){return e&&t(e[1],e[0],n)},e)},Ee.prototype.__iterator=function(t,e){return this._list.fromEntrySeq().__iterator(t,e)},Ee.prototype.__ensureOwner=function(t){if(t===this.__ownerID)return this;var e=this._map.__ensureOwner(t),n=this._list.__ensureOwner(t);return t?Te(e,n,t,this.__hash):(this.__ownerID=t,this._map=e,this._list=n,this)},Ee.isOrderedMap=Ie,Ee.prototype[mn]=!0,Ee.prototype[sn]=Ee.prototype.remove;var Jn;t(De,B),De.of=function(){return this(arguments)},De.prototype.toString=function(){return this.__toString("Stack [","]")},De.prototype.get=function(t,e){var n=this._head;for(t=u(this,t);n&&t--;)n=n.next;return n?n.value:e},De.prototype.peek=function(){return this._head&&this._head.value},De.prototype.push=function(){if(0===arguments.length)return this;for(var t=this.size+arguments.length,e=this._head,n=arguments.length-1;n>=0;n--)e={value:arguments[n],next:e};return this.__ownerID?(this.size=t,this._head=e,this.__hash=void 0,this.__altered=!0,this):Me(t,e)},De.prototype.pushAll=function(t){if(t=d(t),0===t.size)return this;at(t.size);var e=this.size,n=this._head;return t.reverse().forEach(function(t){e++,n={value:t,next:n}}),this.__ownerID?(this.size=e,this._head=n,this.__hash=void 0,this.__altered=!0,this):Me(e,n)},De.prototype.pop=function(){return this.slice(1)},De.prototype.unshift=function(){return this.push.apply(this,arguments)},De.prototype.unshiftAll=function(t){return this.pushAll(t)},De.prototype.shift=function(){return this.pop.apply(this,arguments)},De.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):ke()},De.prototype.slice=function(t,e){if(s(t,e,this.size))return this;var n=c(t,this.size),r=f(e,this.size);if(r!==this.size)return B.prototype.slice.call(this,t,e);for(var i=this.size-n,o=this._head;n--;)o=o.next;return this.__ownerID?(this.size=i,this._head=o,this.__hash=void 0,this.__altered=!0,this):Me(i,o)},De.prototype.__ensureOwner=function(t){return t===this.__ownerID?this:t?Me(this.size,this._head,t,this.__hash):(this.__ownerID=t,this.__altered=!1,this)},De.prototype.__iterate=function(t,e){if(e)return this.reverse().__iterate(t);for(var n=0,r=this._head;r&&t(r.value,n++,this)!==!1;)r=r.next;return n},De.prototype.__iterator=function(t,e){if(e)return this.reverse().__iterator(t);var n=0,r=this._head;return new b(function(){if(r){var e=r.value;return r=r.next,w(t,n++,e)}return E()})},De.isStack=Ce;var Wn="@@__IMMUTABLE_STACK__@@",Zn=De.prototype;Zn[Wn]=!0,Zn.withMutations=Un.withMutations,Zn.asMutable=Un.asMutable,Zn.asImmutable=Un.asImmutable,Zn.wasAltered=Un.wasAltered;var Xn;t(Re,J),Re.of=function(){return this(arguments)},Re.fromKeys=function(t){return this(_(t).keySeq())},Re.prototype.toString=function(){return this.__toString("Set {","}")},Re.prototype.has=function(t){return this._map.has(t)},Re.prototype.add=function(t){return Le(this,this._map.set(t,!0))},Re.prototype.remove=function(t){return Le(this,this._map.remove(t))},Re.prototype.clear=function(){return Le(this,this._map.clear())},Re.prototype.union=function(){var t=an.call(arguments,0);return t=t.filter(function(t){return 0!==t.size}),0===t.length?this:0!==this.size||this.__ownerID||1!==t.length?this.withMutations(function(e){for(var n=0;n1?" by "+this._step:"")+" ]"},Be.prototype.get=function(t,e){return this.has(t)?this._start+u(this,t)*this._step:e},Be.prototype.includes=function(t){var e=(t-this._start)/this._step;return e>=0&&e=e?new Be(0,0):new Be(this.get(t,this._end),this.get(e,this._end),this._step))},Be.prototype.indexOf=function(t){var e=t-this._start;if(e%this._step===0){var n=e/this._step;if(n>=0&&n=o;o++){if(t(i,o,this)===!1)return o+1;i+=e?-r:r}return o},Be.prototype.__iterator=function(t,e){var n=this.size-1,r=this._step,i=e?this._start+n*r:this._start,o=0;return new b(function(){var u=i;return i+=e?-r:r,o>n?E():w(t,o++,u)})},Be.prototype.equals=function(t){return t instanceof Be?this._start===t._start&&this._end===t._end&&this._step===t._step:Ye(this,t)};var ir;t(Je,k),Je.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},Je.prototype.get=function(t,e){return this.has(t)?this._value:e},Je.prototype.includes=function(t){return W(this._value,t)},Je.prototype.slice=function(t,e){var n=this.size;return s(t,e,n)?this:new Je(this._value,f(e,n)-c(t,n))},Je.prototype.reverse=function(){return this},Je.prototype.indexOf=function(t){return W(this._value,t)?0:-1},Je.prototype.lastIndexOf=function(t){return W(this._value,t)?this.size:-1},Je.prototype.__iterate=function(t,e){for(var n=0;nt?this.count():this.size);var r=this.slice(0,t);return Ct(this,1===n?r:r.concat(i(arguments,2),this.slice(t+e)))},findLastIndex:function(t,e){var n=this.toKeyedSeq().findLastKey(t,e);return void 0===n?-1:n},first:function(){return this.get(0)},flatten:function(t){return Ct(this,wt(this,t,!1))},get:function(t,e){return t=u(this,t),0>t||this.size===1/0||void 0!==this.size&&t>this.size?e:this.find(function(e,n){return n===t},void 0,e)},has:function(t){return t=u(this,t),t>=0&&(void 0!==this.size?this.size===1/0||t-1&&t%1===0&&t<=Number.MAX_VALUE}var i=Function.prototype.bind;e.isString=function(t){return"string"==typeof t||"[object String]"===n(t)},e.isArray=Array.isArray||function(t){return"[object Array]"===n(t)},"function"!=typeof/./&&"object"!=typeof Int8Array?e.isFunction=function(t){return"function"==typeof t||!1}:e.isFunction=function(t){return"[object Function]"===toString.call(t)},e.isObject=function(t){var e=typeof t;return"function"===e||"object"===e&&!!t},e.extend=function(t){var e=arguments.length;if(!t||2>e)return t||{};for(var n=1;e>n;n++)for(var r=arguments[n],i=Object.keys(r),o=i.length,u=0;o>u;u++){var a=i[u];t[a]=r[a]}return t},e.clone=function(t){return e.isObject(t)?e.isArray(t)?t.slice():e.extend({},t):t},e.each=function(t,e,n){var i,o,u=t?t.length:0,a=-1;if(n&&(o=e,e=function(t,e,r){return o.call(n,t,e,r)}),r(u))for(;++ar;r++)n[r]=arguments[r];return new(i.apply(t,[null].concat(n)))};return e.__proto__=t,e.prototype=t.prototype,e}},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t){return c["default"].Iterable.isIterable(t)}function o(t){return i(t)||!(0,f.isObject)(t)}function u(t){return i(t)?t.toJS():t}function a(t){return i(t)?t:c["default"].fromJS(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.isImmutable=i,e.isImmutableValue=o,e.toJS=u,e.toImmutable=a;var s=n(3),c=r(s),f=n(4)},function(t,e,n){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}function i(t){return t&&t.__esModule?t:{"default":t}}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function u(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var a=function(){function t(t,e){for(var n=0;n0)){var e=this.reactorState.get("dirtyStores");if(0!==e.size){var n=c["default"].Set().withMutations(function(n){n.union(t.observerState.get("any")),e.forEach(function(e){var r=t.observerState.getIn(["stores",e]);
-r&&n.union(r)})});n.forEach(function(e){var n=t.observerState.getIn(["observersMap",e]);if(n){var r=n.get("getter"),i=n.get("handler"),o=_.evaluate(t.prevReactorState,r),u=_.evaluate(t.reactorState,r);t.prevReactorState=o.reactorState,t.reactorState=u.reactorState;var a=o.result,s=u.result;c["default"].is(a,s)||i.call(null,s)}});var r=_.resetDirtyStores(this.reactorState);this.prevReactorState=r,this.reactorState=r}}}},{key:"batchStart",value:function(){this.__batchDepth++}},{key:"batchEnd",value:function(){if(this.__batchDepth--,this.__batchDepth<=0){this.__isDispatching=!0;try{this.__notify()}catch(t){throw this.__isDispatching=!1,t}this.__isDispatching=!1}}}]),t}();e["default"]=(0,y.toFactory)(g),t.exports=e["default"]},function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){var n={};return(0,o.each)(e,function(e,r){n[r]=t.evaluate(e)}),n}Object.defineProperty(e,"__esModule",{value:!0});var o=n(4);e["default"]=function(t){return{getInitialState:function(){return i(t,this.getDataBindings())},componentDidMount:function(){var e=this;this.__unwatchFns=[],(0,o.each)(this.getDataBindings(),function(n,i){var o=t.observe(n,function(t){e.setState(r({},i,t))});e.__unwatchFns.push(o)})},componentWillUnmount:function(){for(;this.__unwatchFns.length;)this.__unwatchFns.shift()()}}},t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t,e){return new R({result:t,reactorState:e})}function o(t,e){return t.withMutations(function(t){(0,k.each)(e,function(e,n){t.getIn(["stores",n])&&console.warn("Store already defined for id = "+n);var r=e.getInitialState();if(void 0===r&&f(t,"throwOnUndefinedStoreReturnValue"))throw new Error("Store getInitialState() must return a value, did you forget a return statement");if(f(t,"throwOnNonImmutableStore")&&!(0,D.isImmutableValue)(r))throw new Error("Store getInitialState() must return an immutable value, did you forget to call toImmutable");t.update("stores",function(t){return t.set(n,e)}).update("state",function(t){return t.set(n,r)}).update("dirtyStores",function(t){return t.add(n)}).update("storeStates",function(t){return E(t,[n])})}),w(t)})}function u(t,e){return t.withMutations(function(t){(0,k.each)(e,function(e,n){t.update("stores",function(t){return t.set(n,e)})})})}function a(t,e,n){if(void 0===e&&f(t,"throwOnUndefinedActionType"))throw new Error("`dispatch` cannot be called with an `undefined` action type.");var r=t.get("state"),i=t.get("dirtyStores"),o=r.withMutations(function(r){A["default"].dispatchStart(t,e,n),t.get("stores").forEach(function(o,u){var a=r.get(u),s=void 0;try{s=o.handle(a,e,n)}catch(c){throw A["default"].dispatchError(t,c.message),c}if(void 0===s&&f(t,"throwOnUndefinedStoreReturnValue")){var l="Store handler must return a value, did you forget a return statement";throw A["default"].dispatchError(t,l),new Error(l)}r.set(u,s),a!==s&&(i=i.add(u))}),A["default"].dispatchEnd(t,r,i)}),u=t.set("state",o).set("dirtyStores",i).update("storeStates",function(t){return E(t,i)});return w(u)}function s(t,e){var n=[],r=(0,D.toImmutable)({}).withMutations(function(r){(0,k.each)(e,function(e,i){var o=t.getIn(["stores",i]);if(o){var u=o.deserialize(e);void 0!==u&&(r.set(i,u),n.push(i))}})}),i=T["default"].Set(n);return t.update("state",function(t){return t.merge(r)}).update("dirtyStores",function(t){return t.union(i)}).update("storeStates",function(t){return E(t,n)})}function c(t,e,n){var r=e;(0,M.isKeyPath)(e)&&(e=(0,C.fromKeyPath)(e));var i=t.get("nextId"),o=(0,C.getStoreDeps)(e),u=T["default"].Map({id:i,storeDeps:o,getterKey:r,getter:e,handler:n}),a=void 0;return a=0===o.size?t.update("any",function(t){return t.add(i)}):t.withMutations(function(t){o.forEach(function(e){var n=["stores",e];t.hasIn(n)||t.setIn(n,T["default"].Set()),t.updateIn(["stores",e],function(t){return t.add(i)})})}),a=a.set("nextId",i+1).setIn(["observersMap",i],u),{observerState:a,entry:u}}function f(t,e){var n=t.getIn(["options",e]);if(void 0===n)throw new Error("Invalid option: "+e);return n}function l(t,e,n){var r=t.get("observersMap").filter(function(t){var r=t.get("getterKey"),i=!n||t.get("handler")===n;return i?(0,M.isKeyPath)(e)&&(0,M.isKeyPath)(r)?(0,M.isEqual)(e,r):e===r:!1});return t.withMutations(function(t){r.forEach(function(e){return h(t,e)})})}function h(t,e){return t.withMutations(function(t){var n=e.get("id"),r=e.get("storeDeps");0===r.size?t.update("any",function(t){return t.remove(n)}):r.forEach(function(e){t.updateIn(["stores",e],function(t){return t?t.remove(n):t})}),t.removeIn(["observersMap",n])})}function _(t){var e=t.get("state");return t.withMutations(function(t){var n=t.get("stores"),r=n.keySeq().toJS();n.forEach(function(n,r){var i=e.get(r),o=n.handleReset(i);if(void 0===o&&f(t,"throwOnUndefinedStoreReturnValue"))throw new Error("Store handleReset() must return a value, did you forget a return statement");if(f(t,"throwOnNonImmutableStore")&&!(0,D.isImmutableValue)(o))throw new Error("Store reset state must be an immutable value, did you forget to call toImmutable");t.setIn(["state",r],o)}),t.update("storeStates",function(t){return E(t,r)}),v(t)})}function d(t,e){var n=t.get("state");if((0,M.isKeyPath)(e))return i(n.getIn(e),t);if(!(0,C.isGetter)(e))throw new Error("evaluate must be passed a keyPath or Getter");if(g(t,e))return i(b(t,e),t);var r=(0,C.getDeps)(e).map(function(e){return d(t,e).result}),o=(0,C.getComputeFn)(e).apply(null,r);return i(o,S(t,e,o))}function p(t){var e={};return t.get("stores").forEach(function(n,r){var i=t.getIn(["state",r]),o=n.serialize(i);void 0!==o&&(e[r]=o)}),e}function v(t){return t.set("dirtyStores",T["default"].Set())}function y(t){return t}function m(t,e){var n=y(e);return t.getIn(["cache",n])}function g(t,e){var n=m(t,e);if(!n)return!1;var r=n.get("storeStates");return 0===r.size?!1:r.every(function(e,n){return t.getIn(["storeStates",n])===e})}function S(t,e,n){var r=y(e),i=t.get("dispatchId"),o=(0,C.getStoreDeps)(e),u=(0,D.toImmutable)({}).withMutations(function(e){o.forEach(function(n){var r=t.getIn(["storeStates",n]);e.set(n,r)})});return t.setIn(["cache",r],T["default"].Map({value:n,storeStates:u,dispatchId:i}))}function b(t,e){var n=y(e);return t.getIn(["cache",n,"value"])}function w(t){return t.update("dispatchId",function(t){return t+1})}function E(t,e){return t.withMutations(function(t){e.forEach(function(e){var n=t.has(e)?t.get(e)+1:1;t.set(e,n)})})}Object.defineProperty(e,"__esModule",{value:!0}),e.registerStores=o,e.replaceStores=u,e.dispatch=a,e.loadState=s,e.addObserver=c,e.getOption=f,e.removeObserver=l,e.removeObserverByEntry=h,e.reset=_,e.evaluate=d,e.serialize=p,e.resetDirtyStores=v;var I=n(3),T=r(I),O=n(9),A=r(O),D=n(5),C=n(10),M=n(11),k=n(4),R=T["default"].Record({result:null,reactorState:null})},function(t,e,n){"use strict";var r=n(8);e.dispatchStart=function(t,e,n){(0,r.getOption)(t,"logDispatches")&&console.group&&(console.groupCollapsed("Dispatch: %s",e),console.group("payload"),console.debug(n),console.groupEnd())},e.dispatchError=function(t,e){(0,r.getOption)(t,"logDispatches")&&console.group&&(console.debug("Dispatch error: "+e),console.groupEnd())},e.dispatchEnd=function(t,e,n){(0,r.getOption)(t,"logDispatches")&&console.group&&((0,r.getOption)(t,"logDirtyStores")&&console.log("Stores updated:",n.toList().toJS()),(0,r.getOption)(t,"logAppState")&&console.debug("Dispatch done, new state: ",e.toJS()),console.groupEnd())}},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t){return(0,h.isArray)(t)&&(0,h.isFunction)(t[t.length-1])}function o(t){return t[t.length-1]}function u(t){return t.slice(0,t.length-1)}function a(t,e){e||(e=l["default"].Set());var n=l["default"].Set().withMutations(function(e){if(!i(t))throw new Error("getFlattenedDeps must be passed a Getter");u(t).forEach(function(t){if((0,_.isKeyPath)(t))e.add((0,f.List)(t));else{if(!i(t))throw new Error("Invalid getter, each dependency must be a KeyPath or Getter");e.union(a(t))}})});return e.union(n)}function s(t){if(!(0,_.isKeyPath)(t))throw new Error("Cannot create Getter from KeyPath: "+t);return[t,d]}function c(t){if(t.hasOwnProperty("__storeDeps"))return t.__storeDeps;var e=a(t).map(function(t){return t.first()}).filter(function(t){return!!t});return Object.defineProperty(t,"__storeDeps",{enumerable:!1,configurable:!1,writable:!1,value:e}),e}Object.defineProperty(e,"__esModule",{value:!0});var f=n(3),l=r(f),h=n(4),_=n(11),d=function(t){return t};e["default"]={isGetter:i,getComputeFn:o,getFlattenedDeps:a,getStoreDeps:c,getDeps:u,fromKeyPath:s},t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t){return(0,s.isArray)(t)&&!(0,s.isFunction)(t[t.length-1])}function o(t,e){var n=a["default"].List(t),r=a["default"].List(e);return a["default"].is(n,r)}Object.defineProperty(e,"__esModule",{value:!0}),e.isKeyPath=i,e.isEqual=o;var u=n(3),a=r(u),s=n(4)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(3),i=(0,r.Map)({logDispatches:!1,logAppState:!1,logDirtyStores:!1,throwOnUndefinedActionType:!1,throwOnUndefinedStoreReturnValue:!1,throwOnNonImmutableStore:!1,throwOnDispatchInDispatch:!1});e.PROD_OPTIONS=i;var o=(0,r.Map)({logDispatches:!0,logAppState:!0,logDirtyStores:!0,throwOnUndefinedActionType:!0,throwOnUndefinedStoreReturnValue:!0,throwOnNonImmutableStore:!0,throwOnDispatchInDispatch:!0});e.DEBUG_OPTIONS=o;var u=(0,r.Record)({dispatchId:0,state:(0,r.Map)(),stores:(0,r.Map)(),cache:(0,r.Map)(),storeStates:(0,r.Map)(),dirtyStores:(0,r.Set)(),debug:!1,options:i});e.ReactorState=u;var a=(0,r.Record)({any:(0,r.Set)(),stores:(0,r.Map)({}),observersMap:(0,r.Map)({}),nextId:1});e.ObserverState=a}])})},function(t,e){"use strict";var n=function(t){var e,n={};if(!(t instanceof Object)||Array.isArray(t))throw new Error("keyMirror(...): Argument must be an object.");for(e in t)t.hasOwnProperty(e)&&(n[e]=e);return n};t.exports=n},function(t,e,n){"use strict";var r=n(58);n.d(e,"a",function(){return i});var i=r.a},function(t,e,n){"use strict";var r=n(80),i=n(82);n.d(e,"actions",function(){return o}),n.d(e,"getters",function(){return u});var o=r.a,u=i},,function(t,e,n){"use strict";function r(t){t.registerStores({restApiCache:c.a})}function i(t){return[["restApiCache",t.entity],function(t){return!!t}]}function o(t){return[["restApiCache",t.entity],function(t){return t||n.i(a.toImmutable)({})}]}function u(t){return function(e){return["restApiCache",t.entity,e]}}var a=n(1),s=a&&a.__esModule?function(){return a["default"]}:function(){return a};n.d(s,"a",s);var c=n(107),f=n(106);n.d(e,"createApiActions",function(){return l}),e.register=r,e.createHasDataGetter=i,e.createEntityMapGetter=o,e.createByIdGetter=u;var l=f.a},function(t,e,n){"use strict";var r=n(2),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i),e.a=i()({ENTITY_HISTORY_DATE_SELECTED:null,ENTITY_HISTORY_FETCH_START:null,ENTITY_HISTORY_FETCH_ERROR:null,ENTITY_HISTORY_FETCH_SUCCESS:null,RECENT_ENTITY_HISTORY_FETCH_START:null,RECENT_ENTITY_HISTORY_FETCH_ERROR:null,RECENT_ENTITY_HISTORY_FETCH_SUCCESS:null,LOG_OUT:null})},function(t,e,n){"use strict";var r=n(2),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i),e.a=i()({LOGBOOK_DATE_SELECTED:null,LOGBOOK_ENTRIES_FETCH_START:null,LOGBOOK_ENTRIES_FETCH_ERROR:null,LOGBOOK_ENTRIES_FETCH_SUCCESS:null})},function(t,e,n){"use strict";var r=n(108),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i);var o=n(39);n.d(e,"actions",function(){return u}),n.d(e,"getters",function(){return a});var u=i.a,a=o},function(t,e,n){"use strict";var r=n(2),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i),e.a=i()({VALIDATING_AUTH_TOKEN:null,VALID_AUTH_TOKEN:null,INVALID_AUTH_TOKEN:null,LOG_OUT:null})},function(t,e,n){"use strict";function r(t){t.registerStores({authAttempt:i.a,authCurrent:o.a,rememberAuth:u.a})}var i=n(61),o=n(62),u=n(63),a=n(59),s=n(60);e.register=r,n.d(e,"actions",function(){return c}),n.d(e,"getters",function(){return f});var c=a,f=s},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var u=n(1),a=u&&u.__esModule?function(){return u["default"]}:function(){return u};n.d(a,"a",a);var s=n(81),c=n(25),f=n(3),l=function(){function t(t,e){var n=[],r=!0,i=!1,o=void 0;try{for(var u,a=t[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!e||n.length!==e);r=!0);}catch(s){i=!0,o=s}finally{try{!r&&a["return"]&&a["return"]()}finally{if(i)throw o}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),h=function(){function t(t,e){for(var n=0;nn;n++)e["_"+String.fromCharCode(n)]=n;var r=Object.getOwnPropertyNames(e).map(function(t){return e[t]});if("0123456789"!==r.join(""))return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(t){i[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},i)).join("")}catch(o){return!1}}var i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;t.exports=r()?Object.assign:function(t,e){for(var r,u,a=n(t),s=1;s6e4}e.a=r},,,,,,,,function(t,e,n){var r=n(180);t.exports=function(t,e,n){function i(){var f=r()-s;e>f&&f>0?o=setTimeout(i,e-f):(o=null,n||(c=t.apply(a,u),o||(a=u=null)))}var o,u,a,s,c;return null==e&&(e=100),function(){a=this,u=arguments,s=r();var f=n&&!o;return o||(o=setTimeout(i,e)),f&&(c=t.apply(a,u),a=u=null),c}}},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var i=n(104),o=n(129),u=n(131),a=n(133),s=n(11),c=n(16),f=n(4),l=n(31),h=n(84),_=n(17),d=n(89),p=n(34),v=n(37),y=n(19),m=n(44),g=n(9),S=n(21),b=n(23),w=n(120),E=n(126),I=n(6),T=function O(){r(this,O);var t=n.i(o.a)();Object.defineProperties(this,{demo:{value:1,enumerable:!0},localStoragePreferences:{value:i.a,enumerable:!0},reactor:{value:t,enumerable:!0},util:{value:a.a,enumerable:!0},startLocalStoragePreferencesSync:{value:i.a.startSync.bind(i.a,t)},startUrlSync:{value:v.urlSync.startSync.bind(null,t)},stopUrlSync:{value:v.urlSync.stopSync.bind(null,t)}}),n.i(u.a)(this,t,{auth:s,config:c,entity:f,entityHistory:l,errorLog:h,event:_,logbook:d,moreInfo:p,navigation:v,notification:y,view:m,service:g,stream:S,sync:b,template:w,voice:E,restApi:I})};e.a=T},,,function(t,e,n){"use strict";var r=n(11),i=function(t,e,n){var i=arguments.length<=3||void 0===arguments[3]?null:arguments[3],o=t.evaluate(r.getters.authInfo),u=o.host+"/api/"+n;return new Promise(function(t,n){var r=new XMLHttpRequest;r.open(e,u,!0),r.setRequestHeader("X-HA-access",o.authToken),r.onload=function(){var e=void 0;try{e="application/json"===r.getResponseHeader("content-type")?JSON.parse(r.responseText):r.responseText}catch(i){e=r.responseText}r.status>199&&r.status<300?t(e):n(e)},r.onerror=function(){return n({})},i?r.send(JSON.stringify(i)):r.send()})};i=function(t,e,r){return new Promise(function(t){if("GET"!==e)throw new Error("Method "+e+" not allowed in demo mode.");var i=r.split("/",1)[0];switch(i){case"bootstrap":t(n(68)["default"]);break;case"logbook":t(n(71)["default"]);break;case"history":t(n(73)["default"]);break;default:throw new Error("URL not implemented in demo mode /api/"+r)}})},e.a=i},function(t,e,n){"use strict";function r(t,e){var n=arguments.length<=2||void 0===arguments[2]?{}:arguments[2],r=n.useStreaming,i=(void 0===r?t.evaluate(u.getters.isSupported):r,n.rememberAuth),c=void 0===i?!1:i,f=n.host,l=void 0===f?"":f;t.dispatch(o.a.VALIDATING_AUTH_TOKEN,{authToken:e,host:l}),a.actions.fetchAll(t).then(function(){return t.dispatch(o.a.VALID_AUTH_TOKEN,{authToken:e,host:l,rememberAuth:c}),void t.dispatch("STREAM_START")},function(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],n=e.message,r=void 0===n?s:n;t.dispatch(o.a.INVALID_AUTH_TOKEN,{errorMessage:r})})}function i(t){t.dispatch(o.a.LOG_OUT,{})}var o=n(10),u=n(21),a=n(23);e.validate=r,e.logOut=i;var s="Unexpected result from API"},function(t,e,n){"use strict";n.d(e,"isValidating",function(){return r}),n.d(e,"isInvalidAttempt",function(){return i}),n.d(e,"attemptErrorMessage",function(){return o}),n.d(e,"rememberAuth",function(){return u}),n.d(e,"attemptAuthInfo",function(){
-return a}),n.d(e,"currentAuthToken",function(){return s}),n.d(e,"currentAuthInfo",function(){return c}),n.d(e,"authToken",function(){return f}),n.d(e,"authInfo",function(){return l});var r=["authAttempt","isValidating"],i=["authAttempt","isInvalid"],o=["authAttempt","errorMessage"],u=["rememberAuth"],a=[["authAttempt","authToken"],["authAttempt","host"],function(t,e){return{authToken:t,host:e}}],s=["authCurrent","authToken"],c=[s,["authCurrent","host"],function(t,e){return{authToken:t,host:e}}],f=[r,["authAttempt","authToken"],["authCurrent","authToken"],function(t,e,n){return t?e:n}],l=[r,a,c,function(t,e,n){return t?e:n}]},function(t,e,n){"use strict";function r(t,e){var r=e.authToken,i=e.host;return n.i(u.toImmutable)({authToken:r,host:i,isValidating:!0,isInvalid:!1,errorMessage:""})}function i(){return c.getInitialState()}function o(t,e){var n=e.errorMessage;return t.withMutations(function(t){return t.set("isValidating",!1).set("isInvalid",!0).set("errorMessage",n)})}var u=n(1),a=u&&u.__esModule?function(){return u["default"]}:function(){return u};n.d(a,"a",a);var s=n(10),c=new u.Store({getInitialState:function(){return n.i(u.toImmutable)({isValidating:!1,authToken:!1,host:null,isInvalid:!1,errorMessage:""})},initialize:function(){this.on(s.a.VALIDATING_AUTH_TOKEN,r),this.on(s.a.VALID_AUTH_TOKEN,i),this.on(s.a.INVALID_AUTH_TOKEN,o)}});e.a=c},function(t,e,n){"use strict";function r(t,e){var r=e.authToken,i=e.host;return n.i(o.toImmutable)({authToken:r,host:i})}function i(){return s.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(10),s=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({authToken:null,host:""})},initialize:function(){this.on(a.a.VALID_AUTH_TOKEN,r),this.on(a.a.LOG_OUT,i)}});e.a=s},function(t,e,n){"use strict";function r(t,e){var n=e.rememberAuth;return n}var i=n(1),o=i&&i.__esModule?function(){return i["default"]}:function(){return i};n.d(o,"a",o);var u=n(10),a=new i.Store({getInitialState:function(){return!0},initialize:function(){this.on(u.a.VALID_AUTH_TOKEN,r)}});e.a=a},function(t,e,n){"use strict";function r(t,e){t.dispatch(a.a.SERVER_CONFIG_LOADED,e)}function i(t){n.i(u.a)(t,"GET","config").then(function(e){return r(t,e)})}function o(t,e){t.dispatch(a.a.COMPONENT_LOADED,{component:e})}var u=n(3),a=n(15);e.configLoaded=r,e.fetchAll=i,e.componentLoaded=o},function(t,e,n){"use strict";function r(t){return[["serverComponent"],function(e){return e.contains(t)}]}n.d(e,"locationGPS",function(){return i}),n.d(e,"locationName",function(){return o}),n.d(e,"serverVersion",function(){return u}),e.isComponentLoaded=r;var i=[["serverConfig","latitude"],["serverConfig","longitude"],function(t,e){return{latitude:t,longitude:e}}],o=["serverConfig","location_name"],u=["serverConfig","serverVersion"]},function(t,e,n){"use strict";function r(t,e){var n=e.component;return t.push(n)}function i(t,e){var r=e.components;return n.i(u.toImmutable)(r)}function o(){return c.getInitialState()}var u=n(1),a=u&&u.__esModule?function(){return u["default"]}:function(){return u};n.d(a,"a",a);var s=n(15),c=new u.Store({getInitialState:function(){return n.i(u.toImmutable)([])},initialize:function(){this.on(s.a.COMPONENT_LOADED,r),this.on(s.a.SERVER_CONFIG_LOADED,i),this.on(s.a.LOG_OUT,o)}});e.a=c},function(t,e,n){"use strict";function r(t,e){var r=e.latitude,i=e.longitude,u=e.location_name,a=e.temperature_unit,s=e.time_zone,c=e.version;return n.i(o.toImmutable)({latitude:r,longitude:i,location_name:u,temperature_unit:a,time_zone:s,serverVersion:c})}function i(){return s.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(15),s=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({latitude:null,longitude:null,location_name:"Home",temperature_unit:"°C",time_zone:"UTC",serverVersion:"unknown"})},initialize:function(){this.on(a.a.SERVER_CONFIG_LOADED,r),this.on(a.a.LOG_OUT,i)}});e.a=s},function(t,e,n){"use strict";var r=n(69),i=n(70),o=n(72),u=n(29);e["default"]={config:r.a,events:i.a,services:o.a,states:u.a}},function(t,e,n){"use strict";e.a={components:["configurator","http","api","frontend","history","conversation","logbook","introduction"],latitude:32.87336,location_name:"Home",longitude:-117.22743,temperature_unit:"°F",time_zone:"America/Los_Angeles",version:"0.9"}},function(t,e,n){"use strict";e.a=[{event:"call_service",listener_count:1},{event:"time_changed",listener_count:1},{event:"state_changed",listener_count:3},{event:"homeassistant_stop",listener_count:2}]},function(t,e,n){"use strict";e["default"]=[{domain:"sun",entity_id:"sun.sun",message:"has risen",name:"sun",when:"2015-04-24T06:08:47.000Z"},{domain:"device_tracker",entity_id:"device_tracker.paulus",message:"left home",name:"Paulus",when:"2015-04-24T08:54:47.000Z"},{domain:"device_tracker",entity_id:"device_tracker.anne_therese",message:"left home",name:"Anne Therese",when:"2015-04-24T09:08:47.000Z"},{domain:"group",entity_id:"group.all_devices",message:"left home",name:"All devices",when:"2015-04-24T09:08:47.000Z"},{domain:"thermostat",entity_id:"thermostat.nest",message:"changed to 17 °C",name:"Nest",when:"2015-04-24T09:08:47.000Z"},{domain:"thermostat",entity_id:"thermostat.nest",message:"changed to 21 °C",name:"Nest",when:"2015-04-24T16:00:47.000Z"},{domain:"device_tracker",entity_id:"device_tracker.anne_therese",message:"came home",name:"Anne Therese",when:"2015-04-24T16:24:47.000Z"},{domain:"group",entity_id:"group.all_devices",message:"came home",name:"All devices",when:"2015-04-24T16:24:47.000Z"},{domain:"light",entity_id:"light.bowl",message:"turned on",name:"Bowl",when:"2015-04-24T18:01:47.000Z"},{domain:"light",entity_id:"light.ceiling",message:"turned on",name:"Ceiling",when:"2015-04-24T18:16:47.000Z"},{domain:"light",entity_id:"light.tv_back_light",message:"turned on",name:"TV Back Light",when:"2015-04-24T18:31:47.000Z"},{domain:"sun",entity_id:"sun.sun",message:"has set",name:"sun",when:"2015-04-24T18:46:47.000Z"},{domain:"media_player",entity_id:"media_player.living_room",message:"changed to Plex",name:"Media Player",when:"2015-04-24T19:12:47.000Z"}]},function(t,e,n){"use strict";e.a=[{domain:"homeassistant",services:{stop:{description:"",fields:{}},turn_off:{description:"",fields:{}},turn_on:{description:"",fields:{}}}},{domain:"light",services:{turn_off:{description:"",fields:{}},turn_on:{description:"",fields:{}}}},{domain:"switch",services:{turn_off:{description:"",fields:{}},turn_on:{description:"",fields:{}}}},{domain:"input_boolean",services:{turn_off:{description:"",fields:{}},turn_on:{description:"",fields:{}}}},{domain:"configurator",services:{configure:{description:"",fields:{}}}}]},function(t,e,n){"use strict";function r(t){var e=new Date(Date.now()-60*t*1e3);return e.toISOString()}function i(t){return Math.random()*t-t/2}function o(t,e){s[t.entity_id]=!0;var n=void 0;n="string"==typeof e[0]?e.map(function(t){return{state:t}}):e;var o=900/n.length;c.push(n.map(function(e,n){var u=void 0;u=e.attributes||t.attributes?e.attributes?t.attributes?a()({},t.attributes,e.attributes):e.attributes:t.attributes:{};var s=r(0===n?f:f-n*o+i(o));return{attributes:u,entity_id:t.entity_id,state:e.state||t.state,last_changed:s,last_updated:s}}))}var u=n(28),a=u&&u.__esModule?function(){return u["default"]}:function(){return u};n.d(a,"a",a);var s=(n(29),{"a.demo_mode":!0,"configurator.philips_hue":!0,"group.default_view":!0,"group.rooms_view":!0,"group.rooms":!0,"zone.school":!0,"zone.work":!0,"zone.home":!0,"group.general":!0,"camera.roundabout":!0,"script.water_lawn":!0,"scene.romantic":!0,"scene.good_morning":!0,"group.cooking":!0}),c=[],f=1440;o({entity_id:"sensor.humidity",attributes:{unit_of_measurement:"%"}},["45","49","52","49","52","49","45","42"]),o({entity_id:"sensor.temperature",attributes:{unit_of_measurement:"°C"}},["23","27","25","23","24"]),o({entity_id:"thermostat.nest",attributes:{unit_of_measurement:"°C"}},[{state:"23",attributes:{current_temperature:20,temperature:23}},{state:"23",attributes:{current_temperature:22,temperature:23}},{state:"20",attributes:{current_temperature:21,temperature:20}},{state:"20",attributes:{current_temperature:20,temperature:20}},{state:"20",attributes:{current_temperature:19,temperature:20}}]),o({entity_id:"media_player.living_room",attributes:{friendly_name:"Chromecast"}},["Plex","idle","YouTube","Netflix","idle","Plex"]),o({entity_id:"group.all_devices"},["home","not_home","home"]),o({entity_id:"device_tracker.paulus"},["home","not_home","work","not_home"]),o({entity_id:"device_tracker.anne_therese"},["home","not_home","home","not_home","school"]),o({entity_id:"garage_door.garage_door"},["open","closed","open"]),o({entity_id:"alarm_control_panel.home"},["disarmed","pending","armed_home","pending","disarmed","pending","armed_home"]),o({entity_id:"lock.kitchen_door"},["unlocked","locked","unlocked","locked"]),o({entity_id:"light.tv_back_light"},["on","off","on","off"]),o({entity_id:"light.ceiling"},["on","off","on"]),o({entity_id:"light.table_lamp"},["on","off","on"]),o({entity_id:"switch.ac"},["on","off","on"]),o({entity_id:"group.bedroom"},["on","off","on","off"]),o({entity_id:"group.living_room"},["on","off","on"]),o({entity_id:"switch.decorative_lights"},["on","off","on","off"]),o({entity_id:"light.bed_light"},["on","off","on","off"]),o({entity_id:"rollershutter.bedroom_window"},["open","closed","open","closed"]),o({entity_id:"input_select.cook_today"},["Anne Therese","Paulus"]),o({entity_id:"input_boolean.notify_cook"},["off","on"]);e["default"]=c},function(t,e,n){"use strict";function r(t,e){t.dispatch(s.a.ENTITY_HISTORY_DATE_SELECTED,{date:e})}function i(t){var e=arguments.length<=1||void 0===arguments[1]?null:arguments[1];t.dispatch(s.a.RECENT_ENTITY_HISTORY_FETCH_START,{});var r="history/period";return null!==e&&(r+="?filter_entity_id="+e),n.i(a.a)(t,"GET",r).then(function(e){return t.dispatch(s.a.RECENT_ENTITY_HISTORY_FETCH_SUCCESS,{stateHistory:e})},function(){return t.dispatch(s.a.RECENT_ENTITY_HISTORY_FETCH_ERROR,{})})}function o(t,e){return t.dispatch(s.a.ENTITY_HISTORY_FETCH_START,{date:e}),n.i(a.a)(t,"GET","history/period/"+e).then(function(n){return t.dispatch(s.a.ENTITY_HISTORY_FETCH_SUCCESS,{date:e,stateHistory:n})},function(){return t.dispatch(s.a.ENTITY_HISTORY_FETCH_ERROR,{})})}function u(t){var e=t.evaluate(c.currentDate);return o(t,e)}var a=n(3),s=n(7),c=n(30);e.changeCurrentDate=r,e.fetchRecent=i,e.fetchDate=o,e.fetchSelectedDate=u},function(t,e,n){"use strict";function r(t,e){var r=e.date;return n.i(a.a)(r)}function i(){return c.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(24),s=n(7),c=new o.Store({getInitialState:function(){var t=new Date;return t.setDate(t.getUTCDate()-1),n.i(a.a)(t)},initialize:function(){this.on(s.a.ENTITY_HISTORY_DATE_SELECTED,r),this.on(s.a.LOG_OUT,i)}});e.a=c},function(t,e,n){"use strict";function r(t,e){var r=e.date,i=e.stateHistory;return 0===i.length?t.set(r,n.i(o.toImmutable)({})):t.withMutations(function(t){i.forEach(function(e){return t.setIn([r,e[0].entity_id],n.i(o.toImmutable)(e.map(s.a.fromJSON)))})})}function i(){return c.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(7),s=n(12),c=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({})},initialize:function(){this.on(a.a.ENTITY_HISTORY_FETCH_SUCCESS,r),this.on(a.a.LOG_OUT,i)}});e.a=c},function(t,e,n){"use strict";var r=n(1),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i);var o=n(7),u=new r.Store({getInitialState:function(){return!1},initialize:function(){this.on(o.a.ENTITY_HISTORY_FETCH_START,function(){return!0}),this.on(o.a.ENTITY_HISTORY_FETCH_SUCCESS,function(){return!1}),this.on(o.a.ENTITY_HISTORY_FETCH_ERROR,function(){return!1}),this.on(o.a.RECENT_ENTITY_HISTORY_FETCH_START,function(){return!0}),this.on(o.a.RECENT_ENTITY_HISTORY_FETCH_SUCCESS,function(){return!1}),this.on(o.a.RECENT_ENTITY_HISTORY_FETCH_ERROR,function(){return!1}),this.on(o.a.LOG_OUT,function(){return!1})}});e.a=u},function(t,e,n){"use strict";function r(t,e){var r=e.stateHistory;return t.withMutations(function(t){r.forEach(function(e){return t.set(e[0].entity_id,n.i(o.toImmutable)(e.map(s.a.fromJSON)))})})}function i(){return c.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(7),s=n(12),c=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({})},initialize:function(){this.on(a.a.RECENT_ENTITY_HISTORY_FETCH_SUCCESS,r),this.on(a.a.LOG_OUT,i)}});e.a=c},function(t,e,n){"use strict";function r(t,e){var n=e.stateHistory,r=(new Date).getTime();return t.withMutations(function(t){n.forEach(function(e){return t.set(e[0].entity_id,r)}),history.length>1&&t.set(s,r)})}function i(){return c.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(7),s="ALL_ENTRY_FETCH",c=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({})},initialize:function(){this.on(a.a.RECENT_ENTITY_HISTORY_FETCH_SUCCESS,r),this.on(a.a.LOG_OUT,i)}});e.a=c},function(t,e,n){"use strict";var r=n(6),i=n(12),o=n.i(r.createApiActions)(i.a);e.a=o},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var i=function(){function t(t,e){for(var n=0;nu}var i=n(1),o=i&&i.__esModule?function(){return i["default"]}:function(){return i};n.d(o,"a",o),n.d(e,"currentDate",function(){return a}),n.d(e,"isCurrentStale",function(){return s}),n.d(e,"currentEntries",function(){return c}),n.d(e,"isLoadingEntries",function(){return f});var u=6e4,a=["currentLogbookDate"],s=[a,["logbookEntriesUpdated"],function(t,e){return r(e.get(t))}],c=[a,["logbookEntries"],function(t,e){return e.get(t)||n.i(i.toImmutable)([])}],f=["isLoadingLogbookEntries"]},function(t,e,n){"use strict";function r(t){t.registerStores({currentLogbookDate:i.a,isLoadingLogbookEntries:o.a,logbookEntries:u.a,logbookEntriesUpdated:a.a})}var i=n(91),o=n(92),u=n(93),a=n(94),s=n(87),c=n(88);e.register=r,n.d(e,"actions",function(){return f}),n.d(e,"getters",function(){return l});var f=s,l=c},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var u=n(1),a=u&&u.__esModule?function(){return u["default"]}:function(){return u};n.d(a,"a",a);var s=n(25),c=function(){function t(t,e){for(var n=0;ni;i++)r[i]=t[i+e];return r}function o(t){return void 0===t.size&&(t.size=t.__iterate(a)),t.size}function u(t,e){if("number"!=typeof e){var n=+e;if(""+n!==e)return NaN;e=n}return 0>e?o(t)+e:e}function a(){return!0}function s(t,e,n){return(0===t||void 0!==n&&-n>=t)&&(void 0===e||void 0!==n&&e>=n)}function c(t,e){return h(t,e,0)}function f(t,e){return h(t,e,e)}function h(t,e,n){return void 0===t?n:0>t?Math.max(0,e+t):void 0===e?t:Math.min(e,t)}function l(t){return v(t)?t:C(t)}function _(t){return y(t)?t:M(t)}function p(t){return S(t)?t:R(t)}function d(t){return v(t)&&!g(t)?t:k(t)}function v(t){return!(!t||!t[dn])}function y(t){return!(!t||!t[vn])}function S(t){return!(!t||!t[yn])}function g(t){return y(t)||S(t)}function m(t){return!(!t||!t[Sn])}function E(t){this.next=t}function b(t,e,n,r){var i=0===t?e:1===t?n:[e,n];return r?r.value=i:r={value:i,done:!1},r}function w(){return{value:void 0,done:!0}}function I(t){return!!A(t)}function T(t){return t&&"function"==typeof t.next}function O(t){var e=A(t);return e&&e.call(t)}function A(t){var e=t&&(bn&&t[bn]||t[wn]);return"function"==typeof e?e:void 0}function D(t){return t&&"number"==typeof t.length}function C(t){return null===t||void 0===t?U():v(t)?t.toSeq():V(t)}function M(t){return null===t||void 0===t?U().toKeyedSeq():v(t)?y(t)?t.toSeq():t.fromEntrySeq():H(t)}function R(t){return null===t||void 0===t?U():v(t)?y(t)?t.entrySeq():t.toIndexedSeq():x(t)}function k(t){return(null===t||void 0===t?U():v(t)?y(t)?t.entrySeq():t:x(t)).toSetSeq()}function z(t){this._array=t,this.size=t.length}function L(t){var e=Object.keys(t);this._object=t,this._keys=e,this.size=e.length}function j(t){this._iterable=t,this.size=t.length||t.size}function N(t){this._iterator=t,this._iteratorCache=[]}function P(t){return!(!t||!t[Tn])}function U(){return On||(On=new z([]))}function H(t){var e=Array.isArray(t)?new z(t).fromEntrySeq():T(t)?new N(t).fromEntrySeq():I(t)?new j(t).fromEntrySeq():"object"==typeof t?new L(t):void 0;if(!e)throw new TypeError("Expected Array or iterable object of [k, v] entries, or keyed object: "+t);return e}function x(t){var e=q(t);if(!e)throw new TypeError("Expected Array or iterable object of values: "+t);return e}function V(t){var e=q(t)||"object"==typeof t&&new L(t);if(!e)throw new TypeError("Expected Array or iterable object of values, or keyed object: "+t);return e}function q(t){return D(t)?new z(t):T(t)?new N(t):I(t)?new j(t):void 0}function G(t,e,n,r){var i=t._cache;if(i){for(var o=i.length-1,u=0;o>=u;u++){var a=i[n?o-u:u];if(e(a[1],r?a[0]:u,t)===!1)return u+1}return u}return t.__iterateUncached(e,n)}function F(t,e,n,r){var i=t._cache;if(i){var o=i.length-1,u=0;return new E(function(){var t=i[n?o-u:u];return u++>o?w():b(e,r?t[0]:u-1,t[1])})}return t.__iteratorUncached(e,n)}function K(){throw TypeError("Abstract")}function Y(){}function B(){}function J(){}function W(t,e){if(t===e||t!==t&&e!==e)return!0;if(!t||!e)return!1;if("function"==typeof t.valueOf&&"function"==typeof e.valueOf){if(t=t.valueOf(),e=e.valueOf(),t===e||t!==t&&e!==e)return!0;if(!t||!e)return!1}return!("function"!=typeof t.equals||"function"!=typeof e.equals||!t.equals(e))}function X(t,e){return e?Q(e,t,"",{"":t}):Z(t)}function Q(t,e,n,r){return Array.isArray(e)?t.call(r,n,R(e).map(function(n,r){return Q(t,n,r,e)})):$(e)?t.call(r,n,M(e).map(function(n,r){return Q(t,n,r,e)})):e}function Z(t){return Array.isArray(t)?R(t).map(Z).toList():$(t)?M(t).map(Z).toMap():t}function $(t){return t&&(t.constructor===Object||void 0===t.constructor)}function tt(t){return t>>>1&1073741824|3221225471&t}function et(t){if(t===!1||null===t||void 0===t)return 0;if("function"==typeof t.valueOf&&(t=t.valueOf(),t===!1||null===t||void 0===t))return 0;if(t===!0)return 1;var e=typeof t;if("number"===e){var n=0|t;for(n!==t&&(n^=4294967295*t);t>4294967295;)t/=4294967295,n^=t;return tt(n)}return"string"===e?t.length>Ln?nt(t):rt(t):"function"==typeof t.hashCode?t.hashCode():it(t)}function nt(t){var e=Pn[t];return void 0===e&&(e=rt(t),Nn===jn&&(Nn=0,Pn={}),Nn++,Pn[t]=e),e}function rt(t){for(var e=0,n=0;n0)switch(t.nodeType){case 1:return t.uniqueID;case 9:return t.documentElement&&t.documentElement.uniqueID}}function ut(t,e){if(!t)throw new Error(e)}function at(t){ut(t!==1/0,"Cannot perform this action with an infinite size.")}function st(t,e){this._iter=t,this._useKeys=e,this.size=t.size}function ct(t){this._iter=t,this.size=t.size}function ft(t){this._iter=t,this.size=t.size}function ht(t){this._iter=t,this.size=t.size}function lt(t){var e=zt(t);return e._iter=t,e.size=t.size,e.flip=function(){return t},e.reverse=function(){var e=t.reverse.apply(this);return e.flip=function(){return t.reverse()},e},e.has=function(e){return t.includes(e)},e.includes=function(e){return t.has(e)},e.cacheResult=Lt,e.__iterateUncached=function(e,n){var r=this;return t.__iterate(function(t,n){return e(n,t,r)!==!1},n)},e.__iteratorUncached=function(e,n){if(e===En){var r=t.__iterator(e,n);return new E(function(){var t=r.next();if(!t.done){var e=t.value[0];t.value[0]=t.value[1],t.value[1]=e}return t})}return t.__iterator(e===mn?gn:mn,n)},e}function _t(t,e,n){var r=zt(t);return r.size=t.size,r.has=function(e){return t.has(e)},r.get=function(r,i){var o=t.get(r,ln);return o===ln?i:e.call(n,o,r,t)},r.__iterateUncached=function(r,i){var o=this;return t.__iterate(function(t,i,u){return r(e.call(n,t,i,u),i,o)!==!1},i)},r.__iteratorUncached=function(r,i){var o=t.__iterator(En,i);return new E(function(){var i=o.next();if(i.done)return i;var u=i.value,a=u[0];return b(r,a,e.call(n,u[1],a,t),i)})},r}function pt(t,e){var n=zt(t);return n._iter=t,n.size=t.size,n.reverse=function(){return t},t.flip&&(n.flip=function(){var e=lt(t);return e.reverse=function(){return t.flip()},e}),n.get=function(n,r){return t.get(e?n:-1-n,r)},n.has=function(n){return t.has(e?n:-1-n)},n.includes=function(e){return t.includes(e)},n.cacheResult=Lt,n.__iterate=function(e,n){var r=this;return t.__iterate(function(t,n){return e(t,n,r)},!n)},n.__iterator=function(e,n){return t.__iterator(e,!n)},n}function dt(t,e,n,r){var i=zt(t);return r&&(i.has=function(r){var i=t.get(r,ln);return i!==ln&&!!e.call(n,i,r,t)},i.get=function(r,i){var o=t.get(r,ln);return o!==ln&&e.call(n,o,r,t)?o:i}),i.__iterateUncached=function(i,o){var u=this,a=0;return t.__iterate(function(t,o,s){return e.call(n,t,o,s)?(a++,i(t,r?o:a-1,u)):void 0},o),a},i.__iteratorUncached=function(i,o){var u=t.__iterator(En,o),a=0;return new E(function(){for(;;){var o=u.next();if(o.done)return o;var s=o.value,c=s[0],f=s[1];if(e.call(n,f,c,t))return b(i,r?c:a++,f,o)}})},i}function vt(t,e,n){var r=Pt().asMutable();return t.__iterate(function(i,o){r.update(e.call(n,i,o,t),0,function(t){return t+1})}),r.asImmutable()}function yt(t,e,n){var r=y(t),i=(m(t)?we():Pt()).asMutable();t.__iterate(function(o,u){i.update(e.call(n,o,u,t),function(t){return t=t||[],t.push(r?[u,o]:o),t})});var o=kt(t);return i.map(function(e){return Ct(t,o(e))})}function St(t,e,n,r){var i=t.size;if(void 0!==e&&(e=0|e),void 0!==n&&(n=0|n),s(e,n,i))return t;var o=c(e,i),a=f(n,i);if(o!==o||a!==a)return St(t.toSeq().cacheResult(),e,n,r);var h,l=a-o;l===l&&(h=0>l?0:l);var _=zt(t);return _.size=0===h?h:t.size&&h||void 0,!r&&P(t)&&h>=0&&(_.get=function(e,n){return e=u(this,e),e>=0&&h>e?t.get(e+o,n):n}),_.__iterateUncached=function(e,n){var i=this;if(0===h)return 0;if(n)return this.cacheResult().__iterate(e,n);var u=0,a=!0,s=0;return t.__iterate(function(t,n){return a&&(a=u++h)return w();var t=i.next();return r||e===mn?t:e===gn?b(e,a-1,void 0,t):b(e,a-1,t.value[1],t)})},_}function gt(t,e,n){var r=zt(t);return r.__iterateUncached=function(r,i){var o=this;if(i)return this.cacheResult().__iterate(r,i);var u=0;return t.__iterate(function(t,i,a){return e.call(n,t,i,a)&&++u&&r(t,i,o)}),u},r.__iteratorUncached=function(r,i){var o=this;if(i)return this.cacheResult().__iterator(r,i);var u=t.__iterator(En,i),a=!0;return new E(function(){if(!a)return w();var t=u.next();if(t.done)return t;var i=t.value,s=i[0],c=i[1];return e.call(n,c,s,o)?r===En?t:b(r,s,c,t):(a=!1,w())})},r}function mt(t,e,n,r){var i=zt(t);return i.__iterateUncached=function(i,o){var u=this;if(o)return this.cacheResult().__iterate(i,o);var a=!0,s=0;return t.__iterate(function(t,o,c){return a&&(a=e.call(n,t,o,c))?void 0:(s++,i(t,r?o:s-1,u))}),s},i.__iteratorUncached=function(i,o){var u=this;if(o)return this.cacheResult().__iterator(i,o);var a=t.__iterator(En,o),s=!0,c=0;return new E(function(){var t,o,f;do{if(t=a.next(),t.done)return r||i===mn?t:i===gn?b(i,c++,void 0,t):b(i,c++,t.value[1],t);var h=t.value;o=h[0],f=h[1],s&&(s=e.call(n,f,o,u))}while(s);return i===En?t:b(i,o,f,t)})},i}function Et(t,e){var n=y(t),r=[t].concat(e).map(function(t){return v(t)?n&&(t=_(t)):t=n?H(t):x(Array.isArray(t)?t:[t]),t}).filter(function(t){return 0!==t.size});if(0===r.length)return t;if(1===r.length){var i=r[0];if(i===t||n&&y(i)||S(t)&&S(i))return i}var o=new z(r);return n?o=o.toKeyedSeq():S(t)||(o=o.toSetSeq()),o=o.flatten(!0),o.size=r.reduce(function(t,e){if(void 0!==t){var n=e.size;if(void 0!==n)return t+n}},0),o}function bt(t,e,n){var r=zt(t);return r.__iterateUncached=function(r,i){function o(t,s){var c=this;t.__iterate(function(t,i){return(!e||e>s)&&v(t)?o(t,s+1):r(t,n?i:u++,c)===!1&&(a=!0),!a},i)}var u=0,a=!1;return o(t,0),u},r.__iteratorUncached=function(r,i){var o=t.__iterator(r,i),u=[],a=0;return new E(function(){for(;o;){var t=o.next();if(t.done===!1){var s=t.value;if(r===En&&(s=s[1]),e&&!(u.length0}function Dt(t,e,n){var r=zt(t);return r.size=new z(n).map(function(t){return t.size}).min(),r.__iterate=function(t,e){for(var n,r=this.__iterator(mn,e),i=0;!(n=r.next()).done&&t(n.value,i++,this)!==!1;);return i},r.__iteratorUncached=function(t,r){var i=n.map(function(t){return t=l(t),O(r?t.reverse():t)}),o=0,u=!1;return new E(function(){var n;return u||(n=i.map(function(t){return t.next()}),u=n.some(function(t){return t.done})),u?w():b(t,o++,e.apply(null,n.map(function(t){return t.value})))})},r}function Ct(t,e){return P(t)?e:t.constructor(e)}function Mt(t){if(t!==Object(t))throw new TypeError("Expected [K, V] tuple: "+t)}function Rt(t){return at(t.size),o(t)}function kt(t){return y(t)?_:S(t)?p:d}function zt(t){return Object.create((y(t)?M:S(t)?R:k).prototype)}function Lt(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):C.prototype.cacheResult.call(this)}function jt(t,e){return t>e?1:e>t?-1:0}function Nt(t){var e=O(t);if(!e){if(!D(t))throw new TypeError("Expected iterable or array-like: "+t);e=O(l(t))}return e}function Pt(t){return null===t||void 0===t?Jt():Ut(t)&&!m(t)?t:Jt().withMutations(function(e){var n=_(t);at(n.size),n.forEach(function(t,n){return e.set(n,t)})})}function Ut(t){return!(!t||!t[Un])}function Ht(t,e){this.ownerID=t,this.entries=e}function xt(t,e,n){this.ownerID=t,this.bitmap=e,this.nodes=n}function Vt(t,e,n){this.ownerID=t,this.count=e,this.nodes=n}function qt(t,e,n){this.ownerID=t,this.keyHash=e,this.entries=n}function Gt(t,e,n){this.ownerID=t,this.keyHash=e,this.entry=n}function Ft(t,e,n){this._type=e,this._reverse=n,this._stack=t._root&&Yt(t._root)}function Kt(t,e){return b(t,e[0],e[1])}function Yt(t,e){return{node:t,index:0,__prev:e}}function Bt(t,e,n,r){var i=Object.create(Hn);return i.size=t,i._root=e,i.__ownerID=n,i.__hash=r,i.__altered=!1,i}function Jt(){return xn||(xn=Bt(0))}function Wt(t,n,r){var i,o;if(t._root){var u=e(_n),a=e(pn);if(i=Xt(t._root,t.__ownerID,0,void 0,n,r,u,a),!a.value)return t;o=t.size+(u.value?r===ln?-1:1:0)}else{if(r===ln)return t;o=1,i=new Ht(t.__ownerID,[[n,r]])}return t.__ownerID?(t.size=o,t._root=i,t.__hash=void 0,t.__altered=!0,t):i?Bt(o,i):Jt()}function Xt(t,e,r,i,o,u,a,s){return t?t.update(e,r,i,o,u,a,s):u===ln?t:(n(s),n(a),new Gt(e,i,[o,u]))}function Qt(t){return t.constructor===Gt||t.constructor===qt}function Zt(t,e,n,r,i){if(t.keyHash===r)return new qt(e,r,[t.entry,i]);var o,u=(0===n?t.keyHash:t.keyHash>>>n)&hn,a=(0===n?r:r>>>n)&hn,s=u===a?[Zt(t,e,n+cn,r,i)]:(o=new Gt(e,r,i),a>u?[t,o]:[o,t]);return new xt(e,1<a;a++,s<<=1){var f=e[a];void 0!==f&&a!==r&&(i|=s,u[o++]=f)}return new xt(t,i,u)}function ee(t,e,n,r,i){for(var o=0,u=new Array(fn),a=0;0!==n;a++,n>>>=1)u[a]=1&n?e[o++]:void 0;return u[r]=i,new Vt(t,o+1,u)}function ne(t,e,n){for(var r=[],i=0;i>1&1431655765,t=(858993459&t)+(t>>2&858993459),t=t+(t>>4)&252645135,t+=t>>8,t+=t>>16,127&t}function ae(t,e,n,r){var o=r?t:i(t);return o[e]=n,o}function se(t,e,n,r){var i=t.length+1;if(r&&e+1===i)return t[e]=n,t;for(var o=new Array(i),u=0,a=0;i>a;a++)a===e?(o[a]=n,u=-1):o[a]=t[a+u];return o}function ce(t,e,n){var r=t.length-1;if(n&&e===r)return t.pop(),t;for(var i=new Array(r),o=0,u=0;r>u;u++)u===e&&(o=1),i[u]=t[u+o];return i}function fe(t){var e=de();if(null===t||void 0===t)return e;if(he(t))return t;var n=p(t),r=n.size;return 0===r?e:(at(r),r>0&&fn>r?pe(0,r,cn,null,new le(n.toArray())):e.withMutations(function(t){t.setSize(r),n.forEach(function(e,n){return t.set(n,e)})}))}function he(t){return!(!t||!t[Fn])}function le(t,e){this.array=t,this.ownerID=e}function _e(t,e){function n(t,e,n){return 0===e?r(t,n):i(t,e,n)}function r(t,n){var r=n===a?s&&s.array:t&&t.array,i=n>o?0:o-n,c=u-n;return c>fn&&(c=fn),function(){if(i===c)return Bn;var t=e?--c:i++;return r&&r[t]}}function i(t,r,i){var a,s=t&&t.array,c=i>o?0:o-i>>r,f=(u-i>>r)+1;return f>fn&&(f=fn),function(){for(;;){if(a){var t=a();if(t!==Bn)return t;a=null}if(c===f)return Bn;var o=e?--f:c++;a=n(s&&s[o],r-cn,i+(o<=t.size||0>n)return t.withMutations(function(t){0>n?me(t,n).set(0,r):me(t,0,n+1).set(n,r)});n+=t._origin;var i=t._tail,o=t._root,a=e(pn);return n>=be(t._capacity)?i=ye(i,t.__ownerID,0,n,r,a):o=ye(o,t.__ownerID,t._level,n,r,a),a.value?t.__ownerID?(t._root=o,t._tail=i,t.__hash=void 0,t.__altered=!0,t):pe(t._origin,t._capacity,t._level,o,i):t}function ye(t,e,r,i,o,u){var a=i>>>r&hn,s=t&&a0){var f=t&&t.array[a],h=ye(f,e,r-cn,i,o,u);return h===f?t:(c=Se(t,e),c.array[a]=h,c)}return s&&t.array[a]===o?t:(n(u),c=Se(t,e),void 0===o&&a===c.array.length-1?c.array.pop():c.array[a]=o,c)}function Se(t,e){return e&&t&&e===t.ownerID?t:new le(t?t.array.slice():[],e)}function ge(t,e){if(e>=be(t._capacity))return t._tail;if(e<1<0;)n=n.array[e>>>r&hn],r-=cn;return n}}function me(t,e,n){void 0!==e&&(e=0|e),void 0!==n&&(n=0|n);var i=t.__ownerID||new r,o=t._origin,u=t._capacity,a=o+e,s=void 0===n?u:0>n?u+n:o+n;if(a===o&&s===u)return t;if(a>=s)return t.clear();for(var c=t._level,f=t._root,h=0;0>a+h;)f=new le(f&&f.array.length?[void 0,f]:[],i),c+=cn,h+=1<=1<_?ge(t,s-1):_>l?new le([],i):p;if(p&&_>l&&u>a&&p.array.length){f=Se(f,i);for(var v=f,y=c;y>cn;y-=cn){var S=l>>>y&hn;v=v.array[S]=Se(v.array[S],i)}v.array[l>>>cn&hn]=p}if(u>s&&(d=d&&d.removeAfter(i,0,s)),a>=_)a-=_,s-=_,c=cn,f=null,d=d&&d.removeBefore(i,0,a);else if(a>o||l>_){for(h=0;f;){var g=a>>>c&hn;if(g!==_>>>c&hn)break;g&&(h+=(1<o&&(f=f.removeBefore(i,c,a-h)),f&&l>_&&(f=f.removeAfter(i,c,_-h)),h&&(a-=h,s-=h)}return t.__ownerID?(t.size=s-a,t._origin=a,t._capacity=s,t._level=c,t._root=f,t._tail=d,t.__hash=void 0,t.__altered=!0,t):pe(a,s,c,f,d)}function Ee(t,e,n){for(var r=[],i=0,o=0;oi&&(i=a.size),v(u)||(a=a.map(function(t){return X(t)})),r.push(a)}return i>t.size&&(t=t.setSize(i)),ie(t,e,r)}function be(t){return fn>t?0:t-1>>>cn<=fn&&u.size>=2*o.size?(i=u.filter(function(t,e){return void 0!==t&&a!==e}),r=i.toKeyedSeq().map(function(t){return t[0]}).flip().toMap(),t.__ownerID&&(r.__ownerID=i.__ownerID=t.__ownerID)):(r=o.remove(e),i=a===u.size-1?u.pop():u.set(a,void 0))}else if(s){if(n===u.get(a)[1])return t;r=o,i=u.set(a,[e,n])}else r=o.set(e,u.size),i=u.set(u.size,[e,n]);return t.__ownerID?(t.size=r.size,t._map=r,t._list=i,t.__hash=void 0,t):Te(r,i)}function De(t){return null===t||void 0===t?Re():Ce(t)?t:Re().unshiftAll(t)}function Ce(t){return!(!t||!t[Wn])}function Me(t,e,n,r){var i=Object.create(Xn);return i.size=t,i._head=e,i.__ownerID=n,i.__hash=r,i.__altered=!1,i}function Re(){return Qn||(Qn=Me(0))}function ke(t){return null===t||void 0===t?Ne():ze(t)&&!m(t)?t:Ne().withMutations(function(e){var n=d(t);at(n.size),n.forEach(function(t){return e.add(t)})})}function ze(t){return!(!t||!t[Zn])}function Le(t,e){return t.__ownerID?(t.size=e.size,t._map=e,t):e===t._map?t:0===e.size?t.__empty():t.__make(e)}function je(t,e){var n=Object.create($n);return n.size=t?t.size:0,n._map=t,n.__ownerID=e,n}function Ne(){return tr||(tr=je(Jt()))}function Pe(t){return null===t||void 0===t?xe():Ue(t)?t:xe().withMutations(function(e){var n=d(t);at(n.size),n.forEach(function(t){return e.add(t)})})}function Ue(t){return ze(t)&&m(t)}function He(t,e){var n=Object.create(er);return n.size=t?t.size:0,n._map=t,n.__ownerID=e,n}function xe(){return nr||(nr=He(Oe()))}function Ve(t,e){var n,r=function(o){if(o instanceof r)return o;if(!(this instanceof r))return new r(o);if(!n){n=!0;var u=Object.keys(t);Fe(i,u),i.size=u.length,i._name=e,i._keys=u,i._defaultValues=t}this._map=Pt(o)},i=r.prototype=Object.create(rr);return i.constructor=r,r}function qe(t,e,n){var r=Object.create(Object.getPrototypeOf(t));return r._map=e,r.__ownerID=n,r}function Ge(t){return t._name||t.constructor.name||"Record"}function Fe(t,e){try{e.forEach(Ke.bind(void 0,t))}catch(n){}}function Ke(t,e){Object.defineProperty(t,e,{get:function(){return this.get(e)},set:function(t){ut(this.__ownerID,"Cannot set on an immutable record."),this.set(e,t)}})}function Ye(t,e){if(t===e)return!0;if(!v(e)||void 0!==t.size&&void 0!==e.size&&t.size!==e.size||void 0!==t.__hash&&void 0!==e.__hash&&t.__hash!==e.__hash||y(t)!==y(e)||S(t)!==S(e)||m(t)!==m(e))return!1;if(0===t.size&&0===e.size)return!0;var n=!g(t);if(m(t)){var r=t.entries();return e.every(function(t,e){var i=r.next().value;return i&&W(i[1],t)&&(n||W(i[0],e))})&&r.next().done}var i=!1;if(void 0===t.size)if(void 0===e.size)"function"==typeof t.cacheResult&&t.cacheResult();else{i=!0;var o=t;t=e,e=o}var u=!0,a=e.__iterate(function(e,r){return(n?t.has(e):i?W(e,t.get(r,ln)):W(t.get(r,ln),e))?void 0:(u=!1,!1)});return u&&t.size===a}function Be(t,e,n){if(!(this instanceof Be))return new Be(t,e,n);if(ut(0!==n,"Cannot step a Range by 0"),t=t||0,void 0===e&&(e=1/0),n=void 0===n?1:Math.abs(n),t>e&&(n=-n),this._start=t,this._end=e,this._step=n,this.size=Math.max(0,Math.ceil((e-t)/n-1)+1),0===this.size){if(ir)return ir;ir=this}}function Je(t,e){if(!(this instanceof Je))return new Je(t,e);if(this._value=t,this.size=void 0===e?1/0:Math.max(0,e),0===this.size){if(or)return or;or=this}}function We(t,e){var n=function(n){t.prototype[n]=e[n]};return Object.keys(e).forEach(n),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(e).forEach(n),t}function Xe(t,e){return e}function Qe(t,e){return[e,t]}function Ze(t){return function(){return!t.apply(this,arguments)}}function $e(t){return function(){return-t.apply(this,arguments)}}function tn(t){return"string"==typeof t?JSON.stringify(t):t}function en(){return i(arguments)}function nn(t,e){return e>t?1:t>e?-1:0}function rn(t){if(t.size===1/0)return 0;var e=m(t),n=y(t),r=e?1:0,i=t.__iterate(n?e?function(t,e){r=31*r+un(et(t),et(e))|0}:function(t,e){r=r+un(et(t),et(e))|0}:e?function(t){r=31*r+et(t)|0}:function(t){r=r+et(t)|0});return on(i,r)}function on(t,e){return e=Dn(e,3432918353),e=Dn(e<<15|e>>>-15,461845907),e=Dn(e<<13|e>>>-13,5),e=(e+3864292196|0)^t,e=Dn(e^e>>>16,2246822507),e=Dn(e^e>>>13,3266489909),e=tt(e^e>>>16)}function un(t,e){return t^e+2654435769+(t<<6)+(t>>2)|0}var an=Array.prototype.slice,sn="delete",cn=5,fn=1<=i;i++)if(t(n[e?r-i:i],i,this)===!1)return i+1;return i},z.prototype.__iterator=function(t,e){var n=this._array,r=n.length-1,i=0;return new E(function(){return i>r?w():b(t,i,n[e?r-i++:i++])})},t(L,M),L.prototype.get=function(t,e){return void 0===e||this.has(t)?this._object[t]:e},L.prototype.has=function(t){return this._object.hasOwnProperty(t)},L.prototype.__iterate=function(t,e){for(var n=this._object,r=this._keys,i=r.length-1,o=0;i>=o;o++){var u=r[e?i-o:o];if(t(n[u],u,this)===!1)return o+1}return o},L.prototype.__iterator=function(t,e){var n=this._object,r=this._keys,i=r.length-1,o=0;return new E(function(){var u=r[e?i-o:o];return o++>i?w():b(t,u,n[u])})},L.prototype[Sn]=!0,t(j,R),j.prototype.__iterateUncached=function(t,e){if(e)return this.cacheResult().__iterate(t,e);var n=this._iterable,r=O(n),i=0;if(T(r))for(var o;!(o=r.next()).done&&t(o.value,i++,this)!==!1;);return i},j.prototype.__iteratorUncached=function(t,e){if(e)return this.cacheResult().__iterator(t,e);var n=this._iterable,r=O(n);if(!T(r))return new E(w);var i=0;return new E(function(){var e=r.next();return e.done?e:b(t,i++,e.value)})},t(N,R),N.prototype.__iterateUncached=function(t,e){if(e)return this.cacheResult().__iterate(t,e);for(var n=this._iterator,r=this._iteratorCache,i=0;i=r.length){var e=n.next();if(e.done)return e;r[i]=e.value}return b(t,i,r[i++])})};var On;t(K,l),t(Y,K),t(B,K),t(J,K),K.Keyed=Y,K.Indexed=B,K.Set=J;var An,Dn="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(t,e){t=0|t,e=0|e;var n=65535&t,r=65535&e;return n*r+((t>>>16)*r+n*(e>>>16)<<16>>>0)|0},Cn=Object.isExtensible,Mn=function(){try{return Object.defineProperty({},"@",{}),!0}catch(t){return!1}}(),Rn="function"==typeof WeakMap;Rn&&(An=new WeakMap);var kn=0,zn="__immutablehash__";"function"==typeof Symbol&&(zn=Symbol(zn));var Ln=16,jn=255,Nn=0,Pn={};t(st,M),st.prototype.get=function(t,e){return this._iter.get(t,e)},st.prototype.has=function(t){return this._iter.has(t)},st.prototype.valueSeq=function(){return this._iter.valueSeq()},st.prototype.reverse=function(){var t=this,e=pt(this,!0);return this._useKeys||(e.valueSeq=function(){return t._iter.toSeq().reverse()}),e},st.prototype.map=function(t,e){var n=this,r=_t(this,t,e);return this._useKeys||(r.valueSeq=function(){return n._iter.toSeq().map(t,e)}),r},st.prototype.__iterate=function(t,e){var n,r=this;return this._iter.__iterate(this._useKeys?function(e,n){return t(e,n,r)}:(n=e?Rt(this):0,function(i){return t(i,e?--n:n++,r)}),e)},st.prototype.__iterator=function(t,e){if(this._useKeys)return this._iter.__iterator(t,e);var n=this._iter.__iterator(mn,e),r=e?Rt(this):0;return new E(function(){var i=n.next();return i.done?i:b(t,e?--r:r++,i.value,i)})},st.prototype[Sn]=!0,t(ct,R),ct.prototype.includes=function(t){return this._iter.includes(t)},ct.prototype.__iterate=function(t,e){var n=this,r=0;return this._iter.__iterate(function(e){return t(e,r++,n)},e)},ct.prototype.__iterator=function(t,e){var n=this._iter.__iterator(mn,e),r=0;return new E(function(){var e=n.next();return e.done?e:b(t,r++,e.value,e)})},t(ft,k),ft.prototype.has=function(t){return this._iter.includes(t)},ft.prototype.__iterate=function(t,e){var n=this;return this._iter.__iterate(function(e){return t(e,e,n)},e)},ft.prototype.__iterator=function(t,e){var n=this._iter.__iterator(mn,e);return new E(function(){var e=n.next();return e.done?e:b(t,e.value,e.value,e)})},t(ht,M),ht.prototype.entrySeq=function(){return this._iter.toSeq()},ht.prototype.__iterate=function(t,e){var n=this;return this._iter.__iterate(function(e){
+if(e){Mt(e);var r=v(e);return t(r?e.get(1):e[1],r?e.get(0):e[0],n)}},e)},ht.prototype.__iterator=function(t,e){var n=this._iter.__iterator(mn,e);return new E(function(){for(;;){var e=n.next();if(e.done)return e;var r=e.value;if(r){Mt(r);var i=v(r);return b(t,i?r.get(0):r[0],i?r.get(1):r[1],e)}}})},ct.prototype.cacheResult=st.prototype.cacheResult=ft.prototype.cacheResult=ht.prototype.cacheResult=Lt,t(Pt,Y),Pt.prototype.toString=function(){return this.__toString("Map {","}")},Pt.prototype.get=function(t,e){return this._root?this._root.get(0,void 0,t,e):e},Pt.prototype.set=function(t,e){return Wt(this,t,e)},Pt.prototype.setIn=function(t,e){return this.updateIn(t,ln,function(){return e})},Pt.prototype.remove=function(t){return Wt(this,t,ln)},Pt.prototype.deleteIn=function(t){return this.updateIn(t,function(){return ln})},Pt.prototype.update=function(t,e,n){return 1===arguments.length?t(this):this.updateIn([t],e,n)},Pt.prototype.updateIn=function(t,e,n){n||(n=e,e=void 0);var r=oe(this,Nt(t),e,n);return r===ln?void 0:r},Pt.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Jt()},Pt.prototype.merge=function(){return ne(this,void 0,arguments)},Pt.prototype.mergeWith=function(t){var e=an.call(arguments,1);return ne(this,t,e)},Pt.prototype.mergeIn=function(t){var e=an.call(arguments,1);return this.updateIn(t,Jt(),function(t){return"function"==typeof t.merge?t.merge.apply(t,e):e[e.length-1]})},Pt.prototype.mergeDeep=function(){return ne(this,re(void 0),arguments)},Pt.prototype.mergeDeepWith=function(t){var e=an.call(arguments,1);return ne(this,re(t),e)},Pt.prototype.mergeDeepIn=function(t){var e=an.call(arguments,1);return this.updateIn(t,Jt(),function(t){return"function"==typeof t.mergeDeep?t.mergeDeep.apply(t,e):e[e.length-1]})},Pt.prototype.sort=function(t){return we(Tt(this,t))},Pt.prototype.sortBy=function(t,e){return we(Tt(this,e,t))},Pt.prototype.withMutations=function(t){var e=this.asMutable();return t(e),e.wasAltered()?e.__ensureOwner(this.__ownerID):this},Pt.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new r)},Pt.prototype.asImmutable=function(){return this.__ensureOwner()},Pt.prototype.wasAltered=function(){return this.__altered},Pt.prototype.__iterator=function(t,e){return new Ft(this,t,e)},Pt.prototype.__iterate=function(t,e){var n=this,r=0;return this._root&&this._root.iterate(function(e){return r++,t(e[1],e[0],n)},e),r},Pt.prototype.__ensureOwner=function(t){return t===this.__ownerID?this:t?Bt(this.size,this._root,t,this.__hash):(this.__ownerID=t,this.__altered=!1,this)},Pt.isMap=Ut;var Un="@@__IMMUTABLE_MAP__@@",Hn=Pt.prototype;Hn[Un]=!0,Hn[sn]=Hn.remove,Hn.removeIn=Hn.deleteIn,Ht.prototype.get=function(t,e,n,r){for(var i=this.entries,o=0,u=i.length;u>o;o++)if(W(n,i[o][0]))return i[o][1];return r},Ht.prototype.update=function(t,e,r,o,u,a,s){for(var c=u===ln,f=this.entries,h=0,l=f.length;l>h&&!W(o,f[h][0]);h++);var _=l>h;if(_?f[h][1]===u:c)return this;if(n(s),(c||!_)&&n(a),!c||1!==f.length){if(!_&&!c&&f.length>=Vn)return $t(t,f,o,u);var p=t&&t===this.ownerID,d=p?f:i(f);return _?c?h===l-1?d.pop():d[h]=d.pop():d[h]=[o,u]:d.push([o,u]),p?(this.entries=d,this):new Ht(t,d)}},xt.prototype.get=function(t,e,n,r){void 0===e&&(e=et(n));var i=1<<((0===t?e:e>>>t)&hn),o=this.bitmap;return 0===(o&i)?r:this.nodes[ue(o&i-1)].get(t+cn,e,n,r)},xt.prototype.update=function(t,e,n,r,i,o,u){void 0===n&&(n=et(r));var a=(0===e?n:n>>>e)&hn,s=1<=qn)return ee(t,l,c,a,p);if(f&&!p&&2===l.length&&Qt(l[1^h]))return l[1^h];if(f&&p&&1===l.length&&Qt(p))return p;var d=t&&t===this.ownerID,v=f?p?c:c^s:c|s,y=f?p?ae(l,h,p,d):ce(l,h,d):se(l,h,p,d);return d?(this.bitmap=v,this.nodes=y,this):new xt(t,v,y)},Vt.prototype.get=function(t,e,n,r){void 0===e&&(e=et(n));var i=(0===t?e:e>>>t)&hn,o=this.nodes[i];return o?o.get(t+cn,e,n,r):r},Vt.prototype.update=function(t,e,n,r,i,o,u){void 0===n&&(n=et(r));var a=(0===e?n:n>>>e)&hn,s=i===ln,c=this.nodes,f=c[a];if(s&&!f)return this;var h=Xt(f,t,e+cn,n,r,i,o,u);if(h===f)return this;var l=this.count;if(f){if(!h&&(l--,Gn>l))return te(t,c,l,a)}else l++;var _=t&&t===this.ownerID,p=ae(c,a,h,_);return _?(this.count=l,this.nodes=p,this):new Vt(t,l,p)},qt.prototype.get=function(t,e,n,r){for(var i=this.entries,o=0,u=i.length;u>o;o++)if(W(n,i[o][0]))return i[o][1];return r},qt.prototype.update=function(t,e,r,o,u,a,s){void 0===r&&(r=et(o));var c=u===ln;if(r!==this.keyHash)return c?this:(n(s),n(a),Zt(this,t,e,r,[o,u]));for(var f=this.entries,h=0,l=f.length;l>h&&!W(o,f[h][0]);h++);var _=l>h;if(_?f[h][1]===u:c)return this;if(n(s),(c||!_)&&n(a),c&&2===l)return new Gt(t,this.keyHash,f[1^h]);var p=t&&t===this.ownerID,d=p?f:i(f);return _?c?h===l-1?d.pop():d[h]=d.pop():d[h]=[o,u]:d.push([o,u]),p?(this.entries=d,this):new qt(t,this.keyHash,d)},Gt.prototype.get=function(t,e,n,r){return W(n,this.entry[0])?this.entry[1]:r},Gt.prototype.update=function(t,e,r,i,o,u,a){var s=o===ln,c=W(i,this.entry[0]);return(c?o===this.entry[1]:s)?this:(n(a),s?void n(u):c?t&&t===this.ownerID?(this.entry[1]=o,this):new Gt(t,this.keyHash,[i,o]):(n(u),Zt(this,t,e,et(i),[i,o])))},Ht.prototype.iterate=qt.prototype.iterate=function(t,e){for(var n=this.entries,r=0,i=n.length-1;i>=r;r++)if(t(n[e?i-r:r])===!1)return!1},xt.prototype.iterate=Vt.prototype.iterate=function(t,e){for(var n=this.nodes,r=0,i=n.length-1;i>=r;r++){var o=n[e?i-r:r];if(o&&o.iterate(t,e)===!1)return!1}},Gt.prototype.iterate=function(t,e){return t(this.entry)},t(Ft,E),Ft.prototype.next=function(){for(var t=this._type,e=this._stack;e;){var n,r=e.node,i=e.index++;if(r.entry){if(0===i)return Kt(t,r.entry)}else if(r.entries){if(n=r.entries.length-1,n>=i)return Kt(t,r.entries[this._reverse?n-i:i])}else if(n=r.nodes.length-1,n>=i){var o=r.nodes[this._reverse?n-i:i];if(o){if(o.entry)return Kt(t,o.entry);e=this._stack=Yt(o,e)}continue}e=this._stack=this._stack.__prev}return w()};var xn,Vn=fn/4,qn=fn/2,Gn=fn/4;t(fe,B),fe.of=function(){return this(arguments)},fe.prototype.toString=function(){return this.__toString("List [","]")},fe.prototype.get=function(t,e){if(t=u(this,t),t>=0&&t>>e&hn;if(r>=this.array.length)return new le([],t);var i,o=0===r;if(e>0){var u=this.array[r];if(i=u&&u.removeBefore(t,e-cn,n),i===u&&o)return this}if(o&&!i)return this;var a=Se(this,t);if(!o)for(var s=0;r>s;s++)a.array[s]=void 0;return i&&(a.array[r]=i),a},le.prototype.removeAfter=function(t,e,n){if(n===(e?1<>>e&hn;if(r>=this.array.length)return this;var i;if(e>0){var o=this.array[r];if(i=o&&o.removeAfter(t,e-cn,n),i===o&&r===this.array.length-1)return this}var u=Se(this,t);return u.array.splice(r+1),i&&(u.array[r]=i),u};var Yn,Bn={};t(we,Pt),we.of=function(){return this(arguments)},we.prototype.toString=function(){return this.__toString("OrderedMap {","}")},we.prototype.get=function(t,e){var n=this._map.get(t);return void 0!==n?this._list.get(n)[1]:e},we.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._map.clear(),this._list.clear(),this):Oe()},we.prototype.set=function(t,e){return Ae(this,t,e)},we.prototype.remove=function(t){return Ae(this,t,ln)},we.prototype.wasAltered=function(){return this._map.wasAltered()||this._list.wasAltered()},we.prototype.__iterate=function(t,e){var n=this;return this._list.__iterate(function(e){return e&&t(e[1],e[0],n)},e)},we.prototype.__iterator=function(t,e){return this._list.fromEntrySeq().__iterator(t,e)},we.prototype.__ensureOwner=function(t){if(t===this.__ownerID)return this;var e=this._map.__ensureOwner(t),n=this._list.__ensureOwner(t);return t?Te(e,n,t,this.__hash):(this.__ownerID=t,this._map=e,this._list=n,this)},we.isOrderedMap=Ie,we.prototype[Sn]=!0,we.prototype[sn]=we.prototype.remove;var Jn;t(De,B),De.of=function(){return this(arguments)},De.prototype.toString=function(){return this.__toString("Stack [","]")},De.prototype.get=function(t,e){var n=this._head;for(t=u(this,t);n&&t--;)n=n.next;return n?n.value:e},De.prototype.peek=function(){return this._head&&this._head.value},De.prototype.push=function(){if(0===arguments.length)return this;for(var t=this.size+arguments.length,e=this._head,n=arguments.length-1;n>=0;n--)e={value:arguments[n],next:e};return this.__ownerID?(this.size=t,this._head=e,this.__hash=void 0,this.__altered=!0,this):Me(t,e)},De.prototype.pushAll=function(t){if(t=p(t),0===t.size)return this;at(t.size);var e=this.size,n=this._head;return t.reverse().forEach(function(t){e++,n={value:t,next:n}}),this.__ownerID?(this.size=e,this._head=n,this.__hash=void 0,this.__altered=!0,this):Me(e,n)},De.prototype.pop=function(){return this.slice(1)},De.prototype.unshift=function(){return this.push.apply(this,arguments)},De.prototype.unshiftAll=function(t){return this.pushAll(t)},De.prototype.shift=function(){return this.pop.apply(this,arguments)},De.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):Re()},De.prototype.slice=function(t,e){if(s(t,e,this.size))return this;var n=c(t,this.size),r=f(e,this.size);if(r!==this.size)return B.prototype.slice.call(this,t,e);for(var i=this.size-n,o=this._head;n--;)o=o.next;return this.__ownerID?(this.size=i,this._head=o,this.__hash=void 0,this.__altered=!0,this):Me(i,o)},De.prototype.__ensureOwner=function(t){return t===this.__ownerID?this:t?Me(this.size,this._head,t,this.__hash):(this.__ownerID=t,this.__altered=!1,this)},De.prototype.__iterate=function(t,e){if(e)return this.reverse().__iterate(t);for(var n=0,r=this._head;r&&t(r.value,n++,this)!==!1;)r=r.next;return n},De.prototype.__iterator=function(t,e){if(e)return this.reverse().__iterator(t);var n=0,r=this._head;return new E(function(){if(r){var e=r.value;return r=r.next,b(t,n++,e)}return w()})},De.isStack=Ce;var Wn="@@__IMMUTABLE_STACK__@@",Xn=De.prototype;Xn[Wn]=!0,Xn.withMutations=Hn.withMutations,Xn.asMutable=Hn.asMutable,Xn.asImmutable=Hn.asImmutable,Xn.wasAltered=Hn.wasAltered;var Qn;t(ke,J),ke.of=function(){return this(arguments)},ke.fromKeys=function(t){return this(_(t).keySeq())},ke.prototype.toString=function(){return this.__toString("Set {","}")},ke.prototype.has=function(t){return this._map.has(t)},ke.prototype.add=function(t){return Le(this,this._map.set(t,!0))},ke.prototype.remove=function(t){return Le(this,this._map.remove(t))},ke.prototype.clear=function(){return Le(this,this._map.clear())},ke.prototype.union=function(){var t=an.call(arguments,0);return t=t.filter(function(t){return 0!==t.size}),0===t.length?this:0!==this.size||this.__ownerID||1!==t.length?this.withMutations(function(e){for(var n=0;n1?" by "+this._step:"")+" ]"},Be.prototype.get=function(t,e){return this.has(t)?this._start+u(this,t)*this._step:e},Be.prototype.includes=function(t){var e=(t-this._start)/this._step;return e>=0&&e=e?new Be(0,0):new Be(this.get(t,this._end),this.get(e,this._end),this._step))},Be.prototype.indexOf=function(t){var e=t-this._start;if(e%this._step===0){var n=e/this._step;if(n>=0&&n=o;o++){if(t(i,o,this)===!1)return o+1;i+=e?-r:r}return o},Be.prototype.__iterator=function(t,e){var n=this.size-1,r=this._step,i=e?this._start+n*r:this._start,o=0;return new E(function(){var u=i;return i+=e?-r:r,o>n?w():b(t,o++,u)})},Be.prototype.equals=function(t){return t instanceof Be?this._start===t._start&&this._end===t._end&&this._step===t._step:Ye(this,t)};var ir;t(Je,R),Je.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},Je.prototype.get=function(t,e){return this.has(t)?this._value:e},Je.prototype.includes=function(t){return W(this._value,t)},Je.prototype.slice=function(t,e){var n=this.size;return s(t,e,n)?this:new Je(this._value,f(e,n)-c(t,n))},Je.prototype.reverse=function(){return this},Je.prototype.indexOf=function(t){return W(this._value,t)?0:-1},Je.prototype.lastIndexOf=function(t){return W(this._value,t)?this.size:-1},Je.prototype.__iterate=function(t,e){for(var n=0;nt?this.count():this.size);var r=this.slice(0,t);return Ct(this,1===n?r:r.concat(i(arguments,2),this.slice(t+e)))},findLastIndex:function(t,e){var n=this.toKeyedSeq().findLastKey(t,e);return void 0===n?-1:n},first:function(){return this.get(0)},flatten:function(t){return Ct(this,bt(this,t,!1))},get:function(t,e){return t=u(this,t),0>t||this.size===1/0||void 0!==this.size&&t>this.size?e:this.find(function(e,n){return n===t},void 0,e)},has:function(t){return t=u(this,t),t>=0&&(void 0!==this.size?this.size===1/0||t-1&&t%1===0&&t<=Number.MAX_VALUE}var i=Function.prototype.bind;e.isString=function(t){return"string"==typeof t||"[object String]"===n(t)},e.isArray=Array.isArray||function(t){return"[object Array]"===n(t)},"function"!=typeof/./&&"object"!=typeof Int8Array?e.isFunction=function(t){return"function"==typeof t||!1}:e.isFunction=function(t){return"[object Function]"===toString.call(t)},e.isObject=function(t){var e=typeof t;return"function"===e||"object"===e&&!!t},e.extend=function(t){var e=arguments.length;if(!t||2>e)return t||{};for(var n=1;e>n;n++)for(var r=arguments[n],i=Object.keys(r),o=i.length,u=0;o>u;u++){var a=i[u];t[a]=r[a]}return t},e.clone=function(t){return e.isObject(t)?e.isArray(t)?t.slice():e.extend({},t):t},e.each=function(t,e,n){var i,o,u=t?t.length:0,a=-1;if(n&&(o=e,e=function(t,e,r){return o.call(n,t,e,r)}),r(u))for(;++ar;r++)n[r]=arguments[r];return new(i.apply(t,[null].concat(n)))};return e.__proto__=t,e.prototype=t.prototype,e}},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t){return c["default"].Iterable.isIterable(t)}function o(t){return i(t)||!(0,f.isObject)(t)}function u(t){return i(t)?t.toJS():t}function a(t){return i(t)?t:c["default"].fromJS(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.isImmutable=i,e.isImmutableValue=o,e.toJS=u,e.toImmutable=a;var s=n(3),c=r(s),f=n(4)},function(t,e,n){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}function i(t){return t&&t.__esModule?t:{"default":t}}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function u(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var a=function(){function t(t,e){for(var n=0;n0)){var e=this.reactorState.get("dirtyStores");if(0!==e.size){var n=c["default"].Set().withMutations(function(n){n.union(t.observerState.get("any")),e.forEach(function(e){var r=t.observerState.getIn(["stores",e]);
+r&&n.union(r)})});n.forEach(function(e){var n=t.observerState.getIn(["observersMap",e]);if(n){var r=n.get("getter"),i=n.get("handler"),o=_.evaluate(t.prevReactorState,r),u=_.evaluate(t.reactorState,r);t.prevReactorState=o.reactorState,t.reactorState=u.reactorState;var a=o.result,s=u.result;c["default"].is(a,s)||i.call(null,s)}});var r=_.resetDirtyStores(this.reactorState);this.prevReactorState=r,this.reactorState=r}}}},{key:"batchStart",value:function(){this.__batchDepth++}},{key:"batchEnd",value:function(){if(this.__batchDepth--,this.__batchDepth<=0){this.__isDispatching=!0;try{this.__notify()}catch(t){throw this.__isDispatching=!1,t}this.__isDispatching=!1}}}]),t}();e["default"]=(0,y.toFactory)(g),t.exports=e["default"]},function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){var n={};return(0,o.each)(e,function(e,r){n[r]=t.evaluate(e)}),n}Object.defineProperty(e,"__esModule",{value:!0});var o=n(4);e["default"]=function(t){return{getInitialState:function(){return i(t,this.getDataBindings())},componentDidMount:function(){var e=this;this.__unwatchFns=[],(0,o.each)(this.getDataBindings(),function(n,i){var o=t.observe(n,function(t){e.setState(r({},i,t))});e.__unwatchFns.push(o)})},componentWillUnmount:function(){for(;this.__unwatchFns.length;)this.__unwatchFns.shift()()}}},t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t,e){return new k({result:t,reactorState:e})}function o(t,e){return t.withMutations(function(t){(0,R.each)(e,function(e,n){t.getIn(["stores",n])&&console.warn("Store already defined for id = "+n);var r=e.getInitialState();if(void 0===r&&f(t,"throwOnUndefinedStoreReturnValue"))throw new Error("Store getInitialState() must return a value, did you forget a return statement");if(f(t,"throwOnNonImmutableStore")&&!(0,D.isImmutableValue)(r))throw new Error("Store getInitialState() must return an immutable value, did you forget to call toImmutable");t.update("stores",function(t){return t.set(n,e)}).update("state",function(t){return t.set(n,r)}).update("dirtyStores",function(t){return t.add(n)}).update("storeStates",function(t){return w(t,[n])})}),b(t)})}function u(t,e){return t.withMutations(function(t){(0,R.each)(e,function(e,n){t.update("stores",function(t){return t.set(n,e)})})})}function a(t,e,n){if(void 0===e&&f(t,"throwOnUndefinedActionType"))throw new Error("`dispatch` cannot be called with an `undefined` action type.");var r=t.get("state"),i=t.get("dirtyStores"),o=r.withMutations(function(r){A["default"].dispatchStart(t,e,n),t.get("stores").forEach(function(o,u){var a=r.get(u),s=void 0;try{s=o.handle(a,e,n)}catch(c){throw A["default"].dispatchError(t,c.message),c}if(void 0===s&&f(t,"throwOnUndefinedStoreReturnValue")){var h="Store handler must return a value, did you forget a return statement";throw A["default"].dispatchError(t,h),new Error(h)}r.set(u,s),a!==s&&(i=i.add(u))}),A["default"].dispatchEnd(t,r,i)}),u=t.set("state",o).set("dirtyStores",i).update("storeStates",function(t){return w(t,i)});return b(u)}function s(t,e){var n=[],r=(0,D.toImmutable)({}).withMutations(function(r){(0,R.each)(e,function(e,i){var o=t.getIn(["stores",i]);if(o){var u=o.deserialize(e);void 0!==u&&(r.set(i,u),n.push(i))}})}),i=T["default"].Set(n);return t.update("state",function(t){return t.merge(r)}).update("dirtyStores",function(t){return t.union(i)}).update("storeStates",function(t){return w(t,n)})}function c(t,e,n){var r=e;(0,M.isKeyPath)(e)&&(e=(0,C.fromKeyPath)(e));var i=t.get("nextId"),o=(0,C.getStoreDeps)(e),u=T["default"].Map({id:i,storeDeps:o,getterKey:r,getter:e,handler:n}),a=void 0;return a=0===o.size?t.update("any",function(t){return t.add(i)}):t.withMutations(function(t){o.forEach(function(e){var n=["stores",e];t.hasIn(n)||t.setIn(n,T["default"].Set()),t.updateIn(["stores",e],function(t){return t.add(i)})})}),a=a.set("nextId",i+1).setIn(["observersMap",i],u),{observerState:a,entry:u}}function f(t,e){var n=t.getIn(["options",e]);if(void 0===n)throw new Error("Invalid option: "+e);return n}function h(t,e,n){var r=t.get("observersMap").filter(function(t){var r=t.get("getterKey"),i=!n||t.get("handler")===n;return i?(0,M.isKeyPath)(e)&&(0,M.isKeyPath)(r)?(0,M.isEqual)(e,r):e===r:!1});return t.withMutations(function(t){r.forEach(function(e){return l(t,e)})})}function l(t,e){return t.withMutations(function(t){var n=e.get("id"),r=e.get("storeDeps");0===r.size?t.update("any",function(t){return t.remove(n)}):r.forEach(function(e){t.updateIn(["stores",e],function(t){return t?t.remove(n):t})}),t.removeIn(["observersMap",n])})}function _(t){var e=t.get("state");return t.withMutations(function(t){var n=t.get("stores"),r=n.keySeq().toJS();n.forEach(function(n,r){var i=e.get(r),o=n.handleReset(i);if(void 0===o&&f(t,"throwOnUndefinedStoreReturnValue"))throw new Error("Store handleReset() must return a value, did you forget a return statement");if(f(t,"throwOnNonImmutableStore")&&!(0,D.isImmutableValue)(o))throw new Error("Store reset state must be an immutable value, did you forget to call toImmutable");t.setIn(["state",r],o)}),t.update("storeStates",function(t){return w(t,r)}),v(t)})}function p(t,e){var n=t.get("state");if((0,M.isKeyPath)(e))return i(n.getIn(e),t);if(!(0,C.isGetter)(e))throw new Error("evaluate must be passed a keyPath or Getter");if(g(t,e))return i(E(t,e),t);var r=(0,C.getDeps)(e).map(function(e){return p(t,e).result}),o=(0,C.getComputeFn)(e).apply(null,r);return i(o,m(t,e,o))}function d(t){var e={};return t.get("stores").forEach(function(n,r){var i=t.getIn(["state",r]),o=n.serialize(i);void 0!==o&&(e[r]=o)}),e}function v(t){return t.set("dirtyStores",T["default"].Set())}function y(t){return t}function S(t,e){var n=y(e);return t.getIn(["cache",n])}function g(t,e){var n=S(t,e);if(!n)return!1;var r=n.get("storeStates");return 0===r.size?!1:r.every(function(e,n){return t.getIn(["storeStates",n])===e})}function m(t,e,n){var r=y(e),i=t.get("dispatchId"),o=(0,C.getStoreDeps)(e),u=(0,D.toImmutable)({}).withMutations(function(e){o.forEach(function(n){var r=t.getIn(["storeStates",n]);e.set(n,r)})});return t.setIn(["cache",r],T["default"].Map({value:n,storeStates:u,dispatchId:i}))}function E(t,e){var n=y(e);return t.getIn(["cache",n,"value"])}function b(t){return t.update("dispatchId",function(t){return t+1})}function w(t,e){return t.withMutations(function(t){e.forEach(function(e){var n=t.has(e)?t.get(e)+1:1;t.set(e,n)})})}Object.defineProperty(e,"__esModule",{value:!0}),e.registerStores=o,e.replaceStores=u,e.dispatch=a,e.loadState=s,e.addObserver=c,e.getOption=f,e.removeObserver=h,e.removeObserverByEntry=l,e.reset=_,e.evaluate=p,e.serialize=d,e.resetDirtyStores=v;var I=n(3),T=r(I),O=n(9),A=r(O),D=n(5),C=n(10),M=n(11),R=n(4),k=T["default"].Record({result:null,reactorState:null})},function(t,e,n){"use strict";var r=n(8);e.dispatchStart=function(t,e,n){(0,r.getOption)(t,"logDispatches")&&console.group&&(console.groupCollapsed("Dispatch: %s",e),console.group("payload"),console.debug(n),console.groupEnd())},e.dispatchError=function(t,e){(0,r.getOption)(t,"logDispatches")&&console.group&&(console.debug("Dispatch error: "+e),console.groupEnd())},e.dispatchEnd=function(t,e,n){(0,r.getOption)(t,"logDispatches")&&console.group&&((0,r.getOption)(t,"logDirtyStores")&&console.log("Stores updated:",n.toList().toJS()),(0,r.getOption)(t,"logAppState")&&console.debug("Dispatch done, new state: ",e.toJS()),console.groupEnd())}},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t){return(0,l.isArray)(t)&&(0,l.isFunction)(t[t.length-1])}function o(t){return t[t.length-1]}function u(t){return t.slice(0,t.length-1)}function a(t,e){e||(e=h["default"].Set());var n=h["default"].Set().withMutations(function(e){if(!i(t))throw new Error("getFlattenedDeps must be passed a Getter");u(t).forEach(function(t){if((0,_.isKeyPath)(t))e.add((0,f.List)(t));else{if(!i(t))throw new Error("Invalid getter, each dependency must be a KeyPath or Getter");e.union(a(t))}})});return e.union(n)}function s(t){if(!(0,_.isKeyPath)(t))throw new Error("Cannot create Getter from KeyPath: "+t);return[t,p]}function c(t){if(t.hasOwnProperty("__storeDeps"))return t.__storeDeps;var e=a(t).map(function(t){return t.first()}).filter(function(t){return!!t});return Object.defineProperty(t,"__storeDeps",{enumerable:!1,configurable:!1,writable:!1,value:e}),e}Object.defineProperty(e,"__esModule",{value:!0});var f=n(3),h=r(f),l=n(4),_=n(11),p=function(t){return t};e["default"]={isGetter:i,getComputeFn:o,getFlattenedDeps:a,getStoreDeps:c,getDeps:u,fromKeyPath:s},t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t){return(0,s.isArray)(t)&&!(0,s.isFunction)(t[t.length-1])}function o(t,e){var n=a["default"].List(t),r=a["default"].List(e);return a["default"].is(n,r)}Object.defineProperty(e,"__esModule",{value:!0}),e.isKeyPath=i,e.isEqual=o;var u=n(3),a=r(u),s=n(4)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(3),i=(0,r.Map)({logDispatches:!1,logAppState:!1,logDirtyStores:!1,throwOnUndefinedActionType:!1,throwOnUndefinedStoreReturnValue:!1,throwOnNonImmutableStore:!1,throwOnDispatchInDispatch:!1});e.PROD_OPTIONS=i;var o=(0,r.Map)({logDispatches:!0,logAppState:!0,logDirtyStores:!0,throwOnUndefinedActionType:!0,throwOnUndefinedStoreReturnValue:!0,throwOnNonImmutableStore:!0,throwOnDispatchInDispatch:!0});e.DEBUG_OPTIONS=o;var u=(0,r.Record)({dispatchId:0,state:(0,r.Map)(),stores:(0,r.Map)(),cache:(0,r.Map)(),storeStates:(0,r.Map)(),dirtyStores:(0,r.Set)(),debug:!1,options:i});e.ReactorState=u;var a=(0,r.Record)({any:(0,r.Set)(),stores:(0,r.Map)({}),observersMap:(0,r.Map)({}),nextId:1});e.ObserverState=a}])})},function(t,e){"use strict";var n=function(t){var e,n={};if(!(t instanceof Object)||Array.isArray(t))throw new Error("keyMirror(...): Argument must be an object.");for(e in t)t.hasOwnProperty(e)&&(n[e]=e);return n};t.exports=n},function(t,e,n){"use strict";var r=n(65);n.d(e,"a",function(){return i});var i=r.a},function(t,e,n){"use strict";var r=n(81),i=n(83);n.d(e,"actions",function(){return o}),n.d(e,"getters",function(){return u});var o=r.a,u=i},,function(t,e,n){"use strict";function r(t){t.registerStores({restApiCache:c.a})}function i(t){return[["restApiCache",t.entity],function(t){return!!t}]}function o(t){return[["restApiCache",t.entity],function(t){return t||n.i(a.toImmutable)({})}]}function u(t){return function(e){return["restApiCache",t.entity,e]}}var a=n(1),s=a&&a.__esModule?function(){return a["default"]}:function(){return a};n.d(s,"a",s);var c=n(108),f=n(107);n.d(e,"createApiActions",function(){return h}),e.register=r,e.createHasDataGetter=i,e.createEntityMapGetter=o,e.createByIdGetter=u;var h=f.a},function(t,e,n){"use strict";var r=n(2),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i),e.a=i()({ENTITY_HISTORY_DATE_SELECTED:null,ENTITY_HISTORY_FETCH_START:null,ENTITY_HISTORY_FETCH_ERROR:null,ENTITY_HISTORY_FETCH_SUCCESS:null,RECENT_ENTITY_HISTORY_FETCH_START:null,RECENT_ENTITY_HISTORY_FETCH_ERROR:null,RECENT_ENTITY_HISTORY_FETCH_SUCCESS:null,LOG_OUT:null})},function(t,e,n){"use strict";var r=n(2),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i),e.a=i()({LOGBOOK_DATE_SELECTED:null,LOGBOOK_ENTRIES_FETCH_START:null,LOGBOOK_ENTRIES_FETCH_ERROR:null,LOGBOOK_ENTRIES_FETCH_SUCCESS:null})},function(t,e,n){"use strict";var r=n(109),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i);var o=n(39);n.d(e,"actions",function(){return u}),n.d(e,"getters",function(){return a});var u=i.a,a=o},function(t,e,n){"use strict";var r=n(2),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i),e.a=i()({VALIDATING_AUTH_TOKEN:null,VALID_AUTH_TOKEN:null,INVALID_AUTH_TOKEN:null,LOG_OUT:null})},function(t,e,n){"use strict";function r(t){t.registerStores({authAttempt:i.a,authCurrent:o.a,rememberAuth:u.a})}var i=n(68),o=n(69),u=n(70),a=n(66),s=n(67);e.register=r,n.d(e,"actions",function(){return c}),n.d(e,"getters",function(){return f});var c=a,f=s},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var u=n(1),a=u&&u.__esModule?function(){return u["default"]}:function(){return u};n.d(a,"a",a);var s=n(82),c=n(26),f=n(3),h=function(){function t(t,e){var n=[],r=!0,i=!1,o=void 0;try{for(var u,a=t[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!e||n.length!==e);r=!0);}catch(s){i=!0,o=s}finally{try{!r&&a["return"]&&a["return"]()}finally{if(i)throw o}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),l=function(){function t(t,e){for(var n=0;nn;n++)e["_"+String.fromCharCode(n)]=n;var r=Object.getOwnPropertyNames(e).map(function(t){return e[t]});if("0123456789"!==r.join(""))return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(t){i[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},i)).join("")}catch(o){return!1}}var i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;t.exports=r()?Object.assign:function(t,e){for(var r,u,a=n(t),s=1;s6e4}e.a=r},,,,,,,,function(t,e,n){var r=n(181);t.exports=function(t,e,n){function i(){var f=r()-s;e>f&&f>0?o=setTimeout(i,e-f):(o=null,n||(c=t.apply(a,u),o||(a=u=null)))}var o,u,a,s,c;return null==e&&(e=100),function(){a=this,u=arguments,s=r();var f=n&&!o;return o||(o=setTimeout(i,e)),f&&(c=t.apply(a,u),a=u=null),c}}},,,,function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var i=n(105),o=n(130),u=n(132),a=n(134),s=n(11),c=n(17),f=n(4),h=n(31),l=n(85),_=n(18),p=n(90),d=n(34),v=n(37),y=n(20),S=n(44),g=n(9),m=n(22),E=n(24),b=n(121),w=n(127),I=n(6),T=function O(){r(this,O);var t=n.i(o.a)();Object.defineProperties(this,{demo:{value:1,enumerable:!0},localStoragePreferences:{value:i.a,enumerable:!0},reactor:{value:t,enumerable:!0},util:{value:a.a,enumerable:!0},startLocalStoragePreferencesSync:{value:i.a.startSync.bind(i.a,t)},startUrlSync:{value:v.urlSync.startSync.bind(null,t)},stopUrlSync:{value:v.urlSync.stopSync.bind(null,t)}}),n.i(u.a)(this,t,{auth:s,config:c,entity:f,entityHistory:h,errorLog:l,event:_,logbook:p,moreInfo:d,navigation:v,notification:y,view:S,service:g,stream:m,sync:E,template:b,voice:w,restApi:I})};e.a=T},,,,,,,function(t,e,n){"use strict";function r(t,e,n){var r=arguments.length<=3||void 0===arguments[3]?null:arguments[3],u=t.evaluate(i.getters.authInfo),a=u.host+"/api/"+n,s=function(){var t=n.split("/",1)[0],e=void 0;switch(t){case"bootstrap":e=window.hassDemoData.bootstrap;break;case"logbook":e=window.hassDemoData.logbook;break;case"history":e=window.hassDemoData.stateHistory;break;default:e=!1}return{v:new Promise(function(t,n){e?t(e):n("Request not allowed in demo mode.")})}}();return"object"===("undefined"==typeof s?"undefined":o(s))?s.v:new Promise(function(t,n){var i=new XMLHttpRequest;i.open(e,a,!0),i.setRequestHeader("X-HA-access",u.authToken),i.onload=function(){var e=void 0;try{e="application/json"===i.getResponseHeader("content-type")?JSON.parse(i.responseText):i.responseText}catch(r){e=i.responseText}i.status>199&&i.status<300?t(e):n(e)},i.onerror=function(){return n({})},r?i.send(JSON.stringify(r)):i.send()})}var i=n(11);e.a=r;var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t}},function(t,e,n){"use strict";function r(t,e){var n=arguments.length<=2||void 0===arguments[2]?{}:arguments[2],r=n.useStreaming,i=(void 0===r?t.evaluate(u.getters.isSupported):r,n.rememberAuth),c=void 0===i?!1:i,f=n.host,h=void 0===f?"":f;h="/demo",t.dispatch(o.a.VALIDATING_AUTH_TOKEN,{authToken:e,host:h}),a.actions.fetchAll(t).then(function(){return t.dispatch(o.a.VALID_AUTH_TOKEN,{authToken:e,host:h,rememberAuth:c}),void t.dispatch("STREAM_START")},function(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],n=e.message,r=void 0===n?s:n;t.dispatch(o.a.INVALID_AUTH_TOKEN,{errorMessage:r})})}function i(t){t.dispatch(o.a.LOG_OUT,{})}var o=n(10),u=n(22),a=n(24);e.validate=r,e.logOut=i;var s="Unexpected result from API"},function(t,e,n){"use strict";n.d(e,"isValidating",function(){return r}),n.d(e,"isInvalidAttempt",function(){return i}),n.d(e,"attemptErrorMessage",function(){return o}),n.d(e,"rememberAuth",function(){return u}),n.d(e,"attemptAuthInfo",function(){return a}),n.d(e,"currentAuthToken",function(){return s}),n.d(e,"currentAuthInfo",function(){return c}),n.d(e,"authToken",function(){return f}),n.d(e,"authInfo",function(){return h});var r=["authAttempt","isValidating"],i=["authAttempt","isInvalid"],o=["authAttempt","errorMessage"],u=["rememberAuth"],a=[["authAttempt","authToken"],["authAttempt","host"],function(t,e){return{authToken:t,host:e}}],s=["authCurrent","authToken"],c=[s,["authCurrent","host"],function(t,e){return{authToken:t,host:e}}],f=[r,["authAttempt","authToken"],["authCurrent","authToken"],function(t,e,n){return t?e:n}],h=[r,a,c,function(t,e,n){return t?e:n}]},function(t,e,n){"use strict";function r(t,e){var r=e.authToken,i=e.host;return n.i(u.toImmutable)({authToken:r,host:i,isValidating:!0,isInvalid:!1,errorMessage:""})}function i(){return c.getInitialState()}function o(t,e){var n=e.errorMessage;return t.withMutations(function(t){return t.set("isValidating",!1).set("isInvalid",!0).set("errorMessage",n)})}var u=n(1),a=u&&u.__esModule?function(){return u["default"]}:function(){return u};n.d(a,"a",a);var s=n(10),c=new u.Store({getInitialState:function(){return n.i(u.toImmutable)({isValidating:!1,authToken:!1,host:null,isInvalid:!1,errorMessage:""})},initialize:function(){this.on(s.a.VALIDATING_AUTH_TOKEN,r),this.on(s.a.VALID_AUTH_TOKEN,i),this.on(s.a.INVALID_AUTH_TOKEN,o)}});e.a=c},function(t,e,n){"use strict";function r(t,e){var r=e.authToken,i=e.host;return n.i(o.toImmutable)({authToken:r,host:i})}function i(){return s.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(10),s=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({authToken:null,host:""})},initialize:function(){this.on(a.a.VALID_AUTH_TOKEN,r),this.on(a.a.LOG_OUT,i)}});e.a=s},function(t,e,n){"use strict";function r(t,e){var n=e.rememberAuth;return n}var i=n(1),o=i&&i.__esModule?function(){return i["default"]}:function(){return i};n.d(o,"a",o);var u=n(10),a=new i.Store({getInitialState:function(){return!0},initialize:function(){this.on(u.a.VALID_AUTH_TOKEN,r)}});e.a=a},function(t,e,n){"use strict";function r(t,e){t.dispatch(a.a.SERVER_CONFIG_LOADED,e)}function i(t){n.i(u.a)(t,"GET","config").then(function(e){return r(t,e)})}function o(t,e){t.dispatch(a.a.COMPONENT_LOADED,{component:e})}var u=n(3),a=n(16);e.configLoaded=r,e.fetchAll=i,e.componentLoaded=o},function(t,e,n){"use strict";function r(t){return[["serverComponent"],function(e){return e.contains(t)}]}n.d(e,"locationGPS",function(){return i}),n.d(e,"locationName",function(){return o}),n.d(e,"serverVersion",function(){return u}),e.isComponentLoaded=r;var i=[["serverConfig","latitude"],["serverConfig","longitude"],function(t,e){return{latitude:t,longitude:e}}],o=["serverConfig","location_name"],u=["serverConfig","serverVersion"]},function(t,e,n){"use strict";function r(t,e){var n=e.component;return t.push(n)}function i(t,e){var r=e.components;return n.i(u.toImmutable)(r)}function o(){return c.getInitialState()}var u=n(1),a=u&&u.__esModule?function(){return u["default"]}:function(){return u};n.d(a,"a",a);var s=n(16),c=new u.Store({getInitialState:function(){return n.i(u.toImmutable)([])},initialize:function(){this.on(s.a.COMPONENT_LOADED,r),this.on(s.a.SERVER_CONFIG_LOADED,i),this.on(s.a.LOG_OUT,o)}});e.a=c},function(t,e,n){"use strict";function r(t,e){var r=e.latitude,i=e.longitude,u=e.location_name,a=e.temperature_unit,s=e.time_zone,c=e.version;return n.i(o.toImmutable)({latitude:r,longitude:i,location_name:u,temperature_unit:a,
+time_zone:s,serverVersion:c})}function i(){return s.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(16),s=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({latitude:null,longitude:null,location_name:"Home",temperature_unit:"°C",time_zone:"UTC",serverVersion:"unknown"})},initialize:function(){this.on(a.a.SERVER_CONFIG_LOADED,r),this.on(a.a.LOG_OUT,i)}});e.a=s},function(t,e,n){"use strict";function r(t,e){t.dispatch(s.a.ENTITY_HISTORY_DATE_SELECTED,{date:e})}function i(t){var e=arguments.length<=1||void 0===arguments[1]?null:arguments[1];t.dispatch(s.a.RECENT_ENTITY_HISTORY_FETCH_START,{});var r="history/period";return null!==e&&(r+="?filter_entity_id="+e),n.i(a.a)(t,"GET",r).then(function(e){return t.dispatch(s.a.RECENT_ENTITY_HISTORY_FETCH_SUCCESS,{stateHistory:e})},function(){return t.dispatch(s.a.RECENT_ENTITY_HISTORY_FETCH_ERROR,{})})}function o(t,e){return t.dispatch(s.a.ENTITY_HISTORY_FETCH_START,{date:e}),n.i(a.a)(t,"GET","history/period/"+e).then(function(n){return t.dispatch(s.a.ENTITY_HISTORY_FETCH_SUCCESS,{date:e,stateHistory:n})},function(){return t.dispatch(s.a.ENTITY_HISTORY_FETCH_ERROR,{})})}function u(t){var e=t.evaluate(c.currentDate);return o(t,e)}var a=n(3),s=n(7),c=n(30);e.changeCurrentDate=r,e.fetchRecent=i,e.fetchDate=o,e.fetchSelectedDate=u},function(t,e,n){"use strict";function r(t,e){var r=e.date;return n.i(a.a)(r)}function i(){return c.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(25),s=n(7),c=new o.Store({getInitialState:function(){var t=new Date;return t.setDate(t.getUTCDate()-1),n.i(a.a)(t)},initialize:function(){this.on(s.a.ENTITY_HISTORY_DATE_SELECTED,r),this.on(s.a.LOG_OUT,i)}});e.a=c},function(t,e,n){"use strict";function r(t,e){var r=e.date,i=e.stateHistory;return 0===i.length?t.set(r,n.i(o.toImmutable)({})):t.withMutations(function(t){i.forEach(function(e){return t.setIn([r,e[0].entity_id],n.i(o.toImmutable)(e.map(s.a.fromJSON)))})})}function i(){return c.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(7),s=n(12),c=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({})},initialize:function(){this.on(a.a.ENTITY_HISTORY_FETCH_SUCCESS,r),this.on(a.a.LOG_OUT,i)}});e.a=c},function(t,e,n){"use strict";var r=n(1),i=r&&r.__esModule?function(){return r["default"]}:function(){return r};n.d(i,"a",i);var o=n(7),u=new r.Store({getInitialState:function(){return!1},initialize:function(){this.on(o.a.ENTITY_HISTORY_FETCH_START,function(){return!0}),this.on(o.a.ENTITY_HISTORY_FETCH_SUCCESS,function(){return!1}),this.on(o.a.ENTITY_HISTORY_FETCH_ERROR,function(){return!1}),this.on(o.a.RECENT_ENTITY_HISTORY_FETCH_START,function(){return!0}),this.on(o.a.RECENT_ENTITY_HISTORY_FETCH_SUCCESS,function(){return!1}),this.on(o.a.RECENT_ENTITY_HISTORY_FETCH_ERROR,function(){return!1}),this.on(o.a.LOG_OUT,function(){return!1})}});e.a=u},function(t,e,n){"use strict";function r(t,e){var r=e.stateHistory;return t.withMutations(function(t){r.forEach(function(e){return t.set(e[0].entity_id,n.i(o.toImmutable)(e.map(s.a.fromJSON)))})})}function i(){return c.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(7),s=n(12),c=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({})},initialize:function(){this.on(a.a.RECENT_ENTITY_HISTORY_FETCH_SUCCESS,r),this.on(a.a.LOG_OUT,i)}});e.a=c},function(t,e,n){"use strict";function r(t,e){var n=e.stateHistory,r=(new Date).getTime();return t.withMutations(function(t){n.forEach(function(e){return t.set(e[0].entity_id,r)}),history.length>1&&t.set(s,r)})}function i(){return c.getInitialState()}var o=n(1),u=o&&o.__esModule?function(){return o["default"]}:function(){return o};n.d(u,"a",u);var a=n(7),s="ALL_ENTRY_FETCH",c=new o.Store({getInitialState:function(){return n.i(o.toImmutable)({})},initialize:function(){this.on(a.a.RECENT_ENTITY_HISTORY_FETCH_SUCCESS,r),this.on(a.a.LOG_OUT,i)}});e.a=c},function(t,e,n){"use strict";var r=n(6),i=n(12),o=n.i(r.createApiActions)(i.a);e.a=o},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var i=function(){function t(t,e){for(var n=0;nu}var i=n(1),o=i&&i.__esModule?function(){return i["default"]}:function(){return i};n.d(o,"a",o),n.d(e,"currentDate",function(){return a}),n.d(e,"isCurrentStale",function(){return s}),n.d(e,"currentEntries",function(){return c}),n.d(e,"isLoadingEntries",function(){return f});var u=6e4,a=["currentLogbookDate"],s=[a,["logbookEntriesUpdated"],function(t,e){return r(e.get(t))}],c=[a,["logbookEntries"],function(t,e){return e.get(t)||n.i(i.toImmutable)([])}],f=["isLoadingLogbookEntries"]},function(t,e,n){"use strict";function r(t){t.registerStores({currentLogbookDate:i.a,isLoadingLogbookEntries:o.a,logbookEntries:u.a,logbookEntriesUpdated:a.a})}var i=n(92),o=n(93),u=n(94),a=n(95),s=n(88),c=n(89);e.register=r,n.d(e,"actions",function(){return f}),n.d(e,"getters",function(){return h});var f=s,h=c},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var u=n(1),a=u&&u.__esModule?function(){return u["default"]}:function(){return u};n.d(a,"a",a);var s=n(26),c=function(){function t(t,e){for(var n=0;nn;n++)t["_"+String.fromCharCode(n)]=n;var o=Object.getOwnPropertyNames(t).map(function(e){return t[e]});if("0123456789"!==o.join(""))return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(e){i[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},i)).join("")}catch(r){return!1}}var i=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;e.exports=o()?Object.assign:function(e,t){for(var o,a,s=n(e),d=1;do&&(e=t[o]);o++)e._distributeContent();this.shadyRoot._dirtyRoots=[]},_finishDistribute:function(){if(this._useContent){if(this.shadyRoot._distributionClean=!0,h.hasInsertionPoint(this.shadyRoot))this._composeTree(),d(this.shadyRoot);else if(this.shadyRoot._hasDistributed){var e=this._composeNode(this);this._updateChildNodes(this,e)}else u.Composed.clearChildNodes(this),this.appendChild(this.shadyRoot);this.shadyRoot._hasDistributed||a(this),this.shadyRoot._hasDistributed=!0}},elementMatches:function(e,t){return t=t||this,h.matchesSelector.call(t,e)},_resetDistribution:function(){for(var e=u.Logical.getChildNodes(this),o=0;os&&(i=n[s]);s++)this._distributeInsertionPoint(i,t),o(i,this)},_distributeInsertionPoint:function(t,o){for(var i,n=!1,s=0,r=o.length;r>s;s++)i=o[s],i&&this._matchesContentSelect(i,t)&&(e(i,t),o[s]=void 0,n=!0);if(!n)for(var d=u.Logical.getChildNodes(t),a=0;ai&&(e=o[i]);i++)t=u.Logical.getParentNode(e),t._useContent||t===this||t===this.shadyRoot||this._updateChildNodes(t,this._composeNode(t))},_composeNode:function(e){for(var t=[],o=u.Logical.getChildNodes(e.shadyRoot||e),s=0;s0?~setTimeout(e,t):(this._twiddle.textContent=this._twiddleContent++,this._callbacks.push(e),this._currVal++)},cancel:function(e){if(0>e)clearTimeout(~e);else{var t=e-this._lastVal;if(t>=0){if(!this._callbacks[t])throw"invalid async handle: "+e;this._callbacks[t]=null}}},_atEndOfMicrotask:function(){for(var e=this._callbacks.length,t=0;e>t;t++){var o=this._callbacks[t];if(o)try{o()}catch(i){throw t++,this._callbacks.splice(0,t),this._lastVal+=t,this._twiddle.textContent=this._twiddleContent++,i}}this._callbacks.splice(0,e),this._lastVal+=e}},new window.MutationObserver(function(){Polymer.Async._atEndOfMicrotask()}).observe(Polymer.Async._twiddle,{characterData:!0}),Polymer.Debounce=function(){function e(e,t,i){return e?e.stop():e=new o(this),e.go(t,i),e}var t=Polymer.Async,o=function(e){this.context=e;var t=this;this.boundComplete=function(){t.complete()}};return o.prototype={go:function(e,o){var i;this.finish=function(){t.cancel(i)},i=t.run(this.boundComplete,o),this.callback=e},stop:function(){this.finish&&(this.finish(),this.finish=null)},complete:function(){this.finish&&(this.stop(),this.callback.call(this.context))}},e}(),Polymer.Base._addFeature({_setupDebouncers:function(){this._debouncers={}},debounce:function(e,t,o){return this._debouncers[e]=Polymer.Debounce.call(this,this._debouncers[e],t,o)},isDebouncerActive:function(e){var t=this._debouncers[e];return!(!t||!t.finish)},flushDebouncer:function(e){var t=this._debouncers[e];t&&t.complete()},cancelDebouncer:function(e){var t=this._debouncers[e];t&&t.stop()}}),Polymer.DomModule=document.createElement("dom-module"),Polymer.Base._addFeature({_registerFeatures:function(){this._prepIs(),this._prepBehaviors(),this._prepConstructor(),this._prepTemplate(),this._prepShady(),this._prepPropertyInfo()},_prepBehavior:function(e){this._addHostAttributes(e.hostAttributes)},_initFeatures:function(){this._registerHost(),this._template&&(this._poolContent(),this._beginHosting(),this._stampTemplate(),this._endHosting()),this._marshalHostAttributes(),this._setupDebouncers(),this._marshalBehaviors(),this._tryReady()},_marshalBehavior:function(e){}})
[[_text]]
[[stateObj.entityDisplay]](Error loading image)
[[relativeTime]] [[stateObj.entityDisplay]]
[[stateObj.stateDisplay]]
[[_charCounterStr]] [[label]] [[errorMessage]]
[[item]] [[computePrimaryText(stateObj, isPlaying)]]
[[secondaryText]]
[[computeTargetTemperature(stateObj)]]
Currently: [[stateObj.attributes.current_temperature]] [[stateObj.attributes.unit_of_measurement]]
[[stateObj.entityDisplay]] [[computeTitle(states, groupEntity)]]
To install Home Assistant, run:pip3 install homeassistant hass --open-ui
Here are some resources to get started.
To remove this card, edit your config in configuration.yaml
and disable the introduction
component.
[[stateObj.entityDisplay]]
[[playerObj.primaryText]]
[[playerObj.secondaryText]]
[[locationName]] [[item.entityDisplay]]
[[computeTime(dateObj)]] No logbook entries found.
[[item]] [[computePrimaryText(stateObj, isPlaying)]]
[[secondaryText]]
[[computeTargetTemperature(stateObj)]]
Currently: [[stateObj.attributes.current_temperature]] [[stateObj.attributes.unit_of_measurement]]
[[stateObj.entityDisplay]] [[computeTitle(states, groupEntity)]]
To install Home Assistant, run:pip3 install homeassistant hass --open-ui
Here are some resources to get started.
To remove this card, edit your config in configuration.yaml
and disable the introduction
component.
[[stateObj.entityDisplay]]
[[playerObj.primaryText]]
[[playerObj.secondaryText]]
[[locationName]] [[item.entityDisplay]]
[[computeTime(dateObj)]] No logbook entries found. Logbook Updating history data
No state history found.
History
-
[[value]]
[[label]] [[errorMessage]] Services Call a service from a component.
[[description]]
Events Fire an event on the event bus.
States Set the representation of a device within Home Assistant. This will not communicate with the actual device.
Template Editor Templates are rendered using the Jinja2 template engine with some Home Assistant specific extensions.
About The following errors have been logged this session:
[[errorLog]]
{{text}}
[[formatAttribute(attribute)]]
[[getAttributeValue(stateObj, attribute)]]
[[itemCaption(item)]]
[[itemValue(item)]]
Elevation
[[stateObj.attributes.elevation]]
Last Action
[[stateObj.attributes.last_action]]
[[caption]]
{{finalTranscript}} [[interimTranscript]] …