ruby_event_store-browser 0.32.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: c53442eef2cfb01c8d2aca492ac7996c3f0cbf3d91e525328f51d0eb48215554
4
+ data.tar.gz: 14900ca80b265d1d84d2cbacb296eb78243dcaf604c1f0449b3c21628c183acc
5
+ SHA512:
6
+ metadata.gz: e0fb21a2bc9b78c934d77e9d6781ebab911a62c0248e1bef00a1c99f190d21f58e12a2b5b1d9317207503f69be8e0e78a55565520d04a194b8bbfbff142336d8
7
+ data.tar.gz: 795c6371f22aa90fce51eab14a99eef4956da721c7efcf3287a1091aa5334973877313f5f41f5fcc273a5414647d6f346f94372b731e4680389e7e05c8544c57
data/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright 2017-2018 Arkency
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,13 @@
1
+ # RES Browser
2
+
3
+ This is the Sinatra version of the RES browser.
4
+
5
+ ## Usage
6
+
7
+ See [docs](https://railseventstore.org/docs/browser/).
8
+
9
+ ## Contributing
10
+ Contribution directions go here.
11
+
12
+ ## License
13
+ The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
@@ -0,0 +1,10 @@
1
+ module RubyEventStore
2
+ module Browser
3
+ PAGE_SIZE = 20
4
+ SERIALIZED_GLOBAL_STREAM_NAME = 'all'.freeze
5
+ end
6
+ end
7
+
8
+ require_relative 'browser/event'
9
+ require_relative 'browser/json_api_event'
10
+ require_relative 'browser/stream'
@@ -0,0 +1,94 @@
1
+ require_relative '../browser'
2
+ require 'sinatra'
3
+
4
+ module RubyEventStore
5
+ module Browser
6
+ class App < Sinatra::Application
7
+
8
+ def self.for(event_store_locator:, host:, path: nil)
9
+ self.tap do |app|
10
+ app.settings.instance_exec do
11
+ set :event_store_locator, event_store_locator
12
+ set :host, host
13
+ set :root_path, path
14
+ end
15
+ end
16
+ end
17
+
18
+ configure do
19
+ set :host, nil
20
+ set :root_path, nil
21
+ set :event_store_locator, -> {}
22
+ set :protection, except: :path_traversal
23
+ set :public_folder, "#{__dir__}/../../../public"
24
+
25
+ mime_type :json, 'application/vnd.api+json'
26
+ end
27
+
28
+ get '/' do
29
+ erb %{
30
+ <!DOCTYPE html>
31
+ <html>
32
+ <head>
33
+ <title>RubyEventStore::Browser</title>
34
+ </head>
35
+ <body>
36
+ <script type="text/javascript" src="<%= settings.root_path %>/ruby_event_store_browser.js"></script>
37
+ <script type="text/javascript">
38
+ RubyEventStore.Browser.Main.fullscreen({
39
+ rootUrl: "<%= settings.root_path %>",
40
+ eventsUrl: "<%= settings.root_path %>/events",
41
+ streamsUrl: "<%= settings.root_path %>/streams",
42
+ resVersion: "<%= RubyEventStore::VERSION %>"
43
+ });
44
+ </script>
45
+ </body>
46
+ </html>
47
+ }
48
+ end
49
+
50
+ get '/events/:id' do
51
+ json Event.new(
52
+ event_store: settings.event_store_locator,
53
+ params: symbolized_params
54
+ )
55
+ end
56
+
57
+ get '/streams/:id' do
58
+ json Stream.new(
59
+ event_store: settings.event_store_locator,
60
+ params: symbolized_params,
61
+ url_builder: method(:streams_url_for)
62
+ )
63
+ end
64
+
65
+ get '/streams/:id/:position/:direction/:count' do
66
+ json Stream.new(
67
+ event_store: settings.event_store_locator,
68
+ params: symbolized_params,
69
+ url_builder: method(:streams_url_for)
70
+ )
71
+ end
72
+
73
+ helpers do
74
+ def symbolized_params
75
+ params.each_with_object({}) { |(k, v), h| v.nil? ? next : h[k.to_sym] = v }
76
+ end
77
+
78
+ def streams_url_for(options)
79
+ base = [ settings.host, settings.root_path ].compact.join
80
+ args = options.values_at(:id, :position, :direction, :count).compact
81
+ args.map! { |a| Rack::Utils.escape(a) }
82
+
83
+ "#{base}/streams/#{args.join('/')}"
84
+ end
85
+
86
+ def json(data)
87
+ content_type :json
88
+ JSON.dump data.as_json
89
+ end
90
+ end
91
+
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,26 @@
1
+ module RubyEventStore
2
+ module Browser
3
+ class Event
4
+ attr_reader :event_store, :params
5
+
6
+ def initialize(event_store:, params:)
7
+ @event_store = event_store
8
+ @params = params
9
+ end
10
+
11
+ def as_json
12
+ {
13
+ data: JsonApiEvent.new(event).to_h
14
+ }
15
+ end
16
+
17
+ def event
18
+ @event ||= event_store.read_event(event_id)
19
+ end
20
+
21
+ def event_id
22
+ params.fetch(:id)
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,30 @@
1
+ module RubyEventStore
2
+ module Browser
3
+ class JsonApiEvent
4
+ def initialize(event)
5
+ @event = event
6
+ end
7
+
8
+ def to_h
9
+ {
10
+ id: event.event_id,
11
+ type: "events",
12
+ attributes: {
13
+ event_type: event.class.to_s,
14
+ data: event.data,
15
+ metadata: metadata
16
+ }
17
+ }
18
+ end
19
+
20
+ private
21
+ attr_reader :event
22
+
23
+ def metadata
24
+ event.metadata.to_h.tap do |m|
25
+ m[:timestamp] = m.fetch(:timestamp).iso8601(3) if m.key?(:timestamp)
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,111 @@
1
+ module RubyEventStore
2
+ module Browser
3
+ class Stream
4
+ attr_reader :event_store, :params, :url_builder
5
+
6
+ def initialize(event_store:, params:, url_builder:)
7
+ @event_store = event_store
8
+ @params = params
9
+ @url_builder = url_builder
10
+ end
11
+
12
+ def as_json
13
+ {
14
+ data: events.map { |e| JsonApiEvent.new(e).to_h },
15
+ links: links
16
+ }
17
+ end
18
+
19
+ def events
20
+ @events ||= case direction
21
+ when :forward
22
+ events_forward(position).reverse
23
+ when :backward
24
+ events_backward(position)
25
+ end
26
+ end
27
+
28
+ def links
29
+ @links ||= {}.tap do |h|
30
+ if prev_event?
31
+ h[:prev] = prev_page_link(events.first.event_id)
32
+ h[:first] = first_page_link
33
+ end
34
+
35
+ if next_event?
36
+ h[:next] = next_page_link(events.last.event_id)
37
+ h[:last] = last_page_link
38
+ end
39
+ end
40
+ end
41
+
42
+ def events_forward(start)
43
+ if stream_name.eql?(SERIALIZED_GLOBAL_STREAM_NAME)
44
+ event_store.read.limit(count).from(start).each.to_a
45
+ else
46
+ event_store.read.limit(count).from(start).stream(stream_name).each.to_a
47
+ end
48
+ end
49
+
50
+ def events_backward(start)
51
+ if stream_name.eql?(SERIALIZED_GLOBAL_STREAM_NAME)
52
+ event_store.read.limit(count).from(start).backward.each.to_a
53
+ else
54
+ event_store.read.limit(count).from(start).stream(stream_name).backward.each.to_a
55
+ end
56
+ end
57
+
58
+ def next_event?
59
+ return if events.empty?
60
+ events_backward(events.last.event_id).any?
61
+ end
62
+
63
+ def prev_event?
64
+ return if events.empty?
65
+ events_forward(events.first.event_id).any?
66
+ end
67
+
68
+ def prev_page_link(event_id)
69
+ url_builder.call(id: stream_name, position: event_id, direction: :forward, count: count)
70
+ end
71
+
72
+ def next_page_link(event_id)
73
+ url_builder.call(id: stream_name, position: event_id, direction: :backward, count: count)
74
+ end
75
+
76
+ def first_page_link
77
+ url_builder.call(id: stream_name, position: :head, direction: :backward, count: count)
78
+ end
79
+
80
+ def last_page_link
81
+ url_builder.call(id: stream_name, position: :head, direction: :forward, count: count)
82
+ end
83
+
84
+ def count
85
+ Integer(params.fetch(:count, PAGE_SIZE))
86
+ end
87
+
88
+ def direction
89
+ case params[:direction]
90
+ when 'forward'
91
+ :forward
92
+ else
93
+ :backward
94
+ end
95
+ end
96
+
97
+ def position
98
+ case params[:position]
99
+ when nil, 'head'
100
+ :head
101
+ else
102
+ params.fetch(:position)
103
+ end
104
+ end
105
+
106
+ def stream_name
107
+ params.fetch(:id)
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,5 @@
1
+ module RubyEventStore
2
+ module Browser
3
+ VERSION = "0.32.0"
4
+ end
5
+ end
@@ -0,0 +1 @@
1
+ !function(t){var r={};function e(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,e),o.l=!0,o.exports}e.m=t,e.c=r,e.d=function(t,r,n){e.o(t,r)||Object.defineProperty(t,r,{enumerable:!0,get:n})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,r){if(1&r&&(t=e(t)),8&r)return t;if(4&r&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(e.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&r&&"string"!=typeof t)for(var o in t)e.d(n,o,function(r){return t[r]}.bind(null,o));return n},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,r){return Object.prototype.hasOwnProperty.call(t,r)},e.p="",e(e.s=0)}([function(t,r,e){t.exports=e(1)},function(t,r,e){e(2),window.RubyEventStore={},window.RubyEventStore.Browser=e(7)},function(t,r,e){var n=e(3);"string"==typeof n&&(n=[[t.i,n,""]]);var o={transform:void 0};e(5)(n,o);n.locals&&(t.exports=n.locals)},function(t,r,e){(t.exports=e(4)(!1)).push([t.i,'/*! normalize.css v6.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit;font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}[hidden],template{display:none}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}body,html{height:100%}body{margin:0}fieldset{background-color:transparent;border:0;margin:0;padding:0}legend{padding:0}label,legend{font-weight:600;margin-bottom:.375em}label{display:block}input,select,textarea{display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px}input:not([type]),input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],textarea{appearance:none;background-color:#fff;border:1px solid #ced4da;border-radius:3px;box-shadow:inset 0 1px 3px rgba(0,0,0,.06);box-sizing:border-box;margin-bottom:.75em;padding:.5em;transition:border-color .15s ease;width:100%}input:not([type]):hover,input[type=color]:hover,input[type=date]:hover,input[type=datetime-local]:hover,input[type=datetime]:hover,input[type=email]:hover,input[type=month]:hover,input[type=number]:hover,input[type=password]:hover,input[type=search]:hover,input[type=tel]:hover,input[type=text]:hover,input[type=time]:hover,input[type=url]:hover,input[type=week]:hover,textarea:hover{border-color:shade(#ced4da,20%)}input:not([type]):focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,textarea:focus{border-color:#cf423b;box-shadow:inset 0 1px 3px rgba(0,0,0,.06),0 0 5px rgba(207,66,59,.7);outline:none}input:not([type]):disabled,input[type=color]:disabled,input[type=date]:disabled,input[type=datetime-local]:disabled,input[type=datetime]:disabled,input[type=email]:disabled,input[type=month]:disabled,input[type=number]:disabled,input[type=password]:disabled,input[type=search]:disabled,input[type=tel]:disabled,input[type=text]:disabled,input[type=time]:disabled,input[type=url]:disabled,input[type=week]:disabled,textarea:disabled{background-color:shade(#fff,5%);cursor:not-allowed}input:not([type]):disabled:hover,input[type=color]:disabled:hover,input[type=date]:disabled:hover,input[type=datetime-local]:disabled:hover,input[type=datetime]:disabled:hover,input[type=email]:disabled:hover,input[type=month]:disabled:hover,input[type=number]:disabled:hover,input[type=password]:disabled:hover,input[type=search]:disabled:hover,input[type=tel]:disabled:hover,input[type=text]:disabled:hover,input[type=time]:disabled:hover,input[type=url]:disabled:hover,input[type=week]:disabled:hover,textarea:disabled:hover{border:1px solid #ced4da}input:not([type])::placeholder,input[type=color]::placeholder,input[type=date]::placeholder,input[type=datetime-local]::placeholder,input[type=datetime]::placeholder,input[type=email]::placeholder,input[type=month]::placeholder,input[type=number]::placeholder,input[type=password]::placeholder,input[type=search]::placeholder,input[type=tel]::placeholder,input[type=text]::placeholder,input[type=time]::placeholder,input[type=url]::placeholder,input[type=week]::placeholder,textarea::placeholder{color:tint(#343a40,40%)}textarea{resize:vertical}[type=checkbox],[type=radio]{display:inline;margin-right:.375em}[type=file],select{margin-bottom:.75em;width:100%}[type=checkbox]:focus,[type=file]:focus,[type=radio]:focus,select:focus{outline:3px solid rgba(207,66,59,.6);outline-offset:2px}button,input[type=button],input[type=reset],input[type=submit]{appearance:none;background-color:#cf423b;border:0;border-radius:3px;color:contrast-switch(#cf423b);cursor:pointer;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased;font-weight:600;line-height:1;padding:.75em 1.5em;text-align:center;text-decoration:none;transition:background-color .15s ease;user-select:none;vertical-align:middle;white-space:nowrap}button:hover,input[type=button]:hover,input[type=reset]:hover,input[type=submit]:hover{background-color:shade(#cf423b,20%);color:contrast-switch(shade(#cf423b,20%))}button:focus,input[type=button]:focus,input[type=reset]:focus,input[type=submit]:focus{outline:3px solid rgba(207,66,59,.6);outline-offset:2px}button:disabled,input[type=button]:disabled,input[type=reset]:disabled,input[type=submit]:disabled{cursor:not-allowed;opacity:.5}button:disabled:hover,input[type=button]:disabled:hover,input[type=reset]:disabled:hover,input[type=submit]:disabled:hover{background-color:#cf423b}ol,ul{list-style-type:none;padding:0}dl,dt,ol,ul{margin:0}dt{font-weight:600}dd,figure{margin:0}img,picture{margin:0;max-width:100%}table{border-collapse:collapse;margin:1.5em 0;table-layout:fixed;text-align:left;width:100%}thead{line-height:1.2;vertical-align:bottom}tbody{vertical-align:top}th{border-bottom:1px solid #ced4da;padding:0 0 .75rem;text-transform:uppercase;font-size:1.2rem;color:#adb5bd}td{padding:.75rem 0 0}html{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:62.5%;line-height:1.6;-webkit-font-smoothing:antialiased}body{font-size:1.6rem}h1,h2,h3,h4,h5,h6{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:2em;line-height:1.2;margin:0 0 .75em}p{margin:0 0 .75em}a{color:#cf423b;text-decoration-skip:ink;transition:color .15s ease}a:hover{color:shade(#cf423b,25%)}a:focus{outline:3px solid rgba(207,66,59,.6);outline-offset:2px}hr{border-bottom:1px solid #ced4da;border-left:0;border-right:0;border-top:0;margin:1.5em 0}.frame{min-height:100vh;width:100%;background-color:#f8f9fa}.frame__body{background-color:#fff}.navigation{height:6rem;background-color:#cf423b}.navigation:after{clear:both;content:"";display:block}.navigation__brand{width:calc(33.33333% - 26.66667px);justify-content:flex-start}.navigation__brand,.navigation__links{float:left;margin-left:20px;display:flex;height:100%;align-items:center}.navigation__links{width:calc(66.66667% - 33.33333px);justify-content:flex-end}.navigation__link{margin-left:1rem;padding:.5rem;text-decoration:none;font-weight:700;font-size:1.4rem;color:#f1f3f5}.navigation__link--active,.navigation__link:hover{border-radius:4px;background-color:#ad302a;color:#f8f9fa}.navigation__logo{text-decoration:none;font-weight:600;color:#f8f9fa}.footer{border-top:1px solid #ced4da;padding:1rem 0}.footer:after{clear:both;content:"";display:block}.footer__links{width:calc(100% - 40px);float:left;margin-left:20px;display:flex;justify-content:center;font-size:1.4rem;color:#adb5bd}.footer__link{margin:0 0 0 1rem;color:#adb5bd}.footer__link:before{content:"\\2022";font-weight:700;margin:0 1rem 0 0;color:#dee2e6;display:inline-block}.browser{padding:2rem 0}.browser:after{clear:both;content:"";display:block}.browser__title{font-size:2.2rem}.browser__pagination,.browser__results,.browser__title{width:calc(100% - 40px);float:left;margin-left:20px}.event{padding:2rem 0}.event:after{clear:both;content:"";display:block}.event__title{font-size:2.2rem}.event__body,.event__title{width:calc(100% - 40px);float:left;margin-left:20px}.pagination{display:flex;margin-bottom:.75em}.pagination__page{height:3.6rem;background:none;border:1px solid #ced4da;text-align:center;padding:1rem;margin-right:.5rem;color:#cf423b;border-color:#cf423b;font-weight:400;font-size:90%}.pagination__page:focus{outline:none}.results__link{text-decoration:none}.results__empty{display:flex;align-items:center;justify-content:center;min-height:20rem}.u-align-right{text-align:right}',""])},function(t,r){t.exports=function(t){var r=[];return r.toString=function(){return this.map(function(r){var e=function(t,r){var e=t[1]||"",n=t[3];if(!n)return e;if(r&&"function"==typeof btoa){var o=function(t){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t))))+" */"}(n),i=n.sources.map(function(t){return"/*# sourceURL="+n.sourceRoot+t+" */"});return[e].concat(i).concat([o]).join("\n")}return[e].join("\n")}(r,t);return r[2]?"@media "+r[2]+"{"+e+"}":e}).join("")},r.i=function(t,e){"string"==typeof t&&(t=[[null,t,""]]);for(var n={},o=0;o<this.length;o++){var i=this[o][0];"number"==typeof i&&(n[i]=!0)}for(o=0;o<t.length;o++){var c=t[o];"number"==typeof c[0]&&n[c[0]]||(e&&!c[2]?c[2]=e:e&&(c[2]="("+c[2]+") and ("+e+")"),r.push(c))}},r}},function(t,r,e){var n={},o=function(t){var r;return function(){return void 0===r&&(r=t.apply(this,arguments)),r}}(function(){return window&&document&&document.all&&!window.atob}),i=function(t){var r={};return function(t){return void 0===r[t]&&(r[t]=function(t){return document.querySelector(t)}.call(this,t)),r[t]}}(),c=null,u=0,a=[],l=e(6);function _(t,r){for(var e=0;e<t.length;e++){var o=t[e],i=n[o.id];if(i){i.refs++;for(var c=0;c<i.parts.length;c++)i.parts[c](o.parts[c]);for(;c<o.parts.length;c++)i.parts.push(v(o.parts[c],r))}else{var u=[];for(c=0;c<o.parts.length;c++)u.push(v(o.parts[c],r));n[o.id]={id:o.id,refs:1,parts:u}}}}function f(t,r){for(var e=[],n={},o=0;o<t.length;o++){var i=t[o],c=r.base?i[0]+r.base:i[0],u={css:i[1],media:i[2],sourceMap:i[3]};n[c]?n[c].parts.push(u):e.push(n[c]={id:c,parts:[u]})}return e}function s(t,r){var e=i(t.insertInto);if(!e)throw new Error("Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.");var n=a[a.length-1];if("top"===t.insertAt)n?n.nextSibling?e.insertBefore(r,n.nextSibling):e.appendChild(r):e.insertBefore(r,e.firstChild),a.push(r);else{if("bottom"!==t.insertAt)throw new Error("Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.");e.appendChild(r)}}function d(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t);var r=a.indexOf(t);r>=0&&a.splice(r,1)}function p(t){var r=document.createElement("style");return t.attrs.type="text/css",h(r,t.attrs),s(t,r),r}function h(t,r){Object.keys(r).forEach(function(e){t.setAttribute(e,r[e])})}function v(t,r){var e,n,o,i;if(r.transform&&t.css){if(!(i=r.transform(t.css)))return function(){};t.css=i}if(r.singleton){var a=u++;e=c||(c=p(r)),n=b.bind(null,e,a,!1),o=b.bind(null,e,a,!0)}else t.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(e=function(t){var r=document.createElement("link");return t.attrs.type="text/css",t.attrs.rel="stylesheet",h(r,t.attrs),s(t,r),r}(r),n=function(t,r,e){var n=e.css,o=e.sourceMap,i=void 0===r.convertToAbsoluteUrls&&o;(r.convertToAbsoluteUrls||i)&&(n=l(n));o&&(n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var c=new Blob([n],{type:"text/css"}),u=t.href;t.href=URL.createObjectURL(c),u&&URL.revokeObjectURL(u)}.bind(null,e,r),o=function(){d(e),e.href&&URL.revokeObjectURL(e.href)}):(e=p(r),n=function(t,r){var e=r.css,n=r.media;n&&t.setAttribute("media",n);if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}.bind(null,e),o=function(){d(e)});return n(t),function(r){if(r){if(r.css===t.css&&r.media===t.media&&r.sourceMap===t.sourceMap)return;n(t=r)}else o()}}t.exports=function(t,r){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(r=r||{}).attrs="object"==typeof r.attrs?r.attrs:{},r.singleton||(r.singleton=o()),r.insertInto||(r.insertInto="head"),r.insertAt||(r.insertAt="bottom");var e=f(t,r);return _(e,r),function(t){for(var o=[],i=0;i<e.length;i++){var c=e[i];(u=n[c.id]).refs--,o.push(u)}t&&_(f(t,r),r);for(i=0;i<o.length;i++){var u;if(0===(u=o[i]).refs){for(var a=0;a<u.parts.length;a++)u.parts[a]();delete n[u.id]}}}};var g=function(){var t=[];return function(r,e){return t[r]=e,t.filter(Boolean).join("\n")}}();function b(t,r,e,n){var o=e?"":n.css;if(t.styleSheet)t.styleSheet.cssText=g(r,o);else{var i=document.createTextNode(o),c=t.childNodes;c[r]&&t.removeChild(c[r]),c.length?t.insertBefore(i,c[r]):t.appendChild(i)}}},function(t,r){t.exports=function(t){var r="undefined"!=typeof window&&window.location;if(!r)throw new Error("fixUrls requires window.location");if(!t||"string"!=typeof t)return t;var e=r.protocol+"//"+r.host,n=e+r.pathname.replace(/\/[^\/]*$/,"/");return t.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi,function(t,r){var o,i=r.trim().replace(/^"(.*)"$/,function(t,r){return r}).replace(/^'(.*)'$/,function(t,r){return r});return/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/)/i.test(i)?t:(o=0===i.indexOf("//")?i:0===i.indexOf("/")?e+i:n+i.replace(/^\.\//,""),"url("+JSON.stringify(o)+")")})}},function(t,r,e){var n;(function(){"use strict";function e(t){function r(r){return function(e){return t(r,e)}}return r.arity=2,r.func=t,r}function o(t){function r(r){return function(e){return function(n){return t(r,e,n)}}}return r.arity=3,r.func=t,r}function i(t){function r(r){return function(e){return function(n){return function(o){return t(r,e,n,o)}}}}return r.arity=4,r.func=t,r}function c(t){function r(r){return function(e){return function(n){return function(o){return function(i){return t(r,e,n,o,i)}}}}}return r.arity=5,r.func=t,r}function u(t){function r(r){return function(e){return function(n){return function(o){return function(i){return function(c){return t(r,e,n,o,i,c)}}}}}}return r.arity=6,r.func=t,r}function a(t){function r(r){return function(e){return function(n){return function(o){return function(i){return function(c){return function(u){return t(r,e,n,o,i,c,u)}}}}}}}return r.arity=7,r.func=t,r}function l(t,r,e){return 2===t.arity?t.func(r,e):t(r)(e)}function _(t,r,e,n){return 3===t.arity?t.func(r,e,n):t(r)(e)(n)}function f(t,r,e,n,o){return 4===t.arity?t.func(r,e,n,o):t(r)(e)(n)(o)}function s(t,r,e,n,o,i){return 5===t.arity?t.func(r,e,n,o,i):t(r)(e)(n)(o)(i)}var d=function(){var t=["LT","EQ","GT"];return{div:e(function(t,r){return t/r|0}),rem:e(function(t,r){return t%r}),mod:e(function t(r,e){if(0===e)throw new Error("Cannot perform mod 0. Division by zero error.");var n=r%e,o=0===r?0:e>0?r>=0?n:n+e:-t(-r,-e);return o===e?0:o}),pi:Math.PI,e:Math.E,cos:Math.cos,sin:Math.sin,tan:Math.tan,acos:Math.acos,asin:Math.asin,atan:Math.atan,atan2:e(Math.atan2),degrees:function(t){return t*Math.PI/180},turns:function(t){return 2*Math.PI*t},fromPolar:function(t){var r=t._0,e=t._1;return p.Tuple2(r*Math.cos(e),r*Math.sin(e))},toPolar:function(t){var r=t._0,e=t._1;return p.Tuple2(Math.sqrt(r*r+e*e),Math.atan2(e,r))},sqrt:Math.sqrt,logBase:e(function(t,r){return Math.log(r)/Math.log(t)}),negate:function(t){return-t},abs:function(t){return t<0?-t:t},min:e(function(t,r){return p.cmp(t,r)<0?t:r}),max:e(function(t,r){return p.cmp(t,r)>0?t:r}),clamp:o(function(t,r,e){return p.cmp(e,t)<0?t:p.cmp(e,r)>0?r:e}),compare:e(function(r,e){return{ctor:t[p.cmp(r,e)+1]}}),xor:e(function(t,r){return t!==r}),not:function(t){return!t},truncate:function(t){return 0|t},ceiling:Math.ceil,floor:Math.floor,round:Math.round,toFloat:function(t){return t},isNaN:isNaN,isInfinite:function(t){return t===1/0||t===-1/0}}}(),p=function(){function t(r,e,n,o){if(n>100)return o.push({x:r,y:e}),!0;if(r===e)return!0;if("object"!=typeof r){if("function"==typeof r)throw new Error('Trying to use `(==)` on functions. There is no way to know if functions are "the same" in the Elm sense. Read more about this at http://package.elm-lang.org/packages/elm-lang/core/latest/Basics#== which describes why it is this way and what the better version will look like.');return!1}if(null===r||null===e)return!1;if(r instanceof Date)return r.getTime()===e.getTime();if(!("ctor"in r)){for(var i in r)if(!t(r[i],e[i],n+1,o))return!1;return!0}if("RBNode_elm_builtin"!==r.ctor&&"RBEmpty_elm_builtin"!==r.ctor||(r=ft(r),e=ft(e)),"Set_elm_builtin"===r.ctor&&(r=Se(r),e=Se(e)),"::"===r.ctor){for(var c=r,u=e;"::"===c.ctor&&"::"===u.ctor;){if(!t(c._0,u._0,n+1,o))return!1;c=c._1,u=u._1}return c.ctor===u.ctor}if("_Array"===r.ctor){var a=Xt.toJSArray(r),l=Xt.toJSArray(e);if(a.length!==l.length)return!1;for(var _=0;_<a.length;_++)if(!t(a[_],l[_],n+1,o))return!1;return!0}if(!t(r.ctor,e.ctor,n+1,o))return!1;for(var i in r)if(!t(r[i],e[i],n+1,o))return!1;return!0}var r=-1,n=0,o=1;var i=0;var c={ctor:"[]"};function u(t,r){return{ctor:"::",_0:t,_1:r}}function a(t){return t.start.line==t.end.line?"on line "+t.start.line:"between lines "+t.start.line+" and "+t.end.line}function l(t){var r=typeof t;if("function"===r)return"<function>";if("boolean"===r)return t?"True":"False";if("number"===r)return t+"";if(t instanceof String)return"'"+_(t,!0)+"'";if("string"===r)return'"'+_(t,!1)+'"';if(null===t)return"null";if("object"===r&&"ctor"in t){var e=t.ctor.substring(0,5);if("_Tupl"===e){var n=[];for(var o in t)"ctor"!==o&&n.push(l(t[o]));return"("+n.join(",")+")"}if("_Task"===e)return"<task>";if("_Array"===t.ctor)return"Array.fromList "+l(Yt(t));if("<decoder>"===t.ctor)return"<decoder>";if("_Process"===t.ctor)return"<process:"+t.id+">";if("::"===t.ctor){n="["+l(t._0);for(t=t._1;"::"===t.ctor;)n+=","+l(t._0),t=t._1;return n+"]"}if("[]"===t.ctor)return"[]";if("Set_elm_builtin"===t.ctor)return"Set.fromList "+l(Se(t));if("RBNode_elm_builtin"===t.ctor||"RBEmpty_elm_builtin"===t.ctor)return"Dict.fromList "+l(ft(t));n="";for(var i in t)if("ctor"!==i){var c=l(t[i]),u=c[0];n+=" "+("{"===u||"("===u||"<"===u||'"'===u||c.indexOf(" ")<0?c:"("+c+")")}return t.ctor+n}if("object"===r){if(t instanceof Date)return"<"+t.toString()+">";if(t.elm_web_socket)return"<websocket>";n=[];for(var o in t)n.push(o+" = "+l(t[o]));return 0===n.length?"{}":"{ "+n.join(", ")+" }"}return"<internal structure>"}function _(t,r){var e=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\n").replace(/\t/g,"\\t").replace(/\r/g,"\\r").replace(/\v/g,"\\v").replace(/\0/g,"\\0");return r?e.replace(/\'/g,"\\'"):e.replace(/\"/g,'\\"')}return{eq:function(r,e){for(var n,o=[],i=t(r,e,0,o);i&&(n=o.pop());)i=t(n.x,n.y,0,o);return i},cmp:function t(e,i){if("object"!=typeof e)return e===i?n:e<i?r:o;if(e instanceof String){var c=e.valueOf(),u=i.valueOf();return c===u?n:c<u?r:o}if("::"===e.ctor||"[]"===e.ctor){for(;"::"===e.ctor&&"::"===i.ctor;){if((a=t(e._0,i._0))!==n)return a;e=e._1,i=i._1}return e.ctor===i.ctor?n:"[]"===e.ctor?r:o}if("_Tuple"===e.ctor.slice(0,6)){var a,l=e.ctor.slice(6)-0;if(0===l)return n;if(l>=1){if((a=t(e._0,i._0))!==n)return a;if(l>=2){if((a=t(e._1,i._1))!==n)return a;if(l>=3){if((a=t(e._2,i._2))!==n)return a;if(l>=4){if((a=t(e._3,i._3))!==n)return a;if(l>=5){if((a=t(e._4,i._4))!==n)return a;if(l>=6){if((a=t(e._5,i._5))!==n)return a;if(l>=7)throw new Error("Comparison error: cannot compare tuples with more than 6 elements.")}}}}}}return n}throw new Error("Comparison error: comparison is only defined on ints, floats, times, chars, strings, lists of comparable values, and tuples of comparable values.")},Tuple0:{ctor:"_Tuple0"},Tuple2:function(t,r){return{ctor:"_Tuple2",_0:t,_1:r}},chr:function(t){return new String(t)},update:function(t,r){var e={};for(var n in t)e[n]=t[n];for(var n in r)e[n]=r[n];return e},guid:function(t){return i++},append:e(function(t,r){if("string"==typeof t)return t+r;if("[]"===t.ctor)return r;var e=u(t._0,c),n=e;for(t=t._1;"[]"!==t.ctor;)n._1=u(t._0,c),t=t._1,n=n._1;return n._1=r,e}),crash:function(t,r){return function(e){throw new Error("Ran into a `Debug.crash` in module `"+t+"` "+a(r)+"\nThe message provided by the code author is:\n\n "+e)}},crashCase:function(t,r,e){return function(n){throw new Error("Ran into a `Debug.crash` in module `"+t+"`\n\nThis was caused by the `case` expression "+a(r)+".\nOne of the branches ended with a crash and the following value got through:\n\n "+l(e)+"\n\nThe message provided by the code author is:\n\n "+n)}},toString:l}}(),h=(e(function(t,r){var e=r;return l(t,e._0,e._1)}),o(function(t,r,e){return t({ctor:"_Tuple2",_0:r,_1:e})}),o(function(t,r,e){return l(t,e,r)}),e(function(t,r){return t})),v=function(t){return t};(m=m||{})["<|"]=e(function(t,r){return t(r)}),(m=m||{})["|>"]=e(function(t,r){return r(t)}),(m=m||{})[">>"]=o(function(t,r,e){return r(t(e))}),(m=m||{})["<<"]=o(function(t,r,e){return t(r(e))}),(m=m||{})["++"]=p.append;var g=p.toString;d.isInfinite,d.isNaN,d.toFloat,d.ceiling,d.floor,d.truncate,d.round,d.not,d.xor;(m=m||{})["||"]=d.or,(m=m||{})["&&"]=d.and;d.max,d.min;var b=d.compare;(m=m||{})[">="]=d.ge,(m=m||{})["<="]=d.le,(m=m||{})[">"]=d.gt,(m=m||{})["<"]=d.lt,(m=m||{})["/="]=d.neq,(m=m||{})["=="]=d.eq;d.e,d.pi,d.clamp,d.logBase,d.abs,d.negate,d.sqrt,d.atan2,d.atan,d.asin,d.acos,d.tan,d.sin,d.cos;(m=m||{})["^"]=d.exp,(m=m||{})["%"]=d.mod;var m;d.rem;(m=m||{})["//"]=d.div,(m=m||{})["/"]=d.floatDiv,(m=m||{})["*"]=d.mul,(m=m||{})["-"]=d.sub,(m=m||{})["+"]=d.add;d.toPolar,d.fromPolar,d.turns,d.degrees,e(function(t,r){var e=r;return"Just"===e.ctor?e._0:t});var y={ctor:"Nothing"},k=(e(function(t,r){var e=r;return"Just"===e.ctor?t(e._0):y}),function(t){return{ctor:"Just",_0:t}}),w=(e(function(t,r){var e=r;return"Just"===e.ctor?k(t(e._0)):y}),o(function(t,r,e){var n={ctor:"_Tuple2",_0:r,_1:e};return"_Tuple2"===n.ctor&&"Just"===n._0.ctor&&"Just"===n._1.ctor?k(l(t,n._0._0,n._1._0)):y})),T=(i(function(t,r,e,n){var o={ctor:"_Tuple3",_0:r,_1:e,_2:n};return"_Tuple3"===o.ctor&&"Just"===o._0.ctor&&"Just"===o._1.ctor&&"Just"===o._2.ctor?k(_(t,o._0._0,o._1._0,o._2._0)):y}),c(function(t,r,e,n,o){var i={ctor:"_Tuple4",_0:r,_1:e,_2:n,_3:o};return"_Tuple4"===i.ctor&&"Just"===i._0.ctor&&"Just"===i._1.ctor&&"Just"===i._2.ctor&&"Just"===i._3.ctor?k(f(t,i._0._0,i._1._0,i._2._0,i._3._0)):y}),u(function(t,r,e,n,o,i){var c={ctor:"_Tuple5",_0:r,_1:e,_2:n,_3:o,_4:i};return"_Tuple5"===c.ctor&&"Just"===c._0.ctor&&"Just"===c._1.ctor&&"Just"===c._2.ctor&&"Just"===c._3.ctor&&"Just"===c._4.ctor?k(s(t,c._0._0,c._1._0,c._2._0,c._3._0,c._4._0)):y}),function(){var t={ctor:"[]"};function r(t,r){return{ctor:"::",_0:t,_1:r}}function n(e){for(var n=t,o=e.length;o--;)n=r(e[o],n);return n}function a(t){for(var r=[];"[]"!==t.ctor;)r.push(t._0),t=t._1;return r}return{Nil:t,Cons:r,cons:e(r),toArray:a,fromArray:n,foldr:o(function(t,r,e){for(var n=a(e),o=r,i=n.length;i--;)o=l(t,n[i],o);return o}),map2:o(function(t,r,e){for(var o=[];"[]"!==r.ctor&&"[]"!==e.ctor;)o.push(l(t,r._0,e._0)),r=r._1,e=e._1;return n(o)}),map3:i(function(t,r,e,o){for(var i=[];"[]"!==r.ctor&&"[]"!==e.ctor&&"[]"!==o.ctor;)i.push(_(t,r._0,e._0,o._0)),r=r._1,e=e._1,o=o._1;return n(i)}),map4:c(function(t,r,e,o,i){for(var c=[];"[]"!==r.ctor&&"[]"!==e.ctor&&"[]"!==o.ctor&&"[]"!==i.ctor;)c.push(f(t,r._0,e._0,o._0,i._0)),r=r._1,e=e._1,o=o._1,i=i._1;return n(c)}),map5:u(function(t,r,e,o,i,c){for(var u=[];"[]"!==r.ctor&&"[]"!==e.ctor&&"[]"!==o.ctor&&"[]"!==i.ctor&&"[]"!==c.ctor;)u.push(s(t,r._0,e._0,o._0,i._0,c._0)),r=r._1,e=e._1,o=o._1,i=i._1,c=c._1;return n(u)}),sortBy:e(function(t,r){return n(a(r).sort(function(r,e){return p.cmp(t(r),t(e))}))}),sortWith:e(function(t,r){return n(a(r).sort(function(r,e){var n=t(r)(e).ctor;return"EQ"===n?0:"LT"===n?-1:1}))})}}()),x=(T.sortWith,T.sortBy,e(function(t,r){for(;;){if(p.cmp(t,0)<1)return r;var e=r;if("[]"===e.ctor)return r;t=t-1,r=e._1}}),T.map5,T.map4,T.map3,T.map2),B=e(function(t,r){for(;;){var e=r;if("[]"===e.ctor)return!1;if(t(e._0))return!0;t=t,r=e._1}}),N=e(function(t,r){return!l(B,function(r){return!t(r)},r)}),R=T.foldr,E=o(function(t,r,e){for(;;){var n=e;if("[]"===n.ctor)return r;var o=t,i=l(t,n._0,r);t=o,r=i,e=n._1}}),S=(e(function(t,r){return l(B,function(r){return p.eq(r,t)},r)}),S||{});S["::"]=T.cons;var C,A=e(function(t,r){return _(R,e(function(r,e){return{ctor:"::",_0:t(r),_1:e}}),{ctor:"[]"},r)}),M=e(function(t,r){var n=e(function(r,e){return t(r)?{ctor:"::",_0:r,_1:e}:e});return _(R,n,{ctor:"[]"},r)}),L=o(function(t,r,e){var n=t(r);return"Just"===n.ctor?{ctor:"::",_0:n._0,_1:e}:e}),O=e(function(t,r){return _(R,L(t),{ctor:"[]"},r)}),U=function(t){return _(E,e(function(t,r){return{ctor:"::",_0:t,_1:r}}),{ctor:"[]"},t)},P=(o(function(t,r,n){var o=e(function(r,e){var n=e;return"::"===n.ctor?{ctor:"::",_0:l(t,r,n._0),_1:e}:{ctor:"[]"}});return U(_(E,o,{ctor:"::",_0:r,_1:{ctor:"[]"}},n))}),e(function(t,r){return"[]"===r.ctor?t:_(R,e(function(t,r){return{ctor:"::",_0:t,_1:r}}),r,t)})),I=e(function(t,r){return function(t){return _(R,P,{ctor:"[]"},t)}(l(A,t,r))}),j=(e(function(t,r){var n=e(function(r,e){var n=e,o=n._0,i=n._1;return t(r)?{ctor:"_Tuple2",_0:{ctor:"::",_0:r,_1:o},_1:i}:{ctor:"_Tuple2",_0:o,_1:{ctor:"::",_0:r,_1:i}}});return _(R,n,{ctor:"_Tuple2",_0:{ctor:"[]"},_1:{ctor:"[]"}},r)}),e(function(t,r){var n=r;if("[]"===n.ctor)return{ctor:"[]"};var o=e(function(r,e){return{ctor:"::",_0:t,_1:{ctor:"::",_0:r,_1:e}}}),i=_(R,o,{ctor:"[]"},n._1);return{ctor:"::",_0:n._0,_1:i}}),o(function(t,r,e){for(;;){if(p.cmp(t,0)<1)return e;var n=r;if("[]"===n.ctor)return e;t=t-1,r=n._1,e={ctor:"::",_0:n._0,_1:e}}})),z=e(function(t,r){return U(_(j,t,r,{ctor:"[]"}))}),J=o(function(t,r,e){if(p.cmp(r,0)<1)return{ctor:"[]"};var n={ctor:"_Tuple2",_0:r,_1:e};t:do{r:do{if("_Tuple2"!==n.ctor)break t;if("[]"===n._1.ctor)return e;if("::"!==n._1._1.ctor){if(1===n._0)break r;break t}switch(n._0){case 1:break r;case 2:return{ctor:"::",_0:n._1._0,_1:{ctor:"::",_0:n._1._1._0,_1:{ctor:"[]"}}};case 3:if("::"===n._1._1._1.ctor)return{ctor:"::",_0:n._1._0,_1:{ctor:"::",_0:n._1._1._0,_1:{ctor:"::",_0:n._1._1._1._0,_1:{ctor:"[]"}}}};break t;default:if("::"===n._1._1._1.ctor&&"::"===n._1._1._1._1.ctor){var o=n._1._1._1._0,i=n._1._1._0,c=n._1._0,u=n._1._1._1._1._0,a=n._1._1._1._1._1;return p.cmp(t,1e3)>0?{ctor:"::",_0:c,_1:{ctor:"::",_0:i,_1:{ctor:"::",_0:o,_1:{ctor:"::",_0:u,_1:l(z,r-4,a)}}}}:{ctor:"::",_0:c,_1:{ctor:"::",_0:i,_1:{ctor:"::",_0:o,_1:{ctor:"::",_0:u,_1:_(J,t+1,r-4,a)}}}}}break t}}while(0);return{ctor:"::",_0:n._1._0,_1:{ctor:"[]"}}}while(0);return e}),D=(e(function(t,r){return _(J,0,t,r)}),o(function(t,r,e){for(;;){if(p.cmp(r,0)<1)return t;t={ctor:"::",_0:e,_1:t},r=r-1,e=e}})),F=(e(function(t,r){return _(D,{ctor:"[]"},t,r)}),o(function(t,r,e){for(;;){if(!(p.cmp(t,r)<1))return e;var n={ctor:"::",_0:r,_1:e};t=t,r=r-1,e=n}})),q=e(function(t,r){return _(F,t,r,{ctor:"[]"})}),W=e(function(t,r){return _(x,t,l(q,0,function(t){return _(E,e(function(t,r){return r+1}),0,t)}(r)-1),r)}),V=function(){return{crash:function(t){throw new Error(t)},log:e(function(t,r){var e=t+": "+p.toString(r),n=n||{};return n.stdout?n.stdout.write(e):console.log(e),r})}}(),H=function(){function t(t,r){for(var e="";t>0;)1&t&&(e+=r),t>>=1,r+=r;return e}function r(t){return Z("could not convert string '"+t+"' to an Int")}function n(t){return Z("could not convert string '"+t+"' to a Float")}return{isEmpty:function(t){return 0===t.length},cons:e(function(t,r){return t+r}),uncons:function(t){var r=t[0];return r?k(p.Tuple2(p.chr(r),t.slice(1))):y},append:e(function(t,r){return t+r}),concat:function(t){return T.toArray(t).join("")},length:function(t){return t.length},map:e(function(t,r){for(var e=r.split(""),n=e.length;n--;)e[n]=t(p.chr(e[n]));return e.join("")}),filter:e(function(t,r){return r.split("").map(p.chr).filter(t).join("")}),reverse:function(t){return t.split("").reverse().join("")},foldl:o(function(t,r,e){for(var n=e.length,o=0;o<n;++o)r=l(t,p.chr(e[o]),r);return r}),foldr:o(function(t,r,e){for(var n=e.length;n--;)r=l(t,p.chr(e[n]),r);return r}),split:e(function(t,r){return T.fromArray(r.split(t))}),join:e(function(t,r){return T.toArray(r).join(t)}),repeat:e(t),slice:o(function(t,r,e){return e.slice(t,r)}),left:e(function(t,r){return t<1?"":r.slice(0,t)}),right:e(function(t,r){return t<1?"":r.slice(-t)}),dropLeft:e(function(t,r){return t<1?r:r.slice(t)}),dropRight:e(function(t,r){return t<1?r:r.slice(0,-t)}),pad:o(function(r,e,n){var o=(r-n.length)/2;return t(Math.ceil(o),e)+n+t(0|o,e)}),padLeft:o(function(r,e,n){return t(r-n.length,e)+n}),padRight:o(function(r,e,n){return n+t(r-n.length,e)}),trim:function(t){return t.trim()},trimLeft:function(t){return t.replace(/^\s+/,"")},trimRight:function(t){return t.replace(/\s+$/,"")},words:function(t){return T.fromArray(t.trim().split(/\s+/g))},lines:function(t){return T.fromArray(t.split(/\r\n|\r|\n/g))},toUpper:function(t){return t.toUpperCase()},toLower:function(t){return t.toLowerCase()},any:e(function(t,r){for(var e=r.length;e--;)if(t(p.chr(r[e])))return!0;return!1}),all:e(function(t,r){for(var e=r.length;e--;)if(!t(p.chr(r[e])))return!1;return!0}),contains:e(function(t,r){return r.indexOf(t)>-1}),startsWith:e(function(t,r){return 0===r.indexOf(t)}),endsWith:e(function(t,r){return r.length>=t.length&&r.lastIndexOf(t)===r.length-t.length}),indexes:e(function(t,r){var e=t.length;if(e<1)return T.Nil;for(var n=0,o=[];(n=r.indexOf(t,n))>-1;)o.push(n),n+=e;return T.fromArray(o)}),toInt:function(t){var e=t.length;if(0===e)return r(t);if("0"===(o=t[0])&&"x"===t[1]){for(var n=2;n<e;++n)if(!("0"<=(o=t[n])&&o<="9"||"A"<=o&&o<="F"||"a"<=o&&o<="f"))return r(t);return rt(parseInt(t,16))}if(o>"9"||o<"0"&&"-"!==o&&"+"!==o)return r(t);for(n=1;n<e;++n){var o;if((o=t[n])<"0"||"9"<o)return r(t)}return rt(parseInt(t,10))},toFloat:function(t){if(0===t.length||/[\sxbo]/.test(t))return n(t);var r=+t;return r==r?rt(r):n(t)},toList:function(t){return T.fromArray(t.split("").map(p.chr))},fromList:function(t){return T.toArray(t).join("")}}}(),G={fromCode:function(t){return p.chr(String.fromCharCode(t))},toCode:function(t){return t.charCodeAt(0)},toUpper:function(t){return p.chr(t.toUpperCase())},toLower:function(t){return p.chr(t.toLowerCase())},toLocaleUpper:function(t){return p.chr(t.toLocaleUpperCase())},toLocaleLower:function(t){return p.chr(t.toLocaleLowerCase())}},Q=G.toCode,K=G.toUpper,$=o(function(t,r,e){var n=Q(e);return p.cmp(n,Q(t))>-1&&p.cmp(n,Q(r))<1}),X=(l($,p.chr("A"),p.chr("Z")),l($,p.chr("a"),p.chr("z"))),Y=(l($,p.chr("0"),p.chr("9")),l($,p.chr("0"),p.chr("7")),e(function(t,r){var e=r;return"Ok"===e.ctor?e._0:t})),Z=function(t){return{ctor:"Err",_0:t}},tt=e(function(t,r){var e=r;return"Ok"===e.ctor?t(e._0):Z(e._0)}),rt=function(t){return{ctor:"Ok",_0:t}},et=e(function(t,r){var e=r;return"Ok"===e.ctor?rt(t(e._0)):Z(e._0)}),nt=(o(function(t,r,e){var n={ctor:"_Tuple2",_0:r,_1:e};return"Ok"===n._0.ctor?"Ok"===n._1.ctor?rt(l(t,n._0._0,n._1._0)):Z(n._1._0):Z(n._0._0)}),i(function(t,r,e,n){var o={ctor:"_Tuple3",_0:r,_1:e,_2:n};return"Ok"===o._0.ctor?"Ok"===o._1.ctor?"Ok"===o._2.ctor?rt(_(t,o._0._0,o._1._0,o._2._0)):Z(o._2._0):Z(o._1._0):Z(o._0._0)}),c(function(t,r,e,n,o){var i={ctor:"_Tuple4",_0:r,_1:e,_2:n,_3:o};return"Ok"===i._0.ctor?"Ok"===i._1.ctor?"Ok"===i._2.ctor?"Ok"===i._3.ctor?rt(f(t,i._0._0,i._1._0,i._2._0,i._3._0)):Z(i._3._0):Z(i._2._0):Z(i._1._0):Z(i._0._0)}),u(function(t,r,e,n,o,i){var c={ctor:"_Tuple5",_0:r,_1:e,_2:n,_3:o,_4:i};return"Ok"===c._0.ctor?"Ok"===c._1.ctor?"Ok"===c._2.ctor?"Ok"===c._3.ctor?"Ok"===c._4.ctor?rt(s(t,c._0._0,c._1._0,c._2._0,c._3._0,c._4._0)):Z(c._4._0):Z(c._3._0):Z(c._2._0):Z(c._1._0):Z(c._0._0)}),e(function(t,r){var e=r;return"Ok"===e.ctor?rt(e._0):Z(t(e._0))}),e(function(t,r){var e=r;return"Just"===e.ctor?rt(e._0):Z(t)}),H.fromList),ot=H.toList,it=(H.toFloat,H.toInt),ct=(H.indexes,H.indexes,H.endsWith,H.startsWith,H.contains,H.all,H.any,H.toLower,H.toUpper,H.lines,H.words,H.trimRight,H.trimLeft,H.trim,H.padRight,H.padLeft,H.pad,H.dropRight,H.dropLeft),ut=(H.right,H.left,H.slice,H.repeat,H.join),at=H.split,lt=(H.foldr,H.foldl,H.reverse,H.filter,H.map,H.length,H.concat),_t=(H.append,H.uncons,H.cons,H.isEmpty,o(function(t,r,e){for(;;){var n=e;if("RBEmpty_elm_builtin"===n.ctor)return r;var o=t,i=_(t,n._1,n._2,_(_t,t,r,n._4));t=o,r=i,e=n._3}})),ft=function(t){return _(_t,o(function(t,r,e){return{ctor:"::",_0:{ctor:"_Tuple2",_0:t,_1:r},_1:e}}),{ctor:"[]"},t)},st=o(function(t,r,e){for(;;){var n=e;if("RBEmpty_elm_builtin"===n.ctor)return r;var o=t,i=_(t,n._1,n._2,_(st,t,r,n._3));t=o,r=i,e=n._4}}),dt=u(function(t,r,n,i,c,u){var a=o(function(e,o,i){for(;;){var c=i,u=c._1,a=c._0,l=a;if("[]"===l.ctor)return{ctor:"_Tuple2",_0:a,_1:_(n,e,o,u)};var s=l._1,d=l._0._1,h=l._0._0;if(!(p.cmp(h,e)<0))return p.cmp(h,e)>0?{ctor:"_Tuple2",_0:a,_1:_(n,e,o,u)}:{ctor:"_Tuple2",_0:s,_1:f(r,h,d,o,u)};e=e,o=o,i={ctor:"_Tuple2",_0:s,_1:_(t,h,d,u)}}}),l=_(st,a,{ctor:"_Tuple2",_0:ft(i),_1:u},c),s=l._0,d=l._1;return _(E,e(function(r,e){var n=r;return _(t,n._0,n._1,e)}),d,s)}),pt=i(function(t,r,e,n){return V.crash(lt({ctor:"::",_0:"Internal red-black tree invariant violated, expected ",_1:{ctor:"::",_0:t,_1:{ctor:"::",_0:" and got ",_1:{ctor:"::",_0:g(r),_1:{ctor:"::",_0:"/",_1:{ctor:"::",_0:e,_1:{ctor:"::",_0:"/",_1:{ctor:"::",_0:n,_1:{ctor:"::",_0:"\nPlease report this bug to <https://github.com/elm-lang/core/issues>",_1:{ctor:"[]"}}}}}}}}}}))}),ht=function(t){var r=t;t:do{if("RBNode_elm_builtin"===r.ctor){if("BBlack"===r._0.ctor)return!0;break t}if("LBBlack"===r._0.ctor)return!0;break t}while(0);return!1},vt=e(function(t,r){for(;;){var e=r;if("RBEmpty_elm_builtin"===e.ctor)return t;t=l(vt,t+1,e._4),r=e._3}}),gt=e(function(t,r){t:for(;;){var e=r;if("RBEmpty_elm_builtin"===e.ctor)return y;switch(l(b,t,e._1).ctor){case"LT":t=t,r=e._3;continue t;case"EQ":return k(e._2);default:t=t,r=e._4;continue t}}}),bt=e(function(t,r){return"Just"===l(gt,t,r).ctor}),mt=o(function(t,r,e){for(;;){var n=e;if("RBEmpty_elm_builtin"===n.ctor)return{ctor:"_Tuple2",_0:t,_1:r};t=n._1,r=n._2,e=n._4}}),yt={ctor:"NBlack"},kt={ctor:"BBlack"},wt={ctor:"Black"},Tt={ctor:"Red"},xt=function(t){switch(t.ctor){case"BBlack":return wt;case"Black":return Tt;case"Red":return yt;default:return V.crash("Can't make a negative black node less black!")}},Bt={ctor:"LBBlack"},Nt={ctor:"LBlack"},Rt=function(t){return{ctor:"RBEmpty_elm_builtin",_0:t}},Et=Rt(Nt),St=function(t){return p.eq(t,Et)},Ct=c(function(t,r,e,n,o){return{ctor:"RBNode_elm_builtin",_0:t,_1:r,_2:e,_3:n,_4:o}}),At=function(t){var r=t;return"RBNode_elm_builtin"===r.ctor?s(Ct,xt(r._0),r._1,r._2,r._3,r._4):Rt(Nt)},Mt=function(t){return function(r){return function(e){return function(n){return function(o){return function(i){return function(c){return function(u){return function(a){return function(l){return function(_){return s(Ct,xt(t),n,o,s(Ct,wt,r,e,u,a),s(Ct,wt,i,c,l,_))}}}}}}}}}}},Lt=function(t){var r=t;return"RBEmpty_elm_builtin"===r.ctor?V.crash("can't make a Leaf red"):s(Ct,Tt,r._1,r._2,r._3,r._4)},Ot=c(function(t,r,e,n,o){var i=s(Ct,t,r,e,n,o);return function(t){var r=t;if("RBNode_elm_builtin"===r.ctor){var e=r._0;return p.eq(e,wt)||p.eq(e,kt)}return!0}(i)?function(t){var r=t;t:do{r:do{e:do{n:do{o:do{i:do{c:do{if("RBNode_elm_builtin"!==r.ctor)break t;if("RBNode_elm_builtin"===r._3.ctor)if("RBNode_elm_builtin"===r._4.ctor)switch(r._3._0.ctor){case"Red":switch(r._4._0.ctor){case"Red":if("RBNode_elm_builtin"===r._3._3.ctor&&"Red"===r._3._3._0.ctor)break c;if("RBNode_elm_builtin"===r._3._4.ctor&&"Red"===r._3._4._0.ctor)break i;if("RBNode_elm_builtin"===r._4._3.ctor&&"Red"===r._4._3._0.ctor)break o;if("RBNode_elm_builtin"===r._4._4.ctor&&"Red"===r._4._4._0.ctor)break n;break t;case"NBlack":if("RBNode_elm_builtin"===r._3._3.ctor&&"Red"===r._3._3._0.ctor)break c;if("RBNode_elm_builtin"===r._3._4.ctor&&"Red"===r._3._4._0.ctor)break i;if("BBlack"===r._0.ctor&&"RBNode_elm_builtin"===r._4._3.ctor&&"Black"===r._4._3._0.ctor&&"RBNode_elm_builtin"===r._4._4.ctor&&"Black"===r._4._4._0.ctor)break e;break t;default:if("RBNode_elm_builtin"===r._3._3.ctor&&"Red"===r._3._3._0.ctor)break c;if("RBNode_elm_builtin"===r._3._4.ctor&&"Red"===r._3._4._0.ctor)break i;break t}case"NBlack":switch(r._4._0.ctor){case"Red":if("RBNode_elm_builtin"===r._4._3.ctor&&"Red"===r._4._3._0.ctor)break o;if("RBNode_elm_builtin"===r._4._4.ctor&&"Red"===r._4._4._0.ctor)break n;if("BBlack"===r._0.ctor&&"RBNode_elm_builtin"===r._3._3.ctor&&"Black"===r._3._3._0.ctor&&"RBNode_elm_builtin"===r._3._4.ctor&&"Black"===r._3._4._0.ctor)break r;break t;case"NBlack":if("BBlack"===r._0.ctor){if("RBNode_elm_builtin"===r._4._3.ctor&&"Black"===r._4._3._0.ctor&&"RBNode_elm_builtin"===r._4._4.ctor&&"Black"===r._4._4._0.ctor)break e;if("RBNode_elm_builtin"===r._3._3.ctor&&"Black"===r._3._3._0.ctor&&"RBNode_elm_builtin"===r._3._4.ctor&&"Black"===r._3._4._0.ctor)break r;break t}break t;default:if("BBlack"===r._0.ctor&&"RBNode_elm_builtin"===r._3._3.ctor&&"Black"===r._3._3._0.ctor&&"RBNode_elm_builtin"===r._3._4.ctor&&"Black"===r._3._4._0.ctor)break r;break t}default:switch(r._4._0.ctor){case"Red":if("RBNode_elm_builtin"===r._4._3.ctor&&"Red"===r._4._3._0.ctor)break o;if("RBNode_elm_builtin"===r._4._4.ctor&&"Red"===r._4._4._0.ctor)break n;break t;case"NBlack":if("BBlack"===r._0.ctor&&"RBNode_elm_builtin"===r._4._3.ctor&&"Black"===r._4._3._0.ctor&&"RBNode_elm_builtin"===r._4._4.ctor&&"Black"===r._4._4._0.ctor)break e;break t;default:break t}}else switch(r._3._0.ctor){case"Red":if("RBNode_elm_builtin"===r._3._3.ctor&&"Red"===r._3._3._0.ctor)break c;if("RBNode_elm_builtin"===r._3._4.ctor&&"Red"===r._3._4._0.ctor)break i;break t;case"NBlack":if("BBlack"===r._0.ctor&&"RBNode_elm_builtin"===r._3._3.ctor&&"Black"===r._3._3._0.ctor&&"RBNode_elm_builtin"===r._3._4.ctor&&"Black"===r._3._4._0.ctor)break r;break t;default:break t}else{if("RBNode_elm_builtin"!==r._4.ctor)break t;switch(r._4._0.ctor){case"Red":if("RBNode_elm_builtin"===r._4._3.ctor&&"Red"===r._4._3._0.ctor)break o;if("RBNode_elm_builtin"===r._4._4.ctor&&"Red"===r._4._4._0.ctor)break n;break t;case"NBlack":if("BBlack"===r._0.ctor&&"RBNode_elm_builtin"===r._4._3.ctor&&"Black"===r._4._3._0.ctor&&"RBNode_elm_builtin"===r._4._4.ctor&&"Black"===r._4._4._0.ctor)break e;break t;default:break t}}}while(0);return Mt(r._0)(r._3._3._1)(r._3._3._2)(r._3._1)(r._3._2)(r._1)(r._2)(r._3._3._3)(r._3._3._4)(r._3._4)(r._4)}while(0);return Mt(r._0)(r._3._1)(r._3._2)(r._3._4._1)(r._3._4._2)(r._1)(r._2)(r._3._3)(r._3._4._3)(r._3._4._4)(r._4)}while(0);return Mt(r._0)(r._1)(r._2)(r._4._3._1)(r._4._3._2)(r._4._1)(r._4._2)(r._3)(r._4._3._3)(r._4._3._4)(r._4._4)}while(0);return Mt(r._0)(r._1)(r._2)(r._4._1)(r._4._2)(r._4._4._1)(r._4._4._2)(r._3)(r._4._3)(r._4._4._3)(r._4._4._4)}while(0);return s(Ct,wt,r._4._3._1,r._4._3._2,s(Ct,wt,r._1,r._2,r._3,r._4._3._3),s(Ot,wt,r._4._1,r._4._2,r._4._3._4,Lt(r._4._4)))}while(0);return s(Ct,wt,r._3._4._1,r._3._4._2,s(Ot,wt,r._3._1,r._3._2,Lt(r._3._3),r._3._4._3),s(Ct,wt,r._1,r._2,r._3._4._4,r._4))}while(0);return t}(i):i}),Ut=c(function(t,r,e,n,o){return ht(n)||ht(o)?s(Ot,function(t){switch(t.ctor){case"Black":return kt;case"Red":return wt;case"NBlack":return Tt;default:return V.crash("Can't make a double black node more black!")}}(t),r,e,At(n),At(o)):s(Ct,t,r,e,n,o)}),Pt=c(function(t,r,e,n,o){var i=o;return"RBEmpty_elm_builtin"===i.ctor?_(It,t,n,o):s(Ut,t,r,e,n,s(Pt,i._0,i._1,i._2,i._3,i._4))}),It=o(function(t,r,e){var n={ctor:"_Tuple2",_0:r,_1:e};if("RBEmpty_elm_builtin"!==n._0.ctor){if("RBEmpty_elm_builtin"===n._1.ctor){var o=n._1._0,i=n._0._0,c={ctor:"_Tuple3",_0:t,_1:i,_2:o};return"_Tuple3"===c.ctor&&"Black"===c._0.ctor&&"Red"===c._1.ctor&&"LBlack"===c._2.ctor?s(Ct,wt,n._0._1,n._0._2,n._0._3,n._0._4):f(pt,"Black/Red/LBlack",t,g(i),g(o))}var u=n._0._2,a=n._0._4,l=n._0._1,d=s(Pt,n._0._0,l,u,n._0._3,a),p=_(mt,l,u,a),h=p._0,v=p._1;return s(Ut,t,h,v,d,e)}if("RBEmpty_elm_builtin"!==n._1.ctor){var b=n._1._0,m=n._0._0,y={ctor:"_Tuple3",_0:t,_1:m,_2:b};return"_Tuple3"===y.ctor&&"Black"===y._0.ctor&&"LBlack"===y._1.ctor&&"Red"===y._2.ctor?s(Ct,wt,n._1._1,n._1._2,n._1._3,n._1._4):f(pt,"Black/LBlack/Red",t,g(m),g(b))}switch(t.ctor){case"Red":return Rt(Nt);case"Black":return Rt(Bt);default:return V.crash("cannot have bblack or nblack nodes at this point")}}),jt=e(function(t,r){var e=r;if("RBEmpty_elm_builtin"===e.ctor)return Rt(Nt);var n=e._1;return s(Ct,e._0,n,l(t,n,e._2),l(jt,t,e._3),l(jt,t,e._4))}),zt={ctor:"Same"},Jt={ctor:"Remove"},Dt={ctor:"Insert"},Ft=o(function(t,r,e){var n=function(e){var o=e;if("RBEmpty_elm_builtin"===o.ctor){var i=r(y);return"Nothing"===i.ctor?{ctor:"_Tuple2",_0:zt,_1:Et}:{ctor:"_Tuple2",_0:Dt,_1:s(Ct,Tt,t,i._0,Et,Et)}}var c=o._2,u=o._4,a=o._3,f=o._1,d=o._0;switch(l(b,t,f).ctor){case"EQ":var p=r(k(c));return"Nothing"===p.ctor?{ctor:"_Tuple2",_0:Jt,_1:_(It,d,a,u)}:{ctor:"_Tuple2",_0:zt,_1:s(Ct,d,f,p._0,a,u)};case"LT":var h=n(a),v=h._0,g=h._1;switch(v.ctor){case"Same":return{ctor:"_Tuple2",_0:zt,_1:s(Ct,d,f,c,g,u)};case"Insert":return{ctor:"_Tuple2",_0:Dt,_1:s(Ot,d,f,c,g,u)};default:return{ctor:"_Tuple2",_0:Jt,_1:s(Ut,d,f,c,g,u)}}default:var m=n(u),w=(v=m._0,m._1);switch(v.ctor){case"Same":return{ctor:"_Tuple2",_0:zt,_1:s(Ct,d,f,c,a,w)};case"Insert":return{ctor:"_Tuple2",_0:Dt,_1:s(Ot,d,f,c,a,w)};default:return{ctor:"_Tuple2",_0:Jt,_1:s(Ut,d,f,c,a,w)}}}},o=n(e),i=o._0,c=o._1;switch(i.ctor){case"Same":return c;case"Insert":return function(t){var r=t;return"RBNode_elm_builtin"===r.ctor&&"Red"===r._0.ctor?s(Ct,wt,r._1,r._2,r._3,r._4):t}(c);default:return function(t){var r=t;return"RBEmpty_elm_builtin"===r.ctor?Rt(Nt):s(Ct,wt,r._1,r._2,r._3,r._4)}(c)}}),qt=o(function(t,r,e){return _(Ft,t,h(k(r)),e)}),Wt=(e(function(t,r){return _(qt,t,r,Et)}),e(function(t,r){return _(st,qt,r,t)})),Vt=e(function(t,r){var e=o(function(r,e,n){return l(t,r,e)?_(qt,r,e,n):n});return _(st,e,Et,r)}),Ht=e(function(t,r){return l(Vt,e(function(t,e){return l(bt,t,r)}),t)}),Gt=e(function(t,r){var e=o(function(r,e,n){var o=n,i=o._1,c=o._0;return l(t,r,e)?{ctor:"_Tuple2",_0:_(qt,r,e,c),_1:i}:{ctor:"_Tuple2",_0:c,_1:_(qt,r,e,i)}});return _(st,e,{ctor:"_Tuple2",_0:Et,_1:Et},r)}),Qt=function(t){return _(E,e(function(t,r){var e=t;return _(qt,e._0,e._1,r)}),Et,t)},Kt=e(function(t,r){return _(Ft,t,h(y),r)}),$t=e(function(t,r){return _(st,o(function(t,r,e){return l(Kt,t,e)}),t,r)}),Xt=function(){var t=32,r=2,n={ctor:"_Array",height:0,table:[]};function i(r,e){var n=r.height;if(e.length===n){var o={ctor:"_Array",height:n+1,table:[],lengths:[]};e.push(o)}e[n].table.push(r);var c=b(r);e[n].lengths.length>0&&(c+=e[n].lengths[e[n].lengths.length-1]),e[n].lengths.push(c),e[n].table.length===t&&(i(e[n],e),e[n]={ctor:"_Array",height:n+1,table:[],lengths:[]})}function c(t,r){var e=t.table.length-1;t.table[e]=r,t.lengths[e]=b(r),t.lengths[e]+=e>0?t.lengths[e-1]:0}function u(t,r){if(r.table.length>0){t.table[0]=r,t.lengths[0]=b(r);for(var e=b(t.table[0]),n=1;n<t.lengths.length;n++)e+=b(t.table[n]),t.lengths[n]=e}else{t.table.shift();for(n=1;n<t.lengths.length;n++)t.lengths[n]=t.lengths[n]-t.lengths[0];t.lengths.shift()}}function a(r,e){for(var n=0,o=0;o<r.table.length;o++)n+=r.table[o].table.length;for(o=0;o<e.table.length;o++)n+=e.table[o].table.length;return r.table.length+e.table.length-(Math.floor((n-1)/t)+1)}function _(t,r,e){return e<t.length?t[e]:r[e-t.length]}function f(t,r,e,n){e<t.length?t[e]=n:r[e-t.length]=n}function s(t,r,e,n){f(t.table,r.table,e,n);var o=0===e||e===t.lengths.length?0:_(t.lengths,t.lengths,e-1);f(t.lengths,r.lengths,e,o+b(n))}function d(t,r){r<0&&(r=0);var e={ctor:"_Array",height:t,table:new Array(r)};return t>0&&(e.lengths=new Array(r)),e}function p(r,e,n){for(var o=d(r.height,Math.min(t,r.table.length+e.table.length-n)),i=d(r.height,o.table.length-(r.table.length+e.table.length-n)),c=0;_(r.table,e.table,c).table.length%t==0;)f(o.table,i.table,c,_(r.table,e.table,c)),f(o.lengths,i.lengths,c,_(r.lengths,e.lengths,c)),c++;for(var u=c,a=new d(r.height-1,0),l=0;c-u-(a.table.length>0?1:0)<n;){var p=_(r.table,e.table,c),h=Math.min(t-a.table.length,p.table.length);if(a.table=a.table.concat(p.table.slice(l,h)),a.height>0)for(var v=a.lengths.length,g=v;g<v+h-l;g++)a.lengths[g]=b(a.table[g]),a.lengths[g]+=g>0?a.lengths[g-1]:0;l+=h,p.table.length<=h&&(c++,l=0),a.table.length===t&&(s(o,i,u,a),a=d(r.height-1,0),u++)}for(a.table.length>0&&(s(o,i,u,a),u++);c<r.table.length+e.table.length;)s(o,i,u,_(r.table,e.table,c)),c++,u++;return[o,i]}function h(t){return t.table[t.table.length-1]}function v(t){return t.table[0]}function g(t){var r={ctor:"_Array",height:t.height,table:t.table.slice()};return t.height>0&&(r.lengths=t.lengths.slice()),r}function b(t){return 0===t.height?t.table.length:t.lengths[t.lengths.length-1]}function m(t,r){for(var e=t>>5*r.height;r.lengths[e]<=t;)e++;return e}function y(t,r){return 0===r?{ctor:"_Array",height:0,table:[t]}:{ctor:"_Array",height:r,table:[y(t,r-1)],lengths:[1]}}function k(t,r){return r===t.height?t:{ctor:"_Array",height:r,table:[k(t,r-1)],lengths:[b(t)]}}function w(t,r){return{ctor:"_Array",height:t.height+1,table:[t,r],lengths:[b(t),b(t)+b(r)]}}return{empty:n,fromList:function(r){if("[]"===r.ctor)return n;for(var e=new Array(t),o=[],c=0;"[]"!==r.ctor;)e[c]=r._0,r=r._1,++c===t&&(i({ctor:"_Array",height:0,table:e},o),e=new Array(t),c=0);c>0&&i({ctor:"_Array",height:0,table:e.splice(0,c)},o);for(var u=0;u<o.length-1;u++)o[u].table.length>0&&i(o[u],o);var a=o[o.length-1];return a.height>0&&1===a.table.length?a.table[0]:a},toList:function(t){return function t(r,e){for(var n=e.table.length-1;n>=0;n--)r=0===e.height?T.Cons(e.table[n],r):t(r,e.table[n]);return r}(T.Nil,t)},initialize:e(function(r,e){return r<=0?n:function r(e,n,o,i){if(0===n){for(var c=new Array((i-o)%(t+1)),u=0;u<c.length;u++)c[u]=e(o+u);return{ctor:"_Array",height:0,table:c}}for(var a=Math.pow(t,n),c=new Array(Math.ceil((i-o)/a)),l=new Array(c.length),u=0;u<c.length;u++)c[u]=r(e,n-1,o+u*a,Math.min(o+(u+1)*a,i)),l[u]=b(c[u])+(u>0?l[u-1]:0);return{ctor:"_Array",height:n,table:c,lengths:l}}(e,Math.floor(Math.log(r)/Math.log(t)),0,r)}),append:e(function(e,n){if(0===e.table.length)return n;if(0===n.table.length)return e;var o=function t(e,n){if(0===e.height&&0===n.height)return[e,n];if(1!==e.height||1!==n.height)if(e.height===n.height){e=g(e),n=g(n);var o=t(h(e),v(n));c(e,o[1]),u(n,o[0])}else if(e.height>n.height){e=g(e);var o=t(h(e),n);c(e,o[0]),n=k(o[1],o[1].height+1)}else{n=g(n);var o=t(e,v(n)),i=0===o[0].table.length?0:1,l=0===i?1:0;u(n,o[i]),e=k(o[l],o[l].height+1)}if(0===e.table.length||0===n.table.length)return[e,n];var _=a(e,n);return _<=r?[e,n]:p(e,n,_)}(e,n);if(o[0].table.length+o[1].table.length<=t){if(0===o[0].table.length)return o[1];if(0===o[1].table.length)return o[0];if(o[0].table=o[0].table.concat(o[1].table),o[0].height>0){for(var i=b(o[0]),l=0;l<o[1].lengths.length;l++)o[1].lengths[l]+=i;o[0].lengths=o[0].lengths.concat(o[1].lengths)}return o[0]}if(o[0].height>0){var _=a(e,n);_>r&&(o=p(o[0],o[1],_))}return w(o[0],o[1])}),push:e(function(r,e){var n=function r(e,n){if(0===n.height){if(n.table.length<t){var o={ctor:"_Array",height:0,table:n.table.slice()};return o.table.push(e),o}return null}var i=r(e,h(n));if(null!==i){var o=g(n);return o.table[o.table.length-1]=i,o.lengths[o.lengths.length-1]++,o}if(n.table.length<t){var c=y(e,n.height-1),o=g(n);return o.table.push(c),o.lengths.push(o.lengths[o.lengths.length-1]+b(c)),o}return null}(r,e);return null!==n?n:w(e,y(r,e.height))}),slice:o(function(t,r,e){return t<0&&(t+=b(e)),r<0&&(r+=b(e)),function t(r,e){if(0===r)return e;if(0===e.height){var n={ctor:"_Array",height:0};return n.table=e.table.slice(r,e.table.length+1),n}var o=m(r,e),i=t(r-(o>0?e.lengths[o-1]:0),e.table[o]);if(o===e.table.length-1)return i;var n={ctor:"_Array",height:e.height,table:e.table.slice(o,e.table.length+1),lengths:new Array(e.table.length-o)};n.table[0]=i;for(var c=0,u=0;u<n.table.length;u++)c+=b(n.table[u]),n.lengths[u]=c;return n}(t,function t(r,e){if(r===b(e))return e;if(0===e.height){var n={ctor:"_Array",height:0};return n.table=e.table.slice(0,r),n}var o=m(r,e),i=t(r-(o>0?e.lengths[o-1]:0),e.table[o]);if(0===o)return i;var n={ctor:"_Array",height:e.height,table:e.table.slice(0,o),lengths:e.lengths.slice(0,o)};return i.table.length>0&&(n.table[o]=i,n.lengths[o]=b(i)+(o>0?n.lengths[o-1]:0)),n}(r,e))}),get:e(function(t,r){if(t<0||t>=b(r))throw new Error("Index "+t+" is out of range. Check the length of your array first or use getMaybe or getWithDefault.");return function(t,r){for(var e=r.height;e>0;e--){for(var n=t>>5*e;r.lengths[n]<=t;)n++;n>0&&(t-=r.lengths[n-1]),r=r.table[n]}return r.table[t]}(t,r)}),set:o(function(t,r,e){return t<0||b(e)<=t?e:function t(r,e,n){if(0===(n=g(n)).height)n.table[r]=e;else{var o=m(r,n);o>0&&(r-=n.lengths[o-1]),n.table[o]=t(r,e,n.table[o])}return n}(t,r,e)}),map:e(function t(r,e){var n={ctor:"_Array",height:e.height,table:new Array(e.table.length)};e.height>0&&(n.lengths=e.lengths);for(var o=0;o<e.table.length;o++)n.table[o]=0===e.height?r(e.table[o]):t(r,e.table[o]);return n}),indexedMap:e(function(t,r){return function t(r,e,n){var o={ctor:"_Array",height:e.height,table:new Array(e.table.length)};e.height>0&&(o.lengths=e.lengths);for(var i=0;i<e.table.length;i++)o.table[i]=0===e.height?l(r,n+i,e.table[i]):t(r,e.table[i],0==i?n:n+e.lengths[i-1]);return o}(t,r,0)}),foldl:o(function t(r,e,n){if(0===n.height)for(var o=0;o<n.table.length;o++)e=l(r,n.table[o],e);else for(o=0;o<n.table.length;o++)e=t(r,e,n.table[o]);return e}),foldr:o(function t(r,e,n){if(0===n.height)for(var o=n.table.length;o--;)e=l(r,n.table[o],e);else for(o=n.table.length;o--;)e=t(r,e,n.table[o]);return e}),length:b,toJSArray:function(t){var r=new Array(b(t));return function t(r,e,n){for(var o=0;o<n.table.length;o++)if(0===n.height)r[e+o]=n.table[o];else{var i=0===o?0:n.lengths[o-1];t(r,e+i,n.table[o])}}(r,0,t),r},fromJSArray:function(r){return 0===r.length?n:function r(e,n,o,i){if(0===n)return{ctor:"_Array",height:0,table:e.slice(o,i)};for(var c=Math.pow(t,n),u=new Array(Math.ceil((i-o)/c)),a=new Array(u.length),l=0;l<u.length;l++)u[l]=r(e,n-1,o+l*c,Math.min(o+(l+1)*c,i)),a[l]=b(u[l])+(l>0?a[l-1]:0);return{ctor:"_Array",height:n,table:u,lengths:a}}(r,Math.floor(Math.log(r.length)/Math.log(t)),0,r.length)}}}(),Yt=(Xt.append,Xt.length,Xt.slice,Xt.set,e(function(t,r){return p.cmp(0,t)<1&&p.cmp(t,Xt.length(r))<0?k(l(Xt.get,t,r)):y}),Xt.push,Xt.empty,e(function(t,r){var n=e(function(r,e){return t(r)?l(Xt.push,r,e):e});return _(Xt.foldl,n,Xt.empty,r)}),Xt.foldr,Xt.foldl,Xt.indexedMap,Xt.map,Xt.toList),Zt=(Xt.fromList,Xt.initialize),tr=(e(function(t,r){return l(Zt,t,h(r))}),function(){function t(t,r){return{ctor:"<decoder>",tag:"map-many",func:t,decoders:r}}function r(t){return{tag:"ok",value:t}}function n(t,r){return{tag:"primitive",type:t,value:r}}function l(t,r){return{tag:"index",index:t,rest:r}}function _(t,r){return{tag:"field",field:t,rest:r}}function l(t,r){return{tag:"index",index:t,rest:r}}function f(t){return void 0===t?"undefined":JSON.stringify(t)}function s(t,e){var o=function t(e,o){switch(e.tag){case"bool":return"boolean"==typeof o?r(o):n("a Bool",o);case"int":return"number"!=typeof o?n("an Int",o):-2147483647<o&&o<2147483647&&(0|o)===o?r(o):!isFinite(o)||o%1?n("an Int",o):r(o);case"float":return"number"==typeof o?r(o):n("a Float",o);case"string":return"string"==typeof o?r(o):o instanceof String?r(o+""):n("a String",o);case"null":return null===o?r(e.value):n("null",o);case"value":return r(o);case"list":if(!(o instanceof Array))return n("a List",o);for(var i=T.Nil,c=o.length;c--;){var u=t(e.decoder,o[c]);if("ok"!==u.tag)return l(c,u);i=T.Cons(u.value,i)}return r(i);case"array":if(!(o instanceof Array))return n("an Array",o);for(var a=o.length,f=new Array(a),c=a;c--;){var u=t(e.decoder,o[c]);if("ok"!==u.tag)return l(c,u);f[c]=u.value}return r(Xt.fromJSArray(f));case"maybe":var u=t(e.decoder,o);return"ok"===u.tag?r(k(u.value)):r(y);case"field":var s=e.field;if("object"!=typeof o||null===o||!(s in o))return n("an object with a field named `"+s+"`",o);var u=t(e.decoder,o[s]);return"ok"===u.tag?u:_(s,u);case"index":var d=e.index;if(!(o instanceof Array))return n("an array",o);if(d>=o.length)return n("a longer array. Need index "+d+" but there are only "+o.length+" entries",o);var u=t(e.decoder,o[d]);return"ok"===u.tag?u:l(d,u);case"key-value":if("object"!=typeof o||null===o||o instanceof Array)return n("an object",o);var h=T.Nil;for(var v in o){var u=t(e.decoder,o[v]);if("ok"!==u.tag)return _(v,u);var g=p.Tuple2(v,u.value);h=T.Cons(g,h)}return r(h);case"map-many":for(var b=e.func,m=e.decoders,c=0;c<m.length;c++){var u=t(m[c],o);if("ok"!==u.tag)return u;b=b(u.value)}return r(b);case"andThen":var u=t(e.decoder,o);return"ok"!==u.tag?u:t(e.callback(u.value),o);case"oneOf":for(var w=[],x=e.decoders;"[]"!==x.ctor;){var u=t(x._0,o);if("ok"===u.tag)return u;w.push(u),x=x._1}return function(t){return{tag:"oneOf",problems:t}}(w);case"fail":return function(t){return{tag:"fail",msg:t}}(e.msg);case"succeed":return r(e.msg)}}(t,e);return"ok"===o.tag?rt(o.value):Z(function t(r){for(var e="_";r;)switch(r.tag){case"primitive":return"Expecting "+r.type+("_"===e?"":" at "+e)+" but instead got: "+f(r.value);case"index":e+="["+r.index+"]",r=r.rest;break;case"field":e+="."+r.field,r=r.rest;break;case"oneOf":for(var n=r.problems,o=0;o<n.length;o++)n[o]=t(n[o]);return"I ran into the following problems"+("_"===e?"":" at "+e)+":\n\n"+n.join("\n");case"fail":return"I ran into a `fail` decoder"+("_"===e?"":" at "+e)+": "+r.msg}}(o))}function d(t,r){if(t===r)return!0;if(t.tag!==r.tag)return!1;switch(t.tag){case"succeed":case"fail":return t.msg===r.msg;case"bool":case"int":case"float":case"string":case"value":return!0;case"null":return t.value===r.value;case"list":case"array":case"maybe":case"key-value":return d(t.decoder,r.decoder);case"field":return t.field===r.field&&d(t.decoder,r.decoder);case"index":return t.index===r.index&&d(t.decoder,r.decoder);case"map-many":return t.func===r.func&&h(t.decoders,r.decoders);case"andThen":return t.callback===r.callback&&d(t.decoder,r.decoder);case"oneOf":return h(t.decoders,r.decoders)}}function h(t,r){var e=t.length;if(e!==r.length)return!1;for(var n=0;n<e;n++)if(!d(t[n],r[n]))return!1;return!0}return{encode:e(function(t,r){return JSON.stringify(r,null,t)}),runOnString:e(function(t,r){var e;try{e=JSON.parse(r)}catch(t){return Z("Given an invalid JSON: "+t.message)}return s(t,e)}),run:e(s),decodeNull:function(t){return{ctor:"<decoder>",tag:"null",value:t}},decodePrimitive:function(t){return{ctor:"<decoder>",tag:t}},decodeContainer:e(function(t,r){return{ctor:"<decoder>",tag:t,decoder:r}}),decodeField:e(function(t,r){return{ctor:"<decoder>",tag:"field",field:t,decoder:r}}),decodeIndex:e(function(t,r){return{ctor:"<decoder>",tag:"index",index:t,decoder:r}}),map1:e(function(r,e){return t(r,[e])}),map2:o(function(r,e,n){return t(r,[e,n])}),map3:i(function(r,e,n,o){return t(r,[e,n,o])}),map4:c(function(r,e,n,o,i){return t(r,[e,n,o,i])}),map5:u(function(r,e,n,o,i,c){return t(r,[e,n,o,i,c])}),map6:a(function(r,e,n,o,i,c,u){return t(r,[e,n,o,i,c,u])}),map7:function(t){function r(r){return function(e){return function(n){return function(o){return function(i){return function(c){return function(u){return function(a){return t(r,e,n,o,i,c,u,a)}}}}}}}}return r.arity=8,r.func=t,r}(function(r,e,n,o,i,c,u,a){return t(r,[e,n,o,i,c,u,a])}),map8:function(t){function r(r){return function(e){return function(n){return function(o){return function(i){return function(c){return function(u){return function(a){return function(l){return t(r,e,n,o,i,c,u,a,l)}}}}}}}}}return r.arity=9,r.func=t,r}(function(r,e,n,o,i,c,u,a,l){return t(r,[e,n,o,i,c,u,a,l])}),decodeKeyValuePairs:function(t){return{ctor:"<decoder>",tag:"key-value",decoder:t}},andThen:e(function(t,r){return{ctor:"<decoder>",tag:"andThen",decoder:r,callback:t}}),fail:function(t){return{ctor:"<decoder>",tag:"fail",msg:t}},succeed:function(t){return{ctor:"<decoder>",tag:"succeed",msg:t}},oneOf:function(t){return{ctor:"<decoder>",tag:"oneOf",decoders:t}},identity:function(t){return t},encodeNull:null,encodeArray:Xt.toJSArray,encodeList:T.toArray,encodeObject:function(t){for(var r={};"[]"!==t.ctor;){var e=t._0;r[e._0]=e._1,t=t._1}return r},equality:d}}()),rr=(tr.encodeList,tr.encodeArray,tr.encodeObject,tr.encodeNull,tr.identity),er=(tr.identity,tr.identity,tr.identity),nr=tr.encode,or=tr.decodeNull,ir=tr.decodePrimitive("value"),cr=tr.andThen,ur=tr.fail,ar=tr.succeed,lr=function(t){return l(cr,t,ar({ctor:"_Tuple0"}))},_r=tr.run,fr=tr.runOnString,sr=(tr.map8,tr.map7,tr.map6,tr.map5,tr.map4,tr.map3,tr.map2),dr=tr.map1,pr=tr.oneOf,hr=function(t){return l(tr.decodeContainer,"maybe",t)},vr=(tr.decodeIndex,tr.decodeField),gr=e(function(t,r){return _(R,vr,r,t)}),br=tr.decodeKeyValuePairs,mr=function(t){return l(tr.decodeContainer,"list",t)},yr=tr.decodePrimitive("float"),kr=tr.decodePrimitive("int"),wr=tr.decodePrimitive("bool"),Tr=tr.decodePrimitive("string"),xr=function(){var t="STYLE",r="EVENT",n="ATTR",c="ATTR_NS",u="undefined"!=typeof document?document:{};function a(t,r,e){return{type:"thunk",func:t,args:r,thunk:e,node:void 0}}function f(e){for(var o,i={};"[]"!==e.ctor;){var u=e._0,a=u.key;if(a===n||a===c||a===r){var l=i[a]||{};l[u.realKey]=u.value,i[a]=l}else if(a===t){for(var _=i[a]||{},f=u.value;"[]"!==f.ctor;){var s=f._0;_[s._0]=s._1,f=f._1}i[a]=_}else if("namespace"===a)o=u.value;else if("className"===a){var d=i[a];i[a]=void 0===d?u.value:d+" "+u.value}else i[a]=u.value;e=e._1}return{facts:i,namespace:o}}function s(t,e,n){return{key:r,realKey:t,value:{options:e,decoder:n}}}function d(t,r){return(t.options===r.options||t.options.stopPropagation===r.options.stopPropagation&&t.options.preventDefault===r.options.preventDefault)&&tr.equality(t.decoder,r.decoder)}function h(t,r){switch(t.type){case"thunk":return t.node||(t.node=t.thunk()),h(t.node,r);case"tagger":for(var e=t.node,n=t.tagger;"tagger"===e.type;)"object"!=typeof n?n=[n,e.tagger]:n.push(e.tagger),e=e.node;var o={tagger:n,parent:r};return(a=h(e,o)).elm_event_node_ref=o,a;case"text":return u.createTextNode(t.text);case"node":v(a=t.namespace?u.createElementNS(t.namespace,t.tag):u.createElement(t.tag),r,t.facts);for(var i=t.children,c=0;c<i.length;c++)a.appendChild(h(i[c],r));return a;case"keyed-node":v(a=t.namespace?u.createElementNS(t.namespace,t.tag):u.createElement(t.tag),r,t.facts);for(i=t.children,c=0;c<i.length;c++)a.appendChild(h(i[c]._1,r));return a;case"custom":var a;return v(a=t.impl.render(t.model),r,t.facts),a}}function v(e,o,i){for(var u in i){var a=i[u];switch(u){case t:g(e,a);break;case r:b(e,o,a);break;case n:y(e,a);break;case c:k(e,a);break;case"value":e[u]!==a&&(e[u]=a);break;default:e[u]=a}}}function g(t,r){var e=t.style;for(var n in r)e[n]=r[n]}function b(t,r,e){var n=t.elm_handlers||{};for(var o in e){var i=n[o],c=e[o];if(void 0===c)t.removeEventListener(o,i),n[o]=void 0;else if(void 0===i){i=m(r,c);t.addEventListener(o,i),n[o]=i}else i.info=c}t.elm_handlers=n}function m(t,r){function e(r){var n=e.info,o=l(tr.run,n.decoder,r);if("Ok"===o.ctor){var i=n.options;i.stopPropagation&&r.stopPropagation(),i.preventDefault&&r.preventDefault();for(var c=o._0,u=t;u;){var a=u.tagger;if("function"==typeof a)c=a(c);else for(var _=a.length;_--;)c=a[_](c);u=u.parent}}}return e.info=r,e}function y(t,r){for(var e in r){var n=r[e];void 0===n?t.removeAttribute(e):t.setAttribute(e,n)}}function k(t,r){for(var e in r){var n=r[e],o=n.namespace,i=n.value;void 0===i?t.removeAttributeNS(o,e):t.setAttributeNS(o,e,i)}}function w(t,r){var e=[];return x(t,r,e,0),e}function T(t,r,e){return{index:r,type:t,data:e,domNode:void 0,eventNode:void 0}}function x(t,r,e,n){if(t!==r){var o=t.type,i=r.type;if(o===i)switch(i){case"thunk":for(var c=t.args,u=r.args,a=c.length,l=t.func===r.func&&a===u.length;l&&a--;)l=c[a]===u[a];if(l)return void(r.node=t.node);r.node=r.thunk();var _=[];return x(t.node,r.node,_,0),void(_.length>0&&e.push(T("p-thunk",n,_)));case"tagger":for(var f=t.tagger,s=r.tagger,d=!1,p=t.node;"tagger"===p.type;)d=!0,"object"!=typeof f?f=[f,p.tagger]:f.push(p.tagger),p=p.node;for(var h=r.node;"tagger"===h.type;)d=!0,"object"!=typeof s?s=[s,h.tagger]:s.push(h.tagger),h=h.node;return d&&f.length!==s.length?void e.push(T("p-redraw",n,r)):((d?function(t,r){for(var e=0;e<t.length;e++)if(t[e]!==r[e])return!1;return!0}(f,s):f===s)||e.push(T("p-tagger",n,s)),void x(p,h,e,n+1));case"text":return t.text!==r.text?void e.push(T("p-text",n,r.text)):void 0;case"node":return t.tag!==r.tag||t.namespace!==r.namespace?void e.push(T("p-redraw",n,r)):(void 0!==(v=B(t.facts,r.facts))&&e.push(T("p-facts",n,v)),void function(t,r,e,n){var o=t.children,i=r.children,c=o.length,u=i.length;c>u?e.push(T("p-remove-last",n,c-u)):c<u&&e.push(T("p-append",n,i.slice(c)));for(var a=n,l=c<u?c:u,_=0;_<l;_++){a++;var f=o[_];x(f,i[_],e,a),a+=f.descendantsCount||0}}(t,r,e,n));case"keyed-node":return t.tag!==r.tag||t.namespace!==r.namespace?void e.push(T("p-redraw",n,r)):(void 0!==(v=B(t.facts,r.facts))&&e.push(T("p-facts",n,v)),void function(t,r,e,n){var o,i=[],c={},u=[],a=t.children,l=r.children,_=a.length,f=l.length,s=0,d=0,p=n;for(;s<_&&d<f;){var h=a[s],v=l[d],g=h._0,b=v._0,m=h._1,y=v._1;if(g!==b){var k=s+1<_,w=d+1<f;if(k)var B=a[s+1],N=B._0,S=B._1,C=b===N;if(w)var A=l[d+1],M=A._0,L=A._1,O=g===M;if(k&&w&&O&&C)x(m,L,i,++p),R(c,i,g,y,d,u),p+=m.descendantsCount||0,E(c,i,g,S,++p),p+=S.descendantsCount||0,s+=2,d+=2;else if(w&&O)p++,R(c,i,b,y,d,u),x(m,L,i,p),p+=m.descendantsCount||0,s+=1,d+=2;else if(k&&C)E(c,i,g,m,++p),p+=m.descendantsCount||0,x(S,y,i,++p),p+=S.descendantsCount||0,s+=2,d+=1;else{if(!k||!w||N!==M)break;E(c,i,g,m,++p),R(c,i,b,y,d,u),p+=m.descendantsCount||0,x(S,L,i,++p),p+=S.descendantsCount||0,s+=2,d+=2}}else x(m,y,i,++p),p+=m.descendantsCount||0,s++,d++}for(;s<_;){p++;var h=a[s],m=h._1;E(c,i,h._0,m,p),p+=m.descendantsCount||0,s++}for(;d<f;){o=o||[];var v=l[d];R(c,i,v._0,v._1,void 0,o),d++}(i.length>0||u.length>0||void 0!==o)&&e.push(T("p-reorder",n,{patches:i,inserts:u,endInserts:o}))}(t,r,e,n));case"custom":if(t.impl!==r.impl)return void e.push(T("p-redraw",n,r));var v;void 0!==(v=B(t.facts,r.facts))&&e.push(T("p-facts",n,v));var g=r.impl.diff(t,r);return g?void e.push(T("p-custom",n,g)):void 0}else e.push(T("p-redraw",n,r))}}function B(e,o,i){var u;for(var a in e)if(a!==t&&a!==r&&a!==n&&a!==c)if(a in o){var l=e[a],_=o[a];l===_&&"value"!==a||i===r&&d(l,_)||((u=u||{})[a]=_)}else(u=u||{})[a]=void 0===i?"string"==typeof e[a]?"":null:i===t?"":i===r||i===n?void 0:{namespace:e[a].namespace,value:void 0};else{var f=B(e[a],o[a]||{},a);f&&((u=u||{})[a]=f)}for(var s in o)s in e||((u=u||{})[s]=o[s]);return u}var N="_elmW6BL";function R(t,r,e,n,o,i){var c=t[e];if(void 0===c)return c={tag:"insert",vnode:n,index:o,data:void 0},i.push({index:o,entry:c}),void(t[e]=c);if("remove"===c.tag){i.push({index:o,entry:c}),c.tag="move";var u=[];return x(c.vnode,n,u,c.index),c.index=o,void(c.data.data={patches:u,entry:c})}R(t,r,e+N,n,o,i)}function E(t,r,e,n,o){var i=t[e];if(void 0===i){var c=T("p-remove",o,void 0);return r.push(c),void(t[e]={tag:"remove",vnode:n,index:o,data:c})}if("insert"!==i.tag)E(t,r,e+N,n,o);else{i.tag="move";var u=[];x(n,i.vnode,u,o);c=T("p-remove",o,{patches:u,entry:i});r.push(c)}}function S(t,r,e,n){!function t(r,e,n,o,i,c,u){var a=n[o];var l=a.index;for(;l===i;){var _=a.type;if("p-thunk"===_)S(r,e.node,a.data,u);else if("p-reorder"===_){a.domNode=r,a.eventNode=u;var f=a.data.patches;f.length>0&&t(r,e,f,0,i,c,u)}else if("p-remove"===_){a.domNode=r,a.eventNode=u;var s=a.data;if(void 0!==s){s.entry.data=r;var f=s.patches;f.length>0&&t(r,e,f,0,i,c,u)}}else a.domNode=r,a.eventNode=u;if(!(a=n[++o])||(l=a.index)>c)return o}switch(e.type){case"tagger":for(var d=e.node;"tagger"===d.type;)d=d.node;return t(r,d,n,o,i+1,c,r.elm_event_node_ref);case"node":for(var p=e.children,h=r.childNodes,v=0;v<p.length;v++){i++;var g=p[v],b=i+(g.descendantsCount||0);if(i<=l&&l<=b&&(o=t(h[v],g,n,o,i,b,u),!(a=n[o])||(l=a.index)>c))return o;i=b}return o;case"keyed-node":for(var p=e.children,h=r.childNodes,v=0;v<p.length;v++){i++;var g=p[v]._1,b=i+(g.descendantsCount||0);if(i<=l&&l<=b&&(o=t(h[v],g,n,o,i,b,u),!(a=n[o])||(l=a.index)>c))return o;i=b}return o;case"text":case"thunk":throw new Error("should never traverse `text` or `thunk` nodes like this")}}(t,r,e,0,0,r.descendantsCount,n)}function A(t,r,e,n){return 0===e.length?t:(S(t,r,e,n),M(t,e))}function M(t,r){for(var e=0;e<r.length;e++){var n=r[e],o=n.domNode,i=L(o,n);o===t&&(t=i)}return t}function L(t,r){switch(r.type){case"p-redraw":return function(t,r,e){var n=t.parentNode,o=h(r,e);void 0===o.elm_event_node_ref&&(o.elm_event_node_ref=t.elm_event_node_ref);n&&o!==t&&n.replaceChild(o,t);return o}(t,r.data,r.eventNode);case"p-facts":return v(t,r.eventNode,r.data),t;case"p-text":return t.replaceData(0,t.length,r.data),t;case"p-thunk":return M(t,r.data);case"p-tagger":return void 0!==t.elm_event_node_ref?t.elm_event_node_ref.tagger=r.data:t.elm_event_node_ref={tagger:r.data,parent:r.eventNode},t;case"p-remove-last":for(var e=r.data;e--;)t.removeChild(t.lastChild);return t;case"p-append":var n=r.data;for(e=0;e<n.length;e++)t.appendChild(h(n[e],r.eventNode));return t;case"p-remove":var o=r.data;if(void 0===o)return t.parentNode.removeChild(t),t;var i=o.entry;return void 0!==i.index&&t.parentNode.removeChild(t),i.data=M(t,o.patches),t;case"p-reorder":return function(t,r){var e=r.data,n=function(t,r){if(void 0===t)return;for(var e=u.createDocumentFragment(),n=0;n<t.length;n++){var o=t[n],i=o.entry;e.appendChild("move"===i.tag?i.data:h(i.vnode,r.eventNode))}return e}(e.endInserts,r);t=M(t,e.patches);for(var o=e.inserts,i=0;i<o.length;i++){var c=o[i],a=c.entry,l="move"===a.tag?a.data:h(a.vnode,r.eventNode);t.insertBefore(l,t.childNodes[c.index])}void 0!==n&&t.appendChild(n);return t}(t,r);case"p-custom":var c=r.data;return c.applyPatch(t,c.data);default:throw new Error("Ran into an unknown patch!")}}var O=P(function(t,r){return function(t,e,n){if(void 0===e)return t;var o="The `"+r+"` module does not need flags.\nInitialize it with no arguments and you should be all set!";I(o,n)}}),U=P(function(t,r){return function(e,n,o){if(void 0===t){var i="Are you trying to sneak a Never value into Elm? Trickster!\nIt looks like "+r+".main is defined with `programWithFlags` but has type `Program Never`.\nUse `program` instead if you do not want flags.";I(i,o)}var c=l(tr.run,t,n);if("Ok"===c.ctor)return e(c._0);var i="Trying to initialize the `"+r+"` module with an unexpected flag.\nI tried to convert it to an Elm value, but ran into this problem:\n\n"+c._0;I(i,o)}});function P(t){return e(function(r,e){return function(n){return function(o,i,c){var u=t(n,i);void 0===c?function(t,r,e,n){r.embed=function(r,e){for(;r.lastChild;)r.removeChild(r.lastChild);return Nr.initialize(n(t.init,e,r),t.update,t.subscriptions,j(r,t.view))},r.fullscreen=function(r){return Nr.initialize(n(t.init,r,document.body),t.update,t.subscriptions,j(document.body,t.view))}}(e,o,0,u):function(t,r,e,n){r.fullscreen=function(r){var o={doc:void 0};return Nr.initialize(n(t.init,r,document.body),t.update(D(o)),t.subscriptions,F(e,document.body,o,t.view,t.viewIn,t.viewOut))},r.embed=function(r,o){var i={doc:void 0};return Nr.initialize(n(t.init,o,r),t.update(D(i)),t.subscriptions,F(e,r,i,t.view,t.viewIn,t.viewOut))}}(l(r,c,e),o,i,u)}}})}function I(t,r){throw r&&(r.innerHTML='<div style="padding-left:1em;"><h2 style="font-weight:normal;"><b>Oops!</b> Something went wrong when starting your Elm program.</h2><pre style="padding-left:1em;">'+t+"</pre></div>"),new Error(t)}function j(t,r){return function(e,n){var o={tagger:e,parent:void 0},i=r(n),c=h(i,o);return t.appendChild(c),J(c,r,i,o)}}var z="undefined"!=typeof requestAnimationFrame?requestAnimationFrame:function(t){setTimeout(t,1e3/60)};function J(t,r,e,n){var o,i="NO_REQUEST",c=e;function u(){switch(i){case"NO_REQUEST":throw new Error("Unexpected draw callback.\nPlease report this to <https://github.com/elm-lang/virtual-dom/issues>.");case"PENDING_REQUEST":z(u),i="EXTRA_REQUEST";var e=r(o),a=w(c,e);return t=A(t,c,a,n),void(c=e);case"EXTRA_REQUEST":return void(i="NO_REQUEST")}}return function(t){"NO_REQUEST"===i&&z(u),i="PENDING_REQUEST",o=t}}function D(t){return Rr.nativeBinding(function(r){var e=t.doc;if(e){var n=e.getElementsByClassName("debugger-sidebar-messages")[0];n&&(n.scrollTop=n.scrollHeight)}r(Rr.succeed(p.Tuple0))})}function F(t,r,e,n,o,i){return function(c,a){var l={tagger:c,parent:void 0},_={tagger:c,parent:void 0},f=n(a),s=h(f,l);r.appendChild(s);var d=J(s,n,f,l),p=o(a)._1,v=h(p,_);r.appendChild(v);var g=J(v,function(t,r,e){var n,o=function(t){return function(r){if("keydown"!==r.type||!r.metaKey||82!==r.which){for(var e="scroll"===r.type||"wheel"===r.type,n=r.target;null!==n;){if("elm-overlay-message-details"===n.className&&e)return;if(n===t&&!e)return;n=n.parentNode}r.stopPropagation(),r.preventDefault()}}}(r),i="Normal",c=t.tagger,u=function(){};return function(r){var a=e(r),l=a._0.ctor;return t.tagger="Normal"===l?c:u,i!==l&&(q("removeEventListener",o,i),q("addEventListener",o,l),"Normal"===i&&(n=document.body.style.overflow,document.body.style.overflow="hidden"),"Normal"===l&&(document.body.style.overflow=n),i=l),a._1}}(l,v,o),p,_),b=function(t,r,e,n,o,i){var c,a;return function(t){if(t.isDebuggerOpen){if(!i.doc)return c=r(t),void(a=function(t,r,e,n){var o=screen.width-900,i=screen.height-360,c=window.open("","","width=900,height=360,left="+o+",top="+i);u=c.document,r.doc=u,u.title="Debugger - "+t,u.body.style.margin="0",u.body.style.padding="0";var a=h(e,n);function l(){r.doc=void 0,c.close()}return u.body.appendChild(a),u.addEventListener("keydown",function(t){t.metaKey&&82===t.which&&window.location.reload(),38===t.which&&(n.tagger({ctor:"Up"}),t.preventDefault()),40===t.which&&(n.tagger({ctor:"Down"}),t.preventDefault())}),window.addEventListener("unload",l),c.addEventListener("unload",function(){r.doc=void 0,window.removeEventListener("unload",l),n.tagger({ctor:"Close"})}),u=document,a}(o,i,c,e));u=i.doc;var n=r(t),l=w(c,n);a=A(a,c,l,e),c=n,u=document}}}(0,i,_,0,t,e);return function(t){d(t),g(t),b(t)}}}function q(t,r,e){switch(e){case"Normal":return;case"Pause":return W(t,r,V);case"Message":return W(t,r,H)}}function W(t,r,e){for(var n=0;n<e.length;n++)document.body[t](e[n],r,!0)}var V=["click","dblclick","mousemove","mouseup","mousedown","mouseenter","mouseleave","touchstart","touchend","touchcancel","touchmove","pointerdown","pointerup","pointerover","pointerout","pointerenter","pointerleave","pointermove","pointercancel","dragstart","drag","dragend","dragenter","dragover","dragleave","drop","keyup","keydown","keypress","input","change","focus","blur"],H=V.concat("wheel","scroll");return{node:function(t){return e(function(r,e){return function(t,r,e){for(var n=f(r),o=n.namespace,i=n.facts,c=[],u=0;"[]"!==e.ctor;){var a=e._0;u+=a.descendantsCount||0,c.push(a),e=e._1}return u+=c.length,{type:"node",tag:t,facts:i,children:c,namespace:o,descendantsCount:u}}(t,r,e)})},text:function(t){return{type:"text",text:t}},custom:function(t,r,e){return{type:"custom",facts:f(t).facts,model:r,impl:e}},map:e(function(t,r){return{type:"tagger",tagger:t,node:r,descendantsCount:1+(r.descendantsCount||0)}}),on:o(s),style:function(r){return{key:t,value:r}},property:e(function(t,r){return{key:t,value:r}}),attribute:e(function(t,r){return{key:n,realKey:t,value:r}}),attributeNS:o(function(t,r,e){return{key:c,realKey:r,value:{value:e,namespace:t}}}),mapProperty:e(function(t,e){return e.key!==r?e:s(e.realKey,e.value.options,l(dr,t,e.value.decoder))}),lazy:e(function(t,r){return a(t,[r],function(){return t(r)})}),lazy2:o(function(t,r,e){return a(t,[r,e],function(){return l(t,r,e)})}),lazy3:i(function(t,r,e,n){return a(t,[r,e,n],function(){return _(t,r,e,n)})}),keyedNode:o(function(t,r,e){for(var n=f(r),o=n.namespace,i=n.facts,c=[],u=0;"[]"!==e.ctor;){var a=e._0;u+=a._1.descendantsCount||0,c.push(a),e=e._1}return{type:"keyed-node",tag:t,facts:i,children:c,namespace:o,descendantsCount:u+=c.length}}),program:O,programWithFlags:U,staticProgram:function(t){var r=p.Tuple2(p.Tuple0,Sr);return l(O,C,{init:r,view:function(){return t},update:e(function(){return r}),subscriptions:function(){return Mr}})()}}}(),Br=(V.crash,V.log,e(function(t,r){var e=r;return{ctor:"_Tuple2",_0:e._0,_1:t(e._1)}}),e(function(t,r){var e=r;return{ctor:"_Tuple2",_0:t(e._0),_1:e._1}}),function(t){return t._1}),Nr=function(){function t(t,r){return function(t){}}function r(t,r,e,o){var u,a={};var _=c(Rr.nativeBinding(function(r){var n=t._0;u=o(f,n);var i=t._1,c=e(n);s(a,i,c),r(Rr.succeed(n))}),function(t,n){return Rr.nativeBinding(function(o){var i=l(r,t,n);n=i._0,u(n);var c=i._1,_=e(n);s(a,c,_),o(Rr.succeed(n))})});function f(t){Rr.rawSend(_,t)}var d=function(t,r){var e;for(var o in n){var c=n[o];c.isForeign&&((e=e||{})[o]="cmd"===c.tag?g(o):m(o,r)),t[o]=i(c,r)}return e}(a,f);return d?{ports:d}:{}}var n={};function i(t,r){var e={main:r,self:void 0},n=t.tag,o=t.onEffects,i=t.onSelfMsg;var u=c(t.init,function(t,r){if("self"===t.ctor)return _(i,e,t._0,r);var c=t._0;switch(n){case"cmd":return _(o,e,c.cmds,r);case"sub":return _(o,e,c.subs,r);case"fx":return f(o,e,c.cmds,c.subs,r)}});return e.self=u,u}function c(t,r){var e=Rr.andThen;var n=l(e,function t(n){var o=Rr.receive(function(t){return r(t,n)});return l(e,t,o)},t);return Rr.rawSpawn(n)}function u(t){return function(r){return{type:"leaf",home:t,value:r}}}function a(t){return{type:"node",branches:t}}function s(t,r,e){var n={};for(var o in d(!0,r,n,null),d(!1,e,n,null),t){var i=o in n?n[o]:{cmds:T.Nil,subs:T.Nil};Rr.rawSend(t[o],{ctor:"fx",_0:i})}}function d(t,r,e,o){switch(r.type){case"leaf":var i=r.home,c=function(t,r,e,o){return l(t?n[r].cmdMap:n[r].subMap,function(t){var r=e;for(;r;)t=r.tagger(t),r=r.rest;return t},o)}(t,i,o,r.value);return void(e[i]=function(t,r,e){if(e=e||{cmds:T.Nil,subs:T.Nil},t)return e.cmds=T.Cons(r,e.cmds),e;return e.subs=T.Cons(r,e.subs),e}(t,c,e[i]));case"node":for(var u=r.branches;"[]"!==u.ctor;)d(t,u._0,e,o),u=u._1;return;case"map":return void d(t,r.tree,e,{tagger:r.tagger,rest:o})}}function h(t){if(t in n)throw new Error("There can only be one port named `"+t+"`, but your program has multiple.")}var v=e(function(t,r){return r});function g(t){var r=[],e=n[t].converter,i=Rr.succeed(null);return n[t].init=i,n[t].onEffects=o(function(t,n,o){for(;"[]"!==n.ctor;){for(var c=r,u=e(n._0),a=0;a<c.length;a++)c[a](u);n=n._1}return i}),{subscribe:function(t){r.push(t)},unsubscribe:function(t){var e=(r=r.slice()).indexOf(t);e>=0&&r.splice(e,1)}}}var b=e(function(t,r){return function(e){return t(r(e))}});function m(t,r){var e=[],i=T.Nil,c=n[t].converter,u=function(t,r,n){for(var o=f(t,r,n),i=0;i<e.length;i++)s(e[i]);return e=null,a=s,u=f,o},a=function(t){e.push(t)},_=Rr.succeed(null);function f(t,r,e){return i=r,_}function s(t){for(var e=i;"[]"!==e.ctor;)r(e._0(t)),e=e._1}return n[t].init=_,n[t].onEffects=o(function(t,r,e){return u(t,r,e)}),{send:function(r){var e=l(_r,c,r);if("Err"===e.ctor)throw new Error("Trying to send an unexpected type of value through port `"+t+"`:\n"+e._0);a(e._0)}}}return{sendToApp:e(function(t,r){return Rr.nativeBinding(function(e){t.main(r),e(Rr.succeed(p.Tuple0))})}),sendToSelf:e(function(t,r){return l(Rr.send,t.self,{ctor:"self",_0:r})}),effectManagers:n,outgoingPort:function(t,r){return h(t),n[t]={tag:"cmd",cmdMap:v,converter:r,isForeign:!0},u(t)},incomingPort:function(t,r){return h(t),n[t]={tag:"sub",subMap:b,converter:r,isForeign:!0},u(t)},htmlToProgram:function(t){var r=a(T.Nil),n=p.Tuple2(p.Tuple0,r);return Ur({init:n,view:function(t){return main},update:e(function(t,r){return n}),subscriptions:function(t){return r}})},program:function(e){return function(n){return function(n,o){n.worker=function(n){if(void 0!==n)throw new Error("The `"+o+"` module does not need flags.\nCall "+o+".worker() with no arguments and you should be all set!");return r(e.init,e.update,e.subscriptions,t)}}}},programWithFlags:function(e){return function(n){return function(o,i){o.worker=function(o){if(void 0===n)throw new Error("Are you trying to sneak a Never value into Elm? Trickster!\nIt looks like "+i+".main is defined with `programWithFlags` but has type `Program Never`.\nUse `program` instead if you do not want flags.");var c=l(tr.run,n,o);if("Err"===c.ctor)throw new Error(i+".worker(...) was called with an unexpected argument.\nI tried to convert it to an Elm value, but ran into this problem:\n\n"+c._0);return r(e.init(c._0),e.update,e.subscriptions,t)}}}},initialize:r,leaf:u,batch:a,map:e(function(t,r){return{type:"map",tagger:t,tree:r}})}}(),Rr=function(){var t=1e4;function r(t){return{ctor:"_Task_succeed",value:t}}function n(t){return{ctor:"_Task_nativeBinding",callback:t,cancel:null}}function o(t){var r={ctor:"_Process",id:p.guid(),root:t,stack:null,mailbox:[]};return l(r),r}function i(t,r){t.mailbox.push(r),l(t)}function c(r,e){for(;r<t;){var n=e.root.ctor;if("_Task_succeed"!==n)if("_Task_fail"!==n)if("_Task_andThen"!==n)if("_Task_onError"!==n){if("_Task_nativeBinding"===n){e.root.cancel=e.root.callback(function(t){e.root=t,l(e)});break}if("_Task_receive"!==n)throw new Error(n);var o=e.mailbox;if(0===o.length)break;e.root=e.root.callback(o.shift()),++r}else e.stack={ctor:"_Task_onError",callback:e.root.callback,rest:e.stack},e.root=e.root.task,++r;else e.stack={ctor:"_Task_andThen",callback:e.root.callback,rest:e.stack},e.root=e.root.task,++r;else{for(;e.stack&&"_Task_andThen"===e.stack.ctor;)e.stack=e.stack.rest;if(null===e.stack)break;e.root=e.stack.callback(e.root.value),e.stack=e.stack.rest,++r}else{for(;e.stack&&"_Task_onError"===e.stack.ctor;)e.stack=e.stack.rest;if(null===e.stack)break;e.root=e.stack.callback(e.root.value),e.stack=e.stack.rest,++r}}return r<t?r+1:(l(e),r)}var u=!1,a=[];function l(t){a.push(t),u||(setTimeout(_,0),u=!0)}function _(){for(var r,e=0;e<t&&(r=a.shift());)r.root&&(e=c(e,r));r?setTimeout(_,0):u=!1}return{succeed:r,fail:function(t){return{ctor:"_Task_fail",value:t}},nativeBinding:n,andThen:e(function(t,r){return{ctor:"_Task_andThen",callback:t,task:r}}),onError:e(function(t,r){return{ctor:"_Task_onError",callback:t,task:r}}),receive:function(t){return{ctor:"_Task_receive",callback:t}},spawn:function(t){return n(function(e){e(r(o(t)))})},kill:function(t){return n(function(e){var n=t.root;"_Task_nativeBinding"===n.ctor&&n.cancel&&n.cancel(),t.root=null,e(r(p.Tuple0))})},sleep:function(t){return n(function(e){var n=setTimeout(function(){e(r(p.Tuple0))},t);return function(){clearTimeout(n)}})},send:e(function(t,e){return n(function(n){i(t,e),n(r(p.Tuple0))})}),rawSpawn:o,rawSend:i}}(),Er=Nr.batch,Sr=Er({ctor:"[]"}),Cr=Cr||{};Cr["!"]=e(function(t,r){return{ctor:"_Tuple2",_0:t,_1:Er(r)}});Nr.map;var Ar=Nr.batch,Mr=Ar({ctor:"[]"}),Lr=(Nr.map,Rr.succeed,Nr.sendToSelf),Or=Nr.sendToApp,Ur=(Nr.programWithFlags,Nr.program,function(t){return l(xr.program,C,t)}),Pr=(xr.keyedNode,xr.lazy3,xr.lazy2,xr.lazy,{stopPropagation:!1,preventDefault:!1}),Ir=xr.on,jr=e(function(t,r){return _(Ir,t,Pr,r)}),zr=xr.style,Jr=(xr.mapProperty,xr.attributeNS,xr.attribute),Dr=xr.property,Fr=xr.map,qr=xr.text,Wr=xr.node,Vr=(e(function(t,r){return{stopPropagation:t,preventDefault:r}}),function(t){return l(xr.programWithFlags,void 0,t)}),Hr=Ur,Gr=Fr,Qr=qr,Kr=Wr,$r=(Kr("body"),Kr("section"),Kr("nav")),Xr=(Kr("article"),Kr("aside"),Kr("h1")),Yr=(Kr("h2"),Kr("h3"),Kr("h4"),Kr("h5"),Kr("h6"),Kr("header")),Zr=Kr("footer"),te=(Kr("address"),Kr("main")),re=Kr("p"),ee=(Kr("hr"),Kr("pre")),ne=(Kr("blockquote"),Kr("ol"),Kr("ul")),oe=Kr("li"),ie=(Kr("dl"),Kr("dt"),Kr("dd"),Kr("figure"),Kr("figcaption"),Kr("div")),ce=Kr("a"),ue=(Kr("em"),Kr("strong"),Kr("small"),Kr("s"),Kr("cite"),Kr("q"),Kr("dfn"),Kr("abbr"),Kr("time"),Kr("code"),Kr("var"),Kr("samp"),Kr("kbd"),Kr("sub"),Kr("sup"),Kr("i"),Kr("b"),Kr("u"),Kr("mark"),Kr("ruby"),Kr("rt"),Kr("rp"),Kr("bdi"),Kr("bdo"),Kr("span")),ae=(Kr("br"),Kr("wbr"),Kr("ins"),Kr("del"),Kr("img"),Kr("iframe"),Kr("embed"),Kr("object"),Kr("param"),Kr("video"),Kr("audio"),Kr("source"),Kr("track"),Kr("canvas"),Kr("math"),Kr("table")),le=(Kr("caption"),Kr("colgroup"),Kr("col"),Kr("tbody")),_e=Kr("thead"),fe=(Kr("tfoot"),Kr("tr")),se=Kr("td"),de=Kr("th"),pe=(Kr("form"),Kr("fieldset"),Kr("legend"),Kr("label"),Kr("input"),Kr("button")),he=(Kr("select"),Kr("datalist"),Kr("optgroup"),Kr("option"),Kr("textarea"),Kr("keygen"),Kr("output"),Kr("progress"),Kr("meter"),Kr("details"),Kr("summary"),Kr("menuitem"),Kr("menu"),Jr),ve=Dr,ge=e(function(t,r){return l(ve,t,er(r))}),be=function(t){return l(ge,"className",t)},me=function(t){return l(ge,"id",t)},ye=function(t){return l(ge,"href",t)},ke=(e(function(t,r){return l(ve,t,rr(r))}),zr),we=(l(vr,"keyCode",kr),l(gr,{ctor:"::",_0:"target",_1:{ctor:"::",_0:"checked",_1:{ctor:"[]"}}},wr),l(gr,{ctor:"::",_0:"target",_1:{ctor:"::",_0:"value",_1:{ctor:"[]"}}},Tr),Pr),Te=jr,xe=(p.update(we,{preventDefault:!0}),function(t){return l(Te,"click",ar(t))}),Be=(e(function(t,r){return{stopPropagation:t,preventDefault:r}}),function(t){return nt(U(Br(_(E,e(function(t,r){var e=r,n=e._1;return p.eq(t,p.chr("-"))?{ctor:"_Tuple2",_0:!0,_1:n}:e._0?{ctor:"_Tuple2",_0:!1,_1:{ctor:"::",_0:K(t),_1:n}}:{ctor:"_Tuple2",_0:!1,_1:{ctor:"::",_0:t,_1:n}}}),{ctor:"_Tuple2",_0:!1,_1:{ctor:"[]"}},ot(t)))))}),Ne=function(t){var r=t,e=r._0,n=function(t){return l(ut,'"',l(at,"'",t))}(r._1),o=Be(e);return l(m["++"],"this.setAttribute('data-hover-",l(m["++"],e,l(m["++"],"', this.style.",l(m["++"],o,l(m["++"],"||'');",l(m["++"],"this.style.",l(m["++"],o,l(m["++"],"='",l(m["++"],n,"'")))))))))},Re=function(t){var r=t._0,e=Be(r);return l(m["++"],"this.style.",l(m["++"],e,l(m["++"],"=this.getAttribute('data-hover-",l(m["++"],r,"')||'';"))))},Ee=i(function(t,r,e,n){var o=l(M,function(t){return function(t){return!p.eq(t,"")&&l(B,X,ot(t))&&l(N,function(t){return X(t)||p.eq(t,p.chr("-"))},ot(t))}(t._0)},t);return l(r,{ctor:"::",_0:l(he,"onmouseenter",l(ut,";",l(A,Ne,o))),_1:{ctor:"::",_0:l(he,"onmouseleave",l(ut,";",l(A,Re,o))),_1:e}},n)}),Se=(o(function(t,r,e){var n=e;return _(_t,o(function(r,e,n){return l(t,r,n)}),r,n._0)}),o(function(t,r,e){var n=e;return _(st,o(function(r,e,n){return l(t,r,n)}),r,n._0)}),function(t){return function(t){return _(_t,o(function(t,r,e){return{ctor:"::",_0:t,_1:e}}),{ctor:"[]"},t)}(t._0)}),Ce=e(function(t,r){return l(bt,t,r._0)}),Ae=function(t){return{ctor:"Set_elm_builtin",_0:t}},Me=Ae(Et),Le=e(function(t,r){return Ae(_(qt,t,{ctor:"_Tuple0"},r._0))}),Oe=function(t){return _(E,Le,Me,t)},Ue=(e(function(t,r){return Oe(l(A,t,Se(r)))}),e(function(t,r){return Ae(l(Kt,t,r._0))})),Pe=(e(function(t,r){var e=r;return Ae(l(Wt,t._0,e._0))}),e(function(t,r){var e=r;return Ae(l(Ht,t._0,e._0))}),e(function(t,r){var e=r;return Ae(l($t,t._0,e._0))}),e(function(t,r){var n=r;return Ae(l(Vt,e(function(r,e){return t(r)}),n._0))}),e(function(t,r){var n=r,o=l(Gt,e(function(r,e){return t(r)}),n._0),i=o._0,c=o._1;return{ctor:"_Tuple2",_0:Ae(i),_1:Ae(c)}}),{ctor:"::",_0:{ctor:"_Tuple2",_0:"font-family",_1:"monospace"},_1:{ctor:"::",_0:{ctor:"_Tuple2",_0:"white-space",_1:"pre"},_1:{ctor:"[]"}}}),Ie={ctor:"::",_0:{ctor:"_Tuple2",_0:"list-style-type",_1:"none"},_1:{ctor:"::",_0:{ctor:"_Tuple2",_0:"margin-left",_1:"26px"},_1:{ctor:"::",_0:{ctor:"_Tuple2",_0:"padding-left",_1:"0px"},_1:{ctor:"[]"}}}},je={ctor:"::",_0:{ctor:"_Tuple2",_0:"position",_1:"relative"},_1:{ctor:"[]"}},ze={ctor:"::",_0:{ctor:"_Tuple2",_0:"position",_1:"absolute"},_1:{ctor:"::",_0:{ctor:"_Tuple2",_0:"cursor",_1:"pointer"},_1:{ctor:"::",_0:{ctor:"_Tuple2",_0:"top",_1:"1px"},_1:{ctor:"::",_0:{ctor:"_Tuple2",_0:"left",_1:"-15px"},_1:{ctor:"[]"}}}}},Je={ctor:"::",_0:{ctor:"_Tuple2",_0:"font-weight",_1:"bold"},_1:{ctor:"[]"}},De={ctor:"::",_0:{ctor:"_Tuple2",_0:"color",_1:"green"},_1:{ctor:"[]"}},Fe={ctor:"::",_0:{ctor:"_Tuple2",_0:"color",_1:"blue"},_1:{ctor:"[]"}},qe={ctor:"::",_0:{ctor:"_Tuple2",_0:"color",_1:"firebrick"},_1:{ctor:"[]"}},We={ctor:"::",_0:{ctor:"_Tuple2",_0:"color",_1:"gray"},_1:{ctor:"[]"}},Ve={ctor:"::",_0:{ctor:"_Tuple2",_0:"background-color",_1:"#fafad2"},_1:{ctor:"::",_0:{ctor:"_Tuple2",_0:"cursor",_1:"pointer"},_1:{ctor:"[]"}}},He=i(function(t,r,e,n){return function(t){return{ctor:"::",_0:t,_1:{ctor:"[]"}}}(function(){var o=n.onSelect;return"Just"===o.ctor?f(Ee,Ve,ue,{ctor:"::",_0:ke(t),_1:{ctor:"::",_0:me(e.keyPath),_1:{ctor:"::",_0:xe(o._0(e.keyPath)),_1:{ctor:"[]"}}}},{ctor:"::",_0:Qr(r),_1:{ctor:"[]"}}):l(ue,{ctor:"::",_0:ke(t),_1:{ctor:"::",_0:me(e.keyPath),_1:{ctor:"[]"}}},{ctor:"::",_0:Qr(r),_1:{ctor:"[]"}})}())}),Ge=e(function(t,r){return l(Ce,t,r._0)}),Qe=e(function(t,r){return l(Te,"click",l(dr,function(t){return r(function(t){return t({ctor:"_Tuple0"})}(t))},ar(t)))}),Ke=i(function(t,r,e,n){return p.eq(t,0)?Qr(""):l(ue,{ctor:"::",_0:ke(ze),_1:{ctor:"::",_0:l(Qe,e,r.toMsg),_1:{ctor:"[]"}}},{ctor:"::",_0:Qr(n),_1:{ctor:"[]"}})}),$e=(e(function(t,r){return{value:t,keyPath:r}}),e(function(t,r){return{onSelect:t,toMsg:r}}),{ctor:"TNull"}),Xe=function(t){return{ctor:"TDict",_0:t}},Ye=function(t){return{ctor:"TList",_0:t}},Ze=e(function(t,r){var n=e(function(r,e){return l(Ze,l(m["++"],t,l(m["++"],".",r)),e)}),o=e(function(r,e){return l(Ze,l(m["++"],t,l(m["++"],"[",l(m["++"],g(r),"]"))),e)}),i=r.value;switch(i.ctor){case"TString":case"TFloat":case"TBool":case"TNull":return p.update(r,{keyPath:t});case"TList":return p.update(r,{keyPath:t,value:Ye(l(W,o,i._0))});default:return p.update(r,{keyPath:t,value:Xe(l(jt,n,i._0))})}}),tn=function(){var t=function(t){return{value:t,keyPath:""}};return pr({ctor:"::",_0:l(dr,function(r){return t(function(t){return{ctor:"TString",_0:t}}(r))},Tr),_1:{ctor:"::",_0:l(dr,function(r){return t(function(t){return{ctor:"TFloat",_0:t}}(r))},yr),_1:{ctor:"::",_0:l(dr,function(r){return t(function(t){return{ctor:"TBool",_0:t}}(r))},wr),_1:{ctor:"::",_0:l(dr,function(r){return t(Ye(r))},mr(lr(function(t){return tn}))),_1:{ctor:"::",_0:l(dr,function(r){return t(Xe(r))},function(t){return l(dr,Qt,br(t))}(lr(function(t){return tn}))),_1:{ctor:"::",_0:or(t($e)),_1:{ctor:"[]"}}}}}}})}(),rn=function(t){var r=l(dr,Ze(""),tn);return l(_r,r,t)},en=function(t){return{ctor:"State",_0:t}},nn=en(Oe({ctor:"[]"})),on=nn,cn=e(function(t,r){return en(l(Ue,t,r._0))}),un=i(function(t,r,e,n){return f(Ke,t,e,function(t){return l(cn,r,n)},"+")}),an=e(function(t,r){return en(l(Le,t,r._0))}),ln=i(function(t,r,e,n){var i=function(o){return _(E,l(ln,t,r+1),p.cmp(r,t)>-1?l(an,e.keyPath,n):n,o)},c=e.value;switch(c.ctor){case"TString":case"TFloat":case"TBool":case"TNull":return n;case"TList":return i(c._0);default:return i(function(t){return _(_t,o(function(t,r,e){return{ctor:"::",_0:r,_1:e}}),{ctor:"[]"},t)}(c._0))}}),_n=(o(function(t,r,e){return f(ln,t,0,r,nn)}),i(function(t,r,e,n){return f(Ke,t,e,function(t){return l(an,r,n)},"-")})),fn=c(function(t,r,e,n,o){var i=St(r)?{ctor:"[]"}:l(Ge,e,o)?{ctor:"::",_0:f(un,t,e,n,o),_1:{ctor:"::",_0:Qr("…"),_1:{ctor:"[]"}}}:{ctor:"::",_0:f(_n,t,e,n,o),_1:{ctor:"::",_0:l(ne,{ctor:"::",_0:ke(Ie),_1:{ctor:"[]"}},l(A,function(r){var e=r;return l(oe,{ctor:"::",_0:ke(je),_1:{ctor:"[]"}},l(m["++"],{ctor:"::",_0:l(ue,{ctor:"::",_0:ke(Je),_1:{ctor:"[]"}},{ctor:"::",_0:Qr(e._0),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:Qr(": "),_1:{ctor:"[]"}}},l(m["++"],f(sn,t+1,n,e._1,o),{ctor:"::",_0:Qr(","),_1:{ctor:"[]"}})))},ft(r))),_1:{ctor:"[]"}}};return l(m["++"],{ctor:"::",_0:Qr("{"),_1:{ctor:"[]"}},l(m["++"],i,{ctor:"::",_0:Qr("}"),_1:{ctor:"[]"}}))}),sn=i(function(t,r,e,n){var o=e.value;switch(o.ctor){case"TString":return f(He,De,l(m["++"],'"',l(m["++"],o._0,'"')),e,r);case"TFloat":return f(He,Fe,g(o._0),e,r);case"TBool":return f(He,qe,g(o._0),e,r);case"TNull":return f(He,We,"null",e,r);case"TList":return s(dn,t,o._0,e.keyPath,r,n);default:return s(fn,t,o._0,e.keyPath,r,n)}}),dn=c(function(t,r,e,n,o){var i=function(t){return"[]"===t.ctor}(r)?{ctor:"[]"}:l(Ge,e,o)?{ctor:"::",_0:f(un,t,e,n,o),_1:{ctor:"::",_0:Qr("…"),_1:{ctor:"[]"}}}:{ctor:"::",_0:f(_n,t,e,n,o),_1:{ctor:"::",_0:l(ne,{ctor:"::",_0:ke(Ie),_1:{ctor:"[]"}},l(A,function(r){return l(oe,{ctor:"::",_0:ke(je),_1:{ctor:"[]"}},l(P,f(sn,t+1,n,r,o),{ctor:"::",_0:Qr(","),_1:{ctor:"[]"}}))},r)),_1:{ctor:"[]"}}};return l(m["++"],{ctor:"::",_0:Qr("["),_1:{ctor:"[]"}},l(m["++"],i,{ctor:"::",_0:Qr("]"),_1:{ctor:"[]"}}))}),pn=o(function(t,r,e){return l(ie,{ctor:"::",_0:ke(Pe),_1:{ctor:"[]"}},f(sn,0,r,t,e))}),hn=ar,vn=(cr(v),e(function(t,r){return _(sr,e(function(t,r){return t(r)}),r,t)})),gn=o(function(t,r,e){return l(cr,function(n){var o=l(_r,t,n);if("Ok"===o.ctor){var i=l(_r,function(t){return pr({ctor:"::",_0:t,_1:{ctor:"::",_0:or(e),_1:{ctor:"[]"}}})}(r),o._0);return"Ok"===i.ctor?ar(i._0):ur(i._0)}var c=l(_r,br(ir),n);return"Ok"===c.ctor?ar(e):ur(c._0)},ir)}),bn=(i(function(t,r,e,n){return l(vn,_(gn,l(gr,t,ir),r,e),n)}),i(function(t,r,e,n){return l(vn,_(gn,l(vr,t,ir),r,e),n)})),mn=o(function(t,r,e){return l(vn,l(gr,t,r),e)}),yn=o(function(t,r,e){return l(vn,l(vr,t,r),e)}),kn=Rr.onError,wn=Rr.andThen,Tn=e(function(t,r){var e=r;return Rr.spawn(l(wn,Or(t),e._0))}),xn=Rr.fail,Bn=(e(function(t,r){return l(kn,function(r){return xn(t(r))},r)}),Rr.succeed),Nn=e(function(t,r){return l(wn,function(r){return Bn(t(r))},r)}),Rn=o(function(t,r,e){return l(wn,function(r){return l(wn,function(e){return Bn(l(t,r,e))},e)},r)}),En=(i(function(t,r,e,n){return l(wn,function(r){return l(wn,function(e){return l(wn,function(n){return Bn(_(t,r,e,n))},n)},e)},r)}),c(function(t,r,e,n,o){return l(wn,function(r){return l(wn,function(e){return l(wn,function(n){return l(wn,function(o){return Bn(f(t,r,e,n,o))},o)},n)},e)},r)}),u(function(t,r,e,n,o,i){return l(wn,function(r){return l(wn,function(e){return l(wn,function(n){return l(wn,function(o){return l(wn,function(i){return Bn(s(t,r,e,n,o,i))},i)},o)},n)},e)},r)}),function(t){var r=t;return"[]"===r.ctor?Bn({ctor:"[]"}):_(Rn,e(function(t,r){return{ctor:"::",_0:t,_1:r}}),r._0,En(r._1))}),Sn=o(function(t,r,e){return l(Nn,function(t){return{ctor:"_Tuple0"}},En(l(A,Tn(t),r)))}),Cn=Bn({ctor:"_Tuple0"}),An=o(function(t,r,e){return Bn({ctor:"_Tuple0"})}),Mn=Nr.leaf("Task"),Ln=function(t){return{ctor:"Perform",_0:t}},On=(e(function(t,r){return Mn(Ln(l(Nn,t,r)))}),e(function(t,r){return Mn(Ln(l(kn,function(r){return Bn(t(Z(r)))},l(wn,function(r){return Bn(t(rt(r)))},r))))})),Un=e(function(t,r){return Ln(l(Nn,t,r._0))});Nr.effectManagers.Task={pkg:"elm-lang/core",init:Cn,onEffects:Sn,onSelfMsg:An,tag:"cmd",cmdMap:Un};var Pn=function(){return{now:Rr.nativeBinding(function(t){t(Rr.succeed(Date.now()))}),setInterval_:e(function(t,r){return Rr.nativeBinding(function(e){var n=setInterval(function(){Rr.rawSpawn(r)},t);return function(){clearInterval(n)}})})}}(),In=Pn.setInterval_,jn=o(function(t,r,e){var n=r;if("[]"===n.ctor)return Bn(e);var o=n._0,i=Rr.spawn(l(In,o,l(Lr,t,o)));return l(wn,function(r){return _(jn,t,n._1,_(qt,o,r,e))},i)}),zn=e(function(t,r){var e=t,n=e._1,o=e._0,i=l(gt,o,r);return"Nothing"===i.ctor?_(qt,o,{ctor:"::",_0:n,_1:{ctor:"[]"}},r):_(qt,o,{ctor:"::",_0:n,_1:i._0},r)}),Jn=Pn.now,Dn=o(function(t,r,e){var n=l(gt,r,e.taggers);if("Nothing"===n.ctor)return Bn(e);return l(wn,function(t){return Bn(e)},l(wn,function(r){return En(l(A,function(e){return l(Or,t,e(r))},n._0))},Jn))}),Fn=Nr.leaf("Time"),qn=e(function(t,r){return{taggers:t,processes:r}}),Wn=Bn(l(qn,Et,Et)),Vn=o(function(t,r,e){var n=e,c=o(function(t,r,e){var n=e;return{ctor:"_Tuple3",_0:n._0,_1:n._1,_2:l(wn,function(t){return n._2},Rr.kill(r))}}),u=i(function(t,r,e,n){var o=n;return{ctor:"_Tuple3",_0:o._0,_1:_(qt,t,e,o._1),_2:o._2}}),a=o(function(t,r,e){var n=e;return{ctor:"_Tuple3",_0:{ctor:"::",_0:t,_1:n._0},_1:n._1,_2:n._2}}),f=_(E,zn,Et,r),s=function(t,r,e,n,o,i,c){return 6===t.arity?t.func(r,e,n,o,i,c):t(r)(e)(n)(o)(i)(c)}(dt,a,u,c,f,n.processes,{ctor:"_Tuple3",_0:{ctor:"[]"},_1:Et,_2:Bn({ctor:"_Tuple0"})}),d=s._0,p=s._1,h=s._2;return l(wn,function(t){return Bn(l(qn,f,t))},l(wn,function(r){return _(jn,t,d,p)},h))}),Hn=e(function(t,r){return{ctor:"Every",_0:t,_1:r}}),Gn=(e(function(t,r){return Fn(l(Hn,t,r))}),e(function(t,r){var e=r;return l(Hn,e._0,function(r){return t(e._1(r))})}));Nr.effectManagers.Time={pkg:"elm-lang/core",init:Wn,onEffects:Vn,onSelfMsg:Dn,tag:"sub",subMap:Gn};var Qn=Rr.kill,Kn=(Rr.sleep,Rr.spawn),$n=function(){var t={addEventListener:function(){},removeEventListener:function(){}},r=i("undefined"!=typeof document?document:t),n=i("undefined"!=typeof window?window:t);function i(t){return function(r,e,n){return Rr.nativeBinding(function(o){function i(t){var r=l(_r,e,t);"Ok"===r.ctor&&Rr.rawSpawn(n(r._0))}return t.addEventListener(r,i),function(){t.removeEventListener(r,i)}})}}var c="undefined"!=typeof requestAnimationFrame?requestAnimationFrame:function(t){t()};function u(t,r){return Rr.nativeBinding(function(e){c(function(){var n=document.getElementById(t);e(null!==n?Rr.succeed(r(n)):Rr.fail({ctor:"NotFound",_0:t}))})})}return{onDocument:o(r),onWindow:o(n),focus:function(t){return u(t,function(t){return t.focus(),p.Tuple0})},blur:function(t){return u(t,function(t){return t.blur(),p.Tuple0})},getScrollTop:function(t){return u(t,function(t){return t.scrollTop})},setScrollTop:e(function(t,r){return u(t,function(t){return t.scrollTop=r,p.Tuple0})}),getScrollLeft:function(t){return u(t,function(t){return t.scrollLeft})},setScrollLeft:e(function(t,r){return u(t,function(t){return t.scrollLeft=r,p.Tuple0})}),toBottom:function(t){return u(t,function(t){return t.scrollTop=t.scrollHeight,p.Tuple0})},toRight:function(t){return u(t,function(t){return t.scrollLeft=t.scrollWidth,p.Tuple0})},height:e(function(t,r){return u(r,function(r){switch(t.ctor){case"Content":return r.scrollHeight;case"VisibleContent":return r.clientHeight;case"VisibleContentWithBorders":return r.offsetHeight;case"VisibleContentWithBordersAndMargins":var e=r.getBoundingClientRect();return e.bottom-e.top}})}),width:e(function(t,r){return u(r,function(r){switch(t.ctor){case"Content":return r.scrollWidth;case"VisibleContent":return r.clientWidth;case"VisibleContentWithBorders":return r.offsetWidth;case"VisibleContentWithBordersAndMargins":var e=r.getBoundingClientRect();return e.right-e.left}})})}}(),Xn=$n.onWindow,Yn=($n.onDocument,function(){return{toTask:e(function(t,r){return Rr.nativeBinding(function(e){var n=new XMLHttpRequest;!function(t,r){"Nothing"!==r.ctor&&t.addEventListener("progress",function(t){t.lengthComputable&&Rr.rawSpawn(r._0({bytes:t.loaded,bytesExpected:t.total}))})}(n,r),n.addEventListener("error",function(){e(Rr.fail({ctor:"NetworkError"}))}),n.addEventListener("timeout",function(){e(Rr.fail({ctor:"Timeout"}))}),n.addEventListener("load",function(){e(function(t,r){var e=function(t){return{status:{code:t.status,message:t.statusText},headers:function(t){var r=Et;if(!t)return r;for(var e=t.split("\r\n"),n=e.length;n--;){var o=e[n],i=o.indexOf(": ");if(i>0){var c=o.substring(0,i),u=o.substring(i+2);r=_(Ft,c,function(t){return"Just"===t.ctor?k(u+", "+t._0):k(u)},r)}}return r}(t.getAllResponseHeaders()),url:t.responseURL,body:t.response}}(t);if(t.status<200||300<=t.status)return e.body=t.responseText,Rr.fail({ctor:"BadStatus",_0:e});var n=r(e);return"Ok"===n.ctor?Rr.succeed(n._0):(e.body=t.responseText,Rr.fail({ctor:"BadPayload",_0:n._0,_1:e}))}(n,t.expect.responseToResult))});try{n.open(t.method,t.url,!0)}catch(r){return e(Rr.fail({ctor:"BadUrl",_0:t.url}))}return function(t,r){l(A,function(r){t.setRequestHeader(r._0,r._1)},r.headers),t.responseType=r.expect.responseType,t.withCredentials=r.withCredentials,"Just"===r.timeout.ctor&&(t.timeout=r.timeout._0)}(n,t),function(t,r){switch(r.ctor){case"EmptyBody":return void t.send();case"StringBody":return t.setRequestHeader("Content-Type",r._0),void t.send(r._1);case"FormDataBody":t.send(r._0)}}(n,t.body),function(){n.abort()}})}),expectStringResponse:function(t){return{responseType:"text",responseToResult:t}},mapExpect:e(function(t,r){return{responseType:r.responseType,responseToResult:function(e){var n=r.responseToResult(e);return l(et,t,n)}}}),multipart:function(t){for(var r=new FormData;"[]"!==t.ctor;){var e=t._0;r.append(e._0,e._1),t=t._1}return{ctor:"FormDataBody",_0:r}},encodeUri:function(t){return encodeURIComponent(t)},decodeUri:function(t){try{return k(decodeURIComponent(t))}catch(t){return y}}}}()),Zn=(e(function(t,r){return p.update(r,{expect:l(Yn.mapExpect,t,r.expect)})}),a(function(t,r,e,n,o,i,c){return{method:t,headers:r,url:e,body:n,expect:o,timeout:i,withCredentials:c}}),e(function(t,r){return{ctor:"StringBody",_0:t,_1:r}}),e(function(t,r){return{ctor:"Header",_0:t,_1:r}}),Yn.decodeUri),to=Yn.encodeUri,ro=Yn.expectStringResponse,eo=function(t){return ro(function(r){return l(fr,t,r.body)})},no=(ro(function(t){return rt(t.body)}),Yn.multipart,{ctor:"EmptyBody"}),oo=function(t){return{ctor:"Request",_0:t}},io=(o(function(t,r,e){return oo({method:"POST",headers:{ctor:"[]"},url:t,body:r,expect:eo(e),timeout:y,withCredentials:!1})}),e(function(t,r){return oo({method:"GET",headers:{ctor:"[]"},url:t,body:no,expect:eo(r),timeout:y,withCredentials:!1})})),co=e(function(t,r){return l(On,t,function(t){var r=t;return l(Yn.toTask,r._0,y)}(r))}),uo=(i(function(t,r,e,n){return{url:t,status:r,headers:e,body:n}}),e(function(t,r){return{ctor:"BadPayload",_0:t,_1:r}}),e(function(t,r){return{ctor:"StringPart",_0:t,_1:r}}),function(){function t(){var t=document.location;return{href:t.href,host:t.host,hostname:t.hostname,protocol:t.protocol,origin:t.origin,port_:t.port,pathname:t.pathname,search:t.search,hash:t.hash,username:t.username,password:t.password}}return{go:function(t){return Rr.nativeBinding(function(r){0!==t&&history.go(t),r(Rr.succeed(p.Tuple0))})},setLocation:function(t){return Rr.nativeBinding(function(r){try{window.location=t}catch(t){document.location.reload(!1)}r(Rr.succeed(p.Tuple0))})},reloadPage:function(t){return Rr.nativeBinding(function(r){document.location.reload(t),r(Rr.succeed(p.Tuple0))})},pushState:function(r){return Rr.nativeBinding(function(e){history.pushState({},"",r),e(Rr.succeed(t()))})},replaceState:function(r){return Rr.nativeBinding(function(e){history.replaceState({},"",r),e(Rr.succeed(t()))})},getLocation:t,isInternetExplorer11:function(){return-1!==window.navigator.userAgent.indexOf("Trident")}}}()),ao=uo.replaceState,lo=uo.pushState,_o=uo.go,fo=uo.reloadPage,so=uo.setLocation,po=po||{};po["&>"]=e(function(t,r){return l(wn,function(t){return r},t)});var ho=o(function(t,r,e){return l(po["&>"],En(l(A,function(r){return l(Or,t,r._0(e))},r)),Bn({ctor:"_Tuple0"}))}),vo=o(function(t,r,e){var n=e;switch(n.ctor){case"Jump":return _o(n._0);case"New":return l(wn,l(ho,t,r),lo(n._0));case"Modify":return l(wn,l(ho,t,r),ao(n._0));case"Visit":return so(n._0);default:return fo(n._0)}}),go=function(t){var r=t;return"Normal"===r.ctor?Qn(r._0):l(po["&>"],Qn(r._0),Qn(r._1))},bo=o(function(t,r,e){return l(po["&>"],_(ho,t,e.subs,r),Bn(e))}),mo=Nr.leaf("Navigation"),yo=Nr.leaf("Navigation"),ko=e(function(t,r){return{subs:t,popWatcher:r}}),wo=Bn(l(ko,{ctor:"[]"},y)),To=function(t){return{ctor:"Reload",_0:t}},xo=(yo(To(!1)),yo(To(!0)),function(t){return{ctor:"Visit",_0:t}}),Bo=function(t){return{ctor:"Modify",_0:t}},No=function(t){return{ctor:"New",_0:t}},Ro=function(t){return{ctor:"Jump",_0:t}},Eo=e(function(t,r){var e=r;switch(e.ctor){case"Jump":return Ro(e._0);case"New":return No(e._0);case"Modify":return Bo(e._0);case"Visit":return xo(e._0);default:return To(e._0)}}),So=function(t){return{ctor:"Monitor",_0:t}},Co=(e(function(t,r){var e=r.init(uo.getLocation({ctor:"_Tuple0"}));return Hr({init:e,view:r.view,update:r.update,subscriptions:function(e){return Ar({ctor:"::",_0:mo(So(t)),_1:{ctor:"::",_0:r.subscriptions(e),_1:{ctor:"[]"}}})}})}),e(function(t,r){return Vr({init:function(t){return l(r.init,t,uo.getLocation({ctor:"_Tuple0"}))},view:r.view,update:r.update,subscriptions:function(e){return Ar({ctor:"::",_0:mo(So(t)),_1:{ctor:"::",_0:r.subscriptions(e),_1:{ctor:"[]"}}})}})})),Ao=e(function(t,r){var e=r;return So(function(r){return t(e._0(r))})}),Mo=e(function(t,r){return{ctor:"InternetExplorer",_0:t,_1:r}}),Lo=function(t){return{ctor:"Normal",_0:t}},Oo=function(t){var r=function(r){return l(Lr,t,uo.getLocation({ctor:"_Tuple0"}))};return uo.isInternetExplorer11({ctor:"_Tuple0"})?_(Rn,Mo,Kn(_(Xn,"popstate",ir,r)),Kn(_(Xn,"hashchange",ir,r))):l(Nn,Lo,Kn(_(Xn,"popstate",ir,r)))},Uo=i(function(t,r,e,n){var o=n.popWatcher,i=function(){var r={ctor:"_Tuple2",_0:e,_1:o};t:do{if("[]"===r._0.ctor){if("Just"===r._1.ctor)return l(po["&>"],go(r._1._0),Bn(l(ko,e,y)));break t}if("Nothing"===r._1.ctor)return l(Nn,function(t){return l(ko,e,k(t))},Oo(t));break t}while(0);return Bn(l(ko,e,o))}();return l(po["&>"],En(l(A,l(vo,t,e),r)),i)});Nr.effectManagers.Navigation={pkg:"elm-lang/navigation",init:wo,onEffects:Uo,onSelfMsg:bo,tag:"fx",cmdMap:Eo,subMap:Ao};var Po=function(t){var r=l(at,"=",t);return"::"===r.ctor&&"::"===r._1.ctor&&"[]"===r._1._1.ctor?_(w,e(function(t,r){return{ctor:"_Tuple2",_0:t,_1:r}}),Zn(r._0),Zn(r._1._0)):y},Io=function(t){return Qt(l(O,Po,l(at,"&",l(ct,1,t))))},jo=o(function(t,r,e){return function(t){for(;;){var r=t;if("[]"===r.ctor)return y;var e=r._0,n=e.unvisited;if("[]"===n.ctor)return k(e.value);if(""===n._0&&"[]"===n._1.ctor)return k(e.value);t=r._1}}(t._0({visited:{ctor:"[]"},unvisited:function(t){var r=l(at,"/",t);return"::"===r.ctor&&""===r._0?r._1:r}(r),params:e,value:v}))}),zo=e(function(t,r){return _(jo,t,l(ct,1,r.hash),Io(r.search))}),Jo=(e(function(t,r){return _(jo,t,r.pathname,Io(r.search))}),e(function(t,r){var e=r;return{visited:e.visited,unvisited:e.unvisited,params:e.params,value:t(e.value)}})),Do=i(function(t,r,e,n){return{visited:t,unvisited:r,params:e,value:n}}),Fo=function(t){return{ctor:"Parser",_0:t}},qo=function(t){return Fo(function(r){var e=r,n=e.unvisited;if("[]"===n.ctor)return{ctor:"[]"};var o=n._0;return p.eq(o,t)?{ctor:"::",_0:f(Do,{ctor:"::",_0:o,_1:e.visited},n._1,e.params,e.value),_1:{ctor:"[]"}}:{ctor:"[]"}})},Wo=e(function(t,r){return Fo(function(t){var e=t,n=e.unvisited;if("[]"===n.ctor)return{ctor:"[]"};var o=n._0,i=r(o);return"Ok"===i.ctor?{ctor:"::",_0:f(Do,{ctor:"::",_0:o,_1:e.visited},n._1,e.params,e.value(i._0)),_1:{ctor:"[]"}}:{ctor:"[]"}})}),Vo=l(Wo,"STRING",rt);l(Wo,"NUMBER",it);(Ho=Ho||{})["</>"]=e(function(t,r){var e=t,n=r;return Fo(function(t){return l(I,n._0,e._0(t))})});var Ho,Go=e(function(t,r){var e=r;return Fo(function(r){var n=r;return l(A,Jo(n.value),e._0({visited:n.visited,unvisited:n.unvisited,params:n.params,value:t}))})}),Qo=Fo(function(t){return{ctor:"::",_0:t,_1:{ctor:"[]"}}});(Ho=Ho||{})["<?>"]=e(function(t,r){var e=t,n=r;return Fo(function(t){return l(I,n._0,e._0(t))})});e(function(t,r){return function(t){return{ctor:"QueryParser",_0:t}}(function(e){var n=e,o=n.params;return{ctor:"::",_0:f(Do,n.visited,n.unvisited,o,n.value(r(l(gt,t,o)))),_1:{ctor:"[]"}}})});var Ko=o(function(t,r,e){return l(Y,l(ee,{ctor:"[]"},{ctor:"::",_0:Qr(t),_1:{ctor:"[]"}}),l(et,function(t){return _(pn,t,{onSelect:y,toMsg:e},r)},function(t){return l(tt,rn,l(fr,ir,t))}(t)))}),$o=e(function(t,r){var e=t;return"ChangeOpenedEventDataTreeState"===e.ctor?{ctor:"_Tuple2",_0:p.update(r,{dataTreeState:e._0}),_1:Sr}:{ctor:"_Tuple2",_0:p.update(r,{metadataTreeState:e._0}),_1:Sr}}),Xo=(c(function(t,r,e,n,o){return{eventType:t,eventId:r,createdAt:e,rawData:n,rawMetadata:o}}),o(function(t,r,e){return{event:t,dataTreeState:r,metadataTreeState:e}}),e(function(t,r){var e=r;return"Just"===e.ctor?l(oe,{ctor:"[]"},{ctor:"::",_0:t(e._0),_1:{ctor:"[]"}}):l(oe,{ctor:"[]"},{ctor:"[]"})})),Yo=e(function(t,r){return l(m["++"],t,l(m["++"],"/",to(r)))}),Zo=function(t){var r=t,e=r.eventId;return l(fe,{ctor:"[]"},{ctor:"::",_0:l(se,{ctor:"[]"},{ctor:"::",_0:l(ce,{ctor:"::",_0:be("results__link"),_1:{ctor:"::",_0:ye(l(Yo,"#events",e)),_1:{ctor:"[]"}}},{ctor:"::",_0:Qr(r.eventType),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(se,{ctor:"[]"},{ctor:"::",_0:Qr(e),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(se,{ctor:"::",_0:be("u-align-right"),_1:{ctor:"[]"}},{ctor:"::",_0:Qr(r.createdAt),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}}})},ti=(i(function(t,r,e,n){return{events:t,event:r,page:e,flags:n}}),c(function(t,r,e,n,o){return{eventType:t,eventId:r,createdAt:e,rawData:n,rawMetadata:o}})),ri=_(mn,{ctor:"::",_0:"attributes",_1:{ctor:"::",_0:"metadata",_1:{ctor:"[]"}}},l(dr,nr(2),ir),_(mn,{ctor:"::",_0:"attributes",_1:{ctor:"::",_0:"data",_1:{ctor:"[]"}}},l(dr,nr(2),ir),_(mn,{ctor:"::",_0:"attributes",_1:{ctor:"::",_0:"metadata",_1:{ctor:"::",_0:"timestamp",_1:{ctor:"[]"}}}},Tr,_(mn,{ctor:"::",_0:"id",_1:{ctor:"[]"}},Tr,_(mn,{ctor:"::",_0:"attributes",_1:{ctor:"::",_0:"event_type",_1:{ctor:"[]"}}},Tr,hn(ti)))))),ei=l(vr,"data",ri),ni=i(function(t,r,e,n){return{next:t,prev:r,first:e,last:n}}),oi=f(bn,"last",hr(Tr),y,f(bn,"first",hr(Tr),y,f(bn,"prev",hr(Tr),y,f(bn,"next",hr(Tr),y,hn(ni))))),ii=e(function(t,r){return{events:t,links:r}}),ci=_(yn,"links",oi,_(yn,"data",mr(ri),hn(ii))),ui=(i(function(t,r,e,n){return{rootUrl:t,streamsUrl:r,eventsUrl:e,resVersion:n}}),function(t){var r=t;return"Just"===r.ctor?l(Gr,function(t){return function(t){return{ctor:"OpenedEventUIChanged",_0:t}}(t)},function(t){return l(ie,{ctor:"::",_0:be("event"),_1:{ctor:"[]"}},{ctor:"::",_0:l(Xr,{ctor:"::",_0:be("event__title"),_1:{ctor:"[]"}},{ctor:"::",_0:Qr(t.event.eventType),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(ie,{ctor:"::",_0:be("event__body"),_1:{ctor:"[]"}},{ctor:"::",_0:l(ae,{ctor:"[]"},{ctor:"::",_0:l(_e,{ctor:"[]"},{ctor:"::",_0:l(fe,{ctor:"[]"},{ctor:"::",_0:l(de,{ctor:"[]"},{ctor:"::",_0:Qr("Event id"),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(de,{ctor:"[]"},{ctor:"::",_0:Qr("Raw Data"),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(de,{ctor:"[]"},{ctor:"::",_0:Qr("Raw Metadata"),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}}}),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(le,{ctor:"[]"},{ctor:"::",_0:l(fe,{ctor:"[]"},{ctor:"::",_0:l(se,{ctor:"[]"},{ctor:"::",_0:Qr(t.event.eventId),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(se,{ctor:"[]"},{ctor:"::",_0:_(Ko,t.event.rawData,t.dataTreeState,function(t){return function(t){return{ctor:"ChangeOpenedEventDataTreeState",_0:t}}(t)}),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(se,{ctor:"[]"},{ctor:"::",_0:_(Ko,t.event.rawMetadata,t.metadataTreeState,function(t){return function(t){return{ctor:"ChangeOpenedEventMetadataTreeState",_0:t}}(t)}),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}}}),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}}),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}})}(r._0)):l(ie,{ctor:"::",_0:be("event"),_1:{ctor:"[]"}},{ctor:"[]"})}),ai=function(t){return{ctor:"GoToPage",_0:t}},li=function(t){return l(pe,{ctor:"::",_0:ye(t),_1:{ctor:"::",_0:xe(ai(t)),_1:{ctor:"::",_0:be("pagination__page pagination__page--next"),_1:{ctor:"[]"}}}},{ctor:"::",_0:Qr("next"),_1:{ctor:"[]"}})},_i=function(t){return l(pe,{ctor:"::",_0:ye(t),_1:{ctor:"::",_0:xe(ai(t)),_1:{ctor:"::",_0:be("pagination__page pagination__page--prev"),_1:{ctor:"[]"}}}},{ctor:"::",_0:Qr("previous"),_1:{ctor:"[]"}})},fi=function(t){return l(pe,{ctor:"::",_0:ye(t),_1:{ctor:"::",_0:xe(ai(t)),_1:{ctor:"::",_0:be("pagination__page pagination__page--last"),_1:{ctor:"[]"}}}},{ctor:"::",_0:Qr("last"),_1:{ctor:"[]"}})},si=function(t){return l(pe,{ctor:"::",_0:ye(t),_1:{ctor:"::",_0:xe(ai(t)),_1:{ctor:"::",_0:be("pagination__page pagination__page--first"),_1:{ctor:"[]"}}}},{ctor:"::",_0:Qr("first"),_1:{ctor:"[]"}})},di=e(function(t,r){var e=r;return l(ie,{ctor:"::",_0:be("browser"),_1:{ctor:"[]"}},{ctor:"::",_0:l(Xr,{ctor:"::",_0:be("browser__title"),_1:{ctor:"[]"}},{ctor:"::",_0:Qr(t),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(ie,{ctor:"::",_0:be("browser__pagination"),_1:{ctor:"[]"}},{ctor:"::",_0:function(t){var r=t;return l(ne,{ctor:"::",_0:be("pagination"),_1:{ctor:"[]"}},{ctor:"::",_0:l(Xo,si,r.first),_1:{ctor:"::",_0:l(Xo,fi,r.last),_1:{ctor:"::",_0:l(Xo,li,r.next),_1:{ctor:"::",_0:l(Xo,_i,r.prev),_1:{ctor:"[]"}}}}})}(e.links),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(ie,{ctor:"::",_0:be("browser__results"),_1:{ctor:"[]"}},{ctor:"::",_0:function(t){return"[]"===t.ctor?l(re,{ctor:"::",_0:be("results__empty"),_1:{ctor:"[]"}},{ctor:"::",_0:Qr("No items"),_1:{ctor:"[]"}}):l(ae,{ctor:"[]"},{ctor:"::",_0:l(_e,{ctor:"[]"},{ctor:"::",_0:l(fe,{ctor:"[]"},{ctor:"::",_0:l(de,{ctor:"[]"},{ctor:"::",_0:Qr("Event name"),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(de,{ctor:"[]"},{ctor:"::",_0:Qr("Event id"),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(de,{ctor:"::",_0:be("u-align-right"),_1:{ctor:"[]"}},{ctor:"::",_0:Qr("Created at"),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}}}),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(le,{ctor:"[]"},l(A,Zo,t)),_1:{ctor:"[]"}}})}(e.events),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}}})}),pi=function(t){return{ctor:"GetEvent",_0:t}},hi=function(t){return{ctor:"GetEvents",_0:t}},vi=function(t){return l(co,hi,l(io,t,ci))},gi={ctor:"NotFound"},bi=function(t){return{ctor:"ShowEvent",_0:t}},mi=function(t){return{ctor:"BrowseEvents",_0:t}},yi=function(t){return Fo(function(r){return l(I,function(t){return t._0(r)},t)})}({ctor:"::",_0:l(Go,mi("all"),Qo),_1:{ctor:"::",_0:l(Go,mi,l(Ho["</>"],qo("streams"),Vo)),_1:{ctor:"::",_0:l(Go,bi,l(Ho["</>"],qo("events"),Vo)),_1:{ctor:"[]"}}}}),ki=e(function(t,r){var e=function(t){return l(zo,yi,t)}(r);if("Just"!==e.ctor)return{ctor:"_Tuple2",_0:p.update(t,{page:gi}),_1:Sr};switch(e._0.ctor){case"BrowseEvents":var n=Zn(e._0._0);if("Just"===n.ctor){var o=n._0;return{ctor:"_Tuple2",_0:p.update(t,{page:mi(o)}),_1:vi(l(Yo,t.flags.streamsUrl,o))}}return{ctor:"_Tuple2",_0:p.update(t,{page:gi}),_1:Sr};case"ShowEvent":var i=Zn(e._0._0);if("Just"===i.ctor){var c=i._0;return{ctor:"_Tuple2",_0:p.update(t,{page:bi(c)}),_1:function(t){return l(co,pi,l(io,t,ei))}(l(Yo,t.flags.eventsUrl,c))}}return{ctor:"_Tuple2",_0:p.update(t,{page:gi}),_1:Sr};default:return{ctor:"_Tuple2",_0:p.update(t,{page:e._0}),_1:Sr}}}),wi=l(Co,function(t){return{ctor:"ChangeUrl",_0:t}},{init:e(function(t,r){var e={events:l(ii,{ctor:"[]"},{prev:y,next:y,first:y,last:y}),page:gi,event:y,flags:t};return l(ki,e,r)}),view:function(t){return l(ie,{ctor:"::",_0:be("frame"),_1:{ctor:"[]"}},{ctor:"::",_0:l(Yr,{ctor:"::",_0:be("frame__header"),_1:{ctor:"[]"}},{ctor:"::",_0:function(t){return l($r,{ctor:"::",_0:be("navigation"),_1:{ctor:"[]"}},{ctor:"::",_0:l(ie,{ctor:"::",_0:be("navigation__brand"),_1:{ctor:"[]"}},{ctor:"::",_0:l(ce,{ctor:"::",_0:ye(t.flags.rootUrl),_1:{ctor:"::",_0:be("navigation__logo"),_1:{ctor:"[]"}}},{ctor:"::",_0:Qr("Ruby Event Store"),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(ie,{ctor:"::",_0:be("navigation__links"),_1:{ctor:"[]"}},{ctor:"::",_0:l(ce,{ctor:"::",_0:ye(t.flags.rootUrl),_1:{ctor:"::",_0:be("navigation__link"),_1:{ctor:"[]"}}},{ctor:"::",_0:Qr("Stream Browser"),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}})}(t),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(te,{ctor:"::",_0:be("frame__body"),_1:{ctor:"[]"}},{ctor:"::",_0:function(t){var r=t.page;switch(r.ctor){case"BrowseEvents":return l(di,l(m["++"],"Events in ",r._0),t.events);case"ShowEvent":return ui(t.event);default:return l(Xr,{ctor:"[]"},{ctor:"::",_0:Qr("404"),_1:{ctor:"[]"}})}}(t),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(Zr,{ctor:"::",_0:be("frame__footer"),_1:{ctor:"[]"}},{ctor:"::",_0:function(t){return l(Zr,{ctor:"::",_0:be("footer"),_1:{ctor:"[]"}},{ctor:"::",_0:l(ie,{ctor:"::",_0:be("footer__links"),_1:{ctor:"[]"}},{ctor:"::",_0:Qr(l(m["++"],"RubyEventStore v",t.flags.resVersion)),_1:{ctor:"::",_0:l(ce,{ctor:"::",_0:ye("https://railseventstore.org/docs/install/"),_1:{ctor:"::",_0:be("footer__link"),_1:{ctor:"[]"}}},{ctor:"::",_0:Qr("Documentation"),_1:{ctor:"[]"}}),_1:{ctor:"::",_0:l(ce,{ctor:"::",_0:ye("https://railseventstore.org/support/"),_1:{ctor:"::",_0:be("footer__link"),_1:{ctor:"[]"}}},{ctor:"::",_0:Qr("Support"),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}}}),_1:{ctor:"[]"}})}(t),_1:{ctor:"[]"}}),_1:{ctor:"[]"}}}})},update:e(function(t,r){var e=t;switch(e.ctor){case"GetEvents":return"Ok"===e._0.ctor?{ctor:"_Tuple2",_0:p.update(r,{events:e._0._0}),_1:Sr}:{ctor:"_Tuple2",_0:r,_1:Sr};case"GetEvent":return"Ok"===e._0.ctor?{ctor:"_Tuple2",_0:p.update(r,{event:k(function(t){return{event:t,dataTreeState:on,metadataTreeState:on}}(e._0._0))}),_1:Sr}:{ctor:"_Tuple2",_0:r,_1:Sr};case"ChangeUrl":return l(ki,r,e._0);case"GoToPage":return{ctor:"_Tuple2",_0:r,_1:vi(e._0)};default:var n=r.event;if("Just"===n.ctor){var o=l($o,e._0,n._0),i=o._0;o._1;return{ctor:"_Tuple2",_0:p.update(r,{event:k(i)}),_1:Sr}}return{ctor:"_Tuple2",_0:r,_1:Sr}}}),subscriptions:function(t){return Mr}})(l(cr,function(t){return l(cr,function(r){return l(cr,function(e){return l(cr,function(n){return ar({eventsUrl:t,resVersion:r,rootUrl:e,streamsUrl:n})},l(vr,"streamsUrl",Tr))},l(vr,"rootUrl",Tr))},l(vr,"resVersion",Tr))},l(vr,"eventsUrl",Tr))),Ti={};Ti.Main=Ti.Main||{},void 0!==wi&&wi(Ti.Main,"Main",void 0),void 0===(n=function(){return Ti}.apply(r,[]))||(t.exports=n)}).call(this)}]);
metadata ADDED
@@ -0,0 +1,169 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ruby_event_store-browser
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.32.0
5
+ platform: ruby
6
+ authors:
7
+ - Arkency
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2018-09-27 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: ruby_event_store
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 0.32.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 0.32.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: sinatra
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rack-test
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.6'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.6'
69
+ - !ruby/object:Gem::Dependency
70
+ name: mutant-rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 0.8.17
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 0.8.17
83
+ - !ruby/object:Gem::Dependency
84
+ name: capybara
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "<"
88
+ - !ruby/object:Gem::Version
89
+ version: 3.0.0
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "<"
95
+ - !ruby/object:Gem::Version
96
+ version: 3.0.0
97
+ - !ruby/object:Gem::Dependency
98
+ name: selenium-webdriver
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: json-schema
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ description:
126
+ email:
127
+ - dev@arkency.com
128
+ executables: []
129
+ extensions: []
130
+ extra_rdoc_files: []
131
+ files:
132
+ - MIT-LICENSE
133
+ - README.md
134
+ - lib/ruby_event_store/browser.rb
135
+ - lib/ruby_event_store/browser/app.rb
136
+ - lib/ruby_event_store/browser/event.rb
137
+ - lib/ruby_event_store/browser/json_api_event.rb
138
+ - lib/ruby_event_store/browser/stream.rb
139
+ - lib/ruby_event_store/browser/version.rb
140
+ - public/ruby_event_store_browser.js
141
+ homepage: https://railseventstore.org
142
+ licenses:
143
+ - MIT
144
+ metadata:
145
+ homepage_uri: https://railseventstore.org/
146
+ changelog_uri: https://github.com/RailsEventStore/rails_event_store/releases
147
+ source_code_uri: https://github.com/RailsEventStore/rails_event_store
148
+ bug_tracker_uri: https://github.com/RailsEventStore/rails_event_store/issues
149
+ post_install_message:
150
+ rdoc_options: []
151
+ require_paths:
152
+ - lib
153
+ required_ruby_version: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - ">="
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
158
+ required_rubygems_version: !ruby/object:Gem::Requirement
159
+ requirements:
160
+ - - ">="
161
+ - !ruby/object:Gem::Version
162
+ version: '0'
163
+ requirements: []
164
+ rubyforge_project:
165
+ rubygems_version: 2.7.6
166
+ signing_key:
167
+ specification_version: 4
168
+ summary: Web interface for RubyEventStore
169
+ test_files: []